Erreur en php

nickleus Messages postés 384 Statut Membre -  
nickleus Messages postés 384 Statut Membre -
Bonjour,

je suis sur une erreur php que je ne comprend pas :

Warning: PDOStatement::fetchAll() [function.PDOStatement-fetchAll]: SQLSTATE[HY000]: General error: 2050 in

j'ai le message précédent qui s'affiche.

pouvez vous m'aider ?

S'il faut le reste du script y pas de problème y a qu'a demander

merci d'avance
--
Il n'y a pas de problème, il n'y a que des solutions
Configuration: Windows Vista
Firefox 3.0.3

2 réponses

  1. nickleus Messages postés 384 Statut Membre 5
     
    voici la class que j'ai créé dans un fichier appellé "class_.php" :

    class liste_sites{
    public $table;
    public $categorie;
    public $debut;
    public $fin;
    public $dir_;
    
    function liste_site($table, $categorie, $debut, $fin){
    global $dbh;
    global $result_sites;
    
    $sql_categories = "SELECT * FROM categorie_sites WHERE categorie = '".$categorie."'";
    $result_categories = $dbh-> query($sql_categories);
    $row = $result_categories->fetchAll(PDO::FETCH_ASSOC);
    
    $sql_sites = "SELECT * FROM ".$table." WHERE affichage = 'OK' && categorie = '".$row[0]['id']."' ORDER BY visitors DESC, clics DESC LIMIT ".$debut.", ".$fin."";
    $result_sites = $dbh-> query($sql_sites);
    
    if($table == 'dir_teste'){
    $this->dir_ = 'dir-teste/';
    }}
    }


    j'inclus le fichier dans "index.php"

    et là je fait cela :

    require_once('/var/www/vhosts/XXXX/httpdocs/connexions/XXX.php');
    require_once('/var/www/vhosts/XXXX/httpdocs/librairie/php/setup.php');
    require_once('/var/www/vhosts/XXXX/httpdocs/librairie/php/scripts/class_.php');
    
    
    $liste_site_affiche = new liste_sites();
    $liste_site_affiche->liste_site('sites', 'site type', 0, 5);
    $liste_site_affiche = $result_sites->fetchAll(PDO::FETCH_ASSOC);
    
    $smarty = new listes();
    $smarty->assign('tbl_sites', $liste_site_affiche);
    
    $smarty ->caching = true;
    $smarty ->cache_lifetime = time();
    $smarty ->display('index.tpl');
    $smarty ->clear_cache('index.tpl');
    


    ensuite le résultat je tente d'afficher le résultat en boucle dans un template :

    {foreach from=$tbl_sites key=cid item=con }
    <div class="liste">
      <h2><a href="{#var#}site/{$dir_}{$nom_cat|replace:' ':'-'}/{$con.page}">{$con.nom} : {$con.titre}</a></h2>
    	{if isset($con.image) }
      <a href="{#var#}site/{$nom_cat|replace:' ':'-'}/{$con.page}"><img src="{#annuaire#}librairie/images/sites/{$con.image}" alt="" width="190" height="110"/></a>
    	{/if}
      <p>{$con.courte_desc}...</p>
      <p class="categorie"><a href="{#var#}site/{$dir_}{$nom_cat|replace:' ':'-'}/{$con.page}">{$con.nom}</a></p>
    </div> 
    {/foreach}


    voila j'espère que c'est claire :)
    0