PHP更新数据库失败.处理步骤


PHP Failed to update database

这是我第一次使用PHP,经过2小时的搜索我的问题,我得出的结论是,我找不到并修复它。

我希望你们能帮助我!

 <?php
require "./config/_sqlconnect.php";
$temp = $_POST;
$vname = "Peter";
$nname = "Hans";
$straße ="XY";
$strnr ="8";
$plz = "9031";
$ort = "würzburg";
$land ="deutschland";
$tel ="1334134";
$email ="asdas@aasd.com";
$datum ="21.03.1942";
$anrede ="herr";
$connection = mysql_connect($dbhost, $dbuser, $dbpass, $dbname) or die
("Verbindungsversuch fehlgeschlagen");
mysql_select_db($dbname, $connection) or die('DB FAIL');
$sql = "INSERT INTO tadresse (vname,nname,straße,strnr,plz,ort,land,tel,email,datum,anrede) VALUES($temp)";
$eintrag = "INSERT INTO tadresse (vname,nname,straße,strnr,plz,ort,land,tel,email,datum,anrede) VALUES ('$vname','$nname','$straße','$strnr','$plz','$ort','$land','$tel','$email','$datum','$anrede')";
    $eintragen = mysql_query($eintrag);
    if($eintragen == true)
        {
            echo 'RICHTIG';
        }
    else
        {
            echo 'FEHLER';
    }?>
结果:

Notice: Array to string conversion in C:'xampp'htdocs'aufgabe'text.php on line 23
FEHLER

由于错误提示您正在通过array,但需要string。你的$temp是一个数组,因为它和$_POST一样。所以如果你确定要传递$temp的话你需要这样修改:

$sql = "INSERT INTO tadresse (vname,nname,straße,strnr,plz,ort,land,tel,email,datum,anrede) VALUES('" . implode("','", $temp) . "')";

但是我看到你也有所有的变量所以你可以在VALUES中一个一个地传递,像这样:

$sql = "INSERT INTO tadresse (vname,nname,straße,strnr,plz,ort,land,tel,email,datum,anrede) VALUES('$vname', '$nname', '$straße', ....)";

我的建议是只使用英文字符,以便将$straße更改为其他字符