请教一下大家,在adp_auto.php下有这个函数,现在想在adp_auto.php这个文件下调用该函数,该如何正确调用该函数啊?注:srt_auto 表包含如下字段:dow_id,goods_id,order_id,等字段
 function getgsr($order_id, $goods_id){
        return $this->db->selectrow("select * from srt_auto where order_id=".$this->db->quote($order_id)." and goods_id=".$this->db->quote($goods_id));
    }
    
   
   我尝试过以下这样调用,保存的LOG文件里除了test字符外,没有任何关于数据,不知道是为啥?
   
    $d = newadp_auto(); 
  $orderid=$d->getgsr($order_id, $goods_id);
  $this->writelog("test",.$orderid);
   
   function writelog($file, $log) {
        $yearmonth = date('Y-m-d', time());
      $logdir = dsr.'/log/';
        $logfile = $yearmonth.'.log';
        if($fp = @fopen($logfile, 'a'))
        {
            @flock($fp, 2);
            fwrite($fp, $file.'_'.$log."\n");
        }
        fclose($fp);
    }
    
    

解决方案 »

  1.   

    echo "<pre>";
    print_r($orderid);
    //看下这变量就找出来原因了,先别往文件里写
      

  2.   

    $this->writelog("test",.$orderid);
    后面参数前怎么还有个点啊,是打错了吗
      

  3.   

    $this->writelog("test",.$orderid);
    后面参数前怎么还有个点啊,不是打错了,是连接的意思。就是输出test 连接$orderid这个函数输出值的意思
      

  4.   

    单独这样也没有值啊 ,不知道是为什么?  $this->writelog($orderid);
    还有刚才也试过直接用
    echo "<pre>";
    print_r($orderid);
    什么都不显示的。是不是有带SQL查询的函数不能直接调用啊?
      

  5.   

    晕,没看出来,你搞错啦
    你明明函数是这样定义的
     function writelog($file, $log) {//两个参数
    你怎么能这样呢 $this->writelog($orderid);//你这参数不就少一个了吗
    两个中间要逗号分开,你去掉那个点就行了,你怎么把逗号以前都去掉了啊
    你还不报错啊,你是不是调错文件了,有问题不报错可是相当麻烦的
      

  6.   

    请教一下大家,在adp_auto.php下有这个函数,现在想在adp_auto.php这个文件下调用该函数,该如何正确调用该函数啊?注:srt_auto 表包含如下字段:dow_id,goods_id,order_id,等字段 function getgsr($order_id, $goods_id){
      return $this->db->selectrow("select * from srt_auto where order_id=".$this->db->quote($order_id)." and goods_id=".$this->db->quote($goods_id));
      }
        
    请问一下这个函数正常情况下是怎么调用的呢?
      

  7.   

    return $this->db->selectrow 是不是返回数组啊?如果是返回一个数组还能正常调用函数的方式直接调用吗?
      

  8.   

    应该是个数组,我不是教你怎么输出了吗,输出就看出来了
    你就当函数一样调用,你没见定义的时候前面有个function关健字吗,不相信的话,随便改试试看有啥提示你就明白