PHP& MySQL插入数据错误

时间:2017-07-26 14:33:56

标签: php mysql insert

if (isset($_POST['submit'])){
    $sql_insert_data = "INSERT INTO games (title, my_platform, genre, type, release_date, publisher, developer, metacritic, "
            . "completed, dlc_extensions, achievements_support, 100_achievements) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)";

    $result_insert_data = $connect->query($sql_insert_data);
    $secure_insert = mysqli($sql_insert_data);

    $secure_insert->bind_param(
        'xyz', 
        $_POST['title'], 
        $_POST['my_platform'], 
        $_POST['genre'], 
        $_POST['type'], 
        $_POST['release_date'],
        $_POST['publisher'],
        $_POST['developer'],
        $_POST['metacritic'],
        $_POST['completed'],
        $_POST['dlc_extensions'],
        $_POST['achievements_support'],
        $_POST['100_achievements']
    );   

    $secure_insert->execute();
    echo "Inserted"

} else {
    echo "Something is wrong";
}

大家好我是新来的,所以请耐心等待。我不知道如何解决这个问题。恐怖如下:

  

致命错误:未捕获错误:在C:\ xampp \ htdocs \ Games_Project_List \ index.php中调用未定义函数mysqli():91堆栈跟踪:#0 {main}抛出C:\ xampp \ htdocs \ Games_Project_List \第91行的index.php

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:-1)

让我们来看看 bind_param

bool mysqli_stmt::bind_param ( string $types , mixed &$var1 [, mixed &$... ] )

如您所见,您必须设置变量的类型,您可以使用以下类型:

  • i - 对应变量的类型为整数
  • d - 对应变量的类型为double
  • s - 对应的变量具有类型字符串
  • b - 相应的变量是blob,将以数据包的形式发送
祝你好运!

答案 1 :(得分:-1)

$result_insert_data = $connect->query($sql_insert_data);

$secure_insert = mysqli($sql_insert_data);

据我所知,您永远不会重复使用$result_insert_data,这让我想知道您在合并后是否混淆了两个版本的代码。

另外,我可能错了,但我不记得一个名为mysqli的函数,这是你的服务器也在想的。