1

我有两个文件名 func.inc.php 和 profile.php 我试图通过在 func.inc.php 中创建一个函数 get_data($id) 并在配置文件页面中显示来从 mysql 获取数据(profile.php )。但是数据没有显示。

<-- func.inc.php 文件-->

<?php session_start();
function  get_data($id){
$query_in="SELECT * FROM user WHERE id ='$id'";
$query=mysql_query($query_in);
while($row=mysql_fetch_assoc($query)){
    $name=$row['name'];
    $book=$row['book'];
    $mobile=$row['mobile'];
    $computer=$row['computer'];
}

} 
?>

<-- 配置文件.php -->

<? 
include'func.inc.php';
echo "Name: ".$name;
echo "Book: ".$book;?>
4

2 回答 2

0

函数应该返回一些值,然后只会得到函数中的值

   function  get_data($id){
    $query_in= sprintf("SELECT * FROM user WHERE id ='%d'", mysql_real_escape_string($id));
    $query=mysql_query($query_in);
    $result = array();
    while($row=mysql_fetch_assoc($query)){
        $result[]['name'] = $row['name'];
    }
    return $result;
    } 

<-- 配置文件.php -->

$values = get_data($id);

print_R($values);
于 2012-12-04T04:41:30.893 回答
0

您应该从函数调用中传递 id,即:在这里您应该像这样调用:

$values = get_data($id);

 while($row=mysql_fetch_array($values)){
 echo $name=$row['name']."<br>";
 echo $book=$row['book']."<br>";
 echo $mobile=$row['mobile']."<br>";
 echo $computer=$row['computer']."<br>";
}

在 func.inc.php 中使用以下代码:

function  get_data($id){
  $query_in="SELECT * FROM user WHERE id ='$id'";
  $query=mysql_query($query_in);
  return $query;
}
于 2012-12-04T05:09:00.143 回答