使用函数()接收mysql数据


Receive mysql data with function()

我已经写了这个函数,但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在此显示消息:Fatal error: Function name must be a string

请帮帮我,谢谢。

当您在函数$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尝试使用PDOmysql

更改此

$director = $get_director($movie_director);

作为

 $director = get_director($movie_director);