使用insert into
语句将变量传递到数据库时遇到麻烦。我试图执行一条语句,还将$ses
变量插入到我的数据库中。
我的代码:
session_start();
$ses = $_SESSION['uid'];`
我的SQL语句:
$sql = "INSERT INTO narocila (nameNarocilo, priceNarocilo, nameNarocnik) VALUES
((SELECT nameTaco, priceTaco FROM taco
WHERE idTaco = $idTaco), $ses)";
$result = mysqli_query($conn, $sql);
我想念什么?
答案 0 :(得分:1)
假定$ idTaco和$ ses是两个整数值 您可以使用插入选择和准备好的语句(以避免sqlinjection)并管理参数值的分配
假设$ idTaco和$ ses | $ _SESSION ['uid']是两个整数值 您可以使用插入选择和准备好的语句(以避免sqlinjection)并管理参数值的分配
$sql = "INSERT INTO narocila (nameNarocilo, priceNarocilo, nameNarocnik)
select nameTaco, priceTaco, ?
from taco
WHERE idTaco = ?;" ;
$stmt = mysqli_prepare($conn, $sql ) ;
mysqli_stmt_bind_param($stmt, "ii",$_SESSION['uid'], $idTaco);
mysqli_stmt_execute($stmt);
或直接