Un logiciel de chat tres simple en php/mysql

Contenu du snippet

Il s'agit ici d'un logiciel de chat tres basique qui enregistre la conversation dans une base MySQL

Il faut tout d'abord creer une table sous MySQL.

CREATE TABLE chat (
id INT NOT NULL AUTO_INCREMENT,
pseudo VARCHAR(30),
message VARCHAR(255),
heure VARCHAR (10),
PRIMARY KEY(id)
)

Ensuite, il suffit simplement de copier les deux pages suivantes dans un ficher texte. Le premier doit s'appeller index.php et le second affichpage.php

Source / Exemple :


//PAGE 1 : index.php

<?php
	$server="nomserveur";
	$username="nomuser";
	$password="pwd";
	$link=mysql_connect($server,$username,$password);
	mysql_select_db('nomdb');
?>

<?php
	if (!(isset($_GET['pseudo']) and !empty($_GET['pseudo'])) {
		echo "<html>
			<body>
				<form action = '$SERVER[PHP_SELF]' method = GET>
					<b>PSEUDO </b><input type = 'text' name = 'pseudo' maxlength = 30><br>
					<input type = submit value = 'valider'>
				</form>
			</body>
		</html>";
		exit();
	}
	
	if (isset($_POST['message']) and !empty($_POST['message'])) {
		$query = "INSERT INTO chat (heure, pseudo, message) VALUES (CURRENT_TIME, '$_GET[pseudo]', '$_POST[message]')";
		$result = mysql_query($query);
		if ($result == 0) {
			echo "erreur dans la base de donnees";
			exit();
		}
	}
?>

<html>
	<head>
		<title>chan</title>
	</head>
	<body>
	<IFRAME ID = IFrame1 width = 80% height = "700" FRAMEBORDER = 1 SCROLLING = no SRC = "affichpage.php"></IFRAME>
	<br>
	<br>
	<form name = "messa" action = "<?php echo "$SERVER[PHP_SELF]?pseudo=$_GET[pseudo]" ?>" method = 'POST'>
	<input type = 'text' size = 100 name = 'message' maxlength = 255>
	<br>
	<input type = 'submit' value = 'envoyer' name = 'send'>

        <SCRIPT langage = "javascript">
		document.forms['messa'].elements['message'].focus();
	</SCRIPT>
	</body>
</html>

//PAGE 2 : affichpage.php

<?php
	$server="nomserveur";
	$username="nomuser";
	$password="pwd";
	$link=mysql_connect($server,$username,$password);
	mysql_select_db('nomdb');
?>

<html><meta Http-equiv="Refresh" Content="5"> //on peut modifier la vitesse de rafraichissement du chat en changeant la valeur du Content. Elle est en seconde.
<body>
	<?php
		$query = "(SELECT * FROM chat ORDER BY id DESC LIMIT 25) ORDER BY id ASC";
		$result = mysql_query($query);
		while ($list = mysql_fetch_array($result)) {
			echo "<b>$list[heure] - </b>";
			echo "<b><font color = 'blue'>$list[pseudo] : </font></b>";
			echo "$list[message]<br>";
		}
	?>
	_
</body></html>

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.