首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >只返回1项

问只返回1项
EN

Stack Overflow用户
提问于 2013-11-28 08:52:48
回答 1查看 76关注 0票数 0

有人能帮我,因为我刚开始使用php吗?

我正在运行一个使用智能模板引擎的电影站点,我想要做的是返回并显示所有类别的首映电影,但是当我使用这个工具时,它会显示所有电影的相同类别的“喜剧”

功能

代码语言:javascript
复制
public function getByPerma($perma, $lang=null){
    $perma = mysql_real_escape_string($perma);
    $movie = array();
    $e = mysql_query("SELECT * FROM movies WHERE perma='$perma'") or die(mysql_error());
    if (mysql_num_rows($e)>0){
        $movie = $this->formatMovieData(mysql_fetch_assoc($e), $lang);
    }
    return $movie;
}

public function getMovieCategoryDetails($movieid,$lang=null){
    $movieid = mysql_real_escape_string($movieid);
    $e = mysql_query("SELECT * FROM movie_tags WHERE id IN (SELECT tag_id FROM movie_tags_join WHERE movie_id=$movieid)") or die(mysql_error());
    $tags = array();
    if (mysql_num_rows($e)){
        while($s = mysql_fetch_array($e)){
            $s['tag'] = json_decode($s['tag'],true);
            if ($lang){
                $s['tag'] = $s['tag'][$lang];
            }

            $tags[$s['id']] = $s;
        }
    }
    return $tags;
}

称为函数

代码语言:javascript
复制
$movies = $movie->getByPerma($perma,$language);
if (empty($movies)) {
    $movies = '';
} else {

    $tags = $movie->getMovieCategoryDetails($movies['id'],$language);
    if (!count($tags)){
        $smarty->assign("tags","");
    } else {
        $smarty->assign("tags",$tags);
    }
} 

以及显示类别

代码语言:javascript
复制
{foreach from=$tags key=id item=val name=tags}
    {$val.tag}
{/foreach}

我希望有人能帮忙?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-28 09:37:57

我认为当将项添加到数组时,您的getByPerma()只返回1个电影信息,[]缺少:

代码语言:javascript
复制
$movie = $this->formatMovieData(mysql_fetch_assoc($e), $lang);
-->
$movie[] = $this->formatMovieData(mysql_fetch_assoc($e), $lang);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20261492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档