作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
在旧的 mysql() 代码中,为了转义字符串,我这样做了:
t.TeacherUsername = '".mysql_real_escape_string($teacherusername)."'
我正在将我的代码更改为 mysqli,但是为了安全起见,我想确切地知道,要在 mysqli 中转义一个字符串,是不是像下面这样:
t.TeacherUsername = '".mysqli_real_escape_string($teacherusername)."'
另外连接mysqli数据库是不是像下面这样:
$username="xxx";
$password="xxx";
$database="xxx";
mysqli_connect('localhost',$username,$password);
mysqli_select_db($database) or die( "Unable to select database");
我所做的只是将 mysql 更改为 mysqli,是否正确?
更新:
现在这是使用 mysqli 连接到数据库的正确方法吗:
$username="xxx";
$password="xxx";
$database="mobile_app";
$mysqli = new mysqli("localhost", $username, $password, $database);
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
最佳答案
您对函数的使用不正确。
您必须使用 mysqli_connect
返回的 mysqli 链接资源作为 mysqli_real_escape_string
的第一个参数。
例子:
$username="xxx";
$password="xxx";
$database="xxx";
$my = mysqli_connect('localhost',$username,$password);
mysqli_select_db($my, $database) or die( "Unable to select database");
$t->TeacherUsername = "'" . mysqli_real_escape_string($my, $teacherusername). "'";
关于php - 如何在mysqli中转义字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10916441/
我是一名优秀的程序员,十分优秀!