Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Kasowanie rokordów
Forum PHP.pl > Forum > Przedszkole
krzesik
Witam, mam tabelkę w której jest checkbox gdzie po zaznaczeniu danego rekordu, i po zapisie powinien zostać on skasowany. Samo kasowanie działa ale kasuje mi zawsze pierwszą pozycję, prosze o poradę gdzie mam babola.

  1. .....
  2. $x = 0;
  3. foreach($nazwa_zw as $x => $y)
  4. {
  5. while(isset($kasuj[$x]))
  6. {
  7. mysql_query("DELETE FROM sprzedaz_srodek WHERE id_dok_srodek='$id_dok_srodek[$x]'") or die('Błąd zapytania: '.mysql_error());
  8. $x++;
  9. }
  10. }
  11.  
abort
Nie używa się zmiennych ($cośtam) wewnątrz pojedynczych apostrofów.
Możesz rozważyć tzw. backticks (`) lub poprzedzić apostrof znakiem backslasha (\).

A na przyszłość warto debugować, choćby tak:
Kod
$sql = "DELETE FROM sprzedaz [...]";
echo $sql;   // dla debugu => co zawiera zapytanie
mysql_query ($sql) or die('Błąd zapytania: ' . $sql . ", error: " . mysql_error());;

Gdybyś sobie to zrobił w ten sposób, sam byś szybko doszedł co zrobiłeś niepoprawnie.
krzesik
Zrobiłem wg Twojej rady, teraz widzę co jest pobierane do zapytania, jednak zawsze pobiera mi pierwszy rekord, choć checkiem mam zaznaczony inny
może coś tutaj jest nie tak, fragment tabelki

  1. .....
  2. echo '<td><input type="checkbox" name="kasuj[]" /></td>';
  3. echo '<td><input type="text" name="id_dok_srodek[]" value='.$r[id_dok_srodek].' /></td>';
  4. .....
Sephirus
Coś tu masz pomieszane na maksa...

Jak to powinno wyglądać:

Form:

  1. <?php while($record = mysql_fetch_array($resource)): ?>
  2. ...
  3. <td><input type="checkbox" name="do_kasowania[]" value="<?php echo $record['id_dok_srodek'];?>"/></td>
  4. ...
  5.  
  6. <?php endwhile;?>


Kasowanie w PHP:

  1. mysql_query("DELETE FROM sprzedaz_srodek WHERE id_dok_srodek IN(" . implode(',',$_POST['do_kasowania']) . ")");

krzesik
Dziękuje działa jak należy!
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.