Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Przekazywanie danych z formularza
Forum PHP.pl > Forum > Przedszkole
Ruda Grażyna
Witam,

N/w kod ma za zadanie pobranie danych z formularza HTML, oraz za pomocą PHP(funkcja dodaj) zapisanie w bazie danych Mysql.

Niestety nie mogę znaleźć błędu. ponieważ wyskakuje mi komunikat "Niepoprawne dane" - po wykonaniu kodu w pasku przegladarki pojawiają sie zmienne ($id oraz $nazwa) natomiast nie zapisuję sie bezpośrednio w bazie danych.


  1.  
  2. function dodaj ($id , $nazwa){
  3. /*sprawdzanie poprawnosci przekazywanych danych*/
  4. if ($nazwa == ''){
  5. echo ('Brak danych: prosze uzupelnic pole Imie i nazwisko');
  6. return;
  7. }
  8.  
  9. if ($id == '') $id = 'NULL';
  10.  
  11. //Utworzenia i wykonywanie zapytania
  12. $query = "INSERT INTO Autorzy VALUES ($id , '$nazwa')";
  13.  
  14. if(!mysql_query ($query , $db_lnk)){
  15. echo ('Wystapil blad; zapytanie zostalo odrzucone ... <br>');
  16. return;
  17. }
  18. //Pobranie informacji o liczbie wstawionych wierszy
  19. $rowsNo = mysql_affected_rows ($db_lnk);
  20.  
  21. echo ('Zapytanie zostalo wykonane.<br>');
  22. echo ("Liczba dodanych rekordow: $rowsNo<br>");
  23.  
  24. // Zamkniecie polaczenia z baza
  25. if (!@mysql_close()){
  26. echo ('Wystapil blad podczas zamykania polaczenia <br>');
  27. }
  28. }
  29.  
  30. if(isSet($_GET['nazwa']) && isSet ($_GET['id'])){
  31. dodaj($_GET['id'] , $_GET['nazwa']);
  32. }
  33. else {
  34. echo ('Niepoprawne dane');
  35. }
  36.  
_Borys_
Zmień isset na !empty , nazwa i id zawsze będzie po wysłaniu formularza ale !empty sprawdzi czy nie są puste.
  1. if (!empty($_GET['nazwa']) && !empty($_GET['id']))
  2. {
  3. dodaj($_GET['id'], $_GET['nazwa']);
  4. } else
  5. {
  6. echo ('Niepoprawne dane');
  7. }

Jeśli to nie pomoże to znaczy, że z formularzem coś nie tak.
Ruda Grażyna
Przelecialem jeszcze raz var_dumpem, kod jest prawidłowy wstawiając zarówno "!empty" jak i "isSet", blad dotyczyl indeksu id w bazie danych.

Mimo wszystko dzięki za pomoc smile.gif
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.