php echo不工作,但在包含的php文件中声明了变量
文件是init.php,包含在user_settings.php中 下面是代码php echo不工作,但在包含的php文件中声明了变量,php,echo,Php,Echo,文件是init.php,包含在user_settings.php中 下面是代码 ## init.php ## <?php session_start(); require 'database/connect.php'; require 'functions/users.php'; require 'functions/general.php'; if (logged_in() === true) { $session_user_id = $_SESSION['user_id'];
## init.php ##
<?php
session_start();
require 'database/connect.php';
require 'functions/users.php';
require 'functions/general.php';
if (logged_in() === true) {
$session_user_id = $_SESSION['user_id'];
$user_data = user_data($session_user_id, 'user_id', 'username', 'password', 'first_name', 'last_name', 'email');
}
$errors = array();
?>
##init.php##
和user_setting.php
我看不出为什么我不能从$user\u数据中回音
也许有更多经验的人可以马上说出来!我们将非常感谢您的任何帮助
Ryan你可以试试这个
1) 首先删除init.php文件顶部的“##init.php##”。因为,在session_start()函数之前不应该有字符串,甚至空格
2) 检查user_data()函数,该函数返回预期的数据。
logged_in()
不会返回true
,因此我猜$user_data
从未设置过。尝试var\u dump($user\u data)
查看是否已设置。您还应该打开PHP警告和通知。另一个错误源可能是函数user\u data()
。确保它不返回null
或空字符串。执行var\u dump($user\u data)
。如果为空,则无法回显字段。找出是否设置了,您的用户数据功能可能失败,您登录的可能失败,等等。进行一些基本调试。添加一些var\u dump
s,检查函数是否被调用,等等。我使用了它返回为null的var\u dump($user\u data)。然而,当我使用var_dump($session_user_id)时,我收到了字符串“1”(length=1),非常感谢!我遗漏了return$数据;
<?php
include 'core/init.php';
include 'includes/overall/header.php';
echo $user_data['first_name'];
include 'includes/overall/footer.php';
?>