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 thành phần mở rộng 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: Nội quy đăng bài viết
Đă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