Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][MYSQL]Usuwanie poszczegolnych rekordow z bazy
Forum PHP.pl > Forum > Przedszkole
rybak84
Witam
Chce usuwac rekordy ale mam jakies bledy:
fragmenty kodow:
  1. <?php
  2. while ($rekord = mysql_fetch_assoc ($wynik)) 
  3. {
  4.  
  5.  
  6. $IdFilm = $rekord['IdFilm'];
  7. $Gatunek = $rekord['Gatunek'];
  8. $Tytul = $rekord['Tytul'];
  9. $Wykonawca = $rekord['Wykonawca'];
  10. $Opis=$rekord['Opis'];
  11. $Cena = $rekord['Cena'];
  12.  
  13. echo "<tr><td width=110>".$Tytul."</td><td>".$Wykonawca."</td>";
  14. echo "<td>".$Gatunek."</td><td>".$Opis."</td><td>".$Cena."</td>";
  15.  
  16. echo "<td><form action='usun_film.php' method='POST'>";
  17. echo "<input type='checkbox' name='IdFilm[]' value=".$IdFilm."></td></tr>";
  18.  
  19.  }
  20.  
  21. echo "</table>";
  22. //Po zaznaczeniu Checkboxa usuwa dany film
  23. echo "<table bgcolor='#CCCCCC' align='left' border='2' >";
  24. echo "<tr><td colspan='2' align='left'><input type=submit name=action value='Usuń zaznaczony film'>";
  25. echo "</td></tr></form>";
  26. ?>



kod ktory powinien usuwac film

  1. <?php
  2. $IdFilm = $_POST['IdFilm'];
  3.  
  4. ?>
  5.  
  6.  
  7. <?php
  8. require('baza.php');
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16. echo "Przeniesiony filmid: " .$IdFilm;
  17. //TU JEST CHYBA PROBLEM BO 
  18. //NIC MI TA ZMIENNA 
  19. //NIE WYSWIETLA CZYLI TAK JAK BY NIE PRZEKAZYWANE BYLY DANE 
  20.  
  21.  
  22.  
  23. if($IdFilm==NULL){
  24.  
  25. echo "zaznacz jakis film do skasowania";
  26. echo "<font size=8><a href='filmy.php'>Wróć</a></font>";
  27. }
  28.  
  29. else {
  30.  
  31. while ( list( $key, $val ) = each( $IdFilm ) ) {
  32.  
  33. $del=mysql_query("DELETE FROM filmy WHERE IdFilm=$val");
  34.  
  35.  }
  36.  
  37. echo "<font size='10'><p>Filmy zostaly usunięte<p></font>";
  38.  
  39.  }


Tak jak napisalem w komentrzu problem jest chyba przy przekazywaniu danych? Wdzięczny za pomoc smile.gif
nospor
no ale troche pomyslunku. umiesciles form w petli, czyli przy kazdym checkbox generujesz <form>. Mo przeciez to ma byc przed petla a nie w niej
$liwa
No to sprawdź czy ma jakąś wartość ta zmienn var_dump($IdFilm)
Sedziwoj
  1. <?php
  2. echo "Przeniesiony filmid: " .$IdFilm;
  3. //TU JEST CHYBA PROBLEM BO 
  4. //NIC MI TA ZMIENNA 
  5. //NIE WYSWIETLA CZYLI TAK JAK BY NIE PRZEKAZYWANE BYLY DANE
  6. ?>

Bo jest tak jak napisał nospor, i nic nie dostajesz prawdopodobnie jak byś zaznaczył ostatni film na liście to by coś wyświetliło, bo submit jest tylko do jednego formularza a że powtarzasz ich mnóstwo to jest kłopot.
i nie wyświetla się w ten sposób zmiennej która ma być array, bo wyświetli tylko typ aby spr. zawartość zrób to co podał $liwa
rybak84
Cytat(nospor @ 2.12.2006, 15:03:27 ) *
no ale troche pomyslunku. umiesciles form w petli, czyli przy kazdym checkbox generujesz <form>. Mo przeciez to ma byc przed petla a nie w niej



tak ale ja mam jeszcze jeden form w srodku tj

  1. <?php
  2. echo "<td><form action='edycja.php' method='GET'>";
  3. echo "<a href='edycja.php?edit=".$IdFilm." '>Edytuj</a><br></form></td>";
  4. ?>


tak sprawdzilem ten var(nie wiem czy dobrze) ale nic nie wyświetlila

echo "Var: " .var_dump($IdFilm);
nospor
Cytat
tak ale ja mam jeszcze jeden form w srodku tj

Ale jaki form? przeciez to jest zwykly link, ktorego nie musisz brac w<form>. po co? linki wysylaja sie bez formularzy - takie ich zadanie.

Cytat
tak sprawdzilem ten var(nie wiem czy dobrze) ale nic nie wyświetlila

echo "Var: " .var_dump($IdFilm);
No pewnie ze nic. skoro echo nic nie wyswietliloo to i var_dump nic nie wyswietli. Wyskoczyli ci z tym var_dumpem jak Filip z konopii winksmiley.jpg
rybak84
Dziekuje działa.
Wyrzucilem tego forma z linku , i form od kasowania przenioslem przed pętle i działa jak należy.

Jeszcze raz dziekuje.
Pozdrawiam biggrin.gif
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.