为了账号安全,请及时绑定邮箱和手机立即绑定

无法从不同的文件中获取变量

无法从不同的文件中获取变量

PHP
FFIVE 2021-11-13 14:56:00
我试图从我的数据库中获取数据并用一个变量回显它,但我有一个问题。当我尝试从不同的文件中获取我的变量时,它显示了这个错误:未定义的变量:con in。这里有一些代码:来自functions.php的代码:include "authentication.php";function GetData() {$id = session_id();$result3 = mysqli_query($con,"SELECT * FROM accounts where id='$id'");while($row3 = mysqli_fetch_array($result3));{ $email=$row3['email'];$fullname=$row3['fullname'];$usualname=$row3['usualname'];$lastname=$row3['lastname'];}}来自 authentication.php 的代码:$DATABASE_HOST = 'localhost';$DATABASE_USER = '***';$DATABASE_PASS = '***';$DATABASE_NAME = '***';$con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, $DATABASE_NAME);if ( mysqli_connect_errno() ) {    die ('Failed to connect to MySQL: ' . mysqli_connect_error());}当我尝试从其他文件中获取变量时,也会发生这种情况。在这里,您可以从不同文件和不同变量中获得一些错误截图:这两个文件都在名为 PHPscripts 的同一目录中:
查看完整描述

2 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

这看起来像是范围界定的问题。

请记住,在 PHP 中,global不能从函数访问作用域中的变量。你必须明确做这样的事情global $con;在函数内部GetData()尝试访问之前$con

从系统设计的角度来看,这不是最好的方法。这将使跟踪您的变量变得困难。您不知道谁(脚本的哪一部分)正在访问该全局变量,也不知道它是如何被修改或以什么顺序修改的。这可能会导致一些很难识别的错误。


查看完整回答
反对 回复 2021-11-13
?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

require_once dirname(__FILE__) . auth.php;

Require_oncerequire与 Unix 完整路径一样有效。替换包含代码中的笔划。


查看完整回答
反对 回复 2021-11-13
  • 2 回答
  • 0 关注
  • 111 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信