Alex XIV Admin
Nombre de messages : 236 Age : 48 Localisation : par GPS Date d'inscription : 02/02/2007
| Sujet: Faire un livre d'or Mar 10 Juil 2007 - 12:18 | |
| ETAPE 1 - Creér sa base de donnée ( ici la base s'appelle "maj" ) - Dans cette base on va créer une table ( soit avec une requête sql soit manuellement ) ex de requête servant à créer la table necessaire : - Citation :
- CREATE TABLE `message` (
`id` int(11) NOT NULL auto_increment, `titre` varchar(30) NOT NULL default '', `texte` varchar(200) NOT NULL default '', `pseudo` varchar(30) NOT NULL default '', KEY `id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=30 ; La table s'appelle donc "message" et contient 4 champs: id : clé primaire auto incrementée. titre : titre du message texte : texte du message pseudo : émetteur du message ETAPE 2 On va créer la page html qui contiendra le livre d'or: - Citation :
- <?
if(isset($envoi) && !empty($titre) && !empty($texte) && !empty($pseudo){ $serveur=mysql_connect("localhost","root"); mysql_select_db("maj",$serveur); $rq="insert into message values(null,'$titre','$texte','$pseudo')"; mysql_query($rq); }
$sel1=""; $serveur=mysql_connect("localhost","root"); mysql_select_db("maj",$serveur); $rq="select * from message order by id desc limit 0,50"; $lancer=mysql_query($rq); while($rep=mysql_fetch_array($lancer)){ $sel1.="<tr><td colspan='3' bgcolor='#ffffff' width='550'><font face='arial' color='#000000' size='2'> ".$rep["titre"]."</font></td></tr><tr><td width='' bgcolor='#ffffff' valign='top'><font color='#000000' face='arial' size='2'><font color='#ffffff'>xx</font></td><td width='' id='cm' valign='top' align='center'><font color='#ffffff' face='arial' size='2'>par ".$rep["pseudo"]."</font></td><td bgcolor='#ffffff' width='300' valign='top'><font color='#000000' face='arial' size='2'> ".$rep["texte"]."<br><br></font></td></tr>"; }
?>
<html> <head> <title>TEST LIVRE D'OR</title> </head>
<body> <center>
<form action="" method="post"> <br /> <input type="text" value="Titre du message..." onfocus="this.value=''" name="titre" size="52" /> <input type="text" value="" name="pseudo" /><br /> <textarea onfocus="this.value=''" rows="7" cols="40" name="texte">votre message...</textarea><br /><br /> <input type="submit" name="envoi" value="enregistrer le message" /><br /> </form>
<table border="0" cellpadding="0" cellspacing="0" align="center">
<? echo $sel1; ?>
</table>
</center> </body> </html> Pour les paramètres de connexions à la base : - Citation :
- <?
$serveur=mysql_connect("localhost","root"); mysql_select_db("maj",$serveur); ?> sur free on aura : - Citation :
- <?
$serveur=mysql_connect("sql.free.fr","nom de domaine sans l'extension .free.fr","mot de passe"); mysql_select_db("nom de domaine sans l'extension .free.fr",$serveur); ?> Dans cet exemple n'importe qui peut laisser un message, on peut en restreindre l'accés aux personne inscrites...je ferai le tuto aprés celui là ! ETAPE 3 On va créer une page ( qui peut être dans une partie admin protegée c'est préférable! ) et qui va nous afficher l'ensemble des message de la table, mais surtout qui va nous permettre de les gérer ( cad les effacer etc...) Je n'ai pas encore fait cette partie sur mon site, je me suis surtout concentré sur d'autres fonctions mais le principe est simple, on va reprendre le code la page qui l'on vient de créer et on va y apporter quelques modifs: On écrit : Hors de l'html - Citation :
<? if(isset($effacer)){ $serveur=mysql_connect("localhost","root"); mysql_select_db("maj",$serveur); foreach($id as $valeur){ mysql_query("delete from message where id='$valeur'"); } } $sel1=""; $serveur=mysql_connect("localhost","root"); mysql_select_db("maj",$serveur); $rq="select * from message"; $lancer=mysql_query($rq); while($rep=mysql_fetch_array($lancer)){ $sel1.=
Ici on écrit comme précedemment l'html qui sera écrit dans la page plus bas avec echo sauf qu'on y rajoute une checkbox et un bouton submit:
<input type='checkbox' value='".$rep["id"]."' name='id[]'> <input type='submit' name='effacer' value='effacer'>
?> dans l'html - Citation :
- <table border="0">
<tr> <td align="center" width="450"> <br />
<?echo $sel1?><br /><br />
</td></tr></table> Dans cette exemple de livre d'or, je n'ai pas inclus le multipage , seuls les 50 derniers messages s'affichent sur la page ( grâce à - Citation :
- $rq="select * from message order by id desc limit 0,50";
) Je ferai aussi ce tuto aprés celui là! J'espère que j'ai rien oublier! | |
|