Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/sql] Problem z formularzem weryfikacyjnym
Forum PHP.pl > Forum > Przedszkole
Bojakki
mam formularz w ktorym zatwierdzam lub odrzucam wyslane przez uzytkownikow obiekty:

  1. <?php
  2. $i=1;
  3. $myquery=mysql_query("SELECT bb_street_building.street_name, bb_street_building.building_id, 
  4. bb_city.id, bb_city.name, bb_building.name1, bb_building.name2 
  5. FROM bb_street_building, bb_city, bb_building 
  6. WHERE bb_street_building.street_id IS NULL AND bb_street_building.building_
  7. d=bb_building.id 
  8. AND bb_building.city=bb_city.id");
  9. while($name=mysql_fetch_row($myquery))
  10. {
  11. $streetname = $name[0];
  12. $building_id = $name[1];
  13. $city_id = $name[2];
  14. $cityname = $name[3];
  15. $name1 = $name[4];
  16. $name2 = $name[5];
  17. $nstreetname = $_REQUEST['streetname'];
  18.  
  19. if(isset($_REQUEST["zatwierdz$i"]))
  20. {
  21. $myquery=mysql_query("INSERT INTO bb_street (street_name, city_id) 
  22.  VALUES ('{$nstreetname}', '{$city_id}')") 
  23.  or die(mysql_error());
  24. $id = mysql_insert_id($mysql);
  25. $myquery=mysql_query("UPDATE bb_street_building 
  26. SET street_id = '$id', street_name = '$nstreet_name' 
  27. WHERE street_name = '{$streetname}' AND building_id='{$building_id}'") 
  28. or die(mysql_error());
  29. $success=($myquery) ? 1 : -1;
  30. }
  31.  
  32. if(isset($_REQUEST['odrzuc$i']))
  33. {
  34. $myquery=mysql_query("UPDATE vb_firm 
  35. SET checked = 3 WHERE id = {$wsk}") or die(mysql_error());
  36. $success=($myquery) ? 1 : -1;
  37. }
  38. echo '
  39. <form name="formularz" method="post">
  40. <tr>
  41. <td class="backggrey"><input type="text" size="35" value="'.$streetname.'" name="streetname"/></td>
  42. <td class="backggrey">
  43. <input type="submit" name="zatwierdz'.$i.'" value="Zatwierdz'.$i.'">
  44. <input type="submit" name="odrzuc'.$i.'" value="Odrzuc'.$i.'">
  45. </td>';
  46. $i++;
  47. }
  48. ?>

problem z nim jest taki, ze po kliknieciu na zatwierdz dodaje sie zawsze ostatni z rekordow, a nie ten przy ktorym kliknalem buttona, poza tym wyswietla po kliknieciu w butona blad w zapytaniu SELECT, bledu nie ma przed klinieciem.

Podejrzewam, ze sa bledy w nazewnictwie przyciskow przy warunkach, ale nie wiem jak to rozwiazac

Z gory dziekuje za pomoc!
Cienki1980
Zamiast
$_REQUEST['zatwierdz$i'] spróbuj $_REQUEST['zatwierdz'.$i]

analogicznie dla $_REQUEST['odrzuc$i'] spróbuj dać $_REQUEST['odrzuc'.$i]
Bojakki
dalej to samo niestety:(
Cienki1980
Zrób warunki takie:
  1. <?php
  2. if($_REQUEST['zatwierdz'.$i']=='Zatwierdz'.$i)
  3. {
  4.  //jakiskod
  5. }
  6. if($_REQUEST['odrzuc'.$i]=='Odrzuc'.$i)//tutaj powinna być taka sama wartość jak w value dla danego submit'a
  7. {
  8. //jakis kod
  9. }
  10. ?>
Bojakki
Dalej dodaje sie tylko ostatni z listy (niezaleznie, ktorego 'buttona klikne) i dalej wyskakuje blad w zapytaniuz SELECTEM. Dziwna sprawa bo przeciez jakby zle byly ponumerowane submity to nie powinno zadnego warunku spelnic, a jednak spelnia i nie wiadomo czemu zawsze tego, ktory ma najwieksza zmienna $i:/
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.