loka
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
loka

forum de loka
 
AccueilAccueil  PortailPortail  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  
Le deal à ne pas rater :
Pokémon EV06 : où acheter le Bundle Lot 6 Boosters Mascarade ...
Voir le deal

 

 un petit chat en php

Aller en bas 
AuteurMessage
romain
Rang: Administrateur
romain


Nombre de messages : 346
Date d'inscription : 01/08/2004

un petit chat en php Empty
MessageSujet: un petit chat en php   un petit chat en php EmptyJeu 16 Mar à 0:34

Ici on va realiser un petit chat en php.
Pour cela il va déjà falloir creer une bdd avec une table qu'on va nommer minichat

voila à quoi ressemblera notre table :
Code:
#
# Structure de la table `minichat`
#

CREATE TABLE `minichat` (
  `id` int(11) NOT NULL auto_increment,
  `pseudo` varchar(50) NOT NULL default '',
  `message` text NOT NULL,
  `date` timestamp NOT NULL default '0000-00-00',
  PRIMARY KEY  (`id`)
);

On y stocke donc un identifiant, un pseudo, le message et la date.

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title>Mini-chat</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <style type="text/css">
    form
    {
    text-align:center;
    }
    </style>
    <body>
<?php
session_start();
require_once("../fonctions.php");
db_connexion();

if(isset($_SESSION['ID']) && isset($_SESSION['pseudo'])){ // si on recupere le pseudo par un enregistrement avant
   $id = $_SESSION["ID"];
   $pseudo = $_SESSION['pseudo'];

   if (isset($_POST['message'])) // Si les variables existent
   {
      if ($_POST['message'] != NULL) // Si on a quelque chose à enregistrer
      {   
         // On utilise la fonction PHP htmlentities pour éviter d'enregistrer du code HTML dans la table
         $message = htmlentities (addslashes($_POST['message']));

         // Ensuite on enregistre le message
         $sql = "INSERT INTO minichat VALUES('', '$pseudo', '$message',NOW())"; // NOW() recupere la date
         exec_requete($sql);
      }
   }
   // Que l'on ait enregistré des données ou pas...
   // On affiche le formulaire puis les 10 derniers messages
   
   // Tout d'abord le formulaire :
   ?>
   <form action="chat.php" method="post">
   <p>
   Pseudo : <?php if(isset($pseudo)) echo "$pseudo"; ?><br />
   Message :  <input type="text" name="message" /><br />
   
   <input type="submit" value="Envoyer" />
   </p>
   </form>
   <?php
   
   // On utilise la requête suivante pour récupérer les 10 derniers messages :
   $sql = "SELECT message, pseudo, UNIX_TIMESTAMP(date) as temp  FROM minichat ORDER BY id DESC LIMIT 0,20";
   $reponse = exec_requete($sql);
   
   $sql = "SELECT * FROM minichat ORDER BY id ASC";
   $res = exec_requete($sql);
   $num = mysql_num_rows($res);
   if($num > 100){
      $sql = "DELETE FROM minichat ORDER BY id LIMIT 80";
      exec_requete($sql);
   }

   // Puis on fait une boucle pour afficher tous les résultats :
   while ($donnees = mysql_fetch_array($reponse) )
   {
      ?>
      <strong><?php echo $donnees['pseudo']." </strong>le"; ?> <?php echo " ".get_date($donnees['temp'])." : "; echo stripslashes($donnees['message']); ?><br>
      <?php
   }
}
else {
   echo "veuillez vous connecter";
}
// Fin de la boucle, le script est terminé !
?>
    </body>
</html>

la fonction get_date qu'il vous manque :

Code:
function get_date($timestamp) {
   $monthes = array('', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juillet',
                        'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre');
   $days = array('Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi');
   $date_first = $days[date('w', $timestamp)];
   $date_second = $monthes[date('n', $timestamp)];
   echo $date_first.' '.date('d', $timestamp).' '.$date_second.' '.date('Y', $timestamp).' à '.date('H:i:s', $timestamp);
}
Revenir en haut Aller en bas
 
un petit chat en php
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
loka :: Informatique :: Webmasters - Développement Web :: PHP-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser