使用函数()接收mysql数据

时间:2015-04-04 06:53:37

标签: php mysql

我已经编写了这个函数,但return $director_name无效,我的编辑器显示此错误:未定义变量

function get_director($id){

global $db ;

$query ='
    SELECT
        director_name
    FROM
        movie_directors
    WHERE
        director_id = '.$id;

$result = mysql_query($query,$db) or die(mysql_error($db));
$row =mysql_fetch_assoc($result);
extract($row);
return $director_name;

}

这是我的PHP代码

<?php
                while($row = mysql_fetch_assoc($result)){
                    echo('<tr class="data">');
                    extract($row);
                   $director = $get_director($movie_director);
                    echo('<td>'.$movie_title.'</td>');
                    echo('<td>'.$movie_year.'</td>');
                    echo('<td class="director_field"><a href="#">'.$director.'</a></td>');
                    echo('<td>'.$movie_actor.'</td>');
                    echo('<td>'.$movie_genre.'</td>');
                }
            ?>

这里的PHP显示了msg:Fatal error: Function name must be a string

请帮助我谢谢。

2 个答案:

答案 0 :(得分:1)

当你在函数$id和查询中传递参数时,它不会返回你的查询可能没有执行

$query ='SELECT director_name FROM movie_directors WHERE director_id = '.id;
                                                                        ^^^

应该是

$query ='SELECT director_name FROM movie_directors WHERE director_id = '.$id;
                                                                        ^^^

错误本身表明您需要更改

$director = $get_director($movie_director);

$director = get_director($movie_director);
  

您正在使用已弃用的 mysql 尝试使用 PDO mysqli

答案 1 :(得分:0)

更改此

$director = $get_director($movie_director);

作为

 $director = get_director($movie_director);