相关疑难解决方法(0)

如何在PHP中阻止SQL注入?

如果插入用户输入而不修改SQL查询,则应用程序容易受到SQL注入的攻击,如下例所示:

$unsafe_variable = $_POST['user_input']; 

mysql_query("INSERT INTO `table` (`column`) VALUES ('$unsafe_variable')");
Run Code Online (Sandbox Code Playgroud)

这是因为用户可以输入类似的内容value'); DROP TABLE table;--,查询变为:

INSERT INTO `table` (`column`) VALUES('value'); DROP TABLE table;--')
Run Code Online (Sandbox Code Playgroud)

可以采取哪些措施来防止这种情况发生?

php mysql sql security sql-injection

2776
推荐指数
28
解决办法
166万
查看次数

致命错误:未捕获错误:调用未定义函数mysql_connect()

我正在尝试与XAMPP和MySQL服务器进行简单的连接,但每当我尝试输入数据或连接到数据库时,我都会收到此错误.

致命错误:未捕获Error:调用在C未定义函数mysql_connect()函数:\ XAMPP\htdocs中\ register.php:22
堆栈跟踪:#0 {主}扔在C:\ XAMPP\htdocs中\上线22 register.php

第22行的例子:

$link = mysql_connect($mysql_hostname , $mysql_username);
Run Code Online (Sandbox Code Playgroud)

php mysql xampp

63
推荐指数
5
解决办法
68万
查看次数

PHP/Apache:PHP致命错误:调用未定义的函数mysql_connect()

我在Fedora 15计算机(64位)上运行MySQL(5.5.23社区服务器),Apache(2.2)和PHP(5.3.13).每个工作都没有问题.

我认为PHP已配置/编译为与MySQL一起使用,但是当我尝试加载任何发出MySQL调用的PHP网页时,我得到了上述致命错误(在Apache错误日志中).PHP可以通过Apache和命令行自行运行.

当我从命令行运行php -i时,确定它显示了所有MySQL的碎片,但是当我加载显示phpinfo()的页面时,则没有提到的MySQL模块.

我也尝试在php.ini中取消注释"extension = mysql.so",但PHP然后抱怨"PHP启动:无法加载动态库'/usr/lib64/php/modules/mysql.so'."(即使模块确实驻留在那里).但是我不是完全确定该行是否需要取消注释.[更正:声明的错误实际上是由于拼写错误,但是从命令行运行表明该模块已经加载 - 但是PHP发出警告这么说.]

我也禁用了SELinux; 多次停止/重启Apache; yummed MySQL-Devel,以防它有任何区别; 似乎还有其他可能的事情.

如果我从命令行运行一个小的PHP测试脚本,访问MySQL数据库,那么它没有问题,所以PHP确实知道MySQL,但是当它在Apache下运行时似乎不知道MySQL甚至存在.

几个月来我一直在努力解决这个问题,似乎已经尝试了一切,但似乎没有任何效果.

我不介意重新安装PHP,如果我真的不得不,如果有人可以演示配置/编译MySQL支持的正确方法,那么我可以让它在Apache下工作,虽然理想情况下我只是喜欢让现有的安装工作.

非常感谢您的任何帮助!

php mysql apache

25
推荐指数
3
解决办法
12万
查看次数

在 PHP 连接文件中调用未定义的函数 mysql_connect()

我已经用域和托管注册了我的网站。它由一个数据库组成。我已经编写了如下所示的连接 PHP 文件。它不起作用并显示此错误:

调用未定义的函数 mysql_connect()。

我在cPanel 中创建数据库:

<?php
    mysql_connect('localhost', 'xxx', 'xxx');
    mysql_select_db('xxx');
?>
Run Code Online (Sandbox Code Playgroud)

php

2
推荐指数
1
解决办法
6426
查看次数

标签 统计

php ×4

mysql ×3

apache ×1

security ×1

sql ×1

sql-injection ×1

xampp ×1