Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP] Edycja danych wyciągnietych z tabeli
arek33
post
Post #1





Grupa: Zarejestrowani
Postów: 72
Pomógł: 0
Dołączył: 24.02.2009

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


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.
Go to the top of the page
+Quote Post
zend
post
Post #2





Grupa: Zarejestrowani
Postów: 580
Pomógł: 85
Dołączył: 25.03.2010
Skąd: Skrzyszów :)

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


Może dodaj warunki WHERE, włącz wyświetlanie błędów, wyświetl zapytanie update i spróbuj wykonać w phpMyAdminie
Go to the top of the page
+Quote Post
thek
post
Post #3





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




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? (IMG:style_emoticons/default/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?
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: 22.08.2025 - 17:38