Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL] Problem z aktualizacją bazy danych
butek
post
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 3.05.2008

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


Są dwa formularze . W pierwszy wpisuję pesel który pobierany jest z bazy. Następnie pojawia się drugi formularz z danym peselem i imieniem które próbuje zmienic przez wpisanie go do drugiego formularza i wysłanie go do bazy (aktualizacja imienia), ale nie działa. Dlaczego ?
  1. <?php
  2. //error_reporting(0); 
  3. <HTML>
  4. <head>
  5. <meta http-equiv="Content-Language" content="pl">
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  7. <title>Rekrutacja 2008 edycja</title>
  8. </head>
  9. <BODY>
  10. <center><H1>Rekrutacja 2008 edycja</H1>
  11. ';
  12.  
  13.  
  14. echo' o co chodzi';
  15. $url="xxx";
  16. $login="xxx";
  17. $haslo="xxx";
  18. $nazwa_bazy="xx";
  19. $tabela="xxx";
  20. if(!mysql_connect($url,$login,$haslo))
  21. {echo'błędy mysql<br>';}
  22. else
  23. {echo'połączono się z bazą';mysql_query('SET NAMES 'utf8'');mysql_select_db($nazwa_bazy);};
  24.  
  25. if(!empty($_POST['dalej1'])){$dalej1=$_POST['dalej1'];}else{$dalej1=0;};
  26. if(!empty($_POST['dalej2'])){$dalej2=$_POST['dalej2'];}else{$dalej2=0;};
  27.  
  28. if(empty($dalej1))
  29. {
  30. //PIERWSZY FORMUALRZ
  31. echo '<form method="POST" action="rekrutacja2008edycjabut.php">';
  32. Pesel(*)<input type="text" name="pesel" ><br>
  33. <br><br>
  34. <input type="hidden" name="dalej1" value="1">
  35. <input type="reset" value="Wyczyść" name="reset">
  36. <input type="submit" value="Zapisz">
  37. </form>';
  38. }else{
  39.  
  40. //odebranie wszystkich zmiennych z formularza
  41.  
  42. if(!empty($_POST['pesel'])){$pesel=$_POST['pesel'];}else{$pesel=0;};
  43. echo" pesel $pesel";
  44. if(empty($pesel) )
  45. {
  46. echo'<p align="center">
  47. UWAGA - nie zaznaczyłeś żądanej odpowiedzi.</p>
  48. <p align="center">
  49. <a href=javascript:history.back()>Powrót do formularza</a>
  50. </p>
  51. ';
  52. exit();
  53. };
  54.  
  55.  
  56. mysql_select_db($nazwa_bazy);
  57. //$tabela='dane';
  58. $zapytanie_sort = "SELECT * FROM $tabela where pesel='$pesel'";
  59. //$zapytanie_sort = "SELECT nazwisko, imie FROM $tabela WHERE pesel = '$pesel'";
  60. $wynik=mysql_query($zapytanie_sort);
  61. $row = mysql_fetch_array($wynik);
  62. $imie=$row['imie'];
  63. $nazwisko=$row['nazwisko'];
  64. echo"<br>Szukany uczeń to $imie $nazwisko<br>";
  65.  
  66. if(empty($dalej2))
  67. {
  68. //DRUGI FORMULARZ
  69. <form method=\"POST\" action=\"rekrutacja2008edycjabut.php\">
  70. <input type=\"text\" name=\"pesel\" value=\"$pesel\">
  71. <input type=\"text\" name=\"imie_new\" value=\"$imie\">
  72. <input type=\"hidden\" name=\"dalej2\" value=\"1\">
  73. <input type=\"submit\" value=\"wyslij\">
  74. </form>
  75. ";
  76. }else{
  77. if(!empty($_POST['imie_new'])){$imie_new=$_POST['imie_new'];}else{$imie_new=0;};
  78. if(!empty($_POST['pesel'])){$pesel=$_POST['pesel'];}else{$pesel=0;};
  79. echo"nowe imie $imie_new<br>";
  80. $zapytanie_new="UPDATE dane SET imie='$imie_new' WHERE pesel='$pesel'";
  81. mysql_query($zapytanie_new);
  82. }
  83. }
  84.  
  85. echo'<br>
  86. <a href=javascript:history.back()>Powrót do ćwiczenia</a><br><br>
  87. <a href="rekrutacja2008edycjabut.php">Powrót do spisu ćwiczeń</a>';
  88. echo'</center></BODY>
  89. </HTML>
  90. ';
  91. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Przemo_
post
Post #2





Grupa: Zarejestrowani
Postów: 62
Pomógł: 1
Dołączył: 12.06.2007

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


  1. <?php
  2. $zapytanie_new="UPDATE dane SET imie='$imie_new' WHERE pesel='$pesel'";
  3. ?>


zamień na

  1. <?php
  2. $zapytanie_new="UPDATE dane SET imie='" . $imie_new ."' WHERE pesel='" . $pesel ."'";
  3. ?>
Go to the top of the page
+Quote Post
.radex
post
Post #3





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

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


O co ci, Przemo_ chodzi? Było dobrze. Problem tkwi gdzie indziej.

butek - popracuj nad wyglądem kodu, bo ciężko się z takiej papki wyczytać.

Ten post edytował radex_p 23.05.2008, 20:40:11
Go to the top of the page
+Quote Post
butek
post
Post #4





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 3.05.2008

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


Zrobiłem tak jak Przemo_ sugerował , ale bez zmian
Go to the top of the page
+Quote Post
Tibod
post
Post #5





Grupa: Zarejestrowani
Postów: 108
Pomógł: 2
Dołączył: 9.05.2007
Skąd: INTERNET

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


Zgadzam się z @radex_p: skrypt jest totalnie nieczytelny i strasznie zagmatwany.

Ale....
Aby skrypt doszedł do zapisu danych do foemularz potrzebuje przez GET dalej 2 i dalej1. W drugim formularzu musisz dopisać
Kod
<input type="hidden" name="dalej1" value="1">


Ten post edytował Tibod 23.05.2008, 23:07:42
Go to the top of the page
+Quote Post
butek
post
Post #6





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 3.05.2008

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


Czegos nie łapię (chyba nawet napewno) z tymi bazami. Dlaczego nie działa mi poniższy skrypt ? Nie aktualizuje mi bazy
<?php
error_reporting(E_ALL);
//error_reporting(0);
echo'
<HTML>
<head>
<meta http-equiv="Content-Language" content="pl">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Rekrutacja 2008 edycja</title>
</head>
<BODY>
<center><H1>Rekrutacja 2008 edycja</H1>
';

  1. <?php
  2. $url="xxx";
  3. $login="xxx";
  4. $haslo="xxx";
  5. $nazwa_bazy="xxx";
  6. $tabela="dane";
  7. if(!mysql_connect($url,$login,$haslo))
  8. {echo'błędy mysql<br>';}
  9. else
  10. {echo'połączono się z bazą';mysql_query('SET NAMES 'utf8'');mysql_select_db($nazwa_bazy);};
  11.  
  12.  
  13. $zapytanie_new="UPDATE dane SET nazwisko = nowenazwisko WHERE pesel=1234567 ";
  14. mysql_query($zapytanie_new);
  15.  
  16. //<a href="rekrutacja2008edycja.php">Powrót do spisu ćwiczeń</a>';
  17. echo'</center></BODY>
  18. </HTML>
  19. ';
  20. ?>
Go to the top of the page
+Quote Post
piotrooo89
post
Post #7


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




przyczyn może być dużo,

  1. <?php
  2. $zapytanie_new="UPDATE dane SET nazwisko ="nowenazwisko" WHERE pesel=1234567 ";
  3. ?>


a może dodaj mysql_error i pokaż może coś zwraca.
Go to the top of the page
+Quote Post
butek
post
Post #8





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 3.05.2008

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


mysql_error() nie wyrzuca żadnych błędów
Go to the top of the page
+Quote Post
piotrooo89
post
Post #9


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




jesteś pewny że nie update'uje tego? sprawdzałeś w np. phpmyadmin?
Go to the top of the page
+Quote Post
butek
post
Post #10





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 3.05.2008

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


Powinno być
  1. <?php
  2. $zapytanie_new="UPDATE dane SET nazwisko = 'nowenazwisko' WHERE pesel='1234567' ";
  3. ?>
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: 23.08.2025 - 17:13