每个人都能解释或告诉我为什么我会得到这个未定义的变量:id。
功能
public function getByEmbedId($id, $lang=null){
$id = mysql_real_escape_string($id);
$embed = array();
$e = mysql_query("SELECT * FROM movie_embeds WHERE id='$id'") or die(mysql_error());
if (mysql_num_rows($e)>0){
$movie = $this->formatEmbedData(mysql_fetch_assoc($e), $lang);
}
return $embed;
}
并调用该函数。
<?php
$embed = $movie->getByEmbedId($id,$language);
if (empty($embed)){
$embed = '';
} else {
$smarty->assign("embed",$embed);
}
?>
如果有人可以帮助我,那将非常感激
答案 0 :(得分:2)
在致电您的功能之前,检查您的$id
是否已设置。这样做
<?php
if(isset($id)) // Make use of the isset construct here
{
$embed = $movie->getByEmbedId($id,$language);
if (empty($embed)){
$embed = '';
} else {
$smarty->assign("embed",$embed);
}
}
?>
答案 1 :(得分:0)
当您致电$embed = $movie->getByEmbedId($id,$language);
时,之前定义了$id
和$language
个变量吗?
答案 2 :(得分:0)
在函数中使用它之前,你应该声明变量$ id。