Index
Forums
Annuaire
Référencement
Télécharger
  phpBB SEO : Référencement Google, MSN, Yahoo, Annuaires, Forums  
phpBB SEO
Boards
Directory  
SEO  
Downloads
 
  Rechercher Search
    S'enregistrer
Pseudo :  Passe :  Auto  
Register  
 
   
Erreur PHP / mysql

 
Poster un nouveau sujet   Répondre au sujet    phpBB SEO » Forum Référencement  » Le Forum phpBB
::  
Auteur Message
philippe
phpBB SEO Team
phpBB SEO Team


Inscrit le: 23 Juin 2006
Messages: 541
Localisation: Région Parisienne

Erreur PHP / mysqlPosté le: Mer Jan 24, 2007 3:52 pm    Sujet du message: Erreur PHP / mysql

Une question Hors référencement mais je n'ai jamais eu de réponse sur phpbb-fr.com et comme il y a des bons en PHP ici, je tente Very Happy

J'ai une erreur sur les résultats de recherche de l'annuaire de Genova

Code:
Warning: mysql_fetch_array(): 38 is not a valid MySQL result resource in
/home/www/589e794be9a61212261fd3b060774abf2/web/db/mysql4.php on line 214


Erreur systématique quelle que soit la recherche, il me semble que cette erreur est apparue après le passage des bases sur mysql 5, en tout cas les mêmes fichiers fonctionne sur Free ...

_________________
Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile | Forum Scirocco
Revenir en haut de page
Visiter le site web de l'utilisateur
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 15380

Erreur PHP / mysqlPosté le: Mer Jan 24, 2007 3:59 pm    Sujet du message: Re: Erreur PHP / mysql

Comme c'est un warning, tu dois pouvoir lui tordre le coup en mettant un @ devant la fonction :

Code:
@mysql_fetch_array()

A l'endroit ou elle est appelée, dans db/mysql4.php donc.

A priori, c'est juste une histoire de résultats NULL, que le code doit pouvoir gérer sans changement pour peu qu'il fasse pas genre un foreach sur le resultat d'un requête NULL, ce qui provoquerait une deuxième erreur.

C'est pas très étonnant que mysql 5 soit plus tatillon sur certains points, comme ce fut le cas en la 3 et la 4.

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
philippe
phpBB SEO Team
phpBB SEO Team


Inscrit le: 23 Juin 2006
Messages: 541
Localisation: Région Parisienne

Erreur PHP / mysqlPosté le: Mer Jan 24, 2007 4:11 pm    Sujet du message: Re: Erreur PHP / mysql

Yes plus d'erreur mais en fait la fonction de recherche de l'annuaire ne me renvoie jamais de résultat valide avec mysql 5.

Même si le mot recherché est dans un site de l'annuaire, j'ai toujours un résultat nul.

Ca doit encore être une histoire de LEFT JOIN que mysql5 n'apprécie pas.

_________________
Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile | Forum Scirocco
Revenir en haut de page
Visiter le site web de l'utilisateur
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 15380

Erreur PHP / mysqlPosté le: Mer Jan 24, 2007 4:15 pm    Sujet du message: Re: Erreur PHP / mysql

Alors oui, il doit y avoir une requête foireuse.

Donc, vu la ligne dans mysql4.php, cela doit correspondre à un appel a $db->sql_fetchrow() dans le code de la recherche de l'annuaire.

Ça peut aider à retrouver la requête.

Si tu la trouve, poste la, il doit y avoir moyen de contourner le problème.

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
philippe
phpBB SEO Team
phpBB SEO Team


Inscrit le: 23 Juin 2006
Messages: 541
Localisation: Région Parisienne

Erreur PHP / mysqlPosté le: Mer Jan 24, 2007 4:18 pm    Sujet du message: Re: Erreur PHP / mysql

Code:
/*
** Si le formulaire de recherche est soumis ...
*/
$have_search = FALSE;
if (isset($HTTP_POST_VARS['submit']))
{
   if (!empty($keyword))
   {
      $keytab = explode(' ', $keyword);
      $count_key = count($keytab);
      $ssql = ' WHERE ';
      for ($i = 0; $i < $count_key; $i++)
      {
         $ssql .= ' (a.annu_lien_description LIKE \'%' . $keytab[$i] . '%\' OR a.annu_site_name LIKE \'%' . $keytab[$i] . '%\') ' . (($i < ($count_key - 1)) ? $method : '');
      }
      
      if (!empty($cat))
      {
         $ssql .= " AND a.annu_lien_cat = '$cat' ";
      }
      
      $sql = 'SELECT a.*, c.*, u.user_id, u.username FROM ' . ANNU_LIEN_TABLE . ' a
            LEFT JOIN ' . ANNU_CAT_TABLE . ' c
               ON a.annu_lien_cat = c.annu_cat_id
            LEFT JOIN ' . USERS_TABLE . ' u
               ON u.user_id = a.annu_lien_membre_id
            ' . $ssql . '
            AND a.annu_lien_active = \'1\'
            ORDER BY a.annu_site_name ASC';
      if (!$result = $db->sql_query($sql))
      {
         message_die(GENERAL_ERROR, 'Impossible de récupérer les données de la table de lien d\'annuaire', '', __LINE__, __FILE__, $sql);
      }
      $have_search = TRUE;
   }
   else
   {
      message_die(GENERAL_ERROR, $lang['annu_erreur_keyword']);
   }
}


Code:
/*
** S'il y a eu une recherche.
*/
if ($have_search)
{
   $template->assign_block_vars('result', array());
   $have_result = FALSE;
   while ($data = $db->sql_fetchrow($result))
   {
      $have_result = TRUE;
      
      /*
      ** URL du site.
      */
      $u_site = append_sid($phpbb_root_path . 'annuaire.' . $phpEx . '?mode=view_url&amp;url_id=' . $data['annu_lien_id']);
      
      /*
      ** On s'occupe de la banière.
      */
      $s_banner = '';
      $have_banner = FALSE;
      if (!empty($data['annu_site_banner']))
      {
         list($width, $height) = @getimagesize($data['annu_site_banner']);
         if ($width > $board_config['annu_banner_width'] || $height > $board_config['annu_banner_height'])
         {
            $coef_w = $width / $board_config['annu_banner_width'];
            $coef_h = $height / $board_config['annu_banner_height'];
            $coef_max = max($coef_w, $coef_h);
            $width /= $coef_max;
            $height /= $coef_max;
         }
            
         $s_banner = '<a href="' . $u_site . '" target="_blank"><img src="' . $data['annu_site_banner'] . '" width="' . $width . '" height="' . $height . '" border="0" alt="" /></a>';
         $have_banner = TRUE;
      }

_________________
Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile | Forum Scirocco
Revenir en haut de page
Visiter le site web de l'utilisateur
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 15380

Erreur PHP / mysqlPosté le: Mer Jan 24, 2007 5:10 pm    Sujet du message: Re: Erreur PHP / mysql

Alors, j'ai pas d'installe du mod sous la main, donc, a tester (surtout pour les LIKE de $ssql), mais je dirais :

Code:
      $ssql = ' WHERE ';


A remplacer par :
Code:

      $ssql = ' AND ';


Et :
Code:
      if (!empty($cat))
      {
         $ssql .= " AND a.annu_lien_cat = '$cat' ";
      }


Par :
Code:
       $ssql2 = '';
      if (!empty($cat))
      {
         $ssql2 = " a.annu_lien_cat = '$cat' AND ";
      }


Et pour la requète :

Code:
      $sql = "SELECT a.*, c.*, u.user_id, u.username
      FROM " . ANNU_LIEN_TABLE . " AS a, " . ANNU_CAT_TABLE . " AS c, " . USERS_TABLE . " AS u
      WHERE $ssql2 c.annu_cat_id = a.annu_lien_cat
         AND a.annu_lien_active = 1
         AND u.user_id = a.annu_lien_membre_id
         $ssql
      ORDER BY a.annu_site_name ASC";


++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
philippe
phpBB SEO Team
phpBB SEO Team


Inscrit le: 23 Juin 2006
Messages: 541
Localisation: Région Parisienne

Erreur PHP / mysqlPosté le: Mer Jan 24, 2007 7:26 pm    Sujet du message: Re: Erreur PHP / mysql

Toujours aucun résultat alors que les termes recherchés sont présents !!!

Question Question Question

_________________
Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile | Forum Scirocco
Revenir en haut de page
Visiter le site web de l'utilisateur
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 15380

Erreur PHP / mysqlPosté le: Mer Jan 24, 2007 11:26 pm    Sujet du message: Re: Erreur PHP / mysql

Et si maintenant tu retires le @ pour voir si tu as toujours le warning ?

Si non, c'est soit le :
Code:

       $ssql .= ' (a.annu_lien_description LIKE \'%' . $keytab[$i] . '%\' OR a.annu_site_name LIKE \'%' . $keytab[$i] . '%\') ' . (($i < ($count_key - 1)) ? $method : '');


soit une histoire qui viens d'ailleurs, genre php5, et une variable qui coince.

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
philippe
phpBB SEO Team
phpBB SEO Team


Inscrit le: 23 Juin 2006
Messages: 541
Localisation: Région Parisienne

Erreur PHP / mysqlPosté le: Mer Jan 24, 2007 11:55 pm    Sujet du message: Re: Erreur PHP / mysql

Toujours l'erreur sans le @

Je suis sur php 4

mais c'est pas vital pour le forum Very Happy

_________________
Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile | Forum Scirocco
Revenir en haut de page
Visiter le site web de l'utilisateur
philippe
phpBB SEO Team
phpBB SEO Team


Inscrit le: 23 Juin 2006
Messages: 541
Localisation: Région Parisienne

Erreur PHP / mysqlPosté le: Sam Jan 27, 2007 12:01 pm    Sujet du message: Re: Erreur PHP / mysql

Bon à force de chercher et en ajoutant des echo sur les variables pour debugger, j'ai fini par trouver.

Le problème ne vient pas de php, ni de mysql 5 donc pas de mon upgrade de serveur mais tout simplement de l'ajout dans page_header.php des fonctions de hack_list du download mod Shocked Shocked

Rolling Eyes Rolling Eyes Rolling Eyes

_________________
Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile | Forum Scirocco
Revenir en haut de page
Visiter le site web de l'utilisateur
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 15380

Erreur PHP / mysqlPosté le: Sam Jan 27, 2007 12:17 pm    Sujet du message: Re: Erreur PHP / mysql

Alors là, il fallait trouver Laughing

De toutes façons, pas hyper utile, enfin indispensable cette partie de download mod.

Tu pourrais l'entourer d'un if (il est bien groupé dans page_header.php)

Genre if annuaire, alors on évite Wink

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
philippe
phpBB SEO Team
phpBB SEO Team


Inscrit le: 23 Juin 2006
Messages: 541
Localisation: Région Parisienne

Erreur PHP / mysqlPosté le: Sam Jan 27, 2007 2:27 pm    Sujet du message: Re: Erreur PHP / mysql

Je l'ai viré tout simplement car je n'utilise pas cette fonction Very Happy

_________________
Philippe
Webmaster du forum de Discussions sur la New Beetle | Blog 123-newbeetle | Annuaire Automobile | Forum Scirocco
Revenir en haut de page
Visiter le site web de l'utilisateur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    phpBB SEO » Forum Référencement  » Le Forum phpBB
Page 1 sur 1

Navigation Autres sujets de discussion

Sauter vers: