Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/sql] nie moge znalęść błędu z w skrypcie zapisującym do BD farmularz
Forum PHP.pl > Forum > Przedszkole
wojtekwro
zamieszcze 2 fragment samego formularza przy których wydaje mi się, że mogą być błędy a poniżej sam skrypt zapisu do DB

  1. $connection = @mysql_connect('localhost', 'root', '')or die('brak polaczenia z BD');
  2. $db = @mysql_select_db( "test" ) or die ('Nie mogę połączyć się z bazą danych');
  3.  
  4. /* zapytanie do konkretnej tabeli */
  5. $wynik1 = mysql_query("SELECT * FROM userzy")or die('Błąd zapytania');
  6.  
  7. if( mysql_num_rows( $wynik1 ) > 0)
  8. {
  9. /* najpierw inicjujemy początek znaczników <form>, bo inaczej będą się w pentli wywyoływały, to samo z <select> */
  10. echo '<select name="osoba">';
  11. /* Ja używam mysql_fetch_array() - zwraca wiersze spełniające zapytanie*/
  12. while ( $row1 = mysql_fetch_array( $wynik1 ) )
  13. {
  14. /* tutaj same elementy wyświetlane w polu select, czyli..*/
  15. /* "pole" to oczywiście nazwa kolumny do jakiej chcesz się odwołać*/
  16.  
  17. echo '<option>'.$row1["imie"].'</option>';
  18.  
  19. }
  20. /*na końcu zamykamy tagi*/
  21. echo '</select></form>';
  22. }
  23.  
  24. //--------------------------------------------------------------------------------------------


  1. <?php
  2. if ($_SESSION['LOGGED'] != TRUE) {
  3.  echo 'nie masz uprawnień';
  4.  exit;
  5. }
  6.  
  7. // odbieramy dane z formularza
  8. $data = $_POST['data'];
  9. $osoba = $_POST['osoba'];
  10. $klient = $_POST['klient'];
  11. $faktura = $_POST['faktura'];
  12. $produkt = $_POST['produkt'];
  13. $problem = $_POST['problem'];
  14. $drozp = $_POST['drozp'];
  15. $zadania = $_POST['zadania'];
  16. $przec = $_POST['przec'];
  17. if($data AND $osoba AND $klient AND $faktura AND $produkt AND $problem AND $drozp AND $zadania AND $przec) {
  18. //laczenie z bd
  19. $connection = @mysql_connect('localhost', 'root', '')
  20. or die('brak polaczenia z BD');
  21. $db = @mysql_select_db("reklamacja")
  22. or die('Nie mogę połączyć się z bazą danych');
  23. //echo 'dodajemy rekordy';
  24. $zapytanie="INSERT INTO spis (data,osoba,klient,faktura,produkt,problem,drozp,zadania,przec) VALUES ('$data','$osoba','$klient','$faktura','$produkt','$problem','$drozp','$zadania','$przec')";
  25. $ins = mysql_query($zapytanie);
  26. if($ins) echo "Rekord został dodany poprawnie ";
  27. else echo "Błąd nie udało się dodać nowego rekordu";
  28.  
  29. mysql_close($connection);
  30. }
  31. else
  32. { echo 'sprobuj ponownie, pamiętaj by wypełnic wszystkie pola';
  33. }
  34. ?>


pola w bazię się zgadzają sprawdziłem debugerem jakie wartości są przekazywane i nie pokazuje on wartości pól z listy rozwijanej <option> xxx</option> może to stanowić problem questionmark.gif wyświetla się cały czas komunikat spróbuj ponownie pamiętaj by wypełnić wszystkie pola. Proszę was o pomoc bo jestem bezsilny już ;/
Daimos
a jak maja byc przekazywane? musisz to:
  1. <?php
  2. echo '<option>'.$row1["imie"].'</option>';
  3. ?>

zamienic na takie cos
  1. <?php
  2. echo '<option value="'.$row1["imie"].'">'.$row1["imie"].'</option>';
  3. ?>
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.