begin process at 2012 02 11 17:45:34
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Application

 > MINI SHOUTBOX EASY-INSTALL

MINI SHOUTBOX EASY-INSTALL


 Information sur la source

Note :
8,25 / 10 - par 8 personnes
8,25 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Application Niveau :Débutant Date de création :07/06/2004 Vu :22 004

Auteur : DHKold

Ecrire un message privé
Site perso
Commentaire sur cette source (35)
Ajouter un commentaire et/ou une note

 Description

Simplement le code complet d'une mini Shoutbox, il suffit de placer ce code dans une age à l'endroit souhaité.

Source

  • <style>
  • <!--
  • div.chat
  • {
  • overflow: auto;
  • width: 200px;
  • height: 150px;
  • border: 1px #757575 solid;
  • padding: 3px;
  • background: #EEEEEE;
  • }
  • div.miniform
  • {
  • width: 200px;
  • border: 1px #757575 solid;
  • border-top: 0px;
  • padding: 3px;
  • background: #EEEEEE;
  • text-align: center;
  • }
  • .date
  • {
  • color: #757575;
  • font-family:Arial;
  • font-weight:bold;
  • font-size: 8pt
  • }
  • .pseudo
  • {
  • color: #2E19D7;
  • font-family: Arial;
  • font-size: 8pt;
  • font-weight: bold;
  • text-decoration: underline;
  • text-transform: capitalize;
  • }
  • .msg
  • {color: #757575;
  • font-family: Arial;
  • font-size: 8pt;
  • font-weight: normal;
  • text-decoration: none
  • }
  • hr.chat
  • {
  • height: 1px #D7192E dotted;
  • border: 1px #D7192E dotted;
  • }
  • -->
  • </style>
  • <?php
  • $msg = array();
  • function file_save($filename, $content, $flags = 0)
  • {if (!($file = fopen($filename, 'w')))
  • return false;
  • $n = fwrite($file, $content);
  • fclose($file);
  • return $n ? $n : false;
  • }
  • if (!file_exists("./chat.php")) file_save("./chat.php","<?php\n\$msg = ".var_export($msg,TRUE)."\n?>");
  • include "chat.php";
  • while (count($msg) >= 5) array_shift($msg);
  • $canpost = empty($_POST['submit']) ? 'refresh' : $_POST['submit'];
  • $canpost = ($canpost == 'refresh') ? 0 : 1;
  • if (!empty($_POST['mess']) && !empty($_POST['pseudo']) && $canpost)
  • {$i = count($msg);
  • $msg[$i]['pseudo'] = htmlentities($_POST['pseudo']);
  • $msg[$i]['texte'] = htmlentities($_POST['mess']);
  • $msg[$i]['date'] = time();
  • }
  • $msg2 = array_reverse($msg);
  • echo '<div class="chat">';
  • foreach ($msg2 as $message)
  • {echo '<span class="pseudo">'.$message['pseudo'].'</span> <span class="date">['.date("d/m/y à H:i:s",$message['date']).']</span><br /><span class="msg">'.nl2br($message['texte']).'<br /><hr class="chat">';
  • }
  • echo "</div>";
  • file_save("./chat.php", "<?php\n\$msg = ".var_export($msg,TRUE)."\n?>");
  • ?>
  • <div class="miniform">
  • <form method="post">
  • Pseudo: <input name="pseudo" size="19"><br />
  • <textarea name="mess" cols="20" rows="3"></textarea><br />
  • <input name="submit" type="submit" value="POSTER"> <input name="submit" type="submit" value="REFRESH">
  • </form>
  • </div>
<style>
<!--
div.chat
{
 overflow: auto;
 width: 200px;
 height: 150px;
 border: 1px #757575 solid;
 padding: 3px;
 background: #EEEEEE;
}
div.miniform
{
 width: 200px;
 border: 1px #757575 solid;
 border-top: 0px;
 padding: 3px;
 background: #EEEEEE;
 text-align: center;
}
.date
{
 color: #757575;
 font-family:Arial;
 font-weight:bold;
 font-size: 8pt
}
.pseudo
{
 color: #2E19D7;
 font-family: Arial;
 font-size: 8pt;
 font-weight: bold;
 text-decoration: underline;
 text-transform: capitalize;
}
.msg
{color: #757575;
 font-family: Arial;
 font-size: 8pt;
 font-weight: normal;
 text-decoration: none
}
hr.chat
{
 height: 1px #D7192E dotted;
 border: 1px #D7192E dotted;
}
-->
</style>
<?php
$msg = array();
function file_save($filename, $content, $flags = 0)
{if (!($file = fopen($filename, 'w')))
   return false;
 $n = fwrite($file, $content);
 fclose($file);
 return $n ? $n : false;
}

if (!file_exists("./chat.php")) file_save("./chat.php","<?php\n\$msg = ".var_export($msg,TRUE)."\n?>");

include "chat.php";

while (count($msg) >= 5) array_shift($msg);

$canpost = empty($_POST['submit']) ? 'refresh' : $_POST['submit'];
$canpost = ($canpost == 'refresh') ? 0 : 1;
if (!empty($_POST['mess']) && !empty($_POST['pseudo']) && $canpost)
{$i = count($msg);
 $msg[$i]['pseudo'] = htmlentities($_POST['pseudo']);
 $msg[$i]['texte'] = htmlentities($_POST['mess']);
 $msg[$i]['date'] = time();
}

$msg2 = array_reverse($msg);
echo '<div class="chat">';
foreach ($msg2 as $message)
{echo '<span class="pseudo">'.$message['pseudo'].'</span> <span class="date">['.date("d/m/y à H:i:s",$message['date']).']</span><br /><span class="msg">'.nl2br($message['texte']).'<br /><hr class="chat">';
}
echo "</div>";

file_save("./chat.php", "<?php\n\$msg = ".var_export($msg,TRUE)."\n?>");
?>
<div class="miniform">
<form method="post">
Pseudo: <input name="pseudo" size="19"><br />
<textarea name="mess" cols="20" rows="3"></textarea><br />
<input name="submit" type="submit" value="POSTER"> <input name="submit" type="submit" value="REFRESH">
</form>
</div>



 Sources du même auteur

UPLOAD
HIGHLIGHT HTML : COLORISATION DE CODE HTML
CRÉER DES MINIATURES D'IMAGES (THUMB)
Source avec Zip PETITE GALERIE DYNAMIQUE
CODES RGB ET HEXA DES COULEURS.

 Sources de la même categorie

Source avec Zip Source avec une capture PHPREPOGENERATOR + REPO (WIN) par alvinp
Source avec Zip IPHONE - ICÔNE D'APPEL TÉLÉPHONIQUE SUR L'ÉCRAN D'ACCUEIL par Rainbow
Source avec Zip Source avec une capture [APP WEB]SERVEUREXPLOREUR par thematrix01
Source avec Zip Source avec une capture MY.BOOKMARKS par inwebo
Source avec Zip M.V.C M.E.D par faceme

Commentaires et avis

Commentaire de Nimamoto le 08/06/2004 19:58:45

Est-ce que le code existe ne HTML ?

Merci,

Tei.

Commentaire de DHKold le 09/06/2004 14:01:27

Il faut obligatoirement du PHP pour faire une shoutbox (ou ASP, coldfusion...), donc ca n'existe pas rien que en HTML.

Commentaire de la_pin le 06/11/2004 13:21:58

je suis pas un expert en php, j'essaye de voir comment mettre des smileys en plus mais j'arrive pas, est-ce-que quelqu'un pourait m'aider ?

Commentaire de DHKold le 06/11/2004 18:15:50

tu fais simplement:

$_POST['mess'] = str_replace(':)','<img src="smiley1.gif">',$_POST['mess']);

pour les smileys

Commentaire de metalgear le 16/02/2005 00:21:19

C'est parfait :)

Commentaire de metalgear le 27/02/2005 00:25:08

Ah au fait, je ne saisis pas pour les smileys...Pourrais-tu reposter la source complete avec le code des smileys s'il te plait ? Je ne suis pas très doué non plus pour le php lol :)

Commentaire de metalgear le 27/02/2005 01:45:44

Bon hé bien finalement, The Destiny à réussi a m'aider, je le remercie chaleureusement dailleurs..Voici le script refais :

<?
  if(isset($_POST[ok]))                                         // Test
  {
          $fmsg = preg_replace("/\r\n/", "<br>", $_POST[msg]);  // On remplace pour eviter les soucis
          $fmsg = preg_replace("/::/", "<br>", $fmsg);
          $buf = $_POST[nick]."::".$fmsg."\r\n";                // On saute une ligne

          $hfile = fopen("chat.txt", "a");                      // On ouvre
          fwrite($hfile, $buf);                                 // On enregistre
          fclose($hfile);                                       // On ferme
  }

  // On affiche les messages

  if(file_exists("chat.txt"))                                   // Test
  {
          $hfile = fopen("chat.txt", "r");                      // Ouverture
          $file = fread($hfile, filesize("chat.txt"));          // Lecture
          fclose($hfile);                                       // Fermeture

          $file = preg_replace("/:\)/", "Smiley", $file);       // Remplacement de :) par Smiley

          $buf = explode("\r\n", $file);                        // On met ca sous tableau
          $nbr = count($buf);                                   // On compte les éléments

          for($i = "0"; $i <= $nbr-2; $i++)                     // Une petite boucle
          {
                 $elements = explode("::", $buf[$i]);           // On recupere pseudo et msg et on affiche
                 echo "De : ".$elements[0]."<br>".$elements[1]."<br><br>";
          }
  }

?>
<form method="post">
<input type="text" name="nick" value="Pseudo"><br>
<textarea name="msg" rows=5 cols=20 wrap="off"></textarea><br>
<input type="submit" value="Envoyer">
<input type="hidden" name="ok" value="1">
</form>

Attention, maintenant ce n'est plus chat.php mais chat.txt :D

Voilà loul, @pluche ;)

Commentaire de metalgear le 27/02/2005 02:09:46

PS : Alors pour ceux qui veulent garder le script original, petite modification a faire sur la ligne qu'à fourni notre ami DHKold, je l'ai testé dans la nuit :

$msg[$i]['texte'] = str_replace(':)','<img src="smiley1.gif">',$_POST['mess']);

placez cette ligne en dessous de

$msg[$i]['date'] = time();

et voila :) lorsque vous taperez : ) dans votre message vous aurez le smiley "smiley1.gif" @pluche ;)

Commentaire de leon141fr le 01/03/2005 20:56:51

ya pas un moyen pour eviter que me shout box que je veut inserez dans ma page est une hauteur defini pour eviter que les message prenne toute ma page
merci a vous

Commentaire de metalgear le 02/03/2005 13:09:29

Avec une IFrame tu veux dire ? Si oui, alors essais d'insérer ce code dans ta page, à l'endroit où doit se trouver ta tribune :

<iframe name="le-nom" frameborder="0" src="le-chemin-de-ta-shoutbox(chat.php normalement)" scrolling="auto" height="hauteur-en-pixels" width="largeur-en-pixels">Votre navigateur web ne supporte pas la frame de cette shoutbox, désolé</iframe>

Tu remplace NAME par le nom que tu veux bien sur, SRC par le chemin vers ton fichier où se trouve la shoutbox, normalement c'est chat.php à moins que tu n'aies modifié la source. Et ensuite height pour la hauteur et width pour la largeur. La phrase qui suit n'est pas obligatoire, c'est juste pour avertir que si la shoutbox ne s'affiche pas c'est que le navigateur du visiteur ne supporte pas les Frames. @+

Commentaire de leon141fr le 02/03/2005 17:25:57

bah en vrai je prefererai sans frame car je suis chez multimania est le bandeau publicitaire apparait dans ma shout box.

Commentaire de metalgear le 02/03/2005 22:49:25

Sans frame je ne sais pas trop comment faire..Essais de faire une case de tableau avec une bordure de 0, tu insères le code de la shoutbox dedans et de là tu devrais pouvoir parametrer les dimensions (hauteur-largeur) :

<table width="200" height="250" border="0">
  <tr>
      <td width="212"><div align="center">script de la shoutbox içi</div></td>
  </tr>
</table>

Ici, on a une largeur de 200 pixels et une hauteur de 250 avec 0 pixels en bordure, ainsi cela te fait un cadre invisible. Sinon tu as la possibilité d'enlever la pub de multimania avec un script..Même si cela risque de leur déplaire, ils passeront à côté avec de la chance. Si tu veux essayer, fais avec ce script :

-Placer ca entre les balises <head> et </head> :

<script>
      function nopub()
     {
  window.top.document.body.cols="*,0";
      }
</script>


-Placer ca DANS la balise <body> :

<body onload="nopub();">


(script de guepard53 [javascriptfr.com]

Si cela ne fonctionne pas, n'hesite pas à poster, quelqu'un t'aidera je pense, puisque nous sommes la pour s'entraider ^^

Commentaire de leon141fr le 05/03/2005 14:31:25

j ai tester les deux solucion et aucune ne marche
enfin si celle pour enlever la pub lycos a marcher quelque fois pui la ca ne remarche plus
sinon est ce que les calque peuve delimiter ???

Commentaire de metalgear le 05/03/2005 16:31:29

Les calques ? Lesquels ? lol

Commentaire de leon141fr le 06/03/2005 11:31:20

bah les calque que tu peut inserez dans ton site pour par exemple mettre du texte sur une image

Commentaire de metalgear le 06/03/2005 16:33:05

La je saurais pas trop te dire, je n'ai jamais utilisé les calques...Tu peux toujours essayer mais je ne sais pas :s

Commentaire de la_pin le 06/03/2005 17:03:21

très mauvais d'utiliser les calques car en fonction du navigateur du visiteur et de sa résolution d'écran, les calques n'apparaitrons pas au même endroit dans la page.

Commentaire de leon141fr le 09/03/2005 20:05:31

bah alors comment veut tu faire pour inserez un code dans une images ???

Commentaire de Jack Statique le 09/10/2005 13:08:05

salut
Heu j'ai mis la source dans une page, mais je sait pas ce qu'il faut faire d'autre... Pour le moment ca marche pas.
(J'ai mis la source au milieu d'une page en html... Est ce que ca va ou pas? Qu'est ce que je doit faire pour que ca marche?)

Commentaire de oimzzz le 29/04/2006 19:42:08

Hello,
ceci n'est pas un com. j'en serais incapable.
C'est un Merci !

Commentaire de CodaVirgule le 18/06/2006 12:16:28

Merci pour ce fabuleux code.
A bientôt.

Commentaire de speedyghost le 04/07/2006 10:09:05

bonjour, g essayé le code en haut pour faire un shootbox, mais ca ne marche pas... il y a plein d'écriture en haut de la page et la shoot box , ben, y'en a qu'une parti et elle ne marche pas !!!
please, help me !!! aidez moi SVP !

merci d'avance !

Commentaire de asem67 le 14/08/2006 12:45:46

voici quelque modif
a mettre entre body et /body
le fichier doit etre un .php

    <table border="0" cellpadding="1" width="102" style=" background-color: #6699cc">
      <tbody>
        <tr>
          <td align="center" valign="top" style="background-color: #eeeeee">
            <!--** PAGE DEBUT **********************************-->
<?
  if(isset($_POST[ok]))                                         // Test
  {
          $fmsg = preg_replace("/\r\n/", "<br>", $_POST[msg]);  // On remplace pour eviter les soucis
          $fmsg = preg_replace("/::/", "<br>", $fmsg);
          $buf = $_POST[nick]."::".$fmsg."\r\n";                // On saute une ligne
          $hfile = fopen("chat.txt", "a");                      // On ouvre
          fwrite($hfile, $buf);                                 // On enregistre
          fclose($hfile);                                       // On ferme
  }
  // On affiche les messages
  if(file_exists("chat.txt"))                                   // Test
  {
            ?>
            <MARQUEE bgcolor="#fafafa" onMouseOver=this.stop() onMouseOut=this.start() scrollAmount=3 direction="up" width="100" height="150" align="center">
<?php
          $hfile = fopen("chat.txt", "r");                      // Ouverture
          $file = fread($hfile, filesize("chat.txt"));          // Lecture
          fclose($hfile);                                       // Fermeture
          //$file = preg_replace("/:\)/", "Smiley", $file);       // Remplacement de :) par Smiley
          $buf = explode("\r\n", $file);                        // On met ca sous tableau
          $nbr = count($buf);                                   // On compte les éléments
          for($i = "0"; $i <= $nbr-2; $i++)                     // Une petite boucle
          {
                 $elements = explode("::", $buf[$i]);           // On recupere pseudo et msg et on affiche
                 echo "De : ".$elements[0]."<br>".$elements[1]."<br><br>";
          }
              ?>
            </MARQUEE>
<?php
  }
            ?>
            <form method="post">
             <input type="text" name="nick" size="10" value="">
              <br>
              <input type="text" name="msg" size="10" value="">
              <br>
              <input type="submit" value="Envoie">
              <input type="hidden" name="ok" value="1">
              </form>

          </td>
        </tr>
      </tbody>
    </table>

ne bebord pas pour les dimension vous pouvez modifier
les hauteur et largeur de la table et du MARQUEE
a+

Commentaire de arsworld le 21/08/2006 18:57:02

C'est un tres bon petit script !
Y'aurait-il moyen de faire en sorte que lors du premier "post", le formulaire ne reinitialise pas le champ "pseudo". Car devoir le retaper à chaque message est pas trés pratique.
D'avance merci et encore bravo pour ce pur petit script qui me ravi.

Commentaire de speedyghost le 04/09/2006 13:16:30

cool, ca marche super bien !!! merci pource code !!! si vous avec des probleme, consultez moi (ck26750@orange.fr)
a+++

Commentaire de speedyghost le 04/09/2006 18:37:29

comment peut-on faire pour inserer cette shoot box (en php) dans une page html ???
merci d'avance pour votre aide !

Commentaire de speedyghost le 10/09/2006 11:43:15

euh, quand on post des message, au bout de 5 messages, tt disparait, on peut pas avoir un bare pour descendre sur le coté ???

Commentaire de speedyghost le 10/09/2006 11:58:07

et, le nouvelle shootbox de metal gear, ya pas moyen de modifier la police, c ecrit super petit et je veut qu'elle soit verte !

Commentaire de magicmushroom14 le 19/10/2006 23:16:20

tout simplement super
c'est exactement ce que je chercher
pas de superflu, facile a adapter
merci

Commentaire de grafikarl le 23/07/2008 10:08:39

Salut à tous,
Comment on fait, si on veut eviter la repetition du message  quand on fait "F5" ou "Actualiser".
Merci de m'indiquer si la réponse se trouve dejà ailleurs.
Merci d'avance.

Commentaire de eratic85 le 15/12/2008 03:19:28 8/10

pour garder le speudo après le premier post:
/////au début:

<?php
  $pseudo = $_POST['pseudo']   ;
?>

/////et dans le formulaire :

Pseudo: <input name="pseudo" value="<?php echo "$pseudo"; ?>" size="19"><br />

marche très bien ce script  merci

    

Commentaire de drakan2008 le 26/02/2010 22:29:23

quelqu'1 peux m'aider a faire un mini tchat ou shoutbox comme celui a facebook??? jé trop chercher mais je trouve pas comment!!!

Commentaire de azerty123 le 23/04/2010 17:51:24

Moi sa m'affiche une erreur :

Notice: Use of undefined constant ok - assumed 'ok' in D:\Program Files\EasyPHP-5.3.1\www\shoutbox.php on line 71

Commentaire de flozza83 le 19/05/2011 09:04:28

Est il possible d'afficher les lignes en partant de la fin ? si quelqu'un le sait... je précise que a+ ne marche pas, et que j'ai mis le code de MetalGear (modifié). s'il vous plait ?

Commentaire de trustin le 01/10/2011 14:15:31

Bonjour,

Merci pour ce script.

J'ai inséré cette shoutbox sur mon site wordpress qui est en UTF8. Mais les messages publiés dans la shoutbox apparaissent comme ceci:

été au lieu de : été

Et je ne comprends pas où passer le paramètre pour convertir le texte en UT8.

Auriez-vous une piste svp ?  :)

Un grand merci d'avance.

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 6,271 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales