2016-12-04 3 views
-1

Ich habe ein bisschen Probleme mit meinem PHP-Code. Ich versuche, eine neue Zeile in Tabelle gebruikers einzufügen. Ich verwende eine JSON API, um die Daten von meiner C# Android App auf den Server zu stellen. Ausführen des Codes gibt einen invalid request Fehler zurück.PHP Mysqli einfügen Return Fehler ungültige Anfrage

PHP:

function registerUser($api_data) 
{ 

// connection 
$servername = "xxx"; 
$username = "xxx"; 
$password = "xxx"; 
$database = "test"; 

$mysqli = new mysqli($servername, $username, $password, $database); 

//check connection 
if(mysqli_connect_errno()) 
{ 
    API_Response(true, 'connection error'); 
} 

$register_data = json_decode($api_data); 

$leerlingnummer = intval($register_data->leerlingnummer); //passed as string, int in database 
$wachtwoord = $register_data->wachtwoord; //string 
$email = $register_data->email; //string 

$result = $mysqli->query("INSERT INTO `gebruikers` (`Leerlingnummer`, `Wachtwoord`, `Email`) VALUES ({$leerlingnummer}, {$wachtwoord}, {$email})"); 

if ($result == false) 
{ 
    API_Response(true, "{$mysqli->error}"); 
} 

else 
{  
    API_Response(false, 'SUCCESS'); 
} 

$mysqli->close(); 
} 

Datenbank sucht wie folgt: database layout

+2

Sie haben die volle Ende Nachricht genaue Fehler –

+0

'$ wachtwoord' zur Verfügung zu stellen und' $ email' sind Strings, also müssen sie zu zitieren -> '..., '{$ wachtwoord}', '{$ email}')"); ' – Sean

+0

@Sean in der Tat müssen sie eher parametrisiert werden. Aber wenn es ein Syntaxfehler in der Abfrage ist, sollte er angeblich die Fehlermeldung. Aber er bekommt etwas anderes. –

Antwort

-1

Sie sollten Ihre Daten in der INSERT-Abfrage angeben.

+0

Sie sollten, aber das ist nicht das einzige Problem. –

0

Ich habe mich noch nie so dumm gefühlt, aber der Fehler kam von der Tatsache, dass ich immer noch auf eine ältere .php Datei referenzierte. Ich war so auf das PHP-Skript konzentriert, dass ich diesen Fehler in meiner App vorher nicht bemerkt habe.

Die von Sean und Fuso empfohlenen Zitate wurden später benötigt, aber danke dafür.

Problem gelöst, sorry für einen Teil Ihrer Zeit verschwenden:/