Alors voila,
je réalise actuellement un petit site php, et il faut savoir que j’ai pratiqué tres peu de php, il y a 3 ans quand j’avais fais mon site perso.
Je me suis donc inspiré d’un vieux script pour faire l’annuaire mais voici les problemes affichés, lorsque je mets en place ma page qui affichera tous les sites, triés et classés :
le code :
<? require "secret/connect.php";
if($debut==""){$debut=0;}
if($tri==""){$tri=titre;}
if($ord==""){$ord=ASC;}
$affsites = mysql_query("SELECT * FROM annuaire WHERE cat='$cat' AND accepte = '028' ORDER BY $tri $ord LIMIT $debut,10");
$ncat = mysql_num_rows($affsites)or die(mysql_error());
?>
J’avais deja utilisé le meme code auparavent et ça fonctionnait sans probleme, vous savez d’ou ça peut venir ?
Merci
Tu dois initialiser tes variables avant de les utiliser et effectivement $tri recoit une chaine donc la valeur doit être entre ’ '.
Utilise la fonction “isset()” pour vérifier que la variable a été initialisée, dans le code si dessous je verifie le cas ou elle ne l’est pas, donc : !isset()
Quand au <? ?> c’est bon
<? require "secret/connect.php";
if (!isset($debut)){$debut=0;}
if (!isset($tri)){$tri='titre';}
if (!isset($ord)){$ord=ASC;}
$affsites = mysql_query("SELECT * FROM annuaire WHERE cat='$cat' AND accepte = '028' ORDER BY $tri $ord LIMIT $debut,10");
$ncat = mysql_num_rows($affsites)or die(mysql_error());
?>
Non. A partir de php5 ce n’est plus <? par défaut. Tout comme les GPC sont forcées par défaut (donc $cat != $_GET[‘cat’]).
nikeman> comme je l’ai dis, lis le message d’erreur : il te dit juste qu’une variable n’est pas définie. A toi de voir ce que $cat est dans ton contexte (certainement une variable get, de type entier) et de faire un truc de ce gout avant :