Lỗi :::Notice: Trying to get property of non-object in

Thảo luận các vấn đề vể cài đặt và sử dụng Joomla! và các Extension của Joomla!
Nội quy chuyên mục
Thành viên đăng quảng cáo trong chuyên mục này sẽ bị xóa toàn bộ bài viết và cấm vĩnh viễn tham gia Diễn đàn.

* Xem qui định đăng bài viết tại đây: http://www.buaxua.vn/forum/viewtopic.php?f=2&t=318247
Đăng trả lời
maihoang0313
Thành viên mới
Thành viên mới
Bài viết: 2
Ngày tham gia: 21/08/2011 - 19:10

Lỗi :::Notice: Trying to get property of non-object in

Gửi bài gửi bởi maihoang0313 » 21/08/2011 - 19:16

Hiện tại mình có download 1 temp joomla shaper news II
Sau khi cài đặt lên localhost thì bị lỗi C:\wamp\www\royal\modules\mod_sp_weather\mod_sp_weather.php on line 18
và Nhiều dòng khác nữa nhưng mình chỉ post 1 dòng thôi
mình mới học joomla nên chả biết gì mong mọi người giúp đỡ:
và đây là code của file helper.php

Mã: Chọn tất cả

<?php
/*------------------------------------------------------------------------
# Joomla News Show Module V1 by JoomShaper.com
# ------------------------------------------------------------------------
# author    JoomShaper http://www.joomshaper.com
# copyright Copyright (C) 2010 JoomShaper.com. All Rights Reserved.
# @license - Copyrighted Commercial Software
# Websites: http://www.joomshaper.com - http://www.joomxpert.com
# This file may not be redistributed in whole or significant part
-------------------------------------------------------------------------*/

// no direct access
defined('_JEXEC') or die('Restricted access');

require_once (JPATH_SITE.DS.'components'.DS.'com_content'.DS.'helpers'.DS.'route.php');

class modNSSP1Helper
  (Đây là dòng 18){
   function getList(&$params){
      
      global $mainframe;
      
      $cparams       =& $mainframe->getParams('com_content');

      $db             =& JFactory::getDBO();
      $user          =& JFactory::getUser();
      $userId          = (int) $user->get('id');
      
      $article_count   = $params->get('article_count',3);
      $link_count      = $params->get('link_count',3);
      $links          = $params->get('links',1)==1 ? true : false;
      $catid          = $params->get('com_categories','');
      $secid          = $params->get('com_sections','');
      $show_fp       = $params->get('show_fp', 1);
      $aid          = $user->get('aid', 0);
      $content_source = $params->get('content_source','com_categories');
      $ordering       = $params->get('itemsOrdering');
      $k2cid          = $params->get('k2_categories', NULL);
      $imgSource    = $params->get('imgSource', 'M');
      $user_id        = $params->get('user_id');
      $thumbratio      = $params->get('thumbratio', 1) ? true : false;
      $thumbwidth      = trim($params->get('thumbwidth', 50));
      $thumbheight   = trim($params->get('thumbheight', 50));
      $count = $links ? $article_count + $link_count : $article_count;
      
      $contentConfig  = &JComponentHelper::getParams( 'com_content' );
      $access          = !$contentConfig->get('shownoauth');

      $nullDate       = $db->getNullDate();

      $date =& JFactory::getDate();
      $now = $date->toMySQL();
      $where = '';
      
      // User Filter
      switch ($user_id)
      {
         case 'by_me':
            $where .= ' AND (a.created_by = ' . (int) $userId . ' OR a.modified_by = ' . (int) $userId . ')';
            break;
         case 'not_me':
            $where .= ' AND (a.created_by <> ' . (int) $userId . ' AND a.modified_by <> ' . (int) $userId . ')';
            break;
      }
      
      // ensure should be published
      $where .= " AND ( a.publish_up = ".$db->Quote($nullDate)." OR a.publish_up <= ".$db->Quote($now)." )";
      $where .= " AND ( a.publish_down = ".$db->Quote($nullDate)." OR a.publish_down >= ".$db->Quote($now)." )";
      
       // ordering
      switch ($ordering) {
         case 'date' :
            $orderby = 'a.created ASC';
            break;
         case 'rdate' :
            $orderby = 'a.created DESC';
            break;
         case 'alpha' :
            $orderby = 'a.title';
            break;
         case 'ralpha' :
            $orderby = 'a.title DESC';
            break;
         case 'hits' :
            $orderby = 'a.hits DESC';
            break;
         case 'order' :
            $orderby = 'a.ordering';
            break;
         default :
            $orderby = 'a.id DESC';
            break;
      }
      
      // content specific stuff
        if ($content_source=='k2_categories') {
          // start K2 specific
          require_once (JPATH_SITE.DS.'components'.DS.'com_k2'.DS.'helpers'.DS.'route.php');
         
          $query = "SELECT a.*, c.name as categoryname,c.id as categoryid, c.alias as categoryalias, c.params as categoryparams".
          " FROM #__k2_items as a".
          " LEFT JOIN #__k2_categories c ON c.id = a.catid";
   
          $query .= " WHERE a.published = 1"
          ." AND a.access <= {$aid}"
          ." AND a.trash = 0"
          ." AND c.published = 1"
          ." AND c.access <= {$aid}"
          ." AND c.trash = 0"
          ;
   
         if (!is_null($k2cid)) {
         
            if (is_array($k2cid)) {
               $k2cids = implode($k2cid,',');   
               $ids = explode( ',', $k2cids );
            } else {
               $ids = explode( ',', $k2cid );
            }         
            
            JArrayHelper::toInteger( $ids );               
            $query .= ' AND (a.catid=' . implode( ' OR a.catid=', $ids ) . ')';
         }


          if ($params->get('FeaturedItems')=='0')
             $query.= " AND a.featured != 1";
   
          if ($params->get('FeaturedItems')=='2')
             $query.= " AND a.featured = 1";
             
          $query .= $where . ' ORDER BY ' . $orderby;

          // end K2 specific      
       } else {
            // start Joomla specific
           
            $catCondition = '';
            $secCondition = '';

            if ($show_fp != 2) {
            if ($content_source=='com_categories') {
               if ($catid)
               {
                  if (is_array($catid)) {
                     $jcids = implode($catid,',');   
                     $ids = explode( ',', $jcids );
                  } else {
                     $ids = explode( ',', $catid );
                  }
                  
                  JArrayHelper::toInteger( $ids );
                  $catCondition = ' AND (cc.id=' . implode( ' OR cc.id=', $ids ) . ')';
               }
            } else {
               if ($secid)
               {
                  if (is_array($secid)) {
                     $jsids = implode($secid,',');   
                     $ids = explode( ',', $jsids );
                  } else {
                     $ids = explode( ',', $secid );
                  }
                  
                  JArrayHelper::toInteger( $ids );
                  $secCondition = ' AND (s.id=' . implode( ' OR s.id=', $ids ) . ')';
               }
            }
           }
      
          // Content Items only
          $query = 'SELECT a.*, ' .
             ' CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(":", a.id, a.alias) ELSE a.id END as slug,'.
             ' CASE WHEN CHAR_LENGTH(cc.alias) THEN CONCAT_WS(":", cc.id, cc.alias) ELSE cc.id END as catslug'.
             ' FROM #__content AS a' .
             ($show_fp == '0' ? ' LEFT JOIN #__content_frontpage AS f ON f.content_id = a.id' : '') .
             ($show_fp == '2' ? ' INNER JOIN #__content_frontpage AS f ON f.content_id = a.id' : '') .
             ' INNER JOIN #__categories AS cc ON cc.id = a.catid' .
             ' INNER JOIN #__sections AS s ON s.id = a.sectionid' .
             ' WHERE a.state = 1'. $where .' AND s.id > 0' .
             ($access ? ' AND a.access <= ' .(int) $aid. ' AND cc.access <= ' .(int) $aid. ' AND s.access <= ' .(int) $aid : '').
             ($catid && $show_fp != 2 ? $catCondition : '').
             ($secid && $show_fp != 2 ? $secCondition : '').
             ($show_fp == '0' ? ' AND f.content_id IS NULL ' : '').
             ' AND s.published = 1' .
             ' AND cc.published = 1' .
             ' ORDER BY '. $orderby;
          // end Joomla specific
      }   
      
         
      $db->setQuery($query, 0, $count);

      $rows = $db->loadObjectList();

        $i=0;
      $lists   = array();
      
      if (is_array($rows) && count($rows)>0) {
          foreach ( $rows as $row )
          {
              //process content plugins
              $text = JHTML::_('content.prepare',$row->introtext,$cparams);
            $author = &JFactory::getUser($row->created_by);
             $lists[$i]->id = $row->id;
             $lists[$i]->author = $author->name;   
             $lists[$i]->created = $row->created;
             $lists[$i]->modified = $row->modified;
             $lists[$i]->hits = $row->hits;
             $lists[$i]->title = modNSSP1Helper::prepareTitle($row->title, $params);
             $lists[$i]->introtext = modNSSP1Helper::prepareContent($text, $params);

             if ($content_source=='k2_categories') {
                 $lists[$i]->link = JRoute::_(K2HelperRoute::getItemRoute($row->id.':'.$row->alias, $row->catid.':'.$row->categoryalias));
               $lists[$i]->categoryLink = JRoute::_(K2HelperRoute::getCategoryRoute($row->catid.':'.$row->categoryalias));
               $lists[$i]->comments =  modNSSP1Helper::getComments($row->id);   
               $lists[$i]->author_link = JRoute::_(K2HelperRoute::getUserRoute($row->created_by));
                 $images = modNSSP1Helper::getK2Images($row->id,$imgSource);            
             } else {
                 $lists[$i]->link = JRoute::_(ContentHelperRoute::getArticleRoute($row->slug, $row->catslug, $row->sectionid));
               $lists[$i]->categoryLink = JRoute::_(ContentHelperRoute::getCategoryRoute($row->catslug, $row->sectionid));
                 $images = modNSSP1Helper::getImages($row->introtext,$thumbwidth,$thumbheight,$thumbratio);
             }
         
             $lists[$i]->image = $images->image;
             $i++;
          }
        }
      return $lists;
   }   
   
   function prepareTitle($text, &$params) {
      $text=htmlspecialchars($text);
      // Title limit
      $titlelimit=$params->get('titlelimit',20);
      switch ($params->get('titleas')) {
         case 0 :
            $text = explode(' ',$text);
            $sep = (count($text)>$titlelimit) ? '...' : '';
            $text=implode(' ', array_slice($text,0,$titlelimit)) . $sep;
            break;
         case 1 :
            $sep = (strlen($text)>$titlelimit) ? '...' : '';
            $text=substr($text,0,$titlelimit) . $sep;
            break;
         case 2 :
            $text = $text;
            break;
         default :
            $text = explode(' ',$text);
            $sep = (count($text)>$titlelimit) ? '...' : '';
            $text=implode(' ', array_slice($text,0,$titlelimit)) . $sep;
            break;            
      }      
      
      return $text;
   }   
   
   function prepareContent($text, &$params) {
      
      $text = JFilterOutPut::cleanText($text);

       // Description limit
      $desclimit=$params->get('desclimit',30);
      switch ($params->get('desclimitas')) {
         case 0 :
            $text = explode(' ',$text);
            $sep = (count($text)>$desclimit) ? '...' : '';
            $text=implode(' ', array_slice($text,0,$desclimit)) . $sep;
            break;
         case 1 :
            $sep = (strlen($text)>$desclimit) ? '...' : '';
            $text=substr($text,0,$desclimit) . $sep;
            break;
         case 2 :
            $text = $text;
            break;
         default :
            $text = explode(' ',$text);
            $sep = (count($text)>$desclimit) ? '...' : '';
            $text=implode(' ', array_slice($text,0,$desclimit)) . $sep;
            break;
      }      
      
      return $text;
   }

   function getComments($id) {
      //
      $db =& JFactory::getDBO();
         // creating SQL query
         $query_news = '
         SELECT
            content.id AS id,
            COUNT(comments.itemID) AS count         
         FROM
            #__k2_items AS content
            LEFT JOIN
               #__k2_comments AS comments
               ON comments.itemID = content.id       
         WHERE
            comments.published
            AND ( content.id = ' . $id . ' )
         GROUP BY
            comments.itemID
         ;';
         // run SQL query
         $db->setQuery($query_news);
         $counters = $db->loadObject();
         return $counters->count;
   }
   
   function getK2Images($id,$imagesrc) {    
      
      $images = new stdClass();
      $images->image = false;
      
      if (file_exists(JPATH_SITE.DS.'media'.DS.'k2'.DS.'items'.DS.'cache'.DS.md5("Image".$id).'_' . $imagesrc . '.jpg')) {
          $imgsrc = 'media/k2/items/cache/'.md5("Image".$id).'_' . $imagesrc . '.jpg';
      }
      
      
      $images->image = $imgsrc;
      
      return $images;
   }
   
   
   function getImages($text, $thumbwidth=50, $thumbheight=50, $thumbratio) {    
      
      preg_match("/\<img.+?src=\"(.+?)\".+?\/>/", $text, $matches);
      
      $images = new stdClass();
      $images->image = false;
      $images->thumb = false;

      $paths = array();      
      
      if (isset($matches[1])) {
         $image_path = $matches[1];
         
         // remove any / that begins the path
         if (substr($image_path, 0 , 1) == '/') $image_path = substr($image_path, 1);
         
         // create a thumb filename
         $file_div = strrpos($image_path,'.');
         $thumb_ext = substr($image_path, $file_div);
         $thumb_prev = substr($image_path, 0, $file_div);
         $thumb_path = $thumb_prev . "_thumb" . $thumb_ext;
            
         // check to see if this file exists, if so we don't need to create it
         if (function_exists("gd_info")) {
            // file doens't exist, so create it and save it
            if (!class_exists("spThumbnail")) include_once('class.spThumbnail.php');
            
            //Check existing thumbnails dimensions
            if (file_exists($thumb_path)) {
               $size = GetImageSize( $thumb_path );
               $currentWidth=$size[0];
               $currentHeight=$size[1];
            }
            
            //Creating thumbnails      
                if (!file_exists($thumb_path) || $currentWidth!=$thumbwidth || $currentHeight!=$thumbheight ) {
               $thumb = new spThumbnail;
               $thumb->new_width = $thumbwidth;
               $thumb->new_height = $thumbheight;
               $thumb->image_to_resize = $image_path; // Full Path to the file
               $thumb->ratio = $thumbratio; // Keep Aspect Ratio?
               $thumb->save = $thumb_path;
               $process = $thumb->resize();
             }
         }
         
         $images->image = $thumb_path;
      }
      return $images;
   }
}
 

Hình đại diện của thành viên
TruongLe
Thành viên
Thành viên
Bài viết: 1684
Ngày tham gia: 14/09/2010 - 20:20

Re: Lỗi :::Notice: Trying to get property of non-object in

Gửi bài gửi bởi TruongLe » 22/08/2011 - 01:00

Bạn hãy thử các cách sau:

1/ Tắt chức năng thông báo lỗi của WAMP: Display Error

2/ Kiểm tra phiên bản PHP của WAMP: Một số Extension không hoạt động tốt với PHP có phiên bản mới nhất hiện nay.

:)
* Hãy sử dụng công cụ tìm kiếm của Diễn đàn trước khi đặt câu hỏi.
* Hãy đặt tên cho Chủ đề diễn tả đúng với nội dung để thuận tiện khi tìm kiếm.
* Hãy chia sẻ kiến thức của bạn vì không chỉ giúp được mọi người mà còn giúp mình ghi nhớ những điều đã biết!

maihoang0313
Thành viên mới
Thành viên mới
Bài viết: 2
Ngày tham gia: 21/08/2011 - 19:10

Re: Lỗi :::Notice: Trying to get property of non-object in

Gửi bài gửi bởi maihoang0313 » 22/08/2011 - 07:53

Tuyệt vời ::mình đã cài lại php cũ hơn và thành ông rồi !cảm ơn bạn nhiếu nhé:thank

Đăng trả lời
  • Các chủ đề liên quan
    Trả lời
    Xem
    Bài viết mới nhất

Quay về

Quảng cáo trên trang Web BuaXua.VN