Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.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
Php PDO在另一个函数中使用时不返回结果_Php_Sql_Pdo - Fatal编程技术网

Php PDO在另一个函数中使用时不返回结果

Php PDO在另一个函数中使用时不返回结果,php,sql,pdo,Php,Sql,Pdo,当我刚刚执行$backend->fetchAdminInfo()时,PDO工作正常但是当我执行$backend->fetchAdminInfo()时在一个单独的函数中,不会返回任何结果。出于某种原因,它返回null,此时它应该返回名字,姓,和化身 这是密码 public $adminCount; final public function fetchAdminInfo() { global $zip, $db, $tpl; $query = $db->prepare('

当我刚刚执行
$backend->fetchAdminInfo()时,PDO工作正常但是当我执行
$backend->fetchAdminInfo()时在一个单独的函数中,不会返回任何结果。出于某种原因,它返回null,此时它应该返回
名字
,和
化身

这是密码

public $adminCount;

final public function fetchAdminInfo() {
    global $zip, $db, $tpl;

    $query = $db->prepare('SELECT first_name, last_name, avatar FROM zip__admins ORDER BY first_name ASC');
    $query->execute();

    $result = $query->fetchAll();

    $id = 1;
    foreach($result as $row) {
        $tpl->define('admin: first_name-' . $id, $row['first_name']);
        $tpl->define('admin: last_name-' . $id, $row['last_name']);
        $tpl->define('admin: avatar-' . $id, $row['avatar']);
        $id++;
    }
    $this->adminCount = $id;
}

final public function addSnippet($z) {
    global $tpl;

    if(isset($z) && !empty($z)) {
        switch($z) {
            case 'login: show-admins':
                $this->fetchAdminInfo();
                $admins = ' ';

                for($id = 1; $this->adminCount > $id; $id++) {
                  $admins .= '<li data-name="{admin: first_name-'. $id .'} {admin: last_name-'. $id .'}" onclick="submitValue('. $id .')">';
                  $admins .= '<div class="av-overlay"></div><img src="{site: backend}/img/avatars/{admin: avatar-'. $id .'}.jpg" class="av">';
                  $admins .= '<span class="av-tooltip">{admin: first_name-'. $id .'} {admin: last_name-'. $id .'}</span>';
                  $admins .= '</li>';
                }

                $tpl->Define('snippet: show-admins', $admins);
                $tpl->display();
            break;
        }
    } else {
        die("HELLO!");
    }
}
public$adminCount;
最终公共函数fetchAdminInfo(){
全球$zip、$db、$tpl;
$query=$db->prepare('SELECT first\u name,last\u name,avatar FROM zip\u admins ORDER BY first\u name ASC');
$query->execute();
$result=$query->fetchAll();
$id=1;
foreach($结果为$行){
$tpl->define('admin:first\u name-'。$id,$row['first\u name']);
$tpl->define('admin:last_name-'。$id,$row['last_name']);
$tpl->define('admin:avatar-'.$id,$row['avatar']);
$id++;
}
$this->adminCount=$id;
}
最终公共函数addSnippet($z){
全球美元tpl;
if(设置($z)&&!空($z)){
交换机($z){
案例“登录:显示管理员”:
$this->fetchAdminInfo();
$admins='';
对于($id=1;$this->adminCount>$id;$id++){
$admins.='
  • ; $admins.=''; $admins.='{admin:first_name-'.$id.}{admin:last_name-'.$id.}'; $admins.='
  • '; } $tpl->Define('snippet:show admins',$admins); $tpl->display(); 打破 } }否则{ 死(“你好!”); } }
    是否完成了任何基本调试?您的DB代码只是假设成功。您是否验证了prepare/exec/fetch调用是否确实成功?您使用的是全局$db变量。您确定没有在其他地方修改它以指向此函数背后的其他db吗?该函数在自身使用时工作正常。一旦我把它放到另一个函数中,它就会返回null。我不知道为什么;我已经想了两个小时了。我觉得这个小片段对我们没什么帮助。有可能把剩下的贴出来吗?我还在做这个,但我需要去一段时间;我不知道我是怎么忘记那个打字错误的。