Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Edycja danych formularzem
smok55453
post
Post #1





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 29.09.2013

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


Witam. Posiadam własną tabelę w bazie danych. Na stronie w php wyświetlam całą tabelę przy pomocy pętli. Gdy użytkownik zmieni coś w kilku komórkach to chcę aby w bazie danych też się ta wartość zmieniła po wysłaniu formularza. Nazwy tych komórek mam generowane przez pętlę pobierającą nazwy kolumn z bazy danych. Po kliknięciu przycisku edytuj przechodzi się do innej podstrony w której ma być skrypt edytujący dane w bazie danych. Jak mam napisać skrypt który te dane zmieni w bazie danych? Nie chcę abyście mi pisali teoretycznie jak to napisać, a bardziej bym prosił o jakiś przykład.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
smok55453
post
Post #2





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 29.09.2013

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


To jest tak. Mam nazwy komorek ale uzytkownik moze sobie sam dodac lub usunac kilka kolumn. Nazwy ich sa z bazy pobierane automatycznie. Raz tych nazw jest 20 a raz 5. A kod pokazw jak wróce do domu

Oto kod pliku w którym użytkownik ma edytować przepis:
  1. <?php
  2. if (isset($_POST['edytuj_przepis']))
  3. {
  4.  
  5. if(isset($_POST['radio']))
  6. {
  7. echo '<h2>Czy na pewno chcesz usunąć ten przpis? </h2><br>';
  8. $id_radio = $_POST['radio'];
  9.  
  10. //Tworzenie tablicy nazw
  11. $result = mysql_query('select * from przepisy');
  12. if (!$result) {
  13. die('Query failed: ' . mysql_error());
  14. }
  15. else
  16. {
  17.  
  18. }
  19. echo '<table border="1" cellpadding="5" calss="table">';
  20. echo '<tr>';
  21. echo '<form action="index.php?&start=6&wartosc_zmiennej='.$id_radio.'" method="post">';
  22. for ($i=0;$i < mysql_num_fields($result);$i++) {
  23.  
  24. $meta = mysql_fetch_field($result, $i);
  25. $nameArray[$i] = $meta->name;
  26. }
  27. echo '</tr>';
  28. //Koniec tworzenia tablicy nazw
  29. //
  30. //Wyświetlenie wybranego przepisu
  31. echo '<tr>';
  32. $nazwy_pol_dla_selecta = implode(",",$nameArray);
  33. $zapytanie_2 = "SELECT $nazwy_pol_dla_selecta FROM przepisy WHERE ID='$id_radio'";
  34. $idzapytania = mysql_query($zapytanie_2);
  35. while ($wiersz = mysql_fetch_row($idzapytania))
  36. {
  37. $nameArray_0 = str_replace("_", " ", $nameArray[0]);
  38. echo '<td>'.$nameArray_0.':&nbsp;'. $wiersz[0] .'</td>';
  39. for($licz=1;$licz < mysql_num_fields($idzapytania);$licz++)
  40. {
  41. if($licz % 4 ==0)
  42. {
  43. echo '</tr><tr>';
  44. }
  45. else
  46. {
  47. $nameArray_licz = str_replace("_", " ", $nameArray[$licz]);
  48. echo '<td>'.$nameArray_licz.'<br><input type="text" name="'.$nameArray[$licz].'" value="'.$wiersz[$licz].' "></td>';
  49. }
  50. }
  51.  
  52. }
  53. echo '</tr>';
  54. echo '</table>';
  55. }
  56. }
  57. else
  58. {
  59.  
  60. }
  61.  
  62. echo'<br><input type="submit" name="edytuj_przepis_nowy" value="Tak" /></form><br><br><form action="index.php?&start=4" method="post"><input type="submit" name="powrot" value="Nie"/></form>';
  63. echo '';
  64. echo '';
  65.  
  66. ?>


Wybaczcie mi jeżeli będą tam jakieś błędy ale jestem początkującym
Go to the top of the page
+Quote Post

Posty w temacie


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: 11.10.2025 - 15:50