par
Dr@ke » 04 sept. 2009, 10:14
Je suis sous
Php5, le script brut ne fonctionnait pas sur mon serveur, maintenant oui.
Pour les erreurs
$n et
$c, ce n'est pas une question de version de Php, c'est une question de rapport d'erreur
Notice, et cela fonctionne chez
free car le rapport d'erreur est surement configuré par défaut.
C'est à dire: les erreurs de type Notice ne sont pas affichées...
Ces deux erreurs étaient donc présente sur Php4 aussi, mais masquées par
@.
Bref, le script ci-dessous, devrait fonctionner sans erreurs, je n'ai pas testé, mais logiquement oui:
<?php
$largeurTableauxA="97%"; // Largeur du TableauA
$couleurBordTableauA="#f4f4f4"; // Couleur de la bordure du TableauA
$couleurFondEnteteTableauA="#f4f4f4"; // Couleur de fond de la ligne d'entête du tableauA
$policeEnteteTableauA="verdana"; // Police utilisée dans la ligne d'entête du tableauA
$couleurPoliceEnteteTableauA="#0e0e0e"; // Couleur de la police utilisée dans la ligne d'entête du tableauA
$couleurFondLigneNomAuteurTableauA="#242424"; // Couleur de fond des lignes "Nom de l'auteur"
$policeLignesNomAuteurTableauA="verdana"; // Police utilisée dans les lignes "Nom de l'auteur"
$couleurPoliceLignesNomAuteurTableauA="#b60909"; // Couleur de la police utilisée dans les lignes "Nom de l'auteur"
$couleurFondLigneCommentaireTableauA="#f4f4f4"; // Couleur de fond des lignes "Commentaire"
$policeLignesCommentairesTableauA="times"; // Police utilisée dans les lignes "Commentaire"
$couleurPoliceLignesCommentairesTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Commentaire"
$NombreComParPage=8; // Nombre maximum de commentaires à afficher dans le tableau (par page)
$NombreMaxPages=40; // Nombre maximum de pages de commentaires susceptibles d'être affichées
// === Paramètres d'affichage du TableauB (affichage du formulaire permettant d'ajouter un nouveau commentaire) ===
$largeurTableauxB="97%"; // Largeur du TableauB
$couleurBordTableauB="#0e0e0e"; // Couleur de la bordure du TableauB
$couleurFondEnteteTableauB="#242424"; // Couleur de fond de la ligne d'entête du tableauB
$policeEnteteTableauB="verdana"; // Police utilisée dans la ligne d'entête du tableauB
$couleurPoliceEnteteTableauB="#f4f4f4"; // Couleur de la police utilisée dans la ligne d'entête du tableauB
$couleurFondFormulaireTableauB="#f4f4f4"; // Couleur de fond de la cellule affichant le formulaire
$policeFondFormulaireTableauB="verdana"; // Police utilisée dans la cellule affichant le formulaire
$couleurPoliceFondFormulaireTableauB="#0e0e0e"; // Couleur de la police utilisée dans la cellule affichant le formulaire
// === Paramètres destinés au contrôle des messages postés (dispositif "anti-piratage") ===
$longueurMaxCommentaires="2000"; // Nombre maximum de caractères pouvant être postés dans un commentaire
$longueurMaxMots="20"; // Nombre maximum de caractères par "mot" (ce dispositif permet d'empêcher une éventuelle augmentation incontrôlée de la largeur des tableaux)
if(!file_exists("livre.dat")) {
$idFicLivre=fopen("livre.dat","w+");
fwrite($idFicLivre,"Fichier Index. Ne pas éditer !\n");
fclose($idFicLivre);
}
function coupeMotsLongs($chaine, $ncaracteres) {
$chaineRes = $chaine;
while(preg_match("/[ ]{$ncaracteres}[ ]/", $chaineRes, $corres)) {
$partRep=$corres[1];
$chaineRes=preg_replace("/$partRep/", $partRep . ' <br> ', $chaineRes);
}
return($chaineRes);
}
if (isset($c) and isset($n)) {
if((strlen($n)>$longueurMaxCommentaires) or (strlen($c)>$longueurMaxCommentaires)) {
print("Désolé, la taille maximale des commentaires pouvant être postés est limitée à $longueurMaxCommentaires caractères.<br>\n");
print('<a href="' . $_SERVER["PHP_SELF"] . '">Retour au Livre d\'Or</a>' . "\n");
exit;
}
// détermination de la date
$tdate=getdate();
$jour=sprintf("%02.2d",$tdate["mday"])."/".sprintf("%02.2d",$tdate["mon"])."/".$tdate["year"];
$heure=sprintf("%02.2d",$tdate["hours"])."H".sprintf("%02.2d",$tdate["minutes"]);
$d=$jour." à ".$heure;
// nettoyage du nom
$n=htmlentities($n);
$n=stripslashes($n);
$n=trim($n);
// nettoyage du commentaire
$c=htmlentities($c);
$c=str_replace(chr(10)," <br> ",$c);
$c=str_replace(chr(13),"",$c);
$c=stripslashes($c);
$c=trim($c);
$idFicLivreCom=fopen("livre.dat","a+");
fwrite($idFicLivreCom,$n); // 1ère ligne
fwrite($idFicLivreCom,"|"); //
fwrite($idFicLivreCom,$d."|\n"); //
fwrite($idFicLivreCom,$c."\n"); // 2ème ligne
fclose($idFicLivreCom);
print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
print("<center> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
print("<b>Merci pour votre participation !</b> \n");
print("</font> \n");
print("</center> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
$TabLivre=file("livre.dat");
$nLignesTabLivre=count($TabLivre)-1;
$nCommentaires=$nLignesTabLivre/2;
for($compt=1;$compt<=$nCommentaires;$compt++) {
$nom[$compt]=trim(stripslashes(strtok($TabLivre[($compt*2)-1],"|")));
$date[$compt]=trim(stripslashes(strtok("|")));
$commentaire[$compt]=trim(stripslashes($TabLivre[($compt*2)]));
}
if(!isset($p)) {
$p=1; // $p représente le numéro de la page de commentaire à afficher : par défaut, $p=1
}
if($nCommentaires>0) {
print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxA\" align=\"center\" bgcolor=\"$couleurBordTableauA\"> \n");
print("<tr><td> \n");
print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"30\"> \n");
print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<center> \n");
print("<b><a href=\"#ajout\">Ajouter un nouveau commentaire</a></b> <br> \n");
print("</center> \n");
print("</font> \n");
print("</td> \n");
print("</tr> \n");
for($compt=($nCommentaires-(($p-1)*$NombreComParPage));$compt>=max(1,($nCommentaires-($p*$NombreComParPage)+1));$compt--) {
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\"> \n");
print("<table> \n");
print("<tr> \n");
print("<td width=\"10\"> </td> \n");
print("<td> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"><b>".coupeMotsLongs($nom[$compt],$longueurMaxMots)."</b> , le ".$date[$compt]." :</font> \n");
print("</td> \n");
print("</tr> \n");
print("</table> \n");
print("</td></tr> \n");
print("<tr><td bgcolor=\"$couleurFondLigneCommentaireTableauA\"> \n");
print("<table> \n");
print("<tr> \n");
print("<td width=\"20\"> </td> \n");
print("<td> \n");
print("<font face=\"$policeLignesCommentairesTableauA\" color=\"$couleurPoliceLignesCommentairesTableauA\">".coupeMotsLongs($commentaire[$compt],$longueurMaxMots)."</font>\n");
print("</td> \n");
print("</tr> \n");
print("</table> \n");
print("</td></tr> \n");
}
if(($nCommentaires>$NombreComParPage) and $p<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1))) {
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"20\"> \n");
print("<center> \n");
print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<b>pages</b> \n");
print("<b> \n");
for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
if($a==$p) print("$a \n");
else print('<a href="' . $_SERVER["PHP_SELF"] . '?p=' . "$a\">$a</a> \n");
}
print("</b> \n");
print("</font> \n");
print("</center> \n");
print("</td> \n");
print("</tr> \n");
}
print("</table> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
else {
print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
print("<center> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
print("<b>Le livre d'or ne comporte encore aucun commentaire.</b> \n");
print("</font> \n");
print("</center> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
print("<a name=\"ajout\"></a>");
print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxB\" align=\"center\" bgcolor=\"$couleurBordTableauB\"> \n");
print("<tr><td> \n");
print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauB\" height=\"30\"> \n");
print("<font face=\"$policeEnteteTableauB\" color=\"$couleurPoliceEnteteTableauB\" size=\"-1\"> \n");
if($nCommentaires>0) print("<b><center>Ajouter un nouveau commentaire :</center></b> \n");
else print("<b><center>Envoyer un premier commentaire :</center></b> \n");
print("</font> \n");
print("</td> \n");
print("</tr> \n");
print("<tr><td bgcolor=\"$couleurFondFormulaireTableauB\"> \n");
print("<form method='POST' action='{$_SERVER["PHP_SELF"]}'> \n");
print("<center> \n");
print("<br> \n");
print("<font face=\"$policeFondFormulaireTableauB\" color=\"$couleurPoliceFondFormulaireTableauB\" size=\"-1\"> \n");
print("<b>Votre nom</b> : \n");
print("</font> \n");
print("<input type=\"text\" name=\"n\" size=\"24\"> \n");
print("<br><br> \n");
print("<textarea rows=\"6\" name=\"c\" cols=\"55\" wrap=\"virtual\"></textarea> \n");
print("<br> \n");
print("<input type=\"submit\" value=\"Envoyer !\" name=\"B1\"> \n");
print("</form> \n");
print("</td></tr> \n");
print("</table> \n");
print("</td></tr> \n");
print("</table> \n");
?>
[EDIT]
Fonction preg_match et preg_replace corrigées, le script fonctionnait mais pas cette fonction:
function coupeMotsLongs($chaine, $ncaracteres) {
$chaineRes = $chaine;
while(preg_match("/[ ]{$ncaracteres}[ ]/", $chaineRes, $corres)) {
$partRep=$corres[1];
$chaineRes=preg_replace("/$partRep/", $partRep . ' <br> ', $chaineRes);
}
return($chaineRes);
}
[EDIT 2]
Légère simplification du code...
J'ai édité le script plus haut, pour le reste, ce n'est pas mon script

Je suis sous [b]Php5[/b], le script brut ne fonctionnait pas sur mon serveur, maintenant oui.
Pour les erreurs [b]$n[/b] et [b]$c[/b], ce n'est pas une question de version de Php, c'est une question de rapport d'erreur [b]Notice[/b], et cela fonctionne chez [b]free[/b] car le rapport d'erreur est surement configuré par défaut. [u]C'est à dire:[/u] les erreurs de type Notice ne sont pas affichées...
Ces deux erreurs étaient donc présente sur Php4 aussi, mais masquées par [b]@[/b].
Bref, le script ci-dessous, devrait fonctionner sans erreurs, je n'ai pas testé, mais logiquement oui:
[php]<?php
$largeurTableauxA="97%"; // Largeur du TableauA
$couleurBordTableauA="#f4f4f4"; // Couleur de la bordure du TableauA
$couleurFondEnteteTableauA="#f4f4f4"; // Couleur de fond de la ligne d'entête du tableauA
$policeEnteteTableauA="verdana"; // Police utilisée dans la ligne d'entête du tableauA
$couleurPoliceEnteteTableauA="#0e0e0e"; // Couleur de la police utilisée dans la ligne d'entête du tableauA
$couleurFondLigneNomAuteurTableauA="#242424"; // Couleur de fond des lignes "Nom de l'auteur"
$policeLignesNomAuteurTableauA="verdana"; // Police utilisée dans les lignes "Nom de l'auteur"
$couleurPoliceLignesNomAuteurTableauA="#b60909"; // Couleur de la police utilisée dans les lignes "Nom de l'auteur"
$couleurFondLigneCommentaireTableauA="#f4f4f4"; // Couleur de fond des lignes "Commentaire"
$policeLignesCommentairesTableauA="times"; // Police utilisée dans les lignes "Commentaire"
$couleurPoliceLignesCommentairesTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Commentaire"
$NombreComParPage=8; // Nombre maximum de commentaires à afficher dans le tableau (par page)
$NombreMaxPages=40; // Nombre maximum de pages de commentaires susceptibles d'être affichées
// === Paramètres d'affichage du TableauB (affichage du formulaire permettant d'ajouter un nouveau commentaire) ===
$largeurTableauxB="97%"; // Largeur du TableauB
$couleurBordTableauB="#0e0e0e"; // Couleur de la bordure du TableauB
$couleurFondEnteteTableauB="#242424"; // Couleur de fond de la ligne d'entête du tableauB
$policeEnteteTableauB="verdana"; // Police utilisée dans la ligne d'entête du tableauB
$couleurPoliceEnteteTableauB="#f4f4f4"; // Couleur de la police utilisée dans la ligne d'entête du tableauB
$couleurFondFormulaireTableauB="#f4f4f4"; // Couleur de fond de la cellule affichant le formulaire
$policeFondFormulaireTableauB="verdana"; // Police utilisée dans la cellule affichant le formulaire
$couleurPoliceFondFormulaireTableauB="#0e0e0e"; // Couleur de la police utilisée dans la cellule affichant le formulaire
// === Paramètres destinés au contrôle des messages postés (dispositif "anti-piratage") ===
$longueurMaxCommentaires="2000"; // Nombre maximum de caractères pouvant être postés dans un commentaire
$longueurMaxMots="20"; // Nombre maximum de caractères par "mot" (ce dispositif permet d'empêcher une éventuelle augmentation incontrôlée de la largeur des tableaux)
if(!file_exists("livre.dat")) {
$idFicLivre=fopen("livre.dat","w+");
fwrite($idFicLivre,"Fichier Index. Ne pas éditer !\n");
fclose($idFicLivre);
}
function coupeMotsLongs($chaine, $ncaracteres) {
$chaineRes = $chaine;
while(preg_match("/[ ]{$ncaracteres}[ ]/", $chaineRes, $corres)) {
$partRep=$corres[1];
$chaineRes=preg_replace("/$partRep/", $partRep . ' <br> ', $chaineRes);
}
return($chaineRes);
}
if (isset($c) and isset($n)) {
if((strlen($n)>$longueurMaxCommentaires) or (strlen($c)>$longueurMaxCommentaires)) {
print("Désolé, la taille maximale des commentaires pouvant être postés est limitée à $longueurMaxCommentaires caractères.<br>\n");
print('<a href="' . $_SERVER["PHP_SELF"] . '">Retour au Livre d\'Or</a>' . "\n");
exit;
}
// détermination de la date
$tdate=getdate();
$jour=sprintf("%02.2d",$tdate["mday"])."/".sprintf("%02.2d",$tdate["mon"])."/".$tdate["year"];
$heure=sprintf("%02.2d",$tdate["hours"])."H".sprintf("%02.2d",$tdate["minutes"]);
$d=$jour." à ".$heure;
// nettoyage du nom
$n=htmlentities($n);
$n=stripslashes($n);
$n=trim($n);
// nettoyage du commentaire
$c=htmlentities($c);
$c=str_replace(chr(10)," <br> ",$c);
$c=str_replace(chr(13),"",$c);
$c=stripslashes($c);
$c=trim($c);
$idFicLivreCom=fopen("livre.dat","a+");
fwrite($idFicLivreCom,$n); // 1ère ligne
fwrite($idFicLivreCom,"|"); //
fwrite($idFicLivreCom,$d."|\n"); //
fwrite($idFicLivreCom,$c."\n"); // 2ème ligne
fclose($idFicLivreCom);
print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
print("<center> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
print("<b>Merci pour votre participation !</b> \n");
print("</font> \n");
print("</center> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
$TabLivre=file("livre.dat");
$nLignesTabLivre=count($TabLivre)-1;
$nCommentaires=$nLignesTabLivre/2;
for($compt=1;$compt<=$nCommentaires;$compt++) {
$nom[$compt]=trim(stripslashes(strtok($TabLivre[($compt*2)-1],"|")));
$date[$compt]=trim(stripslashes(strtok("|")));
$commentaire[$compt]=trim(stripslashes($TabLivre[($compt*2)]));
}
if(!isset($p)) {
$p=1; // $p représente le numéro de la page de commentaire à afficher : par défaut, $p=1
}
if($nCommentaires>0) {
print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxA\" align=\"center\" bgcolor=\"$couleurBordTableauA\"> \n");
print("<tr><td> \n");
print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"30\"> \n");
print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<center> \n");
print("<b><a href=\"#ajout\">Ajouter un nouveau commentaire</a></b> <br> \n");
print("</center> \n");
print("</font> \n");
print("</td> \n");
print("</tr> \n");
for($compt=($nCommentaires-(($p-1)*$NombreComParPage));$compt>=max(1,($nCommentaires-($p*$NombreComParPage)+1));$compt--) {
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\"> \n");
print("<table> \n");
print("<tr> \n");
print("<td width=\"10\"> </td> \n");
print("<td> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"><b>".coupeMotsLongs($nom[$compt],$longueurMaxMots)."</b> , le ".$date[$compt]." :</font> \n");
print("</td> \n");
print("</tr> \n");
print("</table> \n");
print("</td></tr> \n");
print("<tr><td bgcolor=\"$couleurFondLigneCommentaireTableauA\"> \n");
print("<table> \n");
print("<tr> \n");
print("<td width=\"20\"> </td> \n");
print("<td> \n");
print("<font face=\"$policeLignesCommentairesTableauA\" color=\"$couleurPoliceLignesCommentairesTableauA\">".coupeMotsLongs($commentaire[$compt],$longueurMaxMots)."</font>\n");
print("</td> \n");
print("</tr> \n");
print("</table> \n");
print("</td></tr> \n");
}
if(($nCommentaires>$NombreComParPage) and $p<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1))) {
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"20\"> \n");
print("<center> \n");
print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<b>pages</b> \n");
print("<b> \n");
for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
if($a==$p) print("$a \n");
else print('<a href="' . $_SERVER["PHP_SELF"] . '?p=' . "$a\">$a</a> \n");
}
print("</b> \n");
print("</font> \n");
print("</center> \n");
print("</td> \n");
print("</tr> \n");
}
print("</table> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
else {
print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
print("<center> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
print("<b>Le livre d'or ne comporte encore aucun commentaire.</b> \n");
print("</font> \n");
print("</center> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}
print("<a name=\"ajout\"></a>");
print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxB\" align=\"center\" bgcolor=\"$couleurBordTableauB\"> \n");
print("<tr><td> \n");
print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauB\" height=\"30\"> \n");
print("<font face=\"$policeEnteteTableauB\" color=\"$couleurPoliceEnteteTableauB\" size=\"-1\"> \n");
if($nCommentaires>0) print("<b><center>Ajouter un nouveau commentaire :</center></b> \n");
else print("<b><center>Envoyer un premier commentaire :</center></b> \n");
print("</font> \n");
print("</td> \n");
print("</tr> \n");
print("<tr><td bgcolor=\"$couleurFondFormulaireTableauB\"> \n");
print("<form method='POST' action='{$_SERVER["PHP_SELF"]}'> \n");
print("<center> \n");
print("<br> \n");
print("<font face=\"$policeFondFormulaireTableauB\" color=\"$couleurPoliceFondFormulaireTableauB\" size=\"-1\"> \n");
print("<b>Votre nom</b> : \n");
print("</font> \n");
print("<input type=\"text\" name=\"n\" size=\"24\"> \n");
print("<br><br> \n");
print("<textarea rows=\"6\" name=\"c\" cols=\"55\" wrap=\"virtual\"></textarea> \n");
print("<br> \n");
print("<input type=\"submit\" value=\"Envoyer !\" name=\"B1\"> \n");
print("</form> \n");
print("</td></tr> \n");
print("</table> \n");
print("</td></tr> \n");
print("</table> \n");
?>[/php]
[EDIT]
Fonction preg_match et preg_replace corrigées, le script fonctionnait mais pas cette fonction:
[php]function coupeMotsLongs($chaine, $ncaracteres) {
$chaineRes = $chaine;
while(preg_match("/[ ]{$ncaracteres}[ ]/", $chaineRes, $corres)) {
$partRep=$corres[1];
$chaineRes=preg_replace("/$partRep/", $partRep . ' <br> ', $chaineRes);
}
return($chaineRes);
}[/php]
[EDIT 2]
Légère simplification du code...
J'ai édité le script plus haut, pour le reste, ce n'est pas mon script :wink: