PHP Mysql-Abfrage (INSERT) Problem
Ich habe ein Problem mit einer MySQL-Abfrage wie folgt:
Mein Skript generiert, das als ein Beispiel-Abfrage:
INSERT INTO `contacts`(`name`, `phone`, `email`, `city`, `state`, `date`) VALUES ('Test2', '123-456-7890', '[email protected]', 'mesa', 'az', '04-14-2013')
Welche, wenn ich die Tropfen direkt in PHPMyA, funktioniert gut. Allerdings, das PHP-script, den ich versuche zu verwenden, um die Abfrage zu senden von meiner website funktioniert nicht, und ich kann es nicht herausgefunden. Hier ist es:
$sql = "INSERT INTO `contacts`(`name`, `phone`, `email`, `city`, `state`, `date`) VALUES ('$name', '$phone', '$email', '$city', '$state', '$date')";
mysql_query($sql);
$result = mysql_query($sql);
if($result)
{
echo("<br>Data Input OK");
}
else
{
echo("<br>Data Input Failed");
}
Nichts macht, um die MySQL-DB und keine PHP-Fehler angezeigt, wenn ich aber echo $sql
ich die genaue Abfrage, die ich gepostet vorher.
- Haben Sie drucken Sie Ihre Abfrage, um zu sehen, ob alle erwarteten Werte gibt es? Auch nur eine Notiz, die Sie bei der Ausführung Ihrer Abfrage zwei mal, so, wenn Sie bekommen, um es zu beheben, es werden dabei 2 Einsätze pro run
- man läuft die Abfrage zweimal, Ihrem zweiten Versuch könnte sein, die andernfalls
- warum nicht einfach
print(mysql_error());
- Bitte verwenden Sie nicht
mysql_*
Funktionen im neuen code. Sie werden nicht mehr gepflegt und sind offiziell deprecated. Siehe die red box? Erfahren Sie mehr über prepared statements und PDO oder MySQLi - diesem Artikel wird Ihnen helfen, entscheiden, welche. Wenn Sie PDO, hier ist ein gutes tutorial.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Entfernen Sie einfach die einzelne Zeile
mysql_query($sql);
auf Ihren code, und Sie werden in Ordnung sein.. Aber du solltest besser anfangen zu üben, PHP MySQLi steht für PHP MySQL Improved, Z:mysql_query($sql)
.Ausführung
$sql
zweimal in Ihrem Skript, welches den Fehler verursacht, entfernen Sie bitteUnd Sie werden bereit sein zu gehen
Ich würde auch vorschlagen, zu stoppen, mit
mysql_query
wechseln Sie bitte zumysqli
oderPDO
Sind Sie sicher, dass es eine gültige Verbindung (..mysql_connect())? Versuchen Sie es mit der vollen syntax wie so..
Auch versuchen zu zwingen Begehen, nachdem Sie die Anweisung ausgeführt wird -
Die Sie ausführen mysql_query zweimal. Grund des Fehlers. Versuchen Sie mit dem folgenden code.
$result = mysql_query($sql) or die(mysql_error());
Überprüfen und sehen, was das problem verursacht.verwenden Sie diese
Versuchen
mysql_query($sql,$con);
stattmysql_query($sql);
.