我的命苦呀,
搞了半天,
变量返回不了值,
我直接在调用函数的时候用实值没有问题
用变量调就没有用了,
函数:
$this->mTableHash[name] = "article";
function sArticle($product_name)
{$sql = "select * from ".$this->mTableHash[name]." where title like '%".$product_name."%' order by title";
return MySQL::arrayResultQuery($sql, 0, $pPageSize);
}
调用:
$article = new Article();
$temp_array = $article->sArticle("$product_name");
//如果把上一行的$product_name直接用要列出的字符就可以返回值了,用$product_name返回是空的
if (is_array ($temp_array))
{
foreach ($temp_array as $row)
{
$s_list .= "·<a href=\"news.php?id=${row[article_id]}\" target=_blank>${row[title]}</a>".(($row[image]!="")?"(图)":"")."<br>\r\n";
}
}

解决方案 »

  1.   

    我建议用map表来实现,表里面有三个字段  字段:  文章编号   商品编号   推荐度(默认0)后台写程序,然后人工选取建立这种关系.有人可能说这样操作起来比较麻烦,但这样管理定制起来比较简单,如果管理界面设计的好,实际操作起来也满方便的,并且可以通过推荐度来设置相关文章和商品的显示顺序.如果通过关键字,在关键字多的时候,会很难控制管理,也无法确定地下到底相关了什么东西.
    如果是把产品名称设置为关键字,那还不如建立map表
      

  2.   

    function searchArticle($pKeyword)
    {
    $sql = "select * from ".$this->mTableHash[name]." where content like '%".$pKeyword."%' order by title";
    return MySQL::arrayResultQuery($sql, 0, $pPageSize);
    }这个函数怎么改成实时变量返回呢,这个是输入返回的
      

  3.   

    $temp_array = $article->sArticle("$product_name");
    中$product_name是哪里来的?
      

  4.   

    我现在的问题是:
    function searchArticle($pKeyword)
      {
       $sql = "select * from ".$this->mTableHash[name]." where content like '%".$pKeyword."%' order by title";
       return MySQL::arrayResultQuery($sql, 0, $pPageSize);
      }
    怎么样把关键字放到变量product_name里去
      

  5.   

    同意coolstr(大只佬)的做法,不过比较麻烦。