我需要一双新的眼睛来帮助我发现我的代码中的错误。
<?php
ob_start();
session_start();
$sql = "INSERT INTO pets (owner_service, Gender, Age, Size, Location, idealLocation, Service, memberID)
SELECT ('{$_POST['owner_service']}', '{$_POST['gender']}', '{$_POST['age']}', '{$_POST['size']}', '$locationCommaString', '{$_POST['ideal_location']}', '{$_POST['service']}', memberID FROM members WHERE username = '{$_POST['username']}')";
if($conn->query($sql) === TRUE) {
echo "successful";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
?>
错误提示:
你的SQL语法有错误;查看与MySQL服务器版本对应的手册,以便在第2行'FROM members WHERE username = ")'附近使用正确的语法
MySQL版本是5.5.41
我想一定是:
$sql = "INSERT INTO pets (owner_service, Gender, Age, Size, Location, idealLocation, Service, memberID)
SELECT '{$_POST['owner_service']}', '{$_POST['gender']}', '{$_POST['age']}', '{$_POST['size']}', '$locationCommaString', '{$_POST['ideal_location']}', '{$_POST['service']}', memberID FROM members WHERE username = '{$_POST['username']}'";
您必须删除SELECT
之后和语句末尾的括号。你还必须学习预处理语句