Page 1 sur 2
Variable non-définie.
Posté : 01 mai 2006, 21:58
par vins1892
Bonsoir,
j'utilise xlagenda pour gérer des évnements sur mon site et souhaite récupérer en 1ère page des évènements insérés dans la base.
<?
$db = mysql_connect ('mysql4','nomdelabase','password');
mysql_select_db('nomdelabase',$db);
$sql = 'SELECT nom FROM xlagenda WHERE date_fin >= '$year-$month-$day' AND actif = '1' ORDER BY date_debut ASC, nom ASC';
$req = mysql_query($sql) or die ('erreur sql <br>'.$sql.'<br>.mysql_error());
while($data = mysql_fetch_array($req))
{
echo '.$data['nom'].';
}
mysql_close();
?>
où le nom correspond à un évènement dans ma table xlagenda.
La requête SELECT nom FROM xlagenda WHERE date_fin >= '$year-$month-$day' AND actif = '1' ORDER BY date_debut ASC, nom ASC fonctionne dans phpmyadmin.
J'ai une erreur variable indéfinie ligne 12 ...
Quelqu'un peut m'aider ? Merci
Posté : 01 mai 2006, 22:03
par Truc
Salut,
Commence par faire des concaténation propres puis reviens avec un message d'erreur au complet et la ligne 12 c'est la quelle ?
$var = "Ceci est une ".$concatenation." propre, avec des points ";
Posté : 01 mai 2006, 22:05
par Cyrano
Tu as de toutes façons probablement une erreur avec ceci :
$sql = 'SELECT nom FROM xlagenda WHERE date_fin >= '$year-$month-$day' AND actif = '1' ORDER BY date_debut ASC, nom ASC';
prenons la date du jour, ça donne : 2006-05-01 = 2000 ... avec une concaténation propre, il faudrait écrire:
$sql = "SELECT nom FROM xlagenda WHERE date_fin >= '". $year ."-". $month ."-". $day ."' AND actif = 1 ORDER BY date_debut ASC, nom ASC";
Posté : 07 mai 2006, 16:48
par vins1892
Dsl pour ma réponse tardive.
Ai fait les modif's indiquées et autre erreur sur la ligne $req ....
<?
$db = mysql_connect ('mysql4','rcsttvis','EyDLfpAQ');
mysql_select_db('rcsttvis',$db);
$sql = "SELECT nom FROM xlagenda WHERE date_fin >= '". $year ."-". $month ."-". $day ."' AND actif = 1 ORDER BY date_debut ASC, nom ASC"
$req = mysql_query($sql) or die ('erreur sql <br>'.$sql.'<br>.mysql_error());
while($data = mysql_fetch_array($req))
{
echo '.$data.';
}
mysql_close();
?>
Sinon, les concaténations sont ok maintenant ?
Posté : 07 mai 2006, 17:18
par charabia
$sql = "SELECT nom FROM xlagenda WHERE date_fin >= '". $year ."-". $month ."-". $day ."' AND actif = 1 ORDER BY date_debut ASC, nom ASC";
Tu as oublié de ";" après ta requête.
Posté : 17 mai 2006, 22:24
par vins1892
Bonsoir,
ça marche en effet bcp mieux avec le ; en fin de requête
J'ai maintenant une parse error en ligne 22, soit après la dernière ligne de mon code (après le </html>)
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?
$db = mysql_connect ('mysql4','nomdelabase','password');
mysql_select_db('nomdelabase',$db);
$sql = "SELECT nom FROM xlagenda WHERE date_fin >= '". $year ."-". $month ."-". $day ."' AND actif = 1 ORDER BY date_debut ASC, nom ASC";
$req = mysql_query($sql) or die ('erreur sql <br>'.$sql.'<br>.mysql_error());
while($data = mysql_fetch_array($req))
{
echo '.$data.';
}
mysql_close();
?>
</body>
</html>
Merci pour votre aide.
Posté : 17 mai 2006, 22:31
par Truc
édite ton post et utilise les balises
tu trouveras ton erreur par coloration syntaxique :wink:
Posté : 10 août 2006, 13:01
par vins1892
Salut,
je profite de mes vacances et reviens sur ce vieux sujet.
J'ai édité les balises, ms ne vois tjrs pas où est le soucis.
Help.
Posté : 10 août 2006, 13:51
par graphistnet
Pourtant ca saute aux yeux, regarde du côté de ton echo.

Posté : 10 août 2006, 14:18
par zeus
c'est plutot au niveau du die()

Posté : 10 août 2006, 14:30
par graphistnet
oops en effet juste après le <br>

il est vrai que l'echo n'est pas un probleme syntaxique à proprement dit

Posté : 10 août 2006, 19:04
par charabia
N'oublies pas le résolu pour clore le problème

Posté : 10 août 2006, 19:09
par Truc
N'oublies pas le résolu pour clore le problème

C'est pas encore le cas
Il va revenir en décembre les prochaines vacances

Posté : 15 août 2006, 14:48
par vins1892
Bjr et dsl pour ma réponse tardive
Merci pour votre aide, il manquait un ' dans le die.
Maintenant, ma requête donne ArrayArrayArrayArrayArrayArray ...
On peut continuer sur le même topic ou j'ouvre un nouveau ?
Merci.
Posté : 15 août 2006, 14:57
par graphistnet
Normal, tu affiches un tableau sans en indiquer la colonne.