Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z update
jewel
post
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 14.04.2007

Ostrzeżenie: (0%)
-----


mam taki maly problem z zapytaniem update....

chodzi o to, ze gdy uzywam tego zapytania, w pewnym momencie nie wiem, skad mam wziasc moje "id_ankiety"...(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

oto, jak po kolei wygladaja kody:

tu wybieram tylko id ankiety, ktora chce edytowac:
  1. <?php
  2. <H4>Wybierz id ankiety, ktora chcesz edytowac</H4>
  3. <form action="edycja.php" method="post">
  4. <input type="text" name="edycja">
  5. <input type="submit" value="Edytuj">
  6. ?>



tu wypisuje w tabeli, jak wygladaja dotychczasowe wartosci przy tym rekordzie:
  1. <?php
  2. echo '<form action="edycja2.php" method="post">';
  3. echo '<table border="1">';
  4. echo '<tr><td>id ankiety</td><td>tytul ankiety</td><td>ilosc pytan</td></tr>';
  5.  
  6. $edycja= AddSlashes($_POST['edycja']);
  7. $zapyt1="SELECT `id_ankiety` FROM `ankieta` WHERE `id_ankiety`='$edycja'";
  8. $result1=mysql_query($zapyt1);
  9. $zapyt2="SELECT `tytul_ankiety` FROM `ankieta` WHERE `id_ankiety`='$edycja'";
  10. $result2=mysql_query($zapyt2);
  11. $zapyt3="SELECT `ilosc_pytan` FROM `ankieta` WHERE `id_ankiety`='$edycja'";
  12. $result3=mysql_query($zapyt3);
  13.  
  14. while ($row = mysql_fetch_array($result1, MYSQL_NUM)) {
  15. echo '<TR>';
  16.  foreach ($row as $val) {
  17. echo "<TD> $val </TD> ";
  18.  }
  19. //echo '</TR>';
  20. }
  21.  
  22. while ($row = mysql_fetch_array($result2, MYSQL_NUM)) {
  23. //echo '<TR>';
  24.  foreach ($row as $val) {
  25. echo "<TD> $val </TD> ";
  26.  }
  27. //echo '</TR>';
  28. }
  29.  
  30. while ($row = mysql_fetch_array($result3, MYSQL_NUM)) {
  31. //echo '<TR>';
  32.  foreach ($row as $val) {
  33. echo "<TD> $val </TD> ";
  34.  }
  35. echo '</TR>';
  36. }
  37.  
  38.  
  39. $zapyt4="SELECT `id_ankiety` FROM `ankieta` WHERE `id_ankiety`='$edycja'";
  40. $result4=mysql_query($zapyt4);
  41. while ($row = mysql_fetch_array($result4, MYSQL_NUM)) {
  42. echo '<TR>';
  43.  foreach ($row as $val) {
  44. echo "<TD> $val </TD> ";
  45.  }
  46.  }
  47. echo '<td><input type="text" name="zmien_tytul"></td>';
  48. echo '<td><input type="text" name="zmien_ilosc_pyt"></td></tr>';
  49.  
  50.  
  51. echo '</table>';
  52. echo '<br />';
  53. echo '<input type="hidden" name="id_ankiety" value="' . $_GET['id_ankiety'] . '" />';
  54. echo '<input type="submit" value="Zmien">';
  55. echo '</form>';
  56. ?>




i tutaj probuje zmieniac, z tym ze nie wiem jak wydobyc id_ankiety tutaj... tak, jak mam nie dziala...
a jak zmienie "na sztywno", np na 2, to dziala.... :
  1. <?php
  2. $edycja= AddSlashes($_POST['edycja']);
  3.  
  4. $zapytanie="UPDATE `ankieta` SET `tytul_ankiety`='{$_POST['zmien_tytul']}', `ilosc_pytan`='{$_POST['zmien_ilosc_pyt']}' WHERE `id_ankiety`={$_POST['id_ankiety']}";
  5. $result=mysql_query($zapytanie);
  6.  
  7. print '<p>Tresc zostala zmieniona</p>';
  8. }
  9. else{
  10. print 'Nie mozna zmienic tresci wpisu, poniewaz: ' . mysql_error();
  11. }
  12. ?>
Go to the top of the page
+Quote Post
starach
post
Post #2





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

Ostrzeżenie: (0%)
-----


Skoro zapisałeś identyfikator ankiety w polu hidden to powinien on się znaleźć w tablicy $_POST.
Wyświetl dane które otrzymujesz z tablicy post.
echo '<pre>'.print_r($_POST, true).'</pre>';
Jeśli nie będzie wśród nich id_ankiety to błędu powinieneś szukać wyżej.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 02:11