运行php文件不会返回任何内容
我知道这是重复的,但我收到了相同的错误。我搜索了很多类似的问题,如:,还有更多的问题,但找不到任何解决方案 我创建了一个非常简单的登录html文件,然后编写了php脚本,在一个单独的php文件中执行登录操作。(与html文件位于同一文件夹中)。我的问题是,当我在浏览器中键入localhost/filename.php时,它没有返回任何内容。(我指的是没有任何错误的空html页面)。另外,当我在html登录表单中按下登录按钮时,它要求我在运行php文件时保存文件 我检查了错误日志,这是错误: 找不到脚本“/var/www/connectivity.php”或无法统计[Wed] 2014年5月7日17:51:28][通知]SIGTERM,正在关闭[Wed May] 07 17:51:29 2014][notice]Apache/2.2.22(Ubuntu) 配置了Suhosin修补程序的PHP/5.3.10-1ubuntu3.11--正在恢复 正常操作[Wed May 07 19:25:34 2014][error][client 127.0.0.1]PHP警告:mysql_connect():在/var/www/connectivity.PHP中拒绝用户“root”@“localhost”(使用密码:否)的访问 在线7 这是php脚本:运行php文件不会返回任何内容,php,html,browser,Php,Html,Browser,我知道这是重复的,但我收到了相同的错误。我搜索了很多类似的问题,如:,还有更多的问题,但找不到任何解决方案 我创建了一个非常简单的登录html文件,然后编写了php脚本,在一个单独的php文件中执行登录操作。(与html文件位于同一文件夹中)。我的问题是,当我在浏览器中键入localhost/filename.php时,它没有返回任何内容。(我指的是没有任何错误的空html页面)。另外,当我在html登录表单中按下登录按钮时,它要求我在运行php文件时保存文件 我检查了错误日志,这是错误: 找不
<?php
$host="localhost";
$user="root";
$pass="xxxxx";
$db="test";
$con=mysql_connect($host,$user,$pass) or die("Failed to connect to MySQL: " . mysql_error());
$db=mysql_select_db($db,$con) or die("Failed to connect to MySQL: " . mysql_error());
if(isset($_POST['userId'])){
$userId = $_POST['userId'];
$password = $_POST['password'];
$sql = "SELECT * FROM User where userId = '$userId' AND password = '$password'" or die(mysql_error());
$res = mysql_fetch_array($sql) or die(mysql_error());
if(mysql_num_rows($res) > 0) {
echo "SUCCESSFULLY LOGIN TO USER PROFILE PAGE...";
exit();
}
else
{
echo "SORRY... YOU ENTERD WRONG ID AND PASSWORD... PLEASE RETRY...";
exit();
}
}
?>
您的mysql\u查询()在哪里
我认为您应该添加mysql\u query()
并重试
$sql = "SELECT * FROM User where userId = '$userId' AND password = '$password'";
$query=mysql_query($sql) or die(mysql_error()); **// You didn't add this line**
$res = mysql_fetch_array($query) or die(mysql_error());
您的所有其他代码都在这里。。。。。。。。。。。。。。。。。。hop您的问题已修复您的mysql\u查询()在哪里
我认为您应该添加mysql\u query()
并重试
$sql = "SELECT * FROM User where userId = '$userId' AND password = '$password'";
$query=mysql_query($sql) or die(mysql_error()); **// You didn't add this line**
$res = mysql_fetch_array($query) or die(mysql_error());
您的所有其他代码都在这里。。。。。。。。。。。。。。。。。。如果您的问题已解决上述代码存在一些问题。第一个屏幕上没有显示任何内容的问题很可能是由于PHP抛出错误和崩溃,或者您没有在HTTP头中为POST数据设置userId。要确保将POST数据发送到服务器,可以检查web浏览器的开发人员工具,或者在PHP脚本顶部使用以下代码
<?php
echo '<pre>';
print_r($_POST);
echo '</pre>';
?>
PHP的另一个问题是,您不检查$\u POST['password']
是否设置了userId
。这是一个简单的修复方法,只需更改一行代码
$userId = mysql_real_escape_string($userId);
$password = mysql_real_escape_string($password);
$sql = "SELECT * FROM User where userId = '$userId' AND password = '$password'";
我的下一个注意事项是您应该真正遵循的安全特性。第一个主要问题是在将变量插入SQL变量之前缺少对变量的解析。永远不要在查询中插入用户可以直接修改的变量。如果您坚持使用mysql\u
函数,那么首先要对传递的所有变量运行命令mysql\u real\u escape\u string()
下一个安全问题是您没有加密密码。每个用户都可以使用唯一的密码对密码进行加密。当用户更改密码时,salt也应该更改
$salt=生成_salt();//您需要创建此函数。生成大量随机字符。
$password=hash('sha512',$password.$salt)
使用上述方法,在生成密码变量之前,您不希望对密码变量使用mysql\u real\u escape\u string()
。如果在对密码进行哈希运算之前使用它,用户很可能在将来登录时遇到问题,因为密码可能不匹配
代码中的下一个致命缺陷是,您使用的是mysql\uu
函数,该函数现在不受支持且已弃用。正如您可以从PHP网站上的所有mysql\uz
函数的引用中看到的那样
从PHP5.5.0开始,此扩展已被弃用,并将在中删除
未来。相反,应该使用MySQLi或PDO_MySQL扩展
我强烈建议将PDO作为MySQLi的一部分,但这只是个人偏好 上述代码存在一些问题。第一个屏幕上没有显示任何内容的问题很可能是由于PHP抛出错误和崩溃,或者您没有在HTTP头中为POST数据设置userId。要确保将POST数据发送到服务器,可以检查web浏览器的开发人员工具,或者在PHP脚本顶部使用以下代码
<?php
echo '<pre>';
print_r($_POST);
echo '</pre>';
?>
PHP的另一个问题是,您不检查$\u POST['password']
是否设置了userId
。这是一个简单的修复方法,只需更改一行代码
$userId = mysql_real_escape_string($userId);
$password = mysql_real_escape_string($password);
$sql = "SELECT * FROM User where userId = '$userId' AND password = '$password'";
我的下一个注意事项是您应该真正遵循的安全特性。第一个主要问题是在将变量插入SQL变量之前缺少对变量的解析。永远不要在查询中插入用户可以直接修改的变量。如果您坚持使用mysql\u
函数,那么首先要对传递的所有变量运行命令mysql\u real\u escape\u string()
下一个安全问题是您没有加密密码。每个用户都可以使用唯一的密码对密码进行加密。当用户更改密码时,salt也应该更改
$salt=生成_salt();//您需要创建此函数。生成大量随机字符。
$password=hash('sha512',$password.$salt)
使用上述方法,在生成密码变量之前,您不希望对密码变量使用mysql\u real\u escape\u string()
。如果在对密码进行哈希运算之前使用它,用户很可能在将来登录时遇到问题,因为密码可能不匹配
代码中的下一个致命缺陷是,您使用的是mysql\uu
函数,该函数现在不受支持且已弃用。正如您可以从PHP网站上的所有mysql\uz
函数的引用中看到的那样
从PHP5.5.0开始,此扩展已被弃用,并将在中删除
未来。相反,应该使用MySQLi或PDO_MySQL扩展
我强烈建议将PDO作为MySQLi的一部分,但这只是个人偏好 PHP输出中存在印刷错误。请准确复制/粘贴您收到的错误,以及您使用的准确源代码,以便社区更准确地诊断您的问题。tr