我使用WampServer创建了一个使用php和SQL的网站。 在一个条件或在一个条件之后我使用Header位置将用户转移到另一个页面。但我从服务器得到一个错误,我认为是因为我在代码之后使用标头而不是。我删除了所有空格。
if($passfinal['contrasena']==$_POST['password'])
{
$_SESSION['logedin']=TRUE;
$_SESSION['userid']=$passfinal['id'];
header('Location: ../index.php');
}
你有什么可以帮助我吗? 骗过你
答案 0 :(得分:0)
我认为,这是问题$_POST['password']
,因为在进行比较之前,首先必须检查if(isset($_POST['password']))
,在这种情况下空格并不重要,最后一个:我告诉你,你必须在header函数中写入完整的url,如下所示:header('location: http://example.com/index.php')
,因为这是更好的和真实的方式。
答案 1 :(得分:0)
警告:无法修改标头信息 - 已在/home/sirobdco/public_html/login/includes/loginform/loginform.php中发送的标头(/home/sirobdco/public_html/login/login.php:11上的输出)第37行
您已经发送了标题,因此PHP无法再发送它们! 也就是说,在你的代码之前
header('Location: ../index.php');
您已发送标题 - html中的空格,PHP中的回显等。
请仔细阅读:
http://php.net/manual/en/function.header.php
请记住,在发送任何实际输出之前,必须通过普通HTML标记,文件中的空行或PHP来调用header()。使用include或require,函数或其他文件访问函数读取代码是一个非常常见的错误,并且在调用header()之前输出空格或空行。使用单个PHP / HTML文件时存在同样的问题。