我的SQL查询有些奇怪的问题。我使用wamp3与PHP 7.0.7和MySQL 5.7.11。
当我填写一个自制的表格,并将其发送到另一个验证它的脚本时,我什么也得不回来!有什么不对劲,但我没有收到任何错误消息! MySQL没问题,它不会出错!当我将下面的查询包含在PHPMyAdmin中时,变量以字符串和整数变化,当然,它运行良好!只有下面的查询,在PHP代码中失败!我不知道会发生什么。
我已经联系了一位朋友和一个荷兰论坛,但是两个人都不知道答案是什么! 我使用的代码是:
$sqlquery = "
INSERT INTO
klanten
(
naam, tussenv, achternaam, gebdat,
blindziend, email, wachtwoord, adres,
busnr, postcode, postcodenlletters, woonplaats,
land, ontvfact, eigenOpm
)
VALUES
(
$vnaam, $tussenv, $anaam, $gebdat,
$blindziend, $mail, $passw1, $adres,
$bus, $postcode, $postcnll, $city,
$country, $ontvfact, $eigenopm
)
";
if(mysqli_query($sqlconnect, $sqlquery)) {
echo "Alles is succesvol toegevoegd in onze database. U zal ongenblikkelijk
terugkeren naar <a href='http://www.dikowork.com'>www.dikowork.com</a>.
Bedankt voor uw inschrijving";
}
有人有任何解决方案吗?
答案 0 :(得分:0)
你必须引用所有字符串示例,例如$ vnaam到'$ vnaam'
$sqlquery = "INSERT INTO klanten
(naam, tussenv, achternaam, gebdat, blindziend, email, wachtwoord, adres,
busnr, postcode, postcodenlletters, woonplaats, land, ontvfact, eigenOpm)
VALUES ('$vnaam', '$tussenv', '$anaam', '$gebdat', '$blindziend', '$mail', '$passw1',
'$adres', '$bus', '$postcode', '$postcnll', '$city', '$country', '$ontvfact', '$eigenopm')";
if(mysqli_query($sqlconnect, $sqlquery))
{
echo "Alles is succesvol toegevoegd in onze database. U zal ongenblikkelijk
terugkeren naar <a href='http://www.dikowork.com'>www.dikowork.com</a>.
Bedankt voor uw inschrijving";
}
但它不是一个足够的解决方案。如果你的一个字符串有引号就会失败。
为了更好的解决方案,请使用PHP中的红外语句
请查看此文件
http://php.net/manual/en/pdo.prepared-statements.php
http://www.w3schools.com/php/php_mysql_prepared_statements.asp
答案 1 :(得分:-1)
这里可能引用了引号。 最好的办法是使用prepared statements使用它,你不必担心任何事情。
$sqlquery = "INSERT INTO `klanten`
(`naam`, `tussenv`, `achternaam`, `gebdat`, `blindziend`, `email`, `wachtwoord`, `adres`,
`busnr`, `postcode`, `postcodenlletters`, `woonplaats`, `land`, `ontvfact`, `eigenOpm`)
VALUES ("'.$vnaam.'", "'.$tussenv.'", "'.$anaam.'", "'.$gebdat.'", "'.$blindziend.'", "'.$mail.'", "'.$passw1.'",
"'.$adres.'", "'.$bus.'", "'.$postcode.'", "'.$postcnll.'", "'.$city.'", "'.$country.'", "'.$ontvfact.'", "'.$eigenopm.'")";
if(mysqli_query($sqlconnect, $sqlquery))
{
echo "Alles is succesvol toegevoegd in onze database. U zal ongenblikkelijk
terugkeren naar <a href='http://www.dikowork.com'>www.dikowork.com</a>.
Bedankt voor uw inschrijving";
}
我现在已经将其作为一个字符串进行了翻译,也许你有一些整数值也可以没有引号