Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Edycja wpisów
Forum PHP.pl > Forum > Przedszkole
sitak
Nie moge znaleźć odpowiedzi na moje pytanie dot.poniższego kodu tzn. wszystko w nim ok oprocz tego że nie moge edytować wpisów co bym nie robił zawsze wyświetli się "Niestety nie udało się poprawić danych"
Nie wiem gdzie zrobiłem błąd będe wdzięczny za pomoc .

  1. <?php
  2. // połączenie z bazą
  3. mysql_connect ("localhost", "root", "krasnal" )or die ("nie mozna polaczyc sie z baza danych!!");
  4. mysql_select_db ("cwiczenia") or die ("nie mozna połączyc sie z baza cwiczenia");
  5. if ($_POST['action'] == 'add')
  6. {
  7.  $imie_f=$_POST['imie'];
  8.  $nazw_f=$_POST['nazwisko'];
  9.  $tele_f=$_POST['telefon'];
  10.    if ($imie_f && $nazw_f && $tele_f)
  11.    {  
  12.    $query="INSERT INTO ksiazkatelefoniczna (imie,nazwisko,telefon) VALUES ('$imie_f', '$nazw_f', '$tele_f')";
  13.    $wynik=mysql_query($query);
  14.      if($wynik)
  15.      {
  16.      print ("Dodano poprawnie do bazy ");
  17.      }
  18.      else
  19.      {
  20.       print ("Nie udalo sie dodac do bazy");
  21.      }
  22.  }
  23.  else
  24.  {  
  25.  print ("Proszę wypełnić wszystkie pola formularza!!!");
  26.  }
  27. }
  28. elseif ($_POST['action'] =='popraw')
  29. {
  30. $imie_f=$_POST['imie'];
  31. $nazw_f=$_POST['nazwisko'];
  32. $tele_f=$_POST['telefon'];
  33. $nr_f=$_POST ['id'];
  34.    if ($imie_f && $nazw_f && $tele_f)
  35.    {
  36.    $query ="UPDATA ksiazkatelfeoniczna SET imie='$imie_f' , nazwisko='$nazw_f' , telefon='$tele_f' , WHERE nr='$nr_f';";
  37.    $wynik= mysql_query($query);
  38.    if ($wynik)
  39.    {
  40.    print ("Dane poprawiono");
  41.    }
  42.    else
  43.    {
  44.    print ("Niestety nie udało się poprawić danych");
  45.    }
  46.  }
  47. }
  48. elseif ($_GET['action'] == 'edytuj')
  49. {
  50. $query ="SELECT * FROM ksiazkatelefoniczna WHERE nr='".$_GET['id']."';";
  51. $wynik= mysql_query($query);
  52. $record= mysql_fetch_assoc($wynik);
  53. $nr=$rekord['nr'];
  54. $imie= $rekord['imie'];
  55. $nazwisko=$rekord['nazwisko'];
  56. $telefon=$rekord['telefon'];
  57. print '<FORM METHOD="POST">edycja danych:
  58. <INPUT TYPE="hidden" NAME="action" VALUE="popraw">
  59. <INPUT TYPE="hidden" NAME="id" VALUE="'.$nr.'">
  60. <TABLE>
  61. <TR><TD>imię:</TD><TD><INPUT TYPE="text" NAME="imie" VALUE="'.$imie.'"></TD></TR>
  62. <TR><TD>nazwisko:</TD><TD><INPUT TYPE="text" NAME="nazwisko" VALUE="'.$nazwisko.'"></TD></TR>
  63. <TR><TD>telefon:</TD><TD><INPUT TYPE="text" NAME="telefon" VALUE="'.$telefon.'"></TD></TR>
  64. </TABLE>
  65. <INPUT TYPE="submit" VALUE="popraw !"></FORM>';
  66. }
  67. elseif ($_GET['action'] =='skasuj')
  68. {
  69.    $wynik= mysql_query ("DELETE FROM ksiazkatelefoniczna WHERE nr='".$_GET['id']."';");
  70. }
  71. $wynik = mysql_query ("SELECT*FROM ksiazkatelefoniczna ;") or die ("wystapil wlad w pytaniu!");
  72. print ("<TABLE CELLPADDING=5 BORDer=1>");
  73. print ("<TR><TD>Imie</TD><TD>nazwisko</TD>");
  74. print ("<TD>Telefon</TD><TD><b>Akcja</b></TD><TD><b>Akcja<b/></TD></TR>");
  75. //odczyt z bazy i wyswietlenie
  76. while ($rekord = mysql_fetch_assoc ($wynik))
  77. {
  78. $nr=$rekord['nr'];
  79. $imie= $rekord['imie'];
  80. $nazwisko=$rekord['nazwisko'];
  81. $telefon=$rekord['telefon'];
  82. print ("<TR><TD>$imie</TD><TD>$nazwisko</TD>");
  83. print ("<TD>$telefon</TD>");
  84. print ("<TD><a href=\"nic.php?action=skasuj&id=$nr\" TITLE=\"Skasuj wpis\">usuń</a>");
  85. print ("<TD><a href=\"nic.php?action=edytuj&id=$nr\" TITLE=\"edytuj wpis\">edytuj</a></td>");
  86. print ("</TD></TR>");
  87.  
  88. }
  89. print ("</TABLE");
  90. print ("<br>");
  91. print '<FORM METHOD="POST">Nowy rekord:
  92. <INPUT TYPE="hidden" NAME="action" VALUE="add">
  93. <TABLE>
  94. <TR><TD>imię: </TD><TD><INPUT TYPE="text" NAME="imie"></TD></TR>
  95. <TR><TD>nazwisko: </TD><TD><INPUT TYPE="text" NAME="nazwisko"></TD></TR>
  96. <TR><TD>telefon: </TD><TD><INPUT TYPE="text" NAME="telefon"></TD></TR>
  97. </TABLE>
  98. <INPUT TYPE="submit" VALUE="Dodaj!">
  99. </FORM>';
  100. ?>
Wicepsik
UPDATE a nie UPDATA

A na przyszłość polecam mysql_error" title="Zobacz w manualu PHP" target="_manual
sitak
poprawiłem na UPDATE niestety nadal nie dziala taki sam efekt
tomsi
  1. <?php
  2. $query ="UPDATA ksiazkatelfeoniczna SET imie='$imie_f' , nazwisko='$nazw_f' , telefon='$tele_f' , WHERE nr='$nr_f';";
  3. ?>

Chyba ksiazkatelefoniczna a nie ksiazkatelfeoniczna haha.gif
sitak
No napewno ksiazkatelefoniczna ja już druga literow co ja robie ze ich nie zauważam sciana.gif
Niestety nadal nic się nie zmienia nie da sie edytować pewnie gdzies kolejna literowka tylko gdzie ;/
Wicepsik
Poszukaj?
tomsi
  1. <?php
  2. $query ="UPDATA ksiazkatelfeoniczna SET imie='$imie_f' , nazwisko='$nazw_f' , telefon='$tele_f' , WHERE nr='$nr_f';";
  3. ?>


masz dwa ; na końcu

P.S.
Aha i masz , przed WHERE

  1. <?php
  2. $query ="UPDATA ksiazkatelfeoniczna SET imie='$imie_f' , nazwisko='$nazw_f' , telefon='$tele_f'  WHERE nr='$nr_f' ";
  3. ?>
piotrooo89
temat wyjaśniony ale mnie skręca jak widzę takich gości co literówki nie umieją poprawić!

rada do każdego mysql_query dodaj mysql_error i SAM poprawisz takie pierdoły!
rneo23
Zmienilem do troche na wlasne potrzeby
i wyglada tak
  1. <div align="center" style="margin-top:30px;"><a href="numer.php"><img src="img/nr.png"></a> <a href="pseuda.php"><img src="img/ps.png"></a></div>
  2. <div align="center" style="margin-top:30px;">
  3. <?php
  4. // połączenie z bazą
  5. mysql_connect ("localhost", "rneo83_szuk", "szuk" )or die ("nie mozna polaczyc sie z baza danych!!");
  6. mysql_select_db ("rneo83_szuk") or die ("nie mozna połączyc sie z baza cwiczenia");
  7. if ($_POST['action'] == 'add')
  8. {
  9. $pseudo_f=$_POST['pseudo'];
  10. if ($pseudo_f)
  11. {
  12. $query="INSERT INTO osoba (pseudo) VALUES ('$pseudo_f')";
  13. $wynik=mysql_query($query);
  14. if($wynik)
  15. {
  16. print ("Dodano poprawnie do bazy ");
  17. }
  18. else
  19. {
  20. print ("Nie udalo sie dodac do bazy");
  21. }
  22. }
  23. else
  24. {
  25. print ("Proszę wypełnić wszystkie pola formularza!!!");
  26. }
  27. }
  28. elseif ($_POST['action'] =='popraw')
  29. {
  30. $pseudo_f=$_POST['pseudo'];
  31. $nr_f=$_POST ['id'];
  32. if ($pseudo_f)
  33. {
  34. $query ="UPDATA osoba SET pseudo='$pseudo_f' WHERE nr='$nr_f' ";
  35. $wynik= mysql_query($query);
  36. if ($wynik)
  37. {
  38. print ("Dane poprawiono");
  39. }
  40. else
  41. {
  42. print ("Niestety nie udało się poprawić danych");
  43. }
  44. }
  45. }
  46. elseif ($_GET['action'] == 'edytuj')
  47. {
  48. $query = "SELECT * FROM osoba WHERE nr='".$_GET['id']."' ";
  49. $wynik= mysql_query($query);
  50. $record= mysql_fetch_assoc($wynik);
  51. $nr=$rekord['nr'];
  52. $pseudo= $rekord['pseudo'];
  53. print '<FORM METHOD="POST">edycja danych:
  54. <INPUT TYPE="hidden" NAME="action" VALUE="popraw">
  55. <INPUT TYPE="hidden" NAME="id" VALUE="'.$nr.'">
  56. <TABLE>
  57. <TR><TD>imię:</TD><TD><INPUT TYPE="text" NAME="pseudo" VALUE="'.$pseudo.'"></TD></TR>
  58. </TABLE>
  59. <INPUT TYPE="submit" VALUE="popraw !"></FORM>';
  60. }
  61. elseif ($_GET['action'] =='skasuj')
  62. {
  63. $wynik= mysql_query ("DELETE FROM osoba WHERE nr='".$_GET['id']."';");
  64. }
  65. $wynik = mysql_query ("SELECT*FROM osoba ;") or die ("wystapil wlad w pytaniu!");
  66. print ("<TABLE CELLPADDING=5 BORDer=1>");
  67. print ("<TR><TD style='min-width:250px;'>PSEUDONIM</TD><TD><b>EDYTUJ</b></TD><TD><b>USUŃ<b/></TD></TR>");
  68. //odczyt z bazy i wyswietlenie
  69. while ($rekord = mysql_fetch_assoc ($wynik))
  70. {
  71. $nr=$rekord['nr'];
  72. $pseudo= $rekord['pseudo'];
  73. print ("<TR><TD>$pseudo</TD>");
  74. print ("<TD align='center'><a href=\"index.php?action=edytuj&id=$nr\" TITLE=\"edytuj wpis\"><img src='img/edit.png'></a></td>");
  75. print ("<TD align='center'><a href=\"index.php?action=skasuj&id=$nr\" TITLE=\"Skasuj wpis\"><img src='img/delete.png'></a>");
  76. print ("</TD></TR>");
  77.  
  78. }
  79. print ("</TABLE");
  80. print ("<br>");
  81. print '<FORM METHOD="POST"><b>Dodaj nowy pseudonim:</b>
  82. <INPUT TYPE="hidden" NAME="action" VALUE="add">
  83. <TABLE>
  84. <TR><TD width="50">Pseudonim:</TD><TD width="150"><INPUT TYPE="text" NAME="pseudo"></TD><TD><INPUT TYPE="submit" VALUE="Dodaj"></TD></TR>
  85. </TABLE>
  86. </FORM>';
  87. ?></div>


Ale nie działa opcja USUN i EDYTUJ - nie pobiera ID

A baza wyglada tak:
  1. --
  2. -- Struktura tabeli dla `lotto`
  3. --
  4.  
  5. CREATE TABLE IF NOT EXISTS `lotto` (
  6. `id` int(11) NOT NULL AUTO_INCREMENT,
  7. `numer` varchar(255) NOT NULL DEFAULT '',
  8. PRIMARY KEY (`id`),
  9. KEY `idx_name` (`numer`)
  10. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
  11.  
  12. --
  13. -- Zrzut danych tabeli `lotto`
  14. --
  15.  
  16. INSERT INTO `lotto` (`id`, `numer`) VALUES
  17. (1, '4546468974967945'),
  18. (2, '5897459867954654');
  19.  
  20. -- --------------------------------------------------------
  21.  
  22. --
  23. -- Struktura tabeli dla `osoba`
  24. --
  25.  
  26. CREATE TABLE IF NOT EXISTS `osoba` (
  27. `id` int(11) NOT NULL AUTO_INCREMENT,
  28. `pseudo` varchar(255) NOT NULL DEFAULT '',
  29. PRIMARY KEY (`id`),
  30. KEY `idx_name` (`pseudo`)
  31. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
  32.  
  33. --
  34. -- Zrzut danych tabeli `osoba`
  35. --
  36.  
  37. INSERT INTO `osoba` (`id`, `pseudo`) VALUES
  38. (1, 'rneo83'),
  39. (4, 'rafik');
gigzorr
tam gdzie ci nie działa to wstawiaj
  1. echo mysql_errno() . ": " . mysql_error() . "\n";

i wszystko wyjdzie na jaw , mi jeden z forumowiczow tak podpowiedzial , i jak narazie to dziala to super smile.gif
mortus
Linia 34: UPDATA!
Linia 48, 63, 71 i jeszcze kilka innych: A gdzie w tabeli osoba masz pole nr?
Stosuj
  1. mysql_query (...) or die ("Błąd: " . mysql_error());
i wszystko widać jak na dłoni.
Kojak
w linii 71 masz:

  1. $nr=$rekord['nr'];


a powinno być:

  1. $nr=$rekord['id'];


reszty nie sprawdzałem...
rneo23
ppoprawki zrobilem ale nadal nie dziala sad.gif wylapuje id ale nie kasuje ani nie edytuje

  1. <html>
  2. <head>
  3. <title>Administracja</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
  5. </head>
  6. <body>
  7. <div align="center" style="margin-top:30px;"><a href="numer.php"><img src="img/nr.png"></a> <a href="pseuda.php"><img src="img/ps.png"></a></div>
  8. <div align="center" style="margin-top:30px;">
  9. <?php
  10. // połączenie z bazą
  11. mysql_connect ("localhost", "rneo83_szuk", "szuk" )or die ("nie mozna polaczyc sie z baza danych!!");
  12. mysql_select_db ("rneo83_szuk") or die ("nie mozna połączyc sie z baza cwiczenia");
  13. if ($_POST['action'] == 'add')
  14. {
  15. $pseudo_f=$_POST['pseudo'];
  16. if ($pseudo_f)
  17. {
  18. $query="INSERT INTO osoba (pseudo) VALUES ('$pseudo_f')";
  19. $wynik=mysql_query($query);
  20. if($wynik)
  21. {
  22. print ("Dodano poprawnie do bazy ");
  23. }
  24. else
  25. {
  26. print ("Nie udalo sie dodac do bazy");
  27. }
  28. }
  29. else
  30. {
  31. print ("Proszę wypełnić wszystkie pola formularza!!!");
  32. }
  33. }
  34. elseif ($_POST['action'] =='popraw')
  35. {
  36. $pseudo_f=$_POST['pseudo'];
  37. $nr_f=$_POST ['id'];
  38. if ($pseudo_f)
  39. {
  40. $query ="UPDATE osoba SET pseudo='$pseudo_f' WHERE nr='$nr_f' ";
  41. $wynik= mysql_query($query);
  42. if ($wynik)
  43. {
  44. print ("Dane poprawiono");
  45. }
  46. else
  47. {
  48. print ("Niestety nie udało się poprawić danych");
  49. }
  50. }
  51. }
  52. elseif ($_GET['action'] == 'edytuj')
  53. {
  54. $query = "SELECT * FROM osoba WHERE nr='".$_GET['id']."' ";
  55. $wynik= mysql_query($query);
  56. $record= mysql_fetch_assoc($wynik);
  57. $nr=$rekord['id'];
  58. $pseudo= $rekord['pseudo'];
  59. print '<FORM METHOD="POST">edycja danych:
  60. <INPUT TYPE="hidden" NAME="action" VALUE="popraw">
  61. <INPUT TYPE="hidden" NAME="id" VALUE="'.$nr.'">
  62. <TABLE>
  63. <TR><TD>imię:</TD><TD><INPUT TYPE="text" NAME="pseudo" VALUE="'.$pseudo.'"></TD></TR>
  64. </TABLE>
  65. <INPUT TYPE="submit" VALUE="popraw !"></FORM>';
  66. }
  67. elseif ($_GET['action'] =='skasuj')
  68. {
  69. $wynik= mysql_query ("DELETE FROM osoba WHERE nr='".$_GET['id']."';");
  70. }
  71. $wynik = mysql_query ("SELECT*FROM osoba ;") or die ("wystapil wlad w pytaniu!");
  72. print ("<TABLE CELLPADDING=5 BORDER=1>");
  73. print ("<TR><TD style='min-width:250px;'>PSEUDONIM</TD><TD><b>EDYTUJ</b></TD><TD><b>USUŃ<b/></TD></TR>");
  74. //odczyt z bazy i wyswietlenie
  75. while ($rekord = mysql_fetch_assoc($wynik))
  76. {
  77. $nr=$rekord['id'];
  78. $pseudo= $rekord['pseudo'];
  79. print ("<TR><TD>$pseudo</TD>");
  80. print ("<TD align='center'><a href=\"pseuda.php?action=edytuj&id=$nr\" TITLE=\"edytuj wpis\"><img src='img/edit.png'></a></td>");
  81. print ("<TD align='center'><a href=\"pseuda.php?action=skasuj&id=$nr\" TITLE=\"Skasuj wpis\"><img src='img/delete.png'></a>");
  82. print ("</TD></TR>");
  83.  
  84. }
  85. print ("</TABLE");
  86. print ("<br>");
  87. print '<FORM METHOD="POST"><b>Dodaj nowy pseudonim:</b>
  88. <INPUT TYPE="hidden" NAME="action" VALUE="add">
  89. <TABLE>
  90. <TR><TD width="50">Pseudonim:</TD><TD width="150"><INPUT TYPE="text" NAME="pseudo"></TD><TD><INPUT TYPE="submit" VALUE="Dodaj"></TD></TR>
  91. </TABLE>
  92. </FORM>';
  93. ?></div></body>
  94. </html>
mortus
Ponawiam pytanie, gdzie w tabeli osoba masz pole nr? Przyjrzyj się dokładnie zapytaniom w liniach 40 i 69 w kodzie z poprzedniego postu. Mieszasz zmienne z php-a z nazwami kolumn tabeli. Musisz wiedzieć co jest czym!
rneo23
rozbudowa
mam problem z wyszukiwarka mam taki kod ale nic nie szuka
  1. <html>
  2. <head>
  3. <title>Administracja</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. <link rel="stylesheet" href="css/styl.css" type="text/css">
  6. </head>
  7. <body>
  8. <center>
  9. <table cellpadding='0' cellspacing='0' width='750'>
  10. <?
  11. if (isset($fraza)) {
  12. if ($fraza != "") {
  13. include('inc/db.php');
  14. if ($lacze = @mysql_connect($dbhost, $dbuser, $dbpass)) {
  15. if (mysql_select_db($dbname)) {
  16. $query = "SELECT * FROM $nt WHERE
  17. imie LIKE '%$fraza%' OR
  18. nazwisko LIKE '%$fraza%'
  19. ORDER BY id DESC LIMIT $limit_g";
  20. $result = mysql_query($query);
  21. if ($result && mysql_num_rows($result) != 0) {
  22. while ($record = mysql_fetch_array($result)) {
  23. $id=$record['id'];
  24. $imie=$record['imie'];
  25. $nazwisko=$record['nazwisko'];
  26. print "<table><caption>Lista danych:</caption>
  27. <thead><tr>
  28. <th scope='col'>Imię</th>
  29. <th scope='col'>Nazwisko</th>
  30. </tr></thead>
  31. <tfoot>
  32. <tr>
  33. <td colspan='12'></td>
  34. </tr></tfoot>
  35. <tbody><tr>
  36. <th scope='row' id='r0'>$imie</th>
  37. <td>$nazwisko</td>
  38. </tbody></tr></table>";
  39. }
  40. } else {
  41. print "<tr><th width='100%' bgcolor='blue'>:: Brak nowości</th></tr>
  42. <tr>
  43. <td width='100%' align='center' bgcolor='lightblue'>
  44. Przykro nam, ale na serwisie nie znaleziono żadnych nowości spełniających kryteria !
  45. </td>
  46. </tr>\n";
  47. }
  48. } else {
  49. print "<tr><th width='100%' bgcolor='blue'>:: Błąd bazy</th></tr>
  50. <tr>
  51. <td width='100%' align='center' bgcolor='lightblue'>
  52. Nie można otworzyć bazy... Spróbuj ponownie...
  53. </td>
  54. </tr>\n";
  55. }
  56. } else {
  57. print "<tr><th width='100%' bgcolor='blue'>:: Błąd bazy </th></tr>
  58. <tr>
  59. <td width='100%' align='center' bgcolor='lightblue'>
  60. Nie można nawiązać połączenia z bazą danych... Spróbuj ponownie...
  61. </td>
  62. </tr>\n";
  63. }
  64. } else {
  65. ?><form method='get'>
  66. <input type='text' name='fraza' value='<? print $fraza; ?>' size='20'>
  67. <input type='submit' value='Szukaj'>
  68. </form><?
  69. }
  70. } else {
  71. ?><form method='get'>
  72. <input type='text' name='fraza' value='<? print $fraza; ?>' size='20'>
  73. <input type='submit' value='Szukaj'>
  74. </form><?
  75. }
  76. ?>
  77. </table>
  78. </center>
  79. </body>
  80. </html>
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.