0

我有一个问题,mysqli-connection 没有被我从其他文件中包含的函数打开或使用。看看下面的设置。如果我将所有代码放入一个文件中,它会完美运行,但这样一来,什么也不会发生。

连接.php

<?php
function connect() {
    $db = new mysqli("host", "user", "pswrd", "database");
    return $db;
}
?>

函数.php

<?php
function get_user_email($user_id) {
    $sql = "SELECT email FROM user_acc WHERE user_id='$user_id'";
    if(!$result = $db->query($sql)) {die("woops!");}
    $data = $result->fetch_assoc();
    return $data['email'];
}
?>

索引.php

<?php
include("connection.php");
include("functions.php");
$db = connect();
echo get_user_email(1);
?>
4

1 回答 1

0

这是通过更改文件functions.php解决的:

<?php
function get_user_email($user_id) {
    global $db; //This is what was needed!
    $sql = "SELECT email FROM user_acc WHERE user_id='$user_id'";
    if(!$result = $db->query($sql)) {die("woops!");}
    $data = $result->fetch_assoc();
    return $data['email'];
}
?>

感谢您的常识提供导致回答此问题的间接答案;)

于 2013-05-11T16:32:59.243 回答