Accueil > > > SHOUTBOX PARAMETRABLE SANS MYSQL
SHOUTBOX PARAMETRABLE SANS MYSQL
Information sur la source
Description
Ben voila, c'est une shoutbox. Elle n'utilise pas Mysql, et est relativement bien modifiable. Pour le moment : - modification du design grace au fichier CSS externe (tout est la). - possibilite de l'appeler avec ou sans gestion des smileys (on clique sur le smiley voulu, il apparait) - possibilite de definir une taille maximale pour le fichier contenant les messages - possibilite de definir le nom du fichier contenant les messages - possibilite de modifier les styles de texte avec menu cliquable teste sur IE6 et Firefox Ces choix se font lors de l'instantiation de l'objet. Si des parametres ne sont pas fournis, ce sont ceux par defaut qui prevalent. Je joins quand meme le code, meme si il faut le zip. Demo ici : http://membres.lycos.fr/pat665/index.php (Merci Darkdje :-)
Source
- FICHIER shoutbox.cls.php
-
- <?php
- require_once ("smallform.cls.php");
-
- class shoutBox {
-
- var $fichier; // nom du fichier
- var $smiley; // gestion des smileys
- var $taille; // taille du fichier
- var $style; // gestion du style des textes
- var $arrSmiley;
- var $arrSmileyTrans;
- var $arrStyle;
- var $arrStyleTrans;
-
-
- //constructeur, je changerai plus tard le _construct. Les parametres optionnels sont fixes par defaut.
-
- function shoutBox($smiley=true, $style=true, $taille=10, $fichier="shoutbox.txt") {
- $this -> smiley = $smiley;
- $this -> style = $style;
- $this -> fichier = $fichier;
- $this -> taille = $taille*1024;
- // tableau des smileys, avec le chemin.
- $this -> arrSmiley = array ('<img src="smileys/rire.gif" />', '<img src="smileys/sourire.gif" />', '<img src="smileys/triste.gif" />', '<img src="smileys/clin.gif" />');
- // tableau des codes correspondants. Ajoutez ce que vous voulez, mais les 2 tableaux DOIVENT comporter le meme nombre d'entrees, evidemment!
- $this -> arrSmileyTrans = array (':-o', ':-)', ':-(', ';-)');
- // tableau des styles de texte. Memes remarques que pour les smileys.
- $this -> arrStyle = array ('<span style="font-weight:bold">','<span style="font-style:italic">', '<span style="text-decoration:underline">', '<span style="text-decoration:overline">', '<span style="text-decoration:underline overline">', '<span style="color:aqua">', '<span style="color:black">', '<span style="color:blue">', '<span style="color:fuchsia">', '<span style="color:gray">', '<span style="color:green">', '<span style="color:lime">', '<span style="color:maroon">', '<span style="color:navy">', '<span style="color:olive">', '<span style="color:purple">', '<span style="color:red">', '<span style="color:silver">', '<span style="color:teal">', '<span style="color:white">', '<span style="color:yellow">', '<span style="border:1pt solid aqua">','<span style="border:1pt solid black">', '<span style="border:1pt solid blue">', '<span style="border:1pt solid fuchsia">','<span style="border:1pt solid gray">', '<span style="border:1pt solid green">', '<span style="border:1pt solid lime">', '<span style="border:1pt solid maroon">', '<span style="border:1pt solid mavy">', '<span style="border:1pt solid olive">', '<span style="border:1pt solid purple">', '<span style="border:1pt solid red">', '<span style="border:1pt solid silver">', '<span style="border:1pt solid teal">', '<span style="border:1pt solid white">', '<span style="border:1pt solid yellow">', '</span>');
- $this -> arrStyleTrans = array ('[b]', '[i]','[u]', '[o]', '[a]', '[aqua]', '[black]', '[blue]', '[fuchsia]', '[gray]', '[green]', '[lime]', '[maroon]', '[navy]', '[olive]', '[purple]', '[red]', '[silver]', '[teal]', '[white]', '[yellow]', '[aqua_b]', '[black_b]', '[blue_b]', '[fuchsia_b]', '[gray_b]', '[green_b]', '[lime_b]', '[maroon_b]', '[navy_b]', '[olive_b]', '[purple_b]', '[red_b]', '[silver_b]', '[teal_b]', '[white_b]', '[yellow_b]', '[/end]');
- // validation du formulaire
- if (isset($_POST['submit']) && $_POST['submit']=="Shout")
- $this -> valider(!empty($_POST['texte'])?$_POST['texte']:"Oouups, oubli texte", !empty($_POST['pseudo'])?$_POST['pseudo']:"Anonyme");
- echo '<div class="shoutbox">';
- // instantiation d'un objet formulaire
- $form = new smallForm($this -> smiley, $this -> style);
- // appel de la methode affichant les messages
- $this -> affiche();
- echo '</div>';
- }
-
- // methode enregistrant le message poste dans le fichier
- function valider($texte, $pseudo) {
- $texte = $this -> valideCode($texte);
- if(get_magic_quotes_gpc()===0)
- $entree = addslashes($pseudo.'||'.$texte.'||');
- $entree=htmlentities($pseudo.'||'.$texte.'||').date("dmy").'||';
- // different systeme d'ouverture selon si le fichier existe ou doit etre efface, ou n'existe pas encore
- if (file_exists($this -> fichier) && filesize($this -> fichier) >= $this -> taille)
- $fp = fopen($this -> fichier, 'w') or die("Echec d'ouverture du fichier");
- else
- $fp = fopen($this -> fichier, 'a') or die("Echec d'ouverture du fichier");
- $ecriture=fwrite($fp, $entree) or die ("Echec d'ecriture dans le fichier");
- fclose ($fp);
- }
-
- // fonction recuperant les valeurs du tableau en fonction d'un calcul modulo (cree pour recuperer chaque pseudo, message et date dans un tavbleau specifique
- function getValeursTab($tab, $div, $reste) {
- while ($dmp=current($tab)) {
- if (key($tab)%$div==$reste)
- $tabT[] = $tab[key($tab)];
- next($tab);
- }
- return $tabT;
- }
-
- // methode pour afficher les messages.
- function affiche () {
- if(file_exists($this -> fichier)) {
- fopen($this -> fichier, 'r') or die ("Echec d'ouverture du fichier");
- // on parse une 1ere fois pour recuperer dans un tableau chaque pseudo suivi de chaque message
- if(get_magic_quotes_runtime()===1)
- $tabtmp = explode('||', stripslashes(file_get_contents($this -> fichier)));
- else
- $tabtmp = explode('||', file_get_contents($this -> fichier));
- // si smiley, on va chercher la methode les gerant
- if ($this -> smiley)
- $tabtmp = $this -> parseCode($tabtmp, $this -> arrSmiley, $this -> arrSmileyTrans);
- // si style, on va chercher la methode les gerant...
- if ($this -> style)
- $tabtmp = $this -> parseCode($tabtmp, $this -> arrStyle, $this -> arrStyleTrans);
- // recuperation dans un tableau associatif de chaque pseudo, message, date
- $tabshout = array ('pseudo' => $this -> getValeursTab($tabtmp, 3, 0), 'texte' => $this -> getValeursTab($tabtmp, 3, 1), 'date' => $this -> getValeursTab($tabtmp, 3, 2));
- // affichage proprement dit
- $i=count($tabshout['pseudo'])-1;
- for ($i; $i>=0; $i--)
- echo '<span class="pseudo">',$tabshout['pseudo'][$i],'</span>','<span class="date"> ','[',$tabshout['date'][$i],']','</span>',' :: ','<span class="texte">',$tabshout['texte'][$i],'</span><br />';
- }
- }
-
- // On parse les codes speciaux
- function parseCode ($tab, $output, $input) {
- return $tab = str_replace($input, $output, $tab);
- }
-
- // methode pour equilibrer le nombre de tags fermants, afin d'avoir un html correct en sortie
- function valideCode($texte) {
- $ouvertures = 0;
- $tab = $this -> arrStyleTrans;
- array_pop($tab);
- foreach ($tab as $txt)
- $ouvertures += substr_count($texte, $txt);
- $fermetures = substr_count($texte, '[/end]');
- if ($fermetures < $ouvertures)
- $texte .= str_repeat('[/end]', $ouvertures - $fermetures);
- if ($ouvertures < $fermetures) {
- $oter = $fermetures - $ouvertures;
- $tab = explode(' ', $texte);
- $i = 0;
- foreach ($tab as $k => $v) {
- if ($i == $oter)
- break;
- if ($v == '[/end]') {
- $tab[$k] ='';
- $i++;
- }
- }
- $texte = implode(' ', $tab);
- }
- return $texte;
- }
- }
- ?>
-
- FICHIER smallform.cls.php
-
- <?php
- class smallForm {
-
- // constructeur (oui oui, je sais...), avec les parametres optionnels
- function smallForm($smiley=true, $style=true) {
- echo '<div class="divform"><form method="POST" action="',$_SERVER['PHP_SELF'],'">';
- echo '<input type="text" class="smallformField" name="pseudo" value="',isset($_POST['pseudo'])?$_POST['pseudo']:"Pseudo",'" size="8" maxlength="20"/>';
- echo '<input type="text" id="t" class="smallformField" name="texte" value="',isset($_POST['texte'])?$_POST['texte']:"Message",'" size="18" maxlength="200"/>';
- echo '<input type="submit" title="Poster le message" class="smallformSubmit" name="submit" value="Shout" /><br /><br />';
- if ($smiley || $style)
- $this -> affBoiteEdition($smiley, $style);
- echo '<hr class="separateur" />';
- echo'</form></div>';
- }
-
- // simple remarque : je ne fais qu'ajouter le code du smiley a la valeur de l'input, sur un onclick. Je n'y suis pas encore arrive sur un submit...ca ne l'affichait pas, meme si ca le rajoutait effectivement.
- function smileys() {
- echo '<input type ="image" src="smileys/rire.gif" onclick="document.getElementById(\'t\').value+=\' :-o \'"/>';
- echo '<input type ="image" src="smileys/sourire.gif" onclick="document.getElementById(\'t\').value+=\' :-) \'"/>';
- echo '<input type ="image" src="smileys/triste.gif" onclick="document.getElementById(\'t\').value+=\' :-( \'"/>';
- echo '<input type ="image" src="smileys/clin.gif" onclick="document.getElementById(\'t\').value+=\' ;-) \'"/>';
- }
-
- // comme pour les smileys
- function style() {
- echo '<select title="couleur du texte" class="smallformSelect" name ="couleur" onchange="document.getElementById(\'t\').value+=this.value">';
- $couleurs = array ('aqua', 'black', 'blue', 'fuchsia', 'gray', 'green', 'lime', 'maroon', 'navy', 'olive', 'purple', 'red', 'silver', 'teal', 'white', 'yellow');
- foreach ($couleurs as $v)
- echo '<option value="['.$v.']" style="background-color:'.$v.'"> </option>';
- echo '</select>';
- echo '<select title="couleur de la bordure" class="smallformSelect" name ="couleurbordure" onchange="document.getElementById(\'t\').value+=this.value">';
- foreach ($couleurs as $v)
- echo '<option value="['.$v.'_b]" style="color:'.$v.'">[]</option>';
- echo '</select>';
- echo '<input type="submit" title="gras start tag" class="bold" value="b" onclick="document.getElementById(\'t\').value+=\' [b] \'" />';
- echo '<input type="submit" title="italique start tag" class="italic" value="i" onclick="document.getElementById(\'t\').value+=\' [i] \'" />';
- echo '<input type="submit" title="souligne start tag" class="underline" value="u" onclick="document.getElementById(\'t\').value+=\' [u] \'" />';
- echo '<input type="submit" title="surligne start tag" class="overline" value="o" onclick="document.getElementById(\'t\').value+=\' [o] \'" />';
- echo '<input type="submit" title="souligne et surligne start tag" class="underlineoverline" value="a" onclick="document.getElementById(\'t\').value+=\' [a] \'" />';
- echo ' <input type="submit" title="end tag pensez a le mettre pour fermer chaque style" class="endtag" value="end" onclick="document.getElementById(\'t\').value+=\' [/end] \'" />';
- }
-
- // permet de controler l'affichage/masquage de la boite d'edition
- function affBoiteEdition ($smiley, $style) {
- echo '<input class ="controle" title ="Afficher ou masquer le champ edition" type="button" name="controle" value="-" onclick="this.value=(this.value==\'-\')?\'+\':\'-\'; document.getElementById(\'boite\').style.visibility=(document.getElementById(\'boite\').style.visibility==\'hidden\')?\'visible\':\'hidden\';document.getElementById(\'boite\').style.display=(document.getElementById(\'boite\').style.display==\'none\')?\'block\':\'none\' " />';
- echo '<div id="boite" class="edit">';
- if ($smiley) {
- $this -> smileys();
- if ($style)
- echo '<br /><br />';
- }
- if ($style)
- $this -> style();
- echo '</div>';
- }
- }
- ?>
-
- FICHIER index.php exemple
-
- <html>
- <head>
- <title>
- </title>
- <link rel=stylesheet type="text/css" href="shoutbox.css">
- </head>
- <body style="background-color : #cccccc">
- <?php
-
- // Include de la classe
-
- require_once ("shoutbox.cls.php");
-
- // appel par defaut
- // $shout (false, false, 20, "monfichier.txt"); est un autre exemple d'appel : pas de smiley, pas de style, 20ko pour la taille max du fichier, et le fichier s'appelle monfichier.txt
-
- $shout = new shoutBox ();
- ?>
- </body></html>
FICHIER shoutbox.cls.php
<?php
require_once ("smallform.cls.php");
class shoutBox {
var $fichier; // nom du fichier
var $smiley; // gestion des smileys
var $taille; // taille du fichier
var $style; // gestion du style des textes
var $arrSmiley;
var $arrSmileyTrans;
var $arrStyle;
var $arrStyleTrans;
//constructeur, je changerai plus tard le _construct. Les parametres optionnels sont fixes par defaut.
function shoutBox($smiley=true, $style=true, $taille=10, $fichier="shoutbox.txt") {
$this -> smiley = $smiley;
$this -> style = $style;
$this -> fichier = $fichier;
$this -> taille = $taille*1024;
// tableau des smileys, avec le chemin.
$this -> arrSmiley = array ('<img src="smileys/rire.gif" />', '<img src="smileys/sourire.gif" />', '<img src="smileys/triste.gif" />', '<img src="smileys/clin.gif" />');
// tableau des codes correspondants. Ajoutez ce que vous voulez, mais les 2 tableaux DOIVENT comporter le meme nombre d'entrees, evidemment!
$this -> arrSmileyTrans = array (':-o', ':-)', ':-(', ';-)');
// tableau des styles de texte. Memes remarques que pour les smileys.
$this -> arrStyle = array ('<span style="font-weight:bold">','<span style="font-style:italic">', '<span style="text-decoration:underline">', '<span style="text-decoration:overline">', '<span style="text-decoration:underline overline">', '<span style="color:aqua">', '<span style="color:black">', '<span style="color:blue">', '<span style="color:fuchsia">', '<span style="color:gray">', '<span style="color:green">', '<span style="color:lime">', '<span style="color:maroon">', '<span style="color:navy">', '<span style="color:olive">', '<span style="color:purple">', '<span style="color:red">', '<span style="color:silver">', '<span style="color:teal">', '<span style="color:white">', '<span style="color:yellow">', '<span style="border:1pt solid aqua">','<span style="border:1pt solid black">', '<span style="border:1pt solid blue">', '<span style="border:1pt solid fuchsia">','<span style="border:1pt solid gray">', '<span style="border:1pt solid green">', '<span style="border:1pt solid lime">', '<span style="border:1pt solid maroon">', '<span style="border:1pt solid mavy">', '<span style="border:1pt solid olive">', '<span style="border:1pt solid purple">', '<span style="border:1pt solid red">', '<span style="border:1pt solid silver">', '<span style="border:1pt solid teal">', '<span style="border:1pt solid white">', '<span style="border:1pt solid yellow">', '</span>');
$this -> arrStyleTrans = array ('[b]', '[i]','[u]', '[o]', '[a]', '[aqua]', '[black]', '[blue]', '[fuchsia]', '[gray]', '[green]', '[lime]', '[maroon]', '[navy]', '[olive]', '[purple]', '[red]', '[silver]', '[teal]', '[white]', '[yellow]', '[aqua_b]', '[black_b]', '[blue_b]', '[fuchsia_b]', '[gray_b]', '[green_b]', '[lime_b]', '[maroon_b]', '[navy_b]', '[olive_b]', '[purple_b]', '[red_b]', '[silver_b]', '[teal_b]', '[white_b]', '[yellow_b]', '[/end]');
// validation du formulaire
if (isset($_POST['submit']) && $_POST['submit']=="Shout")
$this -> valider(!empty($_POST['texte'])?$_POST['texte']:"Oouups, oubli texte", !empty($_POST['pseudo'])?$_POST['pseudo']:"Anonyme");
echo '<div class="shoutbox">';
// instantiation d'un objet formulaire
$form = new smallForm($this -> smiley, $this -> style);
// appel de la methode affichant les messages
$this -> affiche();
echo '</div>';
}
// methode enregistrant le message poste dans le fichier
function valider($texte, $pseudo) {
$texte = $this -> valideCode($texte);
if(get_magic_quotes_gpc()===0)
$entree = addslashes($pseudo.'||'.$texte.'||');
$entree=htmlentities($pseudo.'||'.$texte.'||').date("dmy").'||';
// different systeme d'ouverture selon si le fichier existe ou doit etre efface, ou n'existe pas encore
if (file_exists($this -> fichier) && filesize($this -> fichier) >= $this -> taille)
$fp = fopen($this -> fichier, 'w') or die("Echec d'ouverture du fichier");
else
$fp = fopen($this -> fichier, 'a') or die("Echec d'ouverture du fichier");
$ecriture=fwrite($fp, $entree) or die ("Echec d'ecriture dans le fichier");
fclose ($fp);
}
// fonction recuperant les valeurs du tableau en fonction d'un calcul modulo (cree pour recuperer chaque pseudo, message et date dans un tavbleau specifique
function getValeursTab($tab, $div, $reste) {
while ($dmp=current($tab)) {
if (key($tab)%$div==$reste)
$tabT[] = $tab[key($tab)];
next($tab);
}
return $tabT;
}
// methode pour afficher les messages.
function affiche () {
if(file_exists($this -> fichier)) {
fopen($this -> fichier, 'r') or die ("Echec d'ouverture du fichier");
// on parse une 1ere fois pour recuperer dans un tableau chaque pseudo suivi de chaque message
if(get_magic_quotes_runtime()===1)
$tabtmp = explode('||', stripslashes(file_get_contents($this -> fichier)));
else
$tabtmp = explode('||', file_get_contents($this -> fichier));
// si smiley, on va chercher la methode les gerant
if ($this -> smiley)
$tabtmp = $this -> parseCode($tabtmp, $this -> arrSmiley, $this -> arrSmileyTrans);
// si style, on va chercher la methode les gerant...
if ($this -> style)
$tabtmp = $this -> parseCode($tabtmp, $this -> arrStyle, $this -> arrStyleTrans);
// recuperation dans un tableau associatif de chaque pseudo, message, date
$tabshout = array ('pseudo' => $this -> getValeursTab($tabtmp, 3, 0), 'texte' => $this -> getValeursTab($tabtmp, 3, 1), 'date' => $this -> getValeursTab($tabtmp, 3, 2));
// affichage proprement dit
$i=count($tabshout['pseudo'])-1;
for ($i; $i>=0; $i--)
echo '<span class="pseudo">',$tabshout['pseudo'][$i],'</span>','<span class="date"> ','[',$tabshout['date'][$i],']','</span>',' :: ','<span class="texte">',$tabshout['texte'][$i],'</span><br />';
}
}
// On parse les codes speciaux
function parseCode ($tab, $output, $input) {
return $tab = str_replace($input, $output, $tab);
}
// methode pour equilibrer le nombre de tags fermants, afin d'avoir un html correct en sortie
function valideCode($texte) {
$ouvertures = 0;
$tab = $this -> arrStyleTrans;
array_pop($tab);
foreach ($tab as $txt)
$ouvertures += substr_count($texte, $txt);
$fermetures = substr_count($texte, '[/end]');
if ($fermetures < $ouvertures)
$texte .= str_repeat('[/end]', $ouvertures - $fermetures);
if ($ouvertures < $fermetures) {
$oter = $fermetures - $ouvertures;
$tab = explode(' ', $texte);
$i = 0;
foreach ($tab as $k => $v) {
if ($i == $oter)
break;
if ($v == '[/end]') {
$tab[$k] ='';
$i++;
}
}
$texte = implode(' ', $tab);
}
return $texte;
}
}
?>
FICHIER smallform.cls.php
<?php
class smallForm {
// constructeur (oui oui, je sais...), avec les parametres optionnels
function smallForm($smiley=true, $style=true) {
echo '<div class="divform"><form method="POST" action="',$_SERVER['PHP_SELF'],'">';
echo '<input type="text" class="smallformField" name="pseudo" value="',isset($_POST['pseudo'])?$_POST['pseudo']:"Pseudo",'" size="8" maxlength="20"/>';
echo '<input type="text" id="t" class="smallformField" name="texte" value="',isset($_POST['texte'])?$_POST['texte']:"Message",'" size="18" maxlength="200"/>';
echo '<input type="submit" title="Poster le message" class="smallformSubmit" name="submit" value="Shout" /><br /><br />';
if ($smiley || $style)
$this -> affBoiteEdition($smiley, $style);
echo '<hr class="separateur" />';
echo'</form></div>';
}
// simple remarque : je ne fais qu'ajouter le code du smiley a la valeur de l'input, sur un onclick. Je n'y suis pas encore arrive sur un submit...ca ne l'affichait pas, meme si ca le rajoutait effectivement.
function smileys() {
echo '<input type ="image" src="smileys/rire.gif" onclick="document.getElementById(\'t\').value+=\' :-o \'"/>';
echo '<input type ="image" src="smileys/sourire.gif" onclick="document.getElementById(\'t\').value+=\' :-) \'"/>';
echo '<input type ="image" src="smileys/triste.gif" onclick="document.getElementById(\'t\').value+=\' :-( \'"/>';
echo '<input type ="image" src="smileys/clin.gif" onclick="document.getElementById(\'t\').value+=\' ;-) \'"/>';
}
// comme pour les smileys
function style() {
echo '<select title="couleur du texte" class="smallformSelect" name ="couleur" onchange="document.getElementById(\'t\').value+=this.value">';
$couleurs = array ('aqua', 'black', 'blue', 'fuchsia', 'gray', 'green', 'lime', 'maroon', 'navy', 'olive', 'purple', 'red', 'silver', 'teal', 'white', 'yellow');
foreach ($couleurs as $v)
echo '<option value="['.$v.']" style="background-color:'.$v.'"> </option>';
echo '</select>';
echo '<select title="couleur de la bordure" class="smallformSelect" name ="couleurbordure" onchange="document.getElementById(\'t\').value+=this.value">';
foreach ($couleurs as $v)
echo '<option value="['.$v.'_b]" style="color:'.$v.'">[]</option>';
echo '</select>';
echo '<input type="submit" title="gras start tag" class="bold" value="b" onclick="document.getElementById(\'t\').value+=\' [b] \'" />';
echo '<input type="submit" title="italique start tag" class="italic" value="i" onclick="document.getElementById(\'t\').value+=\' [i] \'" />';
echo '<input type="submit" title="souligne start tag" class="underline" value="u" onclick="document.getElementById(\'t\').value+=\' [u] \'" />';
echo '<input type="submit" title="surligne start tag" class="overline" value="o" onclick="document.getElementById(\'t\').value+=\' [o] \'" />';
echo '<input type="submit" title="souligne et surligne start tag" class="underlineoverline" value="a" onclick="document.getElementById(\'t\').value+=\' [a] \'" />';
echo ' <input type="submit" title="end tag pensez a le mettre pour fermer chaque style" class="endtag" value="end" onclick="document.getElementById(\'t\').value+=\' [/end] \'" />';
}
// permet de controler l'affichage/masquage de la boite d'edition
function affBoiteEdition ($smiley, $style) {
echo '<input class ="controle" title ="Afficher ou masquer le champ edition" type="button" name="controle" value="-" onclick="this.value=(this.value==\'-\')?\'+\':\'-\'; document.getElementById(\'boite\').style.visibility=(document.getElementById(\'boite\').style.visibility==\'hidden\')?\'visible\':\'hidden\';document.getElementById(\'boite\').style.display=(document.getElementById(\'boite\').style.display==\'none\')?\'block\':\'none\' " />';
echo '<div id="boite" class="edit">';
if ($smiley) {
$this -> smileys();
if ($style)
echo '<br /><br />';
}
if ($style)
$this -> style();
echo '</div>';
}
}
?>
FICHIER index.php exemple
<html>
<head>
<title>
</title>
<link rel=stylesheet type="text/css" href="shoutbox.css">
</head>
<body style="background-color : #cccccc">
<?php
// Include de la classe
require_once ("shoutbox.cls.php");
// appel par defaut
// $shout (false, false, 20, "monfichier.txt"); est un autre exemple d'appel : pas de smiley, pas de style, 20ko pour la taille max du fichier, et le fichier s'appelle monfichier.txt
$shout = new shoutBox ();
?>
</body></html>
Conclusion
Je travaille encore dessus...notamment, j'essaye d'ajouter facilement des styles de texte (comme pour les smileys, par clic sur un bouton, et pas seulement en ajoutant du bbcode (par exemple) a la main.
Tout commentaire est le bienvenue! --------------------------------------- -----------------------------------------
UPDATE 26-01-05: Je viens d'ajouter la possibilite de jouer sur le style des textes, tout est cliquable.
UPDATE 28-01-05 : Ajout de la date, et modifications du code (optimisation de certaines fonctions).
UPDATE 28 01 05 : oui encore un...j'ai ajoute la possibilite d'afficher / masquer la boite d'edition (avec les smileys, ou le style de texte), car je compte encore ajouter des controles sur le texte, et ca commence a prendre de la place ;-)
UPDATE 04 01 05 : ajout de couleurs pour le texte. Quelques changement au niveau du code.
UPDATE 04 01 05 : ajout de bordures colorees au texte
Historique
- 26 janvier 2005 16:47:10 :
- 27 janvier 2005 16:45:08 :
- 28 janvier 2005 12:53:51 :
- 28 janvier 2005 13:39:05 :
- 28 janvier 2005 13:44:21 :
- 28 janvier 2005 14:21:27 :
- 28 janvier 2005 14:27:02 :
- 28 janvier 2005 16:22:29 :
- 04 février 2005 10:26:39 :
- 04 février 2005 10:37:11 :
- 04 février 2005 13:00:46 :
- 04 février 2005 13:06:24 :
- 04 février 2005 21:35:06 :
- UPDATE 040105 : Juste un rajout de lien pour une demo : http://membres.lycos.fr/pat665/index.php
- 07 février 2005 18:09:52 :
- UPDATE 070105 : correction d'un petit bug avec les slashes, et eradication d'une redondance stupide sur un tableau...
- 03 mars 2005 16:32:15 :
- UPDATE 03 03 05 : rajout d'une fonction permettant d'equilibrer les tags fermants, ce afin d'avoir un maximum de chance d'avoir un HTML bien forme en sortie. Ce n'est pas encore parfait, il y a une petite faille, mais c'est mieux :-)
- 03 mars 2005 16:42:45 :
- 03 mars 2005 17:17:58 :
Sources du même auteur
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOURTECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOUR par ROMELARD Fabrice
Après un retour sur l'histoire des TechDays de Paris et le fait que ce soit le plus gros event MS au monde (du fait de sa gratuité), le président de MS France (Eric Boustoullier) a fait une présentation de la vision Microsoft pour les années à venir...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|