Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Pobieranie i edytacja danych
Forum PHP.pl > Forum > Przedszkole
Peter12
Witam mam taki oto kod:
  1. <?
  2. session_start(); // Na samej górze zadeklaruj sesję.
  3. if(!session_is_registered("uzytkownik")){ // Sprawdza zmienną sesji.
  4. header("location:index.php"); // Przekierowanie do index.php
  5. }
  6. ?>
  7.  
  8. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  9. <html lang="pl">
  10. <head>
  11. <title> Edytuj newsa - Panel admina </title>
  12. <meta http-equiv="content-type" content="text/html; charset=utf-8">
  13. <link rel="stylesheet" type="text/css" href="style.css" >
  14. <!--[if gte IE 5]>
  15. <link rel="stylesheet" href="styleie.css" />
  16. <![endif]-->
  17. </head>
  18. <body>
  19. <div id="box">
  20. <div id="logo"><img src="images/logo1.png" alt=""></div>
  21. <div id="trescup"><p>Edytuj newsa</p></div>
  22. <div id="trescog"><p>
  23. <?php
  24. $pobierzdane = $_POST['pobierzdane'];
  25. $zmien = $_POST['zmien'];
  26. $nag = $_POST['naglowek'];
  27. $tre = $_POST['tresc'];
  28. $iddd = $_POST['id'];
  29. if($pobierzdane) {
  30. $con = mysql_connect("localhost", "xx", "xx") or die (mysql_error());
  31. mysql_select_db("xx", $con) or die (mysql_error());
  32. $zapytanie = mysql_query("Select * FROM futsal_news");
  33. while($rek = mysql_fetch_array($zapytanie)) {
  34. echo "<form style='margin-left:10px;' method='post' action='$PHP_SELF'\n";
  35. echo "<input type='text' name='id' value=\"$rek[id]\">";
  36. echo "<br>";
  37. echo "<input type='text' name='naglowek' value=\"$rek[naglowek]\">";
  38. echo "<br>";
  39. echo "<textarea name='tresc' rows='10' cols='50'>".$rek['tresc']."</textarea><br>";
  40. echo "<input type='submit' name='zmien' />";
  41. echo "</form>";
  42.  
  43. if($zmien) {
  44. mysql_query("UPDATE futsal_news SET naglowek='$nag', tresc='$tre' WHERE id=$iddd");
  45.  
  46. }
  47.  
  48.  
  49. }
  50. }
  51.  
  52.  
  53. ?>
  54. <form style="margin-left:10px;" id="form1" name="form1" method="post" action="<? echo $PHP_SELF; ?>">
  55. <input type="submit" name="pobierzdane" id="pobierzdane" value="Pobierz dane" />
  56. </form>
  57. </p></div>
  58. <div id="trescdo2"></div>
  59. <?php
  60. include('inc/adminmenu.php');
  61. ?>
  62.  
  63. </div>

Skrypt pobiera dane z bazy danych, ale gdy je edytuje i klikam button 'zmien' nie zmienia nic w bazie, co może być tego przyczyną?
sadistic_son
  1. mysql_query("UPDATE futsal_news SET naglowek='$nag', tresc='$tre' WHERE id=$iddd");

W Twoim skrypcie, gdy $iddd ma wartość np. 31 do bazy zostanie wysłane zapytanie nakazujące dokonać zmian tam gdzie id jest równe '.31.'. Nie potrzebny jest cudzysłów ani kropki.
Peter12
Niestety dalej nie zmienia danych.

@edit
Dalej nic :<
sadistic_son
Linijkę 28 z powyższego zmień na $iddd = $_POST['id'];
kadlub
masz literówke $_POST['tresc']; a name w formularzu masz trescc zmien to
Peter12
Po powyższych zamianach dalej nie dziala.
A jeśli chodzi o formularz
  1. echo "<form style='margin-left:10px;' method='post' action='$PHP_SELF'\n";
  2. echo "<input type='text' name='id' value=\"$rek[id]\">";
  3. echo "<br>";
  4. echo "<input type='text' name='naglowek' value=\"$rek[naglowek]\">";
  5. echo "<br>";
  6. echo "<textarea name='tresc' rows='10' cols='50'>".$rek['tresc']."</textarea><br>";
  7. echo "<input type='submit' name='zmien' />";
  8. echo "</form>";

to wszystkie apostrofy są dobrze zrobione?

Odświeżam!
kadlub
  1.  
  2. if($zmien) {
  3. mysql_query("UPDATE futsal_news SET naglowek='$nag', tresc='$tre' WHERE id=$iddd");
  4.  
  5. }
  6.  


daj to tak żeby nie był w pętli while i w tym if($pobierzdane) czyli za tymi klamerkami wszystkimi i zobacz czy działa
Peter12
Cytat(kadlub @ 17.02.2011, 15:24:24 ) *
  1.  
  2. if($zmien) {
  3. mysql_query("UPDATE futsal_news SET naglowek='$nag', tresc='$tre' WHERE id=$iddd");
  4.  
  5. }
  6.  


daj to tak żeby nie był w pętli while i w tym if($pobierzdane) czyli za tymi klamerkami wszystkimi i zobacz czy działa

Wielkie dzięki teraz działa jak należy, plusik oczywiście i panu sadistic_son również za podpowiedzi.
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.