Warning: preg_match() [function.preg-match]:

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par scarface7, 22 Août 2008.

  1. scarface7
    scarface7 WRInaute discret
    Inscrit:
    29 Mars 2006
    Messages:
    104
    J'aime reçus:
    0
    Bonjour je viens d'installer joomla et le theme Terran tribune.
    mais il ya un module qui ne marche pas bien il affiche les erreures suivantes :

    Warning: preg_match() [function.preg-match]: Compilation failed: unrecognized character after (?< at offset 16 in /home/automeca/public_html/modules/mod_rokmininews/helper.php on line 170

    Warning: preg_match() [function.preg-match]: Compilation failed: unrecognized character after (?< at offset 16 in /home/automeca/public_html/modules/mod_rokmininews/helper.php on line 170

    lien du site http://www.automecanik.ro/

    merci pour votre aide
     
  2. dmathieu
    dmathieu WRInaute accro
    Inscrit:
    9 Janvier 2004
    Messages:
    5 596
    J'aime reçus:
    0
    Et quel est le contenu de la ligne 170 du fichier helper.php mentionné ?
     
  3. scarface7
    scarface7 WRInaute discret
    Inscrit:
    29 Mars 2006
    Messages:
    104
    J'aime reçus:
    0
    voici le contenu du fichier

    <?php
    /**
    * @version $Id: helper.php 9764 2007-12-30 07:48:11Z rhuk $
    * @package RocketTheme
    * @copyright Copyright (C) 2005 - 2008 RocketTheme, LLC. All rights reserved.
    * @license GNU/GPL, see LICENSE.php
    */

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

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

    class modRokMiniNewsHelper
    {

    function getSection(&$params) {

    $db =& JFactory::getDBO();
    $user =& JFactory::getUser();
    $userId = (int) $user->get('id');

    $secid = trim( $params->get('secid') );
    $aid = $user->get('aid', 0);

    $contentConfig = &JComponentHelper::getParams( 'com_content' );
    $access = !$contentConfig->get('shownoauth');

    $query = 'SELECT s.id, s.title, s.alias' .
    ' FROM #__sections AS s' .
    ' WHERE s.id > 0 ' .
    ($access ? ' AND s.access <= ' .(int) $aid : '').
    ' AND s.published = 1 AND s.id = ' . $secid;

    $db->setQuery($query);
    $section = $db->loadObject();

    return ($section);

    }

    function getCategories(&$params) {

    $db =& JFactory::getDBO();
    $user =& JFactory::getUser();
    $userId = (int) $user->get('id');

    $secid = trim( $params->get('secid') );
    $aid = $user->get('aid', 0);

    $contentConfig = &JComponentHelper::getParams( 'com_content' );
    $access = !$contentConfig->get('shownoauth');

    $query = 'SELECT c.id, c.title, c.alias' .
    ' FROM #__categories AS c' .
    ' WHERE c.id > 0 ' .
    ($access ? ' AND c.access <= ' .(int) $aid : '').
    ' AND c.published = 1 AND c.section = ' . $secid;

    $db->setQuery($query);
    $categories = $db->loadObjectList();

    return ($categories);

    }

    function getList(&$params)
    {
    global $mainframe;

    $db =& JFactory::getDBO();
    $user =& JFactory::getUser();
    $userId = (int) $user->get('id');

    $count = 15; //hardcode a max of 15 as that is the max available to display
    $catid = trim( $params->get('catid') );
    $secid = trim( $params->get('secid') );
    $show_front = $params->get('show_front', 1);
    $aid = $user->get('aid', 0);

    $text_length = intval($params->get( 'preview_count', 200) );

    $contentConfig = &JComponentHelper::getParams( 'com_content' );
    $access = !$contentConfig->get('shownoauth');

    $nullDate = $db->getNullDate();

    $date =& JFactory::getDate();
    $now = $date->toMySQL();

    $where = 'a.state = 1'
    . ' AND ( a.publish_up = '.$db->Quote($nullDate).' OR a.publish_up <= '.$db->Quote($now).' )'
    . ' AND ( a.publish_down = '.$db->Quote($nullDate).' OR a.publish_down >= '.$db->Quote($now).' )'
    ;

    // User Filter
    switch ($params->get( 'user_id' ))
    {
    case 'by_me':
    $where .= ' AND (created_by = ' . (int) $userId . ' OR modified_by = ' . (int) $userId . ')';
    break;
    case 'not_me':
    $where .= ' AND (created_by <> ' . (int) $userId . ' AND modified_by <> ' . (int) $userId . ')';
    break;
    }

    // Ordering
    switch ($params->get( 'ordering' ))
    {
    case 'm_dsc':
    $ordering = 'a.modified DESC, a.created DESC';
    break;
    case 'c_dsc':
    default:
    $ordering = 'a.created DESC';
    break;
    }

    if ($catid)
    {
    $ids = explode( ',', $catid );
    JArrayHelper::toInteger( $ids );
    $catCondition = ' AND (cc.id=' . implode( ' OR cc.id=', $ids ) . ')';
    }
    if ($secid)
    {
    $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_front == '0' ? ' LEFT 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 '. $where .' AND s.id > 0' .
    ($access ? ' AND a.access <= ' .(int) $aid. ' AND cc.access <= ' .(int) $aid. ' AND s.access <= ' .(int) $aid : '').
    ($catid ? $catCondition : '').
    ($secid ? $secCondition : '').
    ($show_front == '0' ? ' AND f.content_id IS NULL ' : '').
    ' AND s.published = 1' .
    ' AND cc.published = 1' .
    ' ORDER BY '. $ordering;
    $db->setQuery($query, 0, $count);
    $rows = $db->loadObjectList();

    $i = 0;
    $lists = array();
    foreach ( $rows as $row )
    {
    $lists[$i]->id = $row->id;
    $lists[$i]->thumb = $i > 1 ? false : modRokMiniNewsHelper::getThumb($row->introtext);
    $lists[$i]->created = $row->created;
    $lists[$i]->modified = $row->modified;
    $lists[$i]->link = JRoute::_(ContentHelperRoute::getArticleRoute($row->slug, $row->catslug, $row->sectionid));
    $lists[$i]->title = htmlspecialchars( $row->title );
    $lists[$i]->introtext = $i > 4 ? false : modRokMiniNewsHelper::prepareContent( $row->introtext, $text_length);
    $i++;
    }

    return $lists;
    }

    function getThumb($text, $size=70, $reflections=false) {

    preg_match( "'src=(?:"|\')?(?<imgSrc>[^>]*[^/].(?:jpg|bmp|gif|png))(?:"|\')?'", $text, $matches );

    if (isset($matches[1])) {
    $image_path = $matches[1];

    //remove any protocol/site info from the image path
    $uri = $_SERVER['REQUEST_URI'];
    if (strpos($image_path,$uri) !== false ) {
    $image_path = substr($image_path,strpos($image_path, $uri)+strlen($uri));
    }

    //if after removing the uri, still has protocol then the image
    //is remote and we don't support thumbs for external images
    if (strpos($image_path,'http://') !== false ||
    strpos($image_path,'https://') !== false) {
    return false;
    }

    // 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 (!file_exists($thumb_path)) {
    // file doens't exist, so create it and save it
    include_once('thumbnail.inc.php');
    $thumb = new Thumbnail($image_path);
    $thumb->resize($size);
    if ($reflections) {
    $thumb->createReflection(30,30,60,false);
    }
    if (!is_writable(dirname($thumb_path))) {
    $thumb->destruct();
    return false;
    }
    $thumb->save($thumb_path);
    $thumb->destruct();
    }
    return ($thumb_path);
    } else {
    return false;
    }
    }

    function prepareContent( $text, $length=200 ) {
    // strips tags won't remove the actual jscript
    $text = preg_replace( "'<script[^>]*>.*?</script>'si", "", $text );



    $text = preg_replace( '/{.+?}/', '', $text);
    // replace line breaking tags with whitespace
    $text = strip_tags(preg_replace( "'<(br[^/>]*?/|hr[^/>]*?/|/(div|h[1-6]|li|p|td))>'si", ' ', $text ));
    // cut off text at word boundary if required
    if (strlen($text) > $length) {
    $text = substr($text, 0, strpos($text, ' ', $length)) . "..." ;
    }
    return $text;
    }
    }
     
  4. dmathieu
    dmathieu WRInaute accro
    Inscrit:
    9 Janvier 2004
    Messages:
    5 596
    J'aime reçus:
    0
    Euh ouais. Mais compter toutes les lignes pour savoir laquelle est la 170, c'est pas mon kiff.
     
  5. nickargall
    nickargall WRInaute accro
    Inscrit:
    13 Juin 2005
    Messages:
    6 601
    J'aime reçus:
    4
    c'est celle la, la 170 :
    Code:
    preg_match( "'src=(?:\"|\')?(?<imgSrc>[^>]*[^/].(?:jpg|bmp|gif|png))(?:\"|\')?'", $text, $matches );
    
    :)
     
  6. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 170
    J'aime reçus:
    344
Chargement...
Similar Threads - Warning preg_match() [function Forum Date
jos-Warning Problèmes de référencement spécifiques à vos sites 29 Septembre 2015
Warning: MagpieRSS: Failed to fetch Développement d'un site Web ou d'une appli mobile 15 Avril 2015
PHP Warning incompréhensible Développement d'un site Web ou d'une appli mobile 5 Mars 2015
Page blanche sur mon site Warning: require_once Demandes d'avis et de conseils sur vos sites 22 Février 2014
Google phishing warning, besoin d'aide... Administration d'un site Web 8 Septembre 2012
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource Développement d'un site Web ou d'une appli mobile 11 Janvier 2012
Warning open_basedir restriction in effect / ECONNREFUSED Problèmes de référencement spécifiques à vos sites 10 Novembre 2010
Warning: sprintf() [function.sprintf]: Too few arguments Développement d'un site Web ou d'une appli mobile 16 Mai 2009
[PHP] Probleme de WARNING étrange... Développement d'un site Web ou d'une appli mobile 25 Février 2009
Warning: file_get_contents Développement d'un site Web ou d'une appli mobile 13 Janvier 2009
Warning: Could not find/open font Administration d'un site Web 26 Novembre 2008
Warning: Invalid argument supplied for foreach() joomla + virtuemart Développement d'un site Web ou d'une appli mobile 17 Novembre 2008
Warning: cannot previsualiser Fire Board Développement d'un site Web ou d'une appli mobile 13 Novembre 2008
message ou redirection en cas de Warning: mysql_connect() Développement d'un site Web ou d'une appli mobile 12 Février 2008
erreur PHP Warning: mysql_fetch_array(): supplied argument Développement d'un site Web ou d'une appli mobile 23 Novembre 2006
Warning+php Développement d'un site Web ou d'une appli mobile 28 Juillet 2006
Warning : mkdir ! Administration d'un site Web 10 Août 2005
No ending matching delimiter '>' Warning: Compilation fai Administration d'un site Web 17 Juillet 2005
Erreur dans google "Warning: main(): Failed opening ... Administration d'un site Web 14 Mars 2004
Problème de preg_match(). Développement d'un site Web ou d'une appli mobile 15 Mai 2020