Php 使用撇号转义MySQL insert的值

Php 使用撇号转义MySQL insert的值,php,mysql,stripslashes,Php,Mysql,Stripslashes,我正在尝试创建一些SQL insert语句,一些变量的名称如下: 阿玛糕点 我想在将值添加到MySQL数据库中时转义这句话。如何使用PHP实现这一点?看一看,您已经接受了答案,但我想向您推荐一种更好的方法。使用类似mysql\u real\u escape\u string的方法需要您始终记住在每次查询中应用它;这很乏味,而且容易出错 一个更简单的方法,也可以确保一致性,就是使用。这确保了所有内容都被正确转义,也避免了在查询中嵌入变量 在PHP中,这可以与较新的或库一起使用。其中,我更喜欢PDO

我正在尝试创建一些SQL insert语句,一些变量的名称如下:

阿玛糕点
我想在将值添加到MySQL数据库中时转义这句话。如何使用PHP实现这一点?

看一看,您已经接受了答案,但我想向您推荐一种更好的方法。使用类似mysql\u real\u escape\u string的方法需要您始终记住在每次查询中应用它;这很乏味,而且容易出错

一个更简单的方法,也可以确保一致性,就是使用。这确保了所有内容都被正确转义,也避免了在查询中嵌入变量


在PHP中,这可以与较新的或库一起使用。其中,我更喜欢PDO,因为它提供了灵活性,例如,我目前使用的是MySQL,但我不打算让我的应用程序永远保持这种运行方式,有了PDO,迁移将大大简化,但是这里有很多问题,可以说明每个问题的优缺点。

有一个函数可以用来转义所需的所有字符,下面是php中的一个代码示例

<?php
$str = "Is your name O'reilly?";

// Outputs: Is your name O\'reilly?
echo addslashes($str);
?>

请使用prepare语句并让mysql自行处理转义,您在代码级别的操作取决于您的编码语言,但一般来说,mysql\u real\u escape\u字符串应该可以完成这一任务@鲁菲努斯很抱歉忘了提到我在使用PHPin,阿斯坦德给出了正确的答案-李:我找过了。我有AddSlaes和mysql\u real\u escape\u字符串。所以我只问哪种方法是最好的。请不要鼓励人们自己尝试转义字符串,告诉他们正确的方法,带PDO或MySQLi.addslashes的参数化查询永远不应该用于清理SQL语句的输入。@Harsha:我想没有任何时候没有更合适的函数。但我想可能会有一个。非常感谢。添加和删除是我寻找最佳方法的原因