第一次我有一个mysql问题。
我有一个输入字段,例如

<input type="text" name="myfield" id="myfield" />


因此,当用户按下提交按钮时,我正在使用php获取值

$myval = $_POST['myfield'];


到目前为止一切都还好。
如果我在此输入字段中的值包含撇号',例如:

<input type="text" name="myfield" id="myfield" value="Niko's Dog" />


mysql查询:

mysql_query ("INSERT INTO users (myfield) VALUES ('$myval')");


无法插入数据。

有什么意见吗?我需要所有字符都有效。

最佳答案

尝试添加斜杠,例如

$myval = addslashes($myval);
mysql_query ("INSERT INTO users (myfield) VALUES ('".$myval."')");


您可以直接使用mysql_real_escape_string。

mysql_query ("INSERT INTO users (myfield)
              VALUES ('".mysql_real_escape_string($myval)."')");

关于php - 当输入字段带有撇号时,mysql插入不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20046898/

10-16 07:47