php - 如何从php函数返回mysql数据

标签 php mysql function

我有一个 php 函数,我希望它能返回所有数据。现在的问题是它将返回被调用的第一行然后挂出,我不知道为什么。

    function get_user_info($id,$field='') 
{
    //connect to database
    include_once("../config.php");
    $qry= "SELECT `$field` FROM `".$user_table."`  WHERE `id` ='$id'";
    //die($qry);
    $result=mysql_query($qry);
    if($result) {
        if(mysql_num_rows($result)>0) {
            //query successful 
            $data=mysql_fetch_row($result);
            $user_info= $data[0];
        }
        else{
            $user_info ="invalid field";
        }

    }
    else{
        $user_info="invalid data";
        }
    return $user_info; 
}

如果我运行类似 echo (get_user_info($user_id,'username')."".get_user_info($user_id,'username')); 的函数,它会返回 用户名无效数据 对于我的一生,我无法弄清楚为什么它无法获取与 get_user_data

的每一行关联的数据

编辑:它似乎在$result=mysql_query($qry);处快要死了,它返回不正确的表名称''

编辑2:看起来问题是我只包含一次配置文件并使用一个变量作为我的表名,当我尝试第二次调用它时该变量未设置。

编辑3: 这是最终的功能

//connect to database
if(file_exists('..config.php')){
    include_once("../config.php");
}
function get_user_info($id,$field) 
{

    //get users table
    global $user_table_name;

    $qry= "SELECT `$field` FROM `$user_table`  WHERE `id` ='$id'";
    $result=mysql_query($qry) or die(mysql_error());
    if($result) {
        if(mysql_num_rows($result)>0) {
            //query successful 
            $data=mysql_fetch_row($result);
            $user_info= $data[0];
        }
        else{
            $user_info =$qry;
        }

    }
    else{
        $user_info="invalid data";
        }
    return $user_info; 
}

最佳答案

使用

function mysql_fetch_all($res) {
   while($row=mysql_fetch_array($res)) {
       $return[] = $row;
   }
   return $return;
}

$data = mysql_fetch_all($result);

关于php - 如何从php函数返回mysql数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5535538/

相关文章:

PHP PDO 从数据库中检索 json 数组 - 删除不需要的字符

javascript - 如何在特定的 WordPress 页面上运行 JavaScript 函数?

mysql - 在这种多对多关系中查询项目的有效方法是什么? ( rails )

MySql Union 未在 View 中执行

c - 在运行时将函数指针映射到特定数字

php - 设置我的第一个电子商务网站的步骤

php - php exec() 中的 sudo

php - php 文件中出现错误需要一次 __DIR__

function - Dart类中的静态调用方法(使类可调用)

c - 将结构体指针从一个函数传递到另一个函数