草庐IT

php - 我想用 mysql_real_escape_string() 函数检查数组的数据

这个函数是用数组创建sql查询functionYorumEkle($kitapid,$array){$sql="INSERTINTOyorumlar('".implode(",",array_keys($array))."')VALUES('".implode("','",$array)."')";}但是我想使用mysql_real_escape_string()但是如何呢? 最佳答案 可以使用array_map函数functionYorumEkle($kitapid,$array){$array2=array_map("mysql

php - 如何将 mysql_real_escape_string 用于数组?

我想INSERT$_POST提交的一组数据(以数组的形式)作为foreach($_POST['data']as$single){$set[]="('static','$single')";}$sets=implode(",",$set);mysql_query("INSERTINTOtable(Static,Data)VALUES$sets");在用户提交数据时,usemysql_real_escape_string最好在哪里使用以避免SQL注入(inject)。 最佳答案 在进行第一个foreach之前。$_POST['data'

php - 调用mysql_real_escape_string()时出现 "Can' t connect to local MySQL server through socket”故障排除

这个问题在这里已经有了答案:Can'tconnecttolocalMySQLserverthroughsocket(2个答案)关闭9年前。我收到错误:Warning:mysql_real_escape_string()[function.mysql-real-escape-string]:Can'tconnecttolocalMySQLserverthroughsocket'/var/run/mysqld/mysqld.sock'(2)为什么会出现此错误?mysql_real_escape_string()适用于我的所有页面,除了一个?这是否与MySQL位于与PHP服务器不同的服务器上

php - mysql_real_escape_string() 无法建立到服务器的链接

当我尝试使用mysql_real_escape_string()时出现此错误。Accessdeniedforuser'ODBC'@'localhost'(usingpassword:NO)我不明白为什么我必须连接到数据库以检查值是否可以插入MySQL。 最佳答案 这是因为mysql_real_escape_string考虑到连接的当前字符集。因此,它需要一个连接。:-)如果您不想提前手动设置连接,您可以设置各种MySQLruntimedefaults在您的.ini文件中。但是,如果您使用自己的数据库类(或仅使用手动命令),通常值得在

php - 链接标识符在 mysql_real_escape_string() 中的重要性

为什么在使用mysql_real_escape_string()时需要将链接标识符作为输入。我知道该函数应该与MySQL查询一起使用,但该函数实际上只是一个字符串操作。 最佳答案 来自thePHPmanual:Escapesspecialcharactersintheunescaped_string,takingintoaccountthecurrentcharactersetoftheconnectionsothatitissafetoplaceitinamysql_query().Ifbinarydataistobeinsert

php - mysql_real_escape_string() 不应该在数据库中留下斜杠吗?

我正在使用smarty和mysql_real_escape_string()进行用户输入,当我用'或"插入一些代码时,并在phpmyadmin中查找它显示时没有反斜杠。当我从数据库中获取记录时,我也没有反斜杠。但是当我只是传递转义字符串而不插入数据库时它是反斜杠的。它不应该添加斜杠,插入它们然后我会我什么时候输出?还是我遗漏了什么? 最佳答案 你错过了它-用反斜杠转义是为了确保查询没有格式错误,例如像这样的东西肯定会破坏并可能冒SQL注入(inject)的风险:insertintotablevalues('whatever'this

PHP mysql_real_escape_string() 和 % 字符

mysql_real_escape_string()对%(百分比)字符有什么作用,它代表了多少安全风险(以及如何解决)? 最佳答案 来自mysql_real_escape_string()documentation:Note:mysql_real_escape_string()doesnotescape%and_.ThesearewildcardsinMySQLifcombinedwithLIKE,GRANT,orREVOKE.就安全性而言,除非您正在运行LIKE、GRANT或REVOKE,否则这不是问题。LIKE可能是唯一真正关注

php - mysql_real_escape_string 应该是我在注册表单中输入的密码吗?

当用户注册时,我使用mysql_real_escape_string清除密码,如下所示$password=clean($_POST['password']);在将其添加到数据库之前,我使用:$hashedpassword=sha1('abcdef'.$password);并将其保存到mySQL中。我的问题是我应该清理它还是在将密码添加到数据库之前对密码进行哈希处理? 最佳答案 嗯,有一个主要的误解。mysql_real_escape_string()不清理任何东西。它与安全完全无关。此函数仅用于转义分隔符,仅此而已。它可以帮助您将字

php - codeIgniter 使用 mysql_real_escape_string() 代替。数据库连接问题

我在带有数据库的服务器上安装了codeigniter我想在我的mac上运行相同的数据库,我使用MAMP并将项目文件夹复制到htdocs中,但是我有这个错误你能帮帮我吗?ErrorException[8192]:mysql_escape_string():Thisfunctionisdeprecated;usemysql_real_escape_string()instead. 最佳答案 不要害怕更改核心文件,只需更改FCPATH/system/database/drivers/mysqli/mysqli_driver.phpfunc

php - 什么时候最推荐使用 mysql_real_escape_string()

我实际上是第一次使用这个函数..并且在找到它之前使用了preg_replace和addslashes。我主要是好奇,因为我即将在我的第一个大型应用程序中检查并加强发布区域的安全性,并且想知道此功能有效的最佳实例,强烈推荐。我已经看到这个功能在几种不同的情况下应用,不仅仅是在发布用户输入之前......而是在一般查询完成时,所以我真的很好奇它的全部可能性,以及如何实现它的全部有效性。此外,我们将不胜感激任何绝对可靠的安全方法和一般性建议。干杯! 最佳答案 理想情况下你应该永远使用它,因为Parameterizedqueries(通过P