Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql] kasowanie pod warunkiem
Forum PHP.pl > Forum > Przedszkole
capricorn
Dlaczego to nie dziala?
chce skasowac z tabeli 'klasa' rekordy pod dwoma warunkami.. czyli z operatorem logicznym AND.. i niestety nie dziala


$strony =mysql_query("Select * from klasa ORDER BY najlepsi DESC limit 2");

while ($adres_rekord=mysql_fetch_array($strony)) {
mysql_query ("DELETE FROM klasa WHERE klasa_id != ".$adres_rekord['klasa_id']." AND najlepsi=1");
}
cornholio666
Cytat
WHERE klasa_id != ".$adres_rekord['klasa_id']."


Co chcesz tym uzyskac ? wykasowac wszystkich innych ktorych ID nie jest rowne $adres_rekord['klasa_id'] ?
capricorn
dokladnie tak
cornholio666
Po pierwszym przejsciu pętli wykasowalo by ci wszytkie oprcz tego pierwszego podanego.

Pobierz wszystkie ID które chcesz skasowaci wtedy :

  1. <?php
  2. mysql_query ("DELETE FROM klasa WHERE klasa_id = ".$adres_rekord['klasa_id']." AND najlepsi=1");
  3. ?>
capricorn
niestety nie ma jak pobraz tych ID

poniewaz:

1. ukladam rekordy w tabeli wg 'ocena' limit wyswietlonych wynikow ograniczam do 2
2. dwum rekordom ktore mam wyswietlone nadaje wartosc 1 w kolumnie 'najlepsi'
3. kolumna najlepsi domyslnie ma wartosc 0, wiec wszystkei pozostale maja wartosc 0

4. jezeli uczen wypadnie z dwojki najlepszych, a na jego miejsce wskoczy inny, to bede mial trzech uczniow z wartoscia 1 w kolumnie 'najlepsi' .. i tego trzeciego chce wlasnie usowac .. wiec jak to zrobic?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.