Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: edytowanie danych z poziomu strony PHP MYSQL
Forum PHP.pl > Forum > Bazy danych > MySQL
Mlodycompany
Witam. Mam skrypcik do edytowania danych w bazie z poziomu przegladarki. Oto on:
  1. <?
  2. $wynik = mysql_query ("SELECT * FROM filmy") or die (mysql_error());
  3. $edit = $_GET['edit'];
  4. if($_GET['edit'] == $edit){
  5. while($row = mysql_fetch_array($wynik)){
  6. $id = $row['ID'];
  7. $nazwa = $row['nazwa'];
  8. $kategoria = $row['kategoria'];
  9. $dodal = $row['dodal'];
  10. $data = $row['data'];
  11. $kod = $row['kod'];
  12. $zdjecie = $row['ID'];
  13. $width = 425;
  14. $height = 355;
  15. if($id == $edit){
  16. <form action="paneladmina.php?name=edytujfilm&edit='.$id.'&save=true" method="post">
  17. <tr>
  18. <th colspan=2 class=cat>Edytuj: '.$nazwa.'</th>
  19. </tr>
  20. <tr>
  21. <th>Nazwa:</th>
  22. <th><input type="text" name"nazwa" value="'.$nazwa.'" class=form4></th>
  23. </tr>
  24. <tr>
  25. <th>Kategoria:</th>
  26. <th><input type="text" name"nazwa" value="'.$kategoria.'" class=form4></th>
  27. </tr>
  28. <tr>
  29. <th>Dodał:</th>
  30. <th><input type="text" name"nazwa" value="'.$dodal.'" class=form4></th>
  31. </tr>
  32. <tr>
  33. <th>Data:</th>
  34. <th><input type="text" name"nazwa" value="'.$data.'" class=form4></th>
  35. </tr>
  36. <tr>
  37. <th>Kod:</th>
  38. <th><input type="text" name"nazwa" value="'.$kod.'" class=form4></th>
  39. </tr>
  40. <tr>
  41. <th colspan=2><input type="submit" name="submit" value="Zapisz" class=form4></th>
  42. </tr>
  43. <tr>
  44. <th colspan=2><hr></th>
  45. </tr>
  46. </form>
  47. ');
  48. }}
  49. }
  50. if($_GET['save'] == "true"){
  51. $idedit = $_GET['edit'];
  52. $save2 = mysql_query("UPDATE filmy SET 
  53.  nazwa='$nazwa', 
  54.  kategoria='$kategoria', 
  55.  data=$data, 
  56.  dodal=$dodal', 
  57.  kod='$kod' 
  58.  WHERE ID='$idedit'
  59. LIMIT 1");
  60. if($save2){
  61. echo('<tr><th colspan=2 class=admin>Zapisano</th></tr>');
  62. }}
  63. ?>

Bład zaden sie nie wyswietla ani nie wyswietla sie "Zapisano" czyli nie zmienia danych w bazie. Gdzie jest błąd??
Piniek
  1. <?
  2. $wynik = mysql_query ("SELECT * FROM filmy") or die (mysql_error());
  3. $edit = $_GET['edit'];
  4. if($_GET['edit'] == $edit){
  5. while($row = mysql_fetch_array($wynik)){
  6. $id = $row['ID'];
  7. $nazwa = $row['nazwa'];
  8. $kategoria = $row['kategoria'];
  9. $dodal = $row['dodal'];
  10. $data = $row['data'];
  11. $kod = $row['kod'];
  12. $zdjecie = $row['ID'];
  13. $width = 425;
  14. $height = 355;
  15. if($id == $edit){
  16. <form action="paneladmina.php?name=edytujfilm&edit='.$id.'&save=true" method="post">
  17. <tr>
  18. <th colspan=2 class=cat>Edytuj: '.$nazwa.'</th>
  19. </tr>
  20. <tr>
  21. <th>Nazwa:</th>
  22. <th><input type="text" name"nazwa" value="'.$nazwa.'" class=form4></th>
  23. </tr>
  24. <tr>
  25. <th>Kategoria:</th>
  26. <th><input type="text" name"nazwa" value="'.$kategoria.'" class=form4></th>
  27. </tr>
  28. <tr>
  29. <th>Dodał:</th>
  30. <th><input type="text" name"nazwa" value="'.$dodal.'" class=form4></th>
  31. </tr>
  32. <tr>
  33. <th>Data:</th>
  34. <th><input type="text" name"nazwa" value="'.$data.'" class=form4></th>
  35. </tr>
  36. <tr>
  37. <th>Kod:</th>
  38. <th><input type="text" name"nazwa" value="'.$kod.'" class=form4></th>
  39. </tr>
  40. <tr>
  41. <th colspan=2><input type="submit" name="submit" value="Zapisz" class=form4></th>
  42. </tr>
  43. <tr>
  44. <th colspan=2><hr></th>
  45. </tr>
  46. </form>
  47. ');
  48. }}
  49. }
  50. if($_GET['save'] == "true"){
  51. $idedit = $_GET['edit'];
  52. $save2 = mysql_query("UPDATE filmy SET 
  53.  nazwa='$nazwa', 
  54.  kategoria='$kategoria', 
  55.  data='$data', 
  56.  dodal='$dodal', 
  57.  kod='$kod' 
  58.  WHERE ID='$idedit'
  59. LIMIT 1");
  60. if($save2){
  61. echo('<tr><th colspan=2 class=admin>Zapisano</th></tr>');
  62. }}
  63. ?>
Mlodycompany
Są efekty. Teraz mam cos takiego
  1. <?php
  2. $wynik = mysql_query ("SELECT * FROM filmy") or die (mysql_error());
  3. $edit = $_GET['edit'];
  4. if($_GET['edit'] == $edit){
  5. while($row = mysql_fetch_array($wynik)){
  6. $id = $row['ID'];
  7. $nazwa = $row['nazwa'];
  8. $kategoria = $row['kategoria'];
  9. $dodal = $row['dodal'];
  10. $data = $row['data'];
  11. $kod = $row['kod'];
  12. $zdjecie = $row['ID'];
  13. $width = 425;
  14. $height = 355;
  15. if($id == $edit){
  16. <form action="paneladmina.php?name=edytujfilm&edit='.$id.'&save=true" method="post">
  17. <tr>
  18. <th colspan=2 class=cat>Edytuj: '.$nazwa.'</th>
  19. </tr>
  20. <tr>
  21. <th>Nazwa:</th>
  22. <th><input type="text" name"nazwa" value="'.$nazwa.'" class=form4></th>
  23. </tr>
  24. <tr>
  25. <th>Kategoria:</th>
  26. <th><input type="text" name"kategoria" value="'.$kategoria.'" class=form4></th>
  27. </tr>
  28. <tr>
  29. <th>Dodał:</th>
  30. <th><input type="text" name"dodal" value="'.$dodal.'" class=form4></th>
  31. </tr>
  32. <tr>
  33. <th>Data:</th>
  34. <th><input type="text" name"data" value="'.$data.'" class=form4></th>
  35. </tr>
  36. <tr>
  37. <th>Kod:</th>
  38. <th><input type="text" name"kod" value="'.$kod.'" class=form4></th>
  39. </tr>
  40. <tr>
  41. <th colspan=2><input type="submit" name="submit" value="Zapisz" class=form4></th>
  42. </tr>
  43. <tr>
  44. <th colspan=2><hr></th>
  45. </tr>
  46. </form>
  47. ');
  48. }}
  49. }
  50. if($_GET['save'] == "true"){
  51. $idedit = $_GET['edit'];
  52. $nazwa = $_POST['nazwa'];
  53. $kategoria = $_POST['kategoria'];
  54. $data = $_POST['data'];
  55. $dodal = $_POST['dodal'];
  56. $kod = $_POST['kod'];
  57.  
  58. $save2 = mysql_query("UPDATE filmy SET 
  59.  nazwa='".$nazwa."', 
  60.  kategoria='".$kategoria."', 
  61.  data='".$data."', 
  62.  dodal='".$dodal."', 
  63.  kod='".$kod."' 
  64.  WHERE ID='".$idedit."'
  65. LIMIT 1");
  66. if($save2){
  67. echo('<tr><th colspan=2 class=admin>Zapisano</th></tr>');
  68. }
  69. else{
  70. echo('<tr><th colspan=2 class=admin>Nie Zapisano</th></tr>');
  71. }
  72. }
  73. ?>

Wyswietla ze zapisalo. Dane sa zmienione, ale na puste a powinny na dane z formularza.
ShadowD
Sprzedać czy istnieje $_POST['data']; np w taki sposób:
echo"$_POST['data']"; I napisz jaki jest wynik tego działania...
Mlodycompany
nic. jak wziolem aby wyswietlalo wszystkie dane to tez nic. sad.gif

naprawilem!!! smile.gif Ale mam jeszcze jedno pytanie. Do value formularza wczytywana jest np. nazwa filmu.
Nazwa filmu jest dwuczlonowa tzn ze ma dwa slowa. Do formularza wczytuje tylko pierwsze slowo. Jak temu zaradzic??
ShadowD
Musisz objąć słowa znacznikami np:
"Zjem Cię"
czy
'Zjem Cię'
i powinno działać...

Daj np:

<input value='$zmienna'/>
gam3r
musisz użwać cudzysłowu przy uzupełnianiu formaularza przez zmienną:

  1. <?php
  2. $zmienna = "podwojny ciag";
  3.  
  4. //jezeli zrobisz tak:
  5. echo "<input value=$zmienna/>";
  6. // to php wygeneruje kod <input value=podwojny ciag/> i wtedy " ciąg"jest ignorowany
  7. //natomiast jeżeli dasz:
  8. echo "<input value='$zmienna'/>";
  9. // to php wygeneruje <input value='podwojny ciag'/> i wtedy bedzie to ok
  10. ?>
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.