Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Login PHP解析错误和错误代码溢出到其他页面_Login_Mysqli_Php - Fatal编程技术网

Login PHP解析错误和错误代码溢出到其他页面

Login PHP解析错误和错误代码溢出到其他页面,login,mysqli,php,Login,Mysqli,Php,好的,我在我的login.php页面上看到这个解析错误。代码似乎没有考虑检查用户是否已经登录。我在每个页面上都有一个名为pagechecker.php的文件,用于检查是否有人登录,但它在每个页面顶部显示的都是php代码 login.php上的错误是: 分析错误:语法错误,第21行的C:\inetpub\wwwroot\OTLCoding\PHP\login.PHP中出现意外的“(”,应为标识符(T_字符串)或变量(T_变量)或“{”或“$” base.php <?php s

好的,我在我的
login.php
页面上看到这个解析错误。代码似乎没有考虑检查用户是否已经登录。我在每个页面上都有一个名为
pagechecker.php
的文件,用于检查是否有人登录,但它在每个页面顶部显示的都是php代码

login.php
上的错误是:

分析错误:语法错误,第21行的C:\inetpub\wwwroot\OTLCoding\PHP\login.PHP中出现意外的“(”,应为标识符(T_字符串)或变量(T_变量)或“{”或“$”

base.php

    <?php
    session_start();

    $dbhost = "localhost";
    $dbname = "login";
    $dbuser = "root";
    $dbpass = "DirectedStudies2012";

$mysqli = new mysqli($dbhost,$dbuser,$dbpass,$dbname);


?>
这应该是

   $usercheck->mysqli->etc....

此处缺少分号:

$_SESSION['userid'] = $userid;
redirect('languages.php')

问题出在这里:

...->$mysqli->(...
你应该这样称呼它:

...->$mysqli(...
...->mysqli(...
或者像这样:

...->$mysqli(...
...->mysqli(...
取决于是否设置了
$mysqli

解释很简单。您可以调用类似()的东西:


但是调用属性名和括号之间的箭头实际上是一个语法错误。

这不会导致解析错误。它将是一个“未设置变量$mysqli”错误。我知道吗,因为我的base将$mysqli声明为mysqlimy bad,所以即使你指出了它,我也没有看到箭头括号输入错误,人渣大脑…所以更正,它会创建一个解析错误现在它在解析错误中说e:语法错误,意外的“(”,期望标识符(t_字符串)或变量(t_变量)或'第行C:\inetpub\wwwroot\OTLCoding\PHP\pagechecker.PHP中的“{”或“$”9@JjHarris:好的,你用什么替换了什么?新错误在我修复了所有错误后,它说我的页面有太多重定向loops@JjHarris:那么您现在有了一些与上一个错误无关的内容。看起来脚本中有很多问题,您可能会遵循一些好的编码标准。删除最后一个PHP结束标记(
?>
)如果在这个脚本中没有什么可以显示的话,增加可读性,单独的演示和应用程序,并可能使用一些好的PHP框架来加速开发。这些都是一般的建议,你的原始问题现在似乎是固定的。@ JjHarris:这完全与原来的问题无关,但是考虑一种情况:如果未设置
$\u会话['userid']
,该怎么办?在这种情况下,您将有恒定的重定向,因为请求将首先加载
base.php
(启动会话并设置数据库设置),然后加载
pagechecker.php
,这将发现
$\u会话['userid']
未设置,则会立即将请求重定向到同一页面。然后会从头开始重复整个过程,除非浏览器停止重定向并向您显示错误,否则不会有任何机会退出循环。
...->mysqli(...
$my_object->$my_variable_property_name('some argument');