Page 1 sur 1

Problème !!!!

Posté : 19 mars 2006, 23:21
par Skinsnapper
Bonjour ! J'ai un problème avec un script sur mon site et sa me dit l'erreur suivante: Parse error: parse error, unexpected T_STRING, expecting ',' or ';'

Voici mon script et la phrase en gras c'est la 28eme ligne puisqu'il y a un bout de script avant mais que je ne préfère pas afficher.
<?
// lancement de la requête (on impose aucune condition puisque l'on désire obtenir la liste complète des propriétaires
$sql = 'SELECT * FROM news ORDER BY date DESC LIMIT 0 , 6';

// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());

$x = 0;
while ($data = mysql_fetch_array($req)) {
$y = $x++;
if ($y = 1 || $y = 3 || $y = 5) {

// On teste pour voir si nos variables ont bien été enregistrées
echo'<table cellpadding="0" cellspacing="0" width="408">';
echo'<tr>';
echo'<td width="408" bgcolor="#A9DC53">';
echo'<p>'.$data['date'].';
echo'<a href="./lire_sujet.php?lire_news=' , $data['id'] , '">' , stripslashes(htmlentities(trim($data['titre']))) , '</a></p>';
echo'</td>';
echo'</tr>';
echo'</table>';
}
else {
echo'<table cellpadding="0" cellspacing="0" width="408">';
echo'<tr>';
echo'<td width="408" bgcolor="#82AB43">';
echo'<p>'.$data['date'].';
echo'<a href="./lire_sujet.php?lire_news=' , $data['id'] , '">' , stripslashes(htmlentities(trim($data['titre']))) , '</a></p>';
echo'</td>';
echo'</tr>';
echo'</table>';
}

}
mysql_free_result ($req);
mysql_close ();
?>
</body>
</html>
Pouvez-vous me guider pour savoir ou est mon erreur ?

Merci

Posté : 19 mars 2006, 23:24
par momox
Quand tu encadres tes stripslashes et tes variables tu as mis des virgules a la place des points...
@+

Posté : 19 mars 2006, 23:33
par Skinsnapper
Bonjour et merci de m'avoir répondu ! Je vient de tester et pourtant sa ne marche pa splus avec des points au lieu des virgules :cry:

Posté : 19 mars 2006, 23:43
par momox
Attention avec les variables...
Qu'utilises tu pour coder?
Car a mon avis un colorateur syntatique te serait bien précieux...
<?php
// lancement de la requête (on impose aucune condition puisque l'on désire obtenir la liste complète des propriétaires
$sql = 'SELECT * FROM news ORDER BY date DESC LIMIT 0 , 6';

// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());

$x = 0;
while ($data = mysql_fetch_array($req))
{
	$y = $x++;
	if ($y = 1 || $y = 3 || $y = 5)
	{
	// On teste pour voir si nos variables ont bien été enregistrées
		echo '<table cellpadding="0" cellspacing="0" width="408">';
		echo '<tr>';
		echo '<td width="408" bgcolor="#A9DC53">';
		echo '<p>'.$data['date'];
		echo '<a href="./lire_sujet.php?lire_news=' . $data['id'] . '">' . stripslashes(htmlentities(trim($data['titre']))) . '</a></p>';
		echo '</td>';
		echo '</tr>';
		echo '</table>';
	}
	else
	{
		echo '<table cellpadding="0" cellspacing="0" width="408">';
		echo '<tr>';
		echo '<td width="408" bgcolor="#82AB43">';
		echo '<p>'.$data['date'];
		echo '<a href="./lire_sujet.php?lire_news=' . $data['id'] . '">' . stripslashes(htmlentities(trim($data['titre']))) . '</a></p>';
		echo'</td>';
		echo'</tr>';
		echo'</table>';
	}
}
mysql_free_result ($req);
mysql_close ();
?>
</body>
</html>
Ca devrait fontionner maintenant je pense...
@+

Posté : 19 mars 2006, 23:52
par Skinsnapper
Ah oui effectivement sa marche :) Merci bcp :) !!!

J'aurait une autre petite question, voici mon site:
http://www.lesconstructionsrey.com/site/index.php

Nous voyons que les news s'affichent maintenant et bien elle sont chacun dans un tableau différent, pourrait tu me dire comment je pourrait faire que dans ma boucle, il affiche une news avec un couleur de fond de le céllule différente et une autre news d'une autre coleur différente et ensuite il refait de même ?

Merci pour ton aide :)

Posté : 19 mars 2006, 23:55
par albat
Quand tu encadres tes stripslashes et tes variables tu as mis des virgules a la place des points...
:!:
Les virgules permettent d'afficher des chaînes juxtaposées les unes à la suite des autres ;
Les points les concatènent dans une variable et affiche le résultat de celle-ci.

Posté : 20 mars 2006, 00:02
par Skinsnapper
Ah oui effectivement sa marche :) Merci bcp :) !!!

J'aurait une autre petite question, voici mon site:
http://www.lesconstructionsrey.com/site/index.php

Nous voyons que les news s'affichent maintenant et bien elle sont chacun dans un tableau différent, pourrait tu me dire comment je pourrait faire que dans ma boucle, il affiche une news avec un couleur de fond de le céllule différente et une autre news d'une autre coleur différente et ensuite il refait de même ?

Merci pour ton aide :)
Avez-vous un petit coup de main à me filler pour cette question ?

Posté : 20 mars 2006, 00:03
par Truc
Quand tu encadres tes stripslashes et tes variables tu as mis des virgules a la place des points...
@+
Les 2 sont possibles même si la concaténation avec la virgule est peu utilisée.

EDIT: Wahou, je dois apprendre à poser mon café quand je réponds :lol:

Posté : 20 mars 2006, 00:13
par Truc
Euh sur le lien que tu donnes les cellules sont déjà de différentes couleurs :-k

Posté : 20 mars 2006, 00:17
par Skinsnapper
Oui mais c'est seulement dans un boucle mais comme on peut voir, les 2 news se répète deux fois une après l'autre :( . J'aimerais bien que que les news soit différente pour chaque couleur. Sur le site en se moment c'est une boucle qui se répète deux fis alors ya les deux couleur mais la news est répèter deux fois :\ .

Posté : 20 mars 2006, 00:53
par Skinsnapper
avez-vous une petite idée ?

Posté : 20 mars 2006, 01:20
par Truc
normalement pour ce genre de chose on utilise un "modulo".
Pour ton cas le test n'est pas bon il manque des =
if ($y == 1 || $y == 3 || $y == 5)