关于mysqli的准备陈述?

时间:2015-01-30 05:49:17

标签: php mysql

的index.php

<>php
    session_start();
    require 'Sql.php';

    $_SESSION['name'] = '电视机/電視機';
    $_SESSION['attendance'] = "gmail.com";

    // if (isset($_POST['submit'])){

    $connection = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD);
    mysqli_set_charset($connection, 'utf8');
    if (!$connection) {
        die("Database connection failed: " . mysqli_error());
    }else{
        echo("Database Connected");
    }

    // 2. Select a database to use 
    $db_select = mysqli_select_db($connection, DB_NAME);
    if (!$db_select) {
        die("Database selection failed: " . mysqli_error());
    }

    $value = $_SESSION['name'];
    $value2 = $_SESSION['attendance'];

    $sql = "INSERT INTO people (Name,Email) VALUES ('$value','$value2')";

    if(!mysqli_query($connection, $sql)){
        die ("ERROR:". mysqli_error());
    }

    // }
    mysqli_close($connection);
}

刚才我有关于堆栈溢出用户的建议。他说

*首先考虑使用mysqli_set_charset。另外,请注意:如果您已经在使用mysqli,请使用预准备语句和变量绑定,而不是将所有内容填充到SQL查询中。

http://php.net/manual/en/mysqli.quickstart.prepared-statements.php

我学习但是我没有得到他的意思,我的代码也准备好了吗?或者他的意思是我必须添加 - &gt; ?谁能教我这个呢?

1 个答案:

答案 0 :(得分:0)

更改你的mysql表,

设置'Collation' = 'gb2312_chinese_ci''Character set' = 'gb2312'.