Bonjour toutes/tous,
Retirᅵ depuis un bon bout de temps du code destinᅵ au Web, suis obligᅵ
de crᅵer un "chat", avec stockage des messages dans une BdD, Free
refusant ceci dans un fichier tete. Pour ce faire, j'ai rᅵcupᅵrᅵ dans
mes archives une sᅵrie de scripts/pages plus ou moins correctes (enfin,
je pense ...) et envoyᅵ le tout sur site. ᅵa "marche", c'est dᅵjᅵ un bon
point. Nᅵanmoins, j'ai quelques petites problᅵmes, le 1er ᅵtant
essentiellement la profondeur du stockage et son affichage dans la
fenᅵtre du chat : cet affichage se limite aux 2/3 de la fenᅵtre et les
messages les plus anciens disparaissent au fur et ᅵ mesure de l'arrivᅵe
des suivants. Or, dans la BdD (qui ne comporte qu'une table, celle qui
stocke les messages), j'ai une profondeur de stockage bien plus
importante. Mais elle ne s'affiche pas et je ne vois pas pourquoi.
Dans les variables de cette table, j'ai ceci, lors de leur crᅵation :
<code>
`pseudo` VARCHAR(30) NOT NULL,
`message` VARCHAR(255) NOT NULL,
`date` VARCHAR(30) NOT NULL,
`formatage` VARCHAR(10) NOT NULL,
`temp` INT(30) NOT NULL,
</code>
Pour les 4 premiers, pas de problᅵme, j'en comprends l'intᅵrᅵt et la
prᅵsence.
C'est pour le 5ᅵme que je m'interroge et je ne trouve aucune information
sur le web, du moins en franᅵais. Serait-ce celle ᅵ modifier ?
La requᅵte vers la BdD destinᅵe ᅵ l'affichage comporte le code suivant :
<code>
$ide= MYSQL_CONNECT($host_mysql,$user_mysql,$pass_mysql);
mysql_select_db("$bd_mysql");
$tm=microtime();$tm2=explode(" ",$tm);$tm3=$tm2[1];
$query = "DELETE FROM $table WHERE (temp+7777)<$tm3";
mysql_query($query,$ide);
$query = "SELECT * FROM $table ORDER BY id DESC";
$result = mysql_query($query,$ide);
$cpt=0;
while($row = mysql_fetch_row($result))
{
$cpt++;
$coul=substr($row[4],0,1);
$tail=substr($row[4],1,1);
$appa=substr($row[4],2,1);
$msg=$row[2];
if ($appa==1){$msg.=$row2;}
if ($appa==2){$msg2="<B>";$msg2.=$msg;$msg2.="</B>";$msg=$msg2;}
if ($appa==3){$msg2="<I>";$msg2.=$msg;$msg2.="</I>";$msg=$msg2;}
if ($appa==4){$msg2="<U>";$msg2.=$msg;$msg2.="</U>";$msg=$msg2;}
if ($appa==5){$msg2="<STRIKE>";$msg2.=$msg;$msg2.="</STRIKE>";$msg=$msg2;}
if ($coul==1){$msg2='<FONT
COLOR="#000000">';$msg2.=$msg;$msg2.="</FONT>";$msg=$msg2;}
if (snip la suite des couleurs) ...
echo"- <u>$row[1]</u> <font color=\"999999\">[$row[3]]</font> : $msg<br>";
if ($cpt==20) {break;}
}
MYSQL_CLOSE();
?>
</code>
Celle structurant le message est la suivante :
<code>
<?
$ide= MYSQL_CONNECT($host_mysql,$user_mysql,$pass_mysql);
mysql_select_db("$bd_mysql");
$query = "SELECT * FROM $table";
$result = mysql_query($query,$ide);
$taille = "1";
$datime = date("H:i");
$message2 = htmlentities($txt);
$message3 = nl2br($message2);
$formatage=$couleur;
$formatage.=$taille;
$formatage.=$attrib;
$tmp=microtime();$tmp2=explode(" ",$tmp);$tmp3=$tmp2[1];
if ($txt != "" and $pseudo != "")
{
$query = "INSERT INTO $table VALUES
('0','$pseudo','$message3','$datime','$formatage','$tmp3')";
$result = mysql_query($query,$ide);
}
MYSQL_CLOSE();
?>
</code>
Quelqu'un peut me dᅵpanner sur ce coup ?
Cordialement,
--
docanski
Portail et annuaire du nord-Bretagne :
http://armorance.free.fr/
Guide des champignons d'Europe :
http://mycorance.free.fr/
La vallᅵe de la Rance maritime :
http://valderance.free.fr/
Les cᅵtes du nord de la Bretagne :
http://docarmor.free.fr/