Hướng dẫn cách làm - Hình ảnh minh họa - Phim hướng dẫn Lỗi :::Notice: Trying to get property of non-object in

Hôm nay, 26/09/2016 - 00:24

Múi giờ UTC + 7 Giờ



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: viewtopic.php?f=2&t=318247



Tạo chủ đề mới Gửi bài trả lời
Gửi bàiĐã gửi: 21/08/2011 - 19:16 
maihoang0313

Ngoại tuyến

Thành viên mới

Thành viên mới

Ngày tham gia: 21/08/2011 - 19:10
Bài viết: 2
Đã cảm ơn: 1 lần
Được cảm ơn: 0 lần
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ã:
<?php
/*------------------------------------------------------------------------
# Joomla News Show Module V1 by JoomShaper.com
# ------------------------------------------------------------------------
# author    JoomShaper Vui lòng đăng ký thành viên và đăng nhập để xem nội dung này.
# copyright Copyright (C) 2010 JoomShaper.com. All Rights Reserved.
# @license - Copyrighted Commercial Software
# Websites: Vui lòng đăng ký thành viên và đăng nhập để xem nội dung này. - Vui lòng đăng ký thành viên và đăng nhập để xem nội dung này.
# 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;
   }
}
 


Đầu trang
 Xem thông tin cá nhân  
 
Gửi bàiĐã gửi: 22/08/2011 - 01:00 
Hình đại diện của thành viên TruongLe

Ngoại tuyến

Thành viên

Thành viên

Ngày tham gia: 14/09/2010 - 20:20
Bài viết: 1648
Đã cảm ơn: 4 lần
Được cảm ơn: 631 lần
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!


Đầu trang
 Xem thông tin cá nhân  
 
Gửi bàiĐã gửi: 22/08/2011 - 07:53 
maihoang0313

Ngoại tuyến

Thành viên mới

Thành viên mới

Ngày tham gia: 21/08/2011 - 19:10
Bài viết: 2
Đã cảm ơn: 1 lần
Được cảm ơn: 0 lần
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


Đầu trang
 Xem thông tin cá nhân  
 
Hiển thị những bài viết cách đây:  Sắp xếp theo  
Tạo chủ đề mới Gửi bài trả lời
 Bạn đang xem trang 1 / 1 trang [ 3 bài viết ] 

Các chủ đề liên quan


Múi giờ UTC + 7 Giờ


Bạn không thể tạo chủ đề mới trong chuyên mục này.
Bạn không thể trả lời bài viết trong chuyên mục này.
Bạn không thể sửa những bài viết của mình trong chuyên mục này.
Bạn không thể xoá những bài viết của mình trong chuyên mục này.
Bạn không thể gửi tập tin đính kèm trong chuyên mục này.

Chuyển đến: