MySql mysql_real_escape_string错误

时间:2012-10-12 17:00:54

标签: php mysql forms code-injection mysql-real-escape-string

<?php
include("../scripts/createconnect.php");

if(isset($_POST['submitted'])) {

    $username = mysql_real_escape_string ($_POST['username']);
    $password = mysql_real_escape_string ($_POST['password']);


    $sqlinsert = "INSERT INTO Testing (User_Id, username, password)
        VALUES (NULL,'$username', '$password');"; 

    if (!mysqli_query($dbcon, $sqlinsert)) {
        die('error inserting into database');
        } // end of nested if statement

        $newrecord ="Congratulations!";

}  
?>

我有一个工作表输入到数据库。我正在学习MySql注射预防。

我正在尝试使用mysql_real_escape_string方法开始,但似乎遇到格式错误。

我已确认我的数据库已连接。当我将mysql_real_escape_string添加到我的表单输入时,我现在遇到错误。

我的远程文件“createconnect.php”通过mysqli_connect成功连接。

我在教程中详细添加了ysql_real_escape_string,现在无法将数据输入到我的MYSQL数据库中。有人能告诉我我错过了什么吗?

2 个答案:

答案 0 :(得分:1)

你不能以这种方式编写代码。 mysql函数不能在mysqli中使用,如果你想使用mysqli来运行php的查询。点击此链接:http://scriptforyou.com/mysql-easily-insert-and-update-records/。这是使用mysqli的最佳教程。

也避免使用mysql_real_escape_string。 快乐的编码!!

答案 1 :(得分:0)

mysqli 有类似的功能mysqli_real_escape_string

 $link = new mysqli("localhost", "my_user", "my_password", "dbaname");
 $username = mysqli_real_escape_string ($link,$_POST['username']);
 $password = mysqli_real_escape_string ($link,$_POST['password']);