Problème pour mini forum en php

Fermé
T E DEUM - 8 mai 2004 à 14:53
HYYANI Messages postés 5 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 23 juillet 2008 - 19 juin 2008 à 01:19
Bonjour, voila j'ai le script d'un forum en php mais lorsque je met le forum sur mon site on me declare une erreur ligne 27 et ligne 50, je suis héberger chez lycos Mysql et php sont activés .Les erreus que mon navigateur affiche :

1) Parse error: parse error, expecting `','' or `';'' in ********.php on line 27

2) Parse error: parse error, expecting `','' or `';'' in ********.php on line 50

J'ai bo cherché je trouve pas S.VP de l'aide

voila le script (les lignes isolées sont celle dite defectueuse par le navigateur):


<?
$file="chatbox.txt"; // Nom du fichier dans lequel sont stoqués les messages
$bg=Array("#EEEEEE","#DDDDDD"); // Couleurs de fond des cellule (alternatif)
$color="#000000"; // Couleur des messages
$lien="#333333"; // Couleurs des pseudos
$nmsg=20; // Nombre max de messages
?>
<html>
<body bgcolor="[?=$bg[0]?]" topmargin="0" leftmargin="0">
<?
if($mess && $pseudo){
$mess=htmlspecialchars(str_replace(Array("n","r"),Array(" "," "),substr(trim($mess),0,100)));
$pseudo=htmlspecialchars(str_replace(Array(" ","n","r"),"_",substr(trim($pseudo),0,20)));
$mail=htmlspecialchars(str_replace(Array(" ","n","r"),"_",substr(trim($mail),0,40)));
if(!$mail or $mail=="Mail_ou_URL") $mail="nul";
$fp=@fopen($file,"a");
if($fp){
fputs($fp,"$pseudo $mail $messrn");
fclose($fp);
}else{
echo "Impossible d'envoyer le message";
}
}


if(file_exists($file)){







echo "<table border=0 cellpadding=0 cellspacing=0 width="100%" style='table-layout:fixed'>";







$msgs=file($file);

if(count($msgs)>$nmsg){
unset($msgs[0]);
$msgs2=implode("",$msgs);
$fp=fopen($file,"w");
fputs($fp,$msgs2);
fclose($fp);
$msgs=file($file);
}


$k=0;
for($i=count($msgs)-1;$i>=0;$i-=1){
$msg=explode(" ",$msgs[$i]);
$pseudo=$msg[0];
$mail=$msg[1];
if(ereg("@",$mail)) $mail="mailto:".$mail;
elseif(!ereg("http://",$mail)) $mail="http://".$mail;
if($mail=="http://nul") $mail="";
unset($msg[0],$msg[1]);
$msg=trim(implode(" ",$msg));






echo "<tr><td bgcolor="".$bg[$k].""><b>";







if($mail) echo "<a href="$mail" target="_blank">";
echo "<font color="$lien">$pseudo</font>";
if($mail) echo "</a>";
echo "<font color="$lien">:</font></b> <font color="$color">$msg</font></td></tr>";
$k=1-$k; // On change la couleur de fond
}
echo "</table>";
}

?>
<script>
parent.chatform.chatenvoi.value="Envoyer";
</script>
</body>
</html>
A voir également:

6 réponses

salut
essaye comme ca

echo "<table border=0 cellpadding=0 cellspacing=0 width=100% style=table-layout:fixed>";

echo "<tr><td bgcolor=".$bg[$k]."><b>";
0
Quand je fai ça sa decale le problème o ligne suivante, et quand je modifie les lignes suivantes juska ce qu'yen ai plus le forum apparai tout merdique!
0
Vous avez pas d'autres idées?
0
flokocha Messages postés 1510 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 10 octobre 2015 280
10 mai 2004 à 21:10
Tous tes problèmes viennent effectivement des tes guillemets.

Tu ne peux pas imbriquer des guillemets de type ", il faut que tu utilises des ' à l'intérieur.

Exemple:
echo "<tr><td bgcolor="".$bg[$k].""><b>"; ne veut rien dire du tout.
Il faut écrire echo "<tr><td bgcolor=' ".$bg[$k]. " '><b>";

Pareil pour
echo "<table border=0 cellpadding=0 cellspacing=0 width="100%" style='table-layout:fixed'>";

et pour
if($mail) echo "<a href="$mail" target="_blank">";

et pour
echo "<font color="$lien">:</font></b> <font color="$color">$msg</font></td></tr>";

Si tu corriges tout ça, ça devrait fonctionner correctement.


.::: "A trop vouloir feindre de faire fi, on finit 
par faire fi de vouloir feindre." 
:::.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Sinon tu peux échapper les guillemets avec un \
ex :

echo("Salut, voici un guillmet : \" ");

l'\ permet de montrere que le " n'est pas la fin de la phrase mais fait parti de celle -ci ...
0
HYYANI Messages postés 5 Date d'inscription vendredi 7 septembre 2007 Statut Membre Dernière intervention 23 juillet 2008
19 juin 2008 à 01:19
Bonjour.
J'ai le script d'un mini-forum.
mais ca ne fonctionne pas.
je pense que le problème est du au fichier texte qui ne s'ouvre pas.
voici le script.
qq'un voit il ou se trouve le probleme?


<HTML>
<HEAD>
<!-- Web Site: http://kiskisdi.free.fr/ -->
<TITLE>Kit Graphique Gratuit</TITLE>
<link rel="stylesheet" type="text/css" href="styles1.css">
</HEAD>

<BODY background="image/gfx_top_bg.jpg">
<p> </p>
<center>
<tr>
<?
$cpt=0;
$fp = fopen("mini-forum.txt", "r");
while (!feof($fp))
{
$ligne = fgets($fp,2000000);
$login = explode("£",$ligne);
$stop = sizeof( $login );
for($x = 0; $x < $stop-1; $x++)
{
$liste = explode("|",$login[$x]);

for($y = 0;$y <= 4 ;$y++)
{
$case[$x][$cpt] = $liste[$y];
$cpt++;
}
$cpt = 0;
}
}
fclose($fp);


// Division en plusieurs pages :

if($stop-1 > 15){
if(!isset($debut) && !isset($fin)){$debut = 1; $fin = 15;}
echo("<center>[ ");
$afficn = 1;
for($alt = 0; $alt <= $stop-2; $alt = $alt+15)
{
$alt2 = $alt+15;
$alt0 = $alt+1;
if ($alt2 > $stop-1){$alt2 = $stop-1;}
if ($debut == $alt0 && $fin == $alt2){echo("<b>");}
echo("<a href=\"mini-forum.php?debut=$alt0&fin=$alt2\">$afficn </a>");
if ($debut == $alt0 && $fin == $alt2){echo("</b>");}
$afficn++;
if ($alt2 < $stop-1)
{
echo(" | ");
}
}
echo("]</center><br>");
}
else
{
$debut = 1;
$fin = $stop-1;
}

// Dessin du tableau :
$debut = $stop-1-$debut;
$fin = $stop-1-$fin;
for($x = $debut; $x >= $fin; $x--)
{
$ama = "{$case[$x][0]}";
$ama = strtolower($ama);
$ama = ucwords($ama);
$mess = "{$case[$x][2]}";
$mess = strtolower($mess);
$mess = ucwords($mess);
$comm = "{$case[$x][1]}";
$comm = preg_replace("`((?:https?|ftp)://\S+)(\s|\z)`", '<a title="Visiter le site" target="_blank" href="$1">$1</a>$2', $comm);
echo(" <img border=\"0\" src=\"forum-bts/puce.gif\"> <b><font color=\"#D5831F\">$ama</font></b> écrit par <i>$mess</i><br>$comm<br><br>");
}
?>
<br><p align="center"><img border="0" src="forum-bts/ajout.gif" width="218" height="25"><form method="POST" name="form" action="mini-forum.php">
<input type="text" name="titrems" size="22" value="Titre du message" onClick="javascript:document.form.titrems.value='';">
<input type="text" name="pseudo" size="22" value="Pseudo/Nom" onClick="javascript:document.form.pseudo.value='';"><br>
<textarea style="font-size: 8 pt; font-family: Verdana" rows="8" name="commentaire" cols="70"></textarea><br>
<img src="forum-bts/2.gif" style="CURSOR: hand" onClick="commentaire.value+=' [main] '">
<img src="forum-bts/10.gif" style="CURSOR: hand" onClick="commentaire.value+=' [fume] '">
<img src="forum-bts/3.gif" style="CURSOR: hand" onClick="commentaire.value+=' [cool] '">
<img src="forum-bts/6.gif" style="CURSOR: hand" onClick="commentaire.value+=' [nul] '">
<img src="forum-bts/1.gif" style="CURSOR: hand" onClick="commentaire.value+=' [waoo] '">
<img src="forum-bts/0.gif" style="CURSOR: hand" onClick="commentaire.value+=' [dingue] '">
<img src="forum-bts/9.gif" style="CURSOR: hand" onClick="commentaire.value+=' [triste] '">
<img src="forum-bts/5.gif" style="CURSOR: hand" onClick="commentaire.value+=' [idee] '">
<img src="forum-bts/11.gif" style="CURSOR: hand" onClick="commentaire.value+=' [mechant] '">
<img src="forum-bts/4.gif" style="CURSOR: hand" onClick="commentaire.value+=' [perplexe] '">
<img src="forum-bts/8.gif" style="CURSOR: hand" onClick="commentaire.value+=' [amigo] '">
<img src="forum-bts/7.gif" style="CURSOR: hand" onClick="commentaire.value+=' [love] '">
 <INPUT TYPE="submit" value="Valider" name="submit">
</p></form>
<?
if (isset($submit) AND ($titrems <> "Titre du message") AND ($pseudo <> "Pseudo/Nom") AND ($commentaire <> ""))
{
$fp = fopen("mini-forum.txt","a");
$commentaire = str_replace("\'", "'", $commentaire);
$titrems = str_replace("\'", "'", $titrems);
$titrems = str_replace(">", ">", $titrems);
$titrems = str_replace("<", "<", $titrems);
$pseudo = str_replace("\'", "'", $pseudo);
$commentaire = str_replace('\"', '"', $commentaire);
$titrems = str_replace('\"', '"', $titrems);
$pseudo = str_replace('\"', '"', $pseudo);
$pseudo = str_replace("<", "<", $pseudo);
$pseudo = str_replace(">", ">", $pseudo);
$commentaire = str_replace(">", ">", $commentaire);
$commentaire = str_replace("<", "<", $commentaire);
$commentaire = str_replace(",", ", ", $commentaire);
$commentaire = str_replace(" ,", ", ", $commentaire);
$commentaire = str_replace(" , ", ", ", $commentaire);
$commentaire = str_replace(" .", ". ", $commentaire);
$commentaire = str_replace(" . ", ". ", $commentaire);
$commentaire = str_replace(CHR(10), "<br>", $commentaire);
$commentaire = str_replace("[cool]", "<img align='absmiddle' border='0' src='forum-bts/3.gif'>", $commentaire);
$commentaire = str_replace("[nul]", "<img align='absmiddle' border='0' src='forum-bts/6.gif'>", $commentaire);
$commentaire = str_replace("[waoo]", "<img align='absmiddle' border='0' src='forum-bts/1.gif'>", $commentaire);
$commentaire = str_replace("[dingue]", "<img align='absmiddle' border='0' src='forum-bts/0.gif'>", $commentaire);
$commentaire = str_replace("[triste]", "<img align='absmiddle' border='0' src='forum-bts/9.gif'>", $commentaire);
$commentaire = str_replace("[idee]", "<img align='absmiddle' border='0' src='forum-bts/5.gif'>", $commentaire);
$commentaire = str_replace("[fume]", "<img align='absmiddle' border='0' src='forum-bts/10.gif'>", $commentaire);
$commentaire = str_replace("[mechant]", "<img align='absmiddle' border='0' src='forum-bts/11.gif'>", $commentaire);
$commentaire = str_replace("[main]", "<img align='absmiddle' border='0' src='forum-bts/2.gif'>", $commentaire);
$commentaire = str_replace("[perplexe]", "<img align='absmiddle' border='0' src='forum-bts/4.gif'>", $commentaire);
$commentaire = str_replace("[love]", "<img align='absmiddle' border='0' src='forum-bts/7.gif'>", $commentaire);
$commentaire = str_replace("[amigo]", "<img align='absmiddle' border='0' src='forum-bts/8.gif'>", $commentaire);
fputs($fp, "$titrems|$commentaire|$pseudo");
fputs($fp,"£");
fclose($fp);

echo("<script language=\"javascript\">document.location=\"mini-forum.php\";</script>");

}
elseif (isset($submit))
{
echo("<script language=\"javascript\">alert('Vous devez renseigner votre Nom, le Titre de votre message et laisser un message!');</script>");
}
?></div>
</td>
</tr>
<tr>
<td width="88%" height="2">
<p align="center"><a href="http://webqui.free.fr"></p>
</td>
</tr>
</table>
<p align="center"> </p>
</BODY></HTML>




merci.
0