"Error querying database" podczas wywołania "mysqli_query"

"Error querying database" podczas wywołania "mysqli_query"
G1
  • Rejestracja:ponad 7 lat
  • Ostatnio:około 6 lat
  • Postów:15
0

Witam, mam problem z wyslaniem zapytania do bazy danych MySQL. Program wykrzacza się przy wywolaniu mysqli_query. Wyrzuca błąd Error querying database.
Bardzo proszę o pomoc ;)

Kopiuj
<?php
        $firstname = $_POST['firstname'];
        $lastname = $_POST['lastname'];
        $data_urodzenia = $_POST['data_urodzenia'];
        $miejsce_urodzenia = $_POST['miejsce_urodzenia'];
        $fangspotted = $_POST['fangspotted'];
        $visit = $_POST['visit'];
        
        $dbc = mysqli_connect('localhost','root','','pacjenci')
                or die('Error connecting to MySQL server.');
        
        $query = "INSERT INTO zapisani_pacjenci (first_name,"
                . "last_name,data_urodzenia,miejsce_urodzenia,"
                . "pierwsza_wizyta,umowiona_wizyta)"
                ."VALUES ('$firstname','$lastname','$data_urodzenia'"
                . "'$miejsce_urodzenia','$fangspotted','$visit')";
        
        $result = mysqli_query($dbc,$query)
                or die('Error querying database');
        
        mysqli_close($dbc);
           
        
        echo 'Wypełniony formularz'.'<br/>';
        echo 'Imię:'.$firstname.'<br/>';
        echo 'Nazwisko:'.$lastname.'<br/>';
        echo 'Data urodzenia:'.$data_urodzenia.'<br/>';
        echo 'Miejsce urodzenia:'.$miejsce_urodzenia.'<br/>';
        echo 'Czy jest to Twoja pierwsza wizyta?  '.$fangspotted.'<br/>';
        echo 'Data Twojej wizyty'.$visit.'<br/>';
        ?>
edytowany 1x, ostatnio: Patryk27
JD
  • Rejestracja:około 19 lat
  • Ostatnio:około 23 godziny
0

A daj sobie przed
mysqli_query

Kopiuj
echo $query;
die();

i wklej do jakiegos klienta sql
Ewentualnie wlep tutaj to i blad

G1
  • Rejestracja:ponad 7 lat
  • Ostatnio:około 6 lat
  • Postów:15
0

Tak jak mówiłeś dodałem te dwie linijki

Kopiuj
  echo $query;
        die();
        
        $result = mysqli_query($dbc,$query)
                or die('Error querying database');
        
        mysqli_close($dbc);

i wyrzuciło mi normalne zapytanie:

INSERT INTO zapisani_pacjenci (first_name,last_name,data_urodzenia,miejsce_urodzenia,pierwsza_wizyta,umowiona_wizyta)VALUES('Jan','Kowalski','29/09/1995''Warszawa','tak','23/03/2017r')

ME
  • Rejestracja:prawie 8 lat
  • Ostatnio:5 miesięcy
  • Postów:110
0

INSERT INTO zapisani_pacjenci (first_name,last_name,data_urodzenia,miejsce_urodzenia,pierwsza_wizyta,umowiona_wizyta)VALUES('Jan','Kowalski','29/09/1995''Warszawa','tak','23/03/2017r')

A co to za literka "r" na końcu drugiej daty?

edytowany 4x, ostatnio: mefsh
G1
  • Rejestracja:ponad 7 lat
  • Ostatnio:około 6 lat
  • Postów:15
0
mefsh napisał(a):

INSERT INTO zapisani_pacjenci (first_name,last_name,data_urodzenia,miejsce_urodzenia,pierwsza_wizyta,umowiona_wizyta)VALUES('Jan','Kowalski','29/09/1995''Warszawa','tak','23/03/2017r')

A co to za literka r na kńcu drugiej daty?

To po prostu skrót od rok. Tak sobie dodalem, jest to zmienna varchar tak wiec raczej nie jest to przyczyna

ME
  • Rejestracja:prawie 8 lat
  • Ostatnio:5 miesięcy
  • Postów:110
0

Tzn. wiem że r to skrót od roku, po prostu nie wiedziałem że masz tam varchara w bazie.

Wstaw taką linijkę po wykonaniu query

Kopiuj
echo mysqli_error($dbc);

I zobacz czy rzuci Ci opis do błędu.

I usuń

Kopiuj
or die('Error querying database');

żeby w ogóle poszło dalej.

edytowany 3x, ostatnio: mefsh
JD
  • Rejestracja:około 19 lat
  • Ostatnio:około 23 godziny
1

Przyjrzyj sie temu fragmentowi
29/09/1995''Warszawa'

Widzisz?

G1
Dziękuje! ;) nie zauważyłem tego kompletnie. Wszysko dziala :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.