【发布时间】:2012-10-26 04:39:12
【问题描述】:
我有一个托管在共享主机上的网站。 他们安装了 php 5.2.13。
我知道 SQL 注入的漏洞,我想阻止它。
所以我想使用 PDO 或 mysqli 来防止它。
但是当我使用phpinfo();查看托管环境php设置信息时出现问题,
发现PDO没有mysql驱动,里面也不支持mysqli。
所以我想知道使用旧的 mysql_* 函数是否安全(以及
像mysql_real_escape_string这样的函数。
我在 SO 上看过这个,但对我没有多大帮助。 Prepared statements possible when mysqli and PDO are not available?
更新:
我忘了提到大多数查询都很简单。没有使用任何表单,因此不会使用用户输入来进行查询。所有查询都将使用必要的参数进行硬编码,并且一旦设置就不会更改。
【问题讨论】:
-
您是否考虑过使用不会为您提供残障 PHP 设置的托管公司?
-
它属于我的朋友,其他人正在为他处理所有网站的事情,如设计、购买域名和托管服务等。现在我的朋友希望我维护他的网站。
-
甚至不再支持 PHP 5.2。因此,使用该版本已经使提供商变得糟糕 - 您不会简单地为您的客户提供不再提供安全更新等的过时版本。
-
是的,我知道我会告诉我的朋友这件事,由他决定是继续使用它还是切换到其他提供商。
标签: php mysql pdo mysqli sql-injection