Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Edycja danych wyciągnietych z tabeli
Forum PHP.pl > Forum > Przedszkole
arek33
Przeszukałem forum, ale nie znalazłem problemu ani podobnego, ani identycznego z moim.

Mam taki oto kod:
  1. <?php
  2. $id=$_GET['id'];
  3. require('config.php');
  4.  
  5. $query="SELECT * FROM paf_news WHERE id='$id'";
  6. $result=mysql_query($query);
  7. $num=mysql_numrows($result);
  8. mysql_close($connect);
  9.  
  10. $i=0;
  11. while ($i < $num) {
  12. $id_autora=mysql_result($result,$i,"id_autora");
  13. $data=mysql_result($result,$i,"data");
  14. $title=mysql_result($result,$i,"title");
  15. $articles=mysql_result($result,$i,"articles");
  16. $img=mysql_result($result,$i,"img");
  17. $autor=mysql_result($result,$i,"autor");
  18. ++$i;
  19. }
  20. ?>
  21.  
  22. <div class="form">
  23. <form action="artykul_edit.php?id=<? echo $id; ?>" method="post">
  24. <input type="hidden" name="uid" value="<? echo $id; ?>">
  25. <input type="hidden" name="uid_autora" value="<? echo $id_autora; ?>">
  26. <input type="hidden" class="input" name="udata" value="<?php echo date("H:i:s, d.m.Y"); ?>" /><br />
  27. tytuł:<br />
  28. <input type="text" class="input" name="utitle" value="<? echo $title; ?>" /><br />
  29. treść:<br />
  30. <input type="text" class="input" name="uarticles" value="<? echo $articles; ?>" /><br />
  31. img:<br />
  32. <input type="text" class="input" name="uimg" value="<? echo $img; ?>" /><br />
  33. <input type="hidden" class="input" name="uautor" value="<? echo $autor; ?>" /><br />
  34. <input type="submit" class="submit2" width="100px" value="Aktualizuj" />
  35. </form>
  36. </div>
  37.  
  38. <?php
  39. $uid=$_POST['uid'];
  40. $uid_autora=$_POST['uid_autora'];
  41. $udata=$_POST['udata'];
  42. $utitle=$_POST['utitle'];
  43. $uarticles=$_POST['uarticles'];
  44. $uimg=$_POST['uimg'];
  45. $uautor=$_POST['uautor'];
  46.  
  47. require('config.php');
  48.  
  49. $update = mysql_query("UPDATE tabela SET id='$uid', id_autora='$uid_autora', data='$udata', title='$utitle', articles='$articles', img='$uimg', autor='$uautor'");
  50.  
  51. ?>


I wszystko jest fajnie, wyświetla mi dane w inputach, ale nie mogę ich już edytować. Tzn. wprowadzić edycję mogę, ale nie działa $update, zostają stare dane.
zend
Może dodaj warunki WHERE, włącz wyświetlanie błędów, wyświetl zapytanie update i spróbuj wykonać w phpMyAdminie
thek
Zacznij od uporządkowania kolejności kodu. Najpierw zrób wszelkie operacje, potem wszelkie wyświetlanie. Zacznij więc od kodu php reagującego na GET lub POST i dopiero potem zrób wyświetlanie formularza. Poza tym skąd baza ma wiedzieć jaki rekord uaktualnić? Wszystkie naraz? winksmiley.jpg W update nie określiłeś warunku, który określiłby choćby jeden wiersz jaki ma zostać zmieniony. Jako że zapewne daną unikatową jest id rekordu, to jego użyj w Update. Swoją drogą jak zamierzasz dane nowe wprowadzać? Brak bowiem formularza dla Insert. Chyba nie powiesz, że masz osobną stronę, która ma identyczny formularz tylko zapytanie zamiast update to insert?
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.