将$ _SESSION传递到数据库

时间:2019-02-09 16:35:00

标签: php sql

使用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);

我想念什么?

1 个答案:

答案 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);

或直接