[我正在使用 phpmyadmin]
我想插入长文本,这些文本是对城市或地区的大量描述。 它包含撇号和逗号,但是插入时,逗号不是问题,但撇号有问题。
例如。
' Taunggyi's the administrative capital for the whole of Shan State. Perched on top of a mountain, it's also a busy trading post, and the...',
它将由用户输入(键入)到我网站上的文本区域。
所以它不能像我发现的其他例子那样静态定义。
当前的一个
//php $name=$_REQUEST["name"]; //
//in insert query => '.$name.',
也尝试过如下,但不起作用。
'".$name."',
有什么好的想法,请提出来!非常感谢您的帮助。谢谢!
最佳答案
用反斜杠转义引号。就像“sumit”一样。
这是一个使用 mysqli_real_escape_string 的示例函数:
<?php
$con=mysqli_connect("localhost","my_user","my_password","my_db");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
// escape variables for security
$firstname = mysqli_real_escape_string($con, $_POST['firstname']);
$lastname = mysqli_real_escape_string($con, $_POST['lastname']);
$age = mysqli_real_escape_string($con, $_POST['age']);
$sql="INSERT INTO Persons (FirstName, LastName, Age)
VALUES ('$firstname', '$lastname', '$age')";
if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));
}
echo "1 record added";
mysqli_close($con);
?>
引用:http://www.w3schools.com/php/func_mysqli_real_escape_string.asp
在你的情况下,它应该是mysql_real_escape_string($name)
关于PHP|MySql - 无法插入包含撇号的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39747895/