begin process at 2012 02 12 05:48:25
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > TRIBUNE LIBRE (MINI-CHAT)

TRIBUNE LIBRE (MINI-CHAT)


 Information sur la source

Note :
6,13 / 10 - par 8 personnes
6,13 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Divers Niveau :Débutant Date de création :20/06/2004 Date de mise à jour :21/06/2004 17:17:15 Vu :5 386

Auteur : kuppidon

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

 Description

Mini-chat (ou tribune libre) s'affichant dans un côté du site (frame ou non), vos visiteurs pourront laissez des posts et vous aussi :). Ce script nécessite une base de donnée MySQL.

Source

  • <?
  • if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent
  • {
  • if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
  • {
  • // Connection MYSQL
  • mysql_connect("localhost", "user", "password");
  • mysql_select_db("database");
  • // INTERDICTION DU HTML
  • $message = htmlentities ($_POST['message']);
  • $pseudo = htmlentities ($_POST['pseudo']);
  • // enregistre message
  • mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')");
  • // deconnection MySQL
  • mysql_close();
  • }
  • }
  • // Formulaire
  • ?><style type="text/css">
  • <!--
  • body,td,th {
  • color: #FFFFFF;
  • }
  • body {
  • background-color: #333333;
  • }
  • -->
  • </style>
  • <form action="minichat.php" method="post">
  • <div align="left">Pseudo :
  • &nbsp;&nbsp;<input type="text" name="pseudo" value="">
  • <br>
  • Message :
  • <input type="text" name="message">
  • <br>
  • <input type="submit" value="Envoyer">
  • </div>
  • </form><p>
  • <?
  • // Maintenant on doit récupérer les 10 dernières entrées de la table
  • // Connection MySQL
  • mysql_connect("localhost", "user", "pass");
  • mysql_select_db("database");
  • // On utilise la requête suivante pour récupérer les 10 derniers messages :
  • $reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,100");
  • // Deconnection MySQL
  • mysql_close();
  • // Puis on fait une boucle pour afficher tous les résultats :
  • while ($donnees = mysql_fetch_array($reponse) )
  • {
  • ?>
  • <b><? echo $donnees['pseudo']; ?></b> : <? echo $donnees['message']; ?>
  • <p>
  • <?
  • }
  • // Fin de la boucle
  • ?>
<?
if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent
{
    if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
    {
        // Connection MYSQL
        mysql_connect("localhost", "user", "password");
        mysql_select_db("database");
    
        // INTERDICTION DU HTML
        $message = htmlentities ($_POST['message']);
        $pseudo = htmlentities ($_POST['pseudo']);
    
        // enregistre message
        mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')");
    
        // deconnection MySQL
        mysql_close();
    }
}




// Formulaire
?><style type="text/css">
<!--
body,td,th {
	color: #FFFFFF;
}
body {
	background-color: #333333;
}
-->
</style>



<form action="minichat.php" method="post">
  <div align="left">Pseudo : 
    &nbsp;&nbsp;<input type="text" name="pseudo" value="">
    <br>
Message :  
<input type="text" name="message">
<br>

<input type="submit" value="Envoyer">
  </div>
</form><p>



<?

// Maintenant on doit récupérer les 10 dernières entrées de la table
// Connection MySQL
mysql_connect("localhost", "user", "pass");
mysql_select_db("database");

// On utilise la requête suivante pour récupérer les 10 derniers messages :
$reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,100");

// Deconnection MySQL
mysql_close();

// Puis on fait une boucle pour afficher tous les résultats :
while ($donnees = mysql_fetch_array($reponse) )
{
?>

<b><? echo $donnees['pseudo']; ?></b> : <? echo $donnees['message']; ?>

<p>

<?
}
// Fin de la boucle
?> 

 Conclusion

Ceci est mon premier script, merci de laisser des commentaires constructifs pour m'améliorer dans mes futurs scripts. Merci à tous ;)


 Sources de la même categorie

Source avec Zip COMPTEUR DE CLIQUE PHP AVEC JQUERY par devgoneti
Source avec Zip LIVRE D'OR SIMPLE (POUR DÉBUTANT) par devgoneti
Source avec Zip SCRIPT TRAVAUX POUR VOTRE SITE par FleuryK
Source avec Zip Source avec une capture EL COYOTOS LIVRE D'OR PHP 5 par elcoyotos
COMPTEUR DE VISITE - FICHIER TXT - CODE MINIMAL par SuperChouquette

Commentaires et avis

Commentaire de Isoth0p le 21/06/2004 09:43:47

Euh ... plusieurs choses :

Ton SQL est pas top ! En effet tu dis récupérer les 10 derniers enregistrements et ta requete est :
SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,100

Tu ne donnes pas la structure de la table SQL ?!

Ton code PHP pourrais etre très facilement optimisé ! Remplaces tes 2 conditions du début par :
if(!empty($_POST['pseudo']) && !empty($_POST['message']))
Celà là suffit largement :)

Tu parles ensuite d'interdire le HTML, dans ce cas utilises plutot :
$var = strip_tags($var);

Encore pour le SQL, ta requete insert serait mieux comme ça :
INSERT INTO minichat SET pseudo = '$pseudo', message = '$message';

Tu fermes SQL alors que tu executes encore des requetes fetch_array() ?!

Sinon, pas mal pour un début !

Commentaire de revinc le 24/06/2004 13:29:31

Isoth0p &gt; il ferme la liaison avec mysql. cela signifie qu'il ne peut plus exécuter de requête SQL. mysql_fetch_array() n'est pas une requête SQL mais une simple fonction qui matche les résultats d'une requête précédemment exécutée.
Pas de problème avec le mysql_close() donc.

Commentaire de Natim le 24/06/2004 22:22:02

Interresant comme script et très peu d'erreur !

Commentaire de kuppidon le 25/06/2004 09:29:34

Merci de vos commentaires, cela fait plaisir et me motive encore plus :D Merci à tous ;)

Commentaire de neme_zis le 30/06/2004 19:12:59

hello ...

je te conseille d'utiliser des a présent les balises &lt;?php et ?&gt; au lieu de &lt;? et ?&gt;. Pourquoi? Simplement parce que le langage XML qui est fréquemment utilisé utilise le même début de balise :
&lt;?xml ?&gt;

Voilà, sinon effectivement il y avait juste les problèmes des tests ..
tu peux nommer la variable que tu réceptionne du fomulaire .. c'est plus soigné par apres. exemple :

&lt;?php
//reception des variables envoyées par le formulaire
$pseudo=$_POST['pseudo'];
$message=$_POST['message'];


// Test si les variables existent
if (isset($pseudo) && isset($message))
{   
    // Test si les variables ne sont pas vides
    if (!empty($pseudo) && !empty($message))
    {
        // Connexion MYSQL
        mysql_connect("localhost", "user", "password");
        mysql_select_db("database");


... et ainsi de suite.


a+



Commentaire de neme_zis le 30/06/2004 19:25:41

si je peux encore ajouter quelque chose, pour ne pas emcombrer ton fichier avec des données qui n'influent pas sur le déroulement du script tu peux créer si tu veux un fichier CSS qui contiendra les effets stylistiques de ton minichat.

&gt;&gt;Contenu du fichier CSS (sans les balises &lt;style&gt;):
body,td,th
{
    color: #FFFFFF;
}
body
{
    background-color: #333333;
}

&gt;&gt;Fichier php qui contient une ligne pour appeler le fichier CSS:
....
&lt;link href="form.css" rel="stylesheet" type="text/css"&gt;
&lt;form action="minichat.php" method="post"&gt;
    &lt;div align="left"&gt;Pseudo :
...

Commentaire de dabdg le 04/07/2004 21:26:00

Ce script a été pompé sur [url]http://www.siteduzero.com/php/tp/minichat.php[/url] ... aucun intéret pour kuppidon .. Tu as des problèmes dans ta vie ? tu es en quête de reconnaissance ? bref ..

Commentaire de la_pin le 31/12/2004 09:19:08

compte tenu des grosses modifications faites a partir ed siteduzero.com, moi je trouve ça pas map du tout...
allez on est gentil : 8/10 ! Je l'ai intégré sur mon site en changeant tout le graphisme et sa marche sans probleme...

Commentaire de marcelolipi le 24/11/2008 15:58:54

salut ce code ma l'air vraimment interessant car n'est pas tres long et est assez commenté.Jaimerais juste avoir de ceux qui lont deja utiliser de me donner la structure de la table minichat

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 0,608 sec (4)

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