Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][MySQL][PHP]nie działa INSERT do bazy
Forum PHP.pl > Forum > Przedszkole
mattii
mam taki kod:

  1. if(isset($_POST['btn-dodajdziecko'])) {
  2.  
  3.  
  4. $imie = strip_tags($_POST['imie']);
  5. $nazwisko = strip_tags($_POST['nazwisko']);
  6. $data = strip_tags($_POST['data']);
  7. $lekarz = strip_tags($_POST['lekarz']);
  8.  
  9.  
  10. $imie = $DBcon->real_escape_string($imie);
  11. $nazwisko = $DBcon->real_escape_string($nazwisko);
  12. $data = $DBcon->real_escape_string($data);
  13. $lekarz = $DBcon->real_escape_string($lekarz);
  14.  
  15.  
  16. $querydd = "INSERT INTO Dziecko (idDziecko, Imię, Nazwisko, DataUr, ur, lek, foto, Rodzic_idRodzic) VALUES ('','$imie','$nazwisko','','','','','3')";
  17. mysqli_query($DBcon,$querydd);
  18.  
  19.  
  20.  
  21.  
  22.  
  23. if ($DBcon->query($querydd)) {
  24. $msg = "<div >
  25. Uzupełniono dane
  26.  
  27. </div>";
  28.  
  29. header('Refresh: 5; index.php');
  30.  
  31. }
  32.  
  33. else {
  34. $msg = "<div>
  35. ; Wystąpił błąd podczas uzupełniania danych, spróbuj ponownie !
  36. </div>";
  37. }
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44. }
  45.  
  46.  


po naciśnięciu przycisku w formularzu wykonuje się if.

wykonuje się jak trzeba - tylko insert nie dodaje nic do bazy i dostaje komunikat: Wystąpił błąd podczas uzupełniania danych, spróbuj ponownie !

zapytanie sql w phpmyadmine działa bez problemu, wiec nie ma w nim bledu...juz nie wiem gdzie jest ? w czym rzecz ?
Marek607
Dodaj sobie na końcu zapytania mysqli_error, zobaczysz wtedy w czym jest problem.
mattii
czyli tak to ma wyglądać ? bo niestety nie działa...nic nie wyświetla..

  1.  
  2. .
  3. .
  4. .
  5.  
  6. else {
  7.  
  8. $blad= mysqli_error($querydd);
  9.  
  10. $msg = "<div class='alert alert-danger'>
  11. <span class='glyphicon glyphicon-info-sign'></span> &nbsp; Wystąpił błąd podczas uzupełniania danych, spróbuj ponownie! nazwa bledu --$blad
  12. </div>" ;
  13.  
  14.  
  15.  
  16.  
  17.  
  18. }
  19.  
abel1
  1. $querydd = "INSERT INTO Dziecko (idDziecko, Imię, Nazwisko, DataUr, ur, lek, foto, Rodzic_idRodzic) VALUES ('','$imie','$nazwisko','','','','','3')";
  2. mysqli_query($DBcon,$querydd);


No cóż ja nie widzę nigdzie żebyś przekazywał cokolwiek w tym zapytaniu, w VALUES masz tylko $ime , $nazwisko i to zapewne sie zapisuje

A w phpMyAdmin jakie zapytanie wpisujesz ? Dokładnie takie samo ?
Samo zapytanie jest prawidłowe ale moim skromnym zdaniem nie zawiera ona danych do wprowadzenia
mattii
dane dwie są podane, moga być i wszystkie ale z pliku php nic nie zapisuje - zapytanie jest ok bo w php my adminie zapisze nawet tylko te dwie dane, ale już z pliku php nic do bazy danych sie nie zapisuje... od razu przechodzi do instrukcji z błędem.
abel1
po mojemu twoje zapytanie powinno wyglądać tak

  1. INSERT INTO Dziecko (idDziecko, Imię, Nazwisko) VALUES ('','$imie','$nazwisko')";

Skoro masz zamiar wstawiać tylko imię i nazwisko
mattii
ja mam zamiar wstawiać wszystkie pola tam - urpościłem zapytanie aby ominąc możliwość błędów...ale to własnie nic nie daje...
szydlak
Witam. A ustawiłeś w połączeniu do bazy SET CHARACTER_SET utf8_unicode_ci ?
Bo masz polski znak w nazwie kolumny i może on powoduje problem. W php adminie będzie działać ale w skrypcie php już nie.
viking
Oraz zapewne próbujesz wkładać string 3 w pole typu int.
Rysh
Sprawdziłeś co kolega @Marek607 zaproponował?
mattii
typu pól mi się zgadzają, ale faktycznie jeszcze musze owarunkować wpisywane dane przez usera.

problemem był ten polski znak w tabeli bazy...zmieniłem go i teraz wzystko gra jak trzeba. dzieki !
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.