无法回显函数中提取的变量

时间:2012-12-04 04:31:00

标签: php mysql function

我有两个文件名为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'];
}

} 
?>

&lt; - profile.php - &gt;

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

2 个答案:

答案 0 :(得分: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;
    } 

&lt; - profile.php - &gt;     

$values = get_data($id);

print_R($values);

答案 1 :(得分: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;
}