Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Problem z zapisem do bazy edytowanej zmiennej
Forum PHP.pl > Forum > Przedszkole
kamikaze1945
Witam. Mam problem z edycją danych. Po przejsci do pola edycja, bez problemu skrypt zmienia mi Imie, nazwisko, ulice, natomiast kolejne zmienne nie są przesyłane tylko zastępuję go zerem. Gdzie mam błąd że nie przesyła i nie zapisuje mi zmiennych do bazy? Za wszelką pomoc będę wdzięczny


Plik pokkont.php
  1. <?php
  2. include('connect.php');
  3. //edycja
  4. if(isset($_POST['edycja']))
  5. {
  6.  
  7. $id_kontrahent = $_POST['id_kontrahent'];
  8. $imie = addslashes($_POST['imie']);
  9. $nazwisko = addslashes($_POST['nazwisko']);
  10. $ulica = addslashes($_POST['ulica']);
  11. $nr_domu = ($_POST['$nr_domu']);
  12. $nr_mieszkania = ($_POST['$nr_mieszkania']);
  13. $miejscowosc = addslashes($_POST['$miejscowosc']);
  14. $kod = ($_POST['$kod']);
  15. $telefon = ($_POST['$telefon']);
  16. $pesel = ($_POST['$pesel']);
  17. $firma = addslashes($_POST['$firma']);
  18. //aktualizacja bazy
  19. $query = "UPDATE kontrahent SET `imie`= '$imie', `nazwisko`= '$nazwisko', `ulica`= '$ulica', `nr_domu`= '$nr_domu', `nr_mieszkania`='$nr_mieszkania', `miejscowosc`='$miejscowosc',`kod`='$kod', `telefon`= '$telefon', `pesel`='$pesel', `firma`= '$firma' WHERE `id_kontrahent`='$id_kontrahent'";
  20. mysql_query($query);
  21. }
  22.  
  23. $pobierz_kontrahentw = "SELECT id_kontrahent, imie, nazwisko, ulica, nr_domu, nr_mieszkania, miejsc
    owosc, kod, telefon, pesel FROM kontrahent;"
    ;
  24. $wys_kontr = mysql_query($pobierz_kontrahentw) or die(mysql_error());
  25.  
  26.  
  27. if(mysql_num_rows($wys_kontr) < 1) {
  28. //wyświetla komunikat
  29. print "<P>Tabela jest pusta.
  30. Please <a href=\"index.php\">przejdz do strony głównej</a>!</p>";
  31. }  else {
  32. //pobiera dane i tworzy tabelę z zawartością 
  33. print "
  34. <center><table celpadding=3 cellspacing=2 border=1 width=670>
  35. <tr>
  36. <th>Imie: </th>
  37. <th>Nazwisko: </th>
  38. <th>Ulica: </th>
  39. <th>Nr domu: </th>
  40. <th>Miejscowość: </th>
  41. <th>Kod: </th>
  42. <th>Telefon: </th>
  43. <th>pesel: </th>
  44. </tr>";
  45. while ($row = mysql_fetch_array($wys_kontr)) {
  46. $id_kontrahent = $row['id_kontrahent'];
  47. $imie = $row['imie'];
  48. $nazwisko = $row['nazwisko'];
  49. $ulica = $row['ulica'];
  50. $nr_domu = $row['nr_domu'];
  51. $nr_mieszkania = $row['nr_mieszkania'];
  52. $miejscowosc = $row['miejscowosc'];
  53. $kod = $row['kod'];
  54. $telefon = $row['telefon'];
  55. $pesel = $row['pesel'];
  56. $firma = $row['firma'];
  57.  
  58.  print "<tr>
  59.  <td align=center>$imie</td>
  60. <td align-center>$nazwisko</td>
  61. <td align-center>$ulica</td>
  62. <td align-center>$nr_domu/$nr_mieszkania</td>
  63. <td align-center>$miejscowosc</td>
  64. <td align-center>$kod</td>
  65. <td align-center>$telefon</td>
  66. <td align-center>$pesel</td>
  67.  
  68.  
  69.  <td align=center><a href=\"usunkontr.php?a=del&id_kontrahent={$row['id_kontrahent']}\"><img src=\"images/note_delete.gif\" alt=\"usuń\" border=\"0\" /></a><br>
  70. <a href=\"?edycja_kont.php?a=del&id_kontrahent={$row['id_kontrahent']}&sid=edycja_kont\"><img src=\"images/crayon04.png\" alt=\"edytuj\" border=\"0\" /></a></td>
  71.  
  72.  
  73.  </tr>";
  74. }
  75.  
  76. print "</table></center>";
  77. }
  78.  
  79.  
  80. ?>


A to jest skrypt edytuj_kont.php
  1. <html>
  2. <body>
  3. <?php
  4. include('connect.php'); 
  5.  
  6. $id_kontrahent = trim($_GET['id_kontrahent']);
  7.  
  8. $query = "SELECT * from `kontrahent` WHERE `id_kontrahent` ='$id_kontrahent'";
  9. $result = mysql_query($query);
  10. $data = mysql_fetch_array($result);
  11. $id_kontrahent = $data['id_kontrahent'];
  12. $imie = stripslashes($data['imie']);
  13. $nazwisko = stripslashes($data['nazwisko']);
  14. $ulica = stripslashes($data['ulica']);
  15. $nr_domu =stripslashes($data['nr_domu']);
  16. $nr_mieszkania = stripslashes($data['$nr_mieszkania']);
  17. $miejscowosc = stripslashes($data['$miejscowosc']);
  18. $kod = stripslashes($data['$kod']);
  19. $telefon = stripslashes($data['$telefon']);
  20. $pesel = stripslashes($data['$pesel']);
  21. $firma = stripslashes($data['$firma']);
  22. ?>
  23. <center><table>
  24. <tr><td colspan=2>
  25. <h4>Zmień dane</h4></td></tr>
  26.  
  27. <form action="?sid=pokkont" method="post">
  28.  
  29. <tr><td>Imię : <input type="text" name="imie" size="30" maxlength="50" value= <?php echo $data[imie]; ?>></td></tr>
  30. <tr><td>Nazwisko : <input type="text" name="nazwisko" size="30" maxlength="50" value= <?php echo $data[nazwisko]; ?>></td></tr>
  31. <tr><td>Ulica :<input type= "text" name= "ulica" size="30" maxlength="50" value= <?php echo $data[ulica]; ?>></td></tr>
  32. <tr><td>Nr domu :<input type= "text" name= "nr_domu" size="30" maxlength="50" value= <?php echo $data[nr_domu]; ?>></td></tr>
  33. <tr><td>Nr mieszkania :<input type= "text" name= "nr_mieszkania" size="30" maxlength="50" value= <?php echo $data[nr_mieszkania]; ?>></td></tr>
  34. <tr><td>Miejscowosc :<input type= "text" name= "miejscowosc" size="30" maxlength="50" value= <?php echo $data[miejscowosc]; ?>></td></tr>
  35. <tr><td>Kod :<input type= "text" name= "kod" size="30" maxlength="50" value= <?php echo $data[kod]; ?>></td></tr>
  36. <tr><td>Telefon :<input type= "text" name= "telefon" size="30" maxlength="50" value= <?php echo $data[telefon]; ?>></td></tr>
  37. <tr><td>Pesel :<input type= "text" name= "pesel" size="30" maxlength="50" value= <?php echo $data[pesel]; ?>></td></tr>
  38. <tr><td>Firma :<input type= "text" name= "firma" size="30" maxlength="50" value= <?php echo $data[firma]; ?>></td></tr>
  39. <tr><td align=center colspan=2><input type="submit" value="zmien" name="edycja">
  40. <input type="hidden" value= <?php echo $data[id_kontrahent]; ?> name="id_kontrahent"></td></tr>
  41. </form>
  42. </table><center>
  43. <p><a href="?sid=pokskladniki">Powrót</a></p>
  44. </body>
  45.  
  46. </html>
pyro
nie sprawdzałem problemu ale sie rzuca w oczy, że podatne na SQL Injection i XSS
nospor
nie: $_POST['$nr_domu']
a: $_POST['nr_domu']

analogicznie reszta

wlacz se tez wyswietlanie wszystkich bledow
<a href="http://nospor.pl/php-faq-n29.html#faq-2" target="_blank">http://nospor.pl/php-faq-n29.html#faq-2</a>
to takie bledy bedziesz widzial od razu i na forum biegac nie bedziesz

ps: i na przyszlosc przed waleniem na forum przejrzyj swoj kod jeszcze raz. przeciez te $ walą po oczach na dzien dobry
kamikaze1945
Jaki wstyd. Przepraszam nie zauważyłem. Nie wiem jak patrzyłem ze tego nie zauważyłem. Dziękuję za pomoc smile.gif
nospor
Cytat
Nie wiem jak patrzyłem ze tego nie zauważyłem.
Pamietaj bys wlaczyl wyswietlanie wszystkich bledow jak ci pisalem. Wowczas zawsze zauwazysz.

Cytat
Zamykam temat
Daruj takie teksty bo cie moderator zjedzie dostal.gif winksmiley.jpg
kamikaze1945
Dziękuje za rady smile.gif Juz jedno upomnienie dostałem choć na samym początku nie wiedziałem za co winksmiley.jpg
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.