我的PHP代码有点问题。我想创建一个具有不同目录的站点。每个目录都有一个名为pass(不是.txt或其他)的文件,其中包含目录密码的值。因此,如果pass文件不存在,则该组将不存在。但即使该组存在,它仍然表示该组不存在,我也不能打开该文件,但我可以找到它。这是我的代码:
<?php
$name = $_POST['name'];
$group = $_POST['group'];
$pass = $_POST['pass'];
$filename = '/groups/' . $group . '/pass';
if(file_exists($filename)){
$handle = fopen($filename) or die("can't open file");
$hoi = fread($handle, filesize($filename));
fclose($handle);
if ($pass === $hoi){
session_start();
$_SESSION['name'] = $name;
header('Location: http://www.google.com');
}
else{
echo 'Password is wrong!';
}
}
else{
echo 'Group does not exist!';
}
?>
所有POST数据都是正确的顺便说一句。谢谢你的帮助!
答案 0 :(得分:0)
我认为, pass 文件必须有结尾。的例如。 .php或.html或其他东西文件名'/groups/' . $group . '/pass';
错误。
PHP函数名为 file_exist(),文件必须有结尾!
如果是文件夹,它有时会在结尾处斜线。但它可以是文件。使用.htaccess
重定向,在index.html或index.php上可能会在文件末尾斜杠。