|
Posté le: Samedi 19 Août 2006 12:21:00
Numéro présent dans le profil, mais problème de récupération des caractéristiques de la ligne
| |
|
|
kohlerz (Auteur du topic)
Affirmé
Hors-ligne
Inscrit le : 13 Fév 2005 Messages : 136
Sexe :
Ville : Amiens
Forfait : Freebox Dégroupage Total
Freebox : v5
|
|
|
|
|
|
|
boujour
sur mon livre de commentaire (livre d'or) de ma page de perso, il y a des commentaire spam , je voudrais les enlever mes quand je vais sur la console je ne peux pas car il n'apparaisse pas !
peut on ecraser se livre ou coment effacer ?
y a t il un truc simple pour se debarrasser des spam ? |
|
_________________ Degroupe total wifi
Tv ok , telephone ok , internet ok
Freebox V6 |
|
|
|
Posté le: Lundi 21 Août 2006 21:03:12
NRA : CR171
(Creches-sur-saone)
Ligne : 2067 m (30 dB)
| |
|
|
indigene
Nouveau
Hors-ligne
Inscrit le : 23 Fév 2006 Messages : 20
Sexe :
|
|
|
|
|
|
|
Bonjour,
Tu peux utiliser un script php et une base de données mysql.
Je recommande un très bon livre d'or qui est alex guestbook. Il permet de protéger les adresses e-mail des posteurs pour ne pas qu'elles soient récupérées par les robots de spam. Ensuite c'est à toi de modifier un peu le script en ajoutant par exemple des filtres pour interdire certaines adresses ou certains mots (par exemple les adresses qui viennent de Russie ou les mots comme "mobile" ou "sonnerie".
Pour cela il faudra demander un peu d'aide sur un forum php.
Mais une fois ton livre d'or dans une base mysql tu peux accéder à la base de données et supprimer tous ce que tu veux.
Indy |
|
|
|
|
Posté le: Mardi 22 Août 2006 15:16:46
NRA : EVR91
(Evry) V2
Ligne : 2935 m (44 dB)
| |
|
|
Alain91
Connaisseur
Hors-ligne
Inscrit le : 23 Avr 2004 Messages : 2345
Sexe :
Ville : Evry
Forfait : Freebox Dégroupage Partiel
Freebox : v5
|
|
|
|
|
|
|
Si ça peut t'aider, j'ai écrit, de mes propres mains, il y a déjà un certain temps, un petit livre d'or sans prétentions mais qui me convient.
Comme on peut s'en douter, il est écrit en php et utilise une table sql.
NB : Les 3 fichiers, config.php, guestbook.php et livre.php, je les ai placés dans un sous-répertoire en espérant que cela puisse diminuer les risques.
PS : S'il y a des commentaires, si possible constructifs, je suis preneur.
Commande SQL qui permet de créer la base de données.
Code: | --
-- Structure de la table `Livre_D_Or`
--
CREATE TABLE `Livre_D_Or` (
`name` varchar(128) collate latin1_general_ci NOT NULL default '',
`email` varchar(128) collate latin1_general_ci NOT NULL default '',
`pageweb` text collate latin1_general_ci NOT NULL,
`comment` text collate latin1_general_ci NOT NULL,
`date` int(10) default NULL,
`id` mediumint(9) NOT NULL auto_increment,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=15 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci PACK_KEYS=0 AUTO_INCREMENT=15 ;
|
Fichier config.php :
Code: | <?php
$dbhost = 'sql.Free.fr'; // l'adresse de votre serveur php
$dbname = 'votre login'; // le nom de la Base De Données
$dbuser = 'votre login'; // votre login : root sur localhost
$dbpass = 'votre mot de passe'; // votre mot de passe : vide sur localhost
$table = 'Livre_D_Or'; // Le nom de votre table Sql
$url = $_SERVER['PHP_SELF']; // Renvoie vers la page de code php, ici c'est la page même !
?> |
Fichier guestbook.php :
Code: | <html>
<head>
<title>Livre d'or</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<?php
include('config.php');
// Ici on ouvre une connexion au serveur MySQL
$db = mysql_connect ( $dbhost, $dbuser, $dbpass );
mysql_select_db ( $dbname,$db );
// Requete ordonnant les messages par dates
$query = "SELECT name,email,pageweb,comment,date FROM $table ORDER BY date DESC";
// Execute la requete precedente
$result = mysql_query($query) or die('Erreur SQL : '.mysql_error());
// Renvoie le nombre de lignes pour pouvoir afficher le nombre total de messages postés
$numrows = mysql_numrows($result);
?>
<div align="center">
<table width="100%" border="1" cellspacing="2" cellpadding="5" align="center" bgcolor="#1d210c">
<tbody>
<tr>
<td align="center" valign="middle" nowrap bgcolor="#a9a9a9">
<b>
<font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" color="#161917" size="+0">
Livre d'or
</font>
</b>
<br>
</td>
</tr>
</tbody>
</table>
<br>
<table width="100%" border="1" cellspacing="2" cellpadding="25" align="center" bgcolor="#add8e6">
<tbody>
<tr>
<td align="center" valign="middle" bgcolor="#add8e6">
<font size="4" color="#161917" face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular">
Pour rajouter un commentaire, cliquez <a href="livre.php">ici</a>. Merci d'avance.
</font>
<br>
<br>
<hr>
<div align="left">
<font color="#191970">
<?php
echo "\n";
// Définit la boucle : tant qu'il y a des messages dans la BDD
while ($val = mysql_fetch_array($result)) {
echo '<br><FONT color="#005500"><B>'.$val['name'].'</B></FONT>';
if ( $val['pageweb'] != "" ) echo '<FONT color="#005500"> - <A HREF="'.$val['pageweb'].'" target="_blank"><B>'.$val['pageweb'].'</B></a></FONT>';
echo '<BR><FONT color="#005500" size="-1"><B>';
echo date("m/d/Y H:i:s",$val['date']);
echo '</B></FONT>';
echo "<BR><div>".htmlentities($val['comment'])."</div>\n";
}
?>
</font>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html> |
Fichier livre.php :
Code: | <html>
<head>
<title>Livre d'or.</title>
<script language="JavaScript">
<!--
function verif(email) {
var arobase = email.indexOf("@"); var point = email.lastIndexOf(".")
if((arobase < 3)||(point + 2 > email.length)||(point < arobase+3))
return false
return true
}
function testform(name,mail,pageweb,comment) {
if(name.value=="") {
name.focus();
return false
}
// if(!verif(mail.value)) {
// mail.value="";
// mail.focus();
// return false
// }
return true
}
//-->
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#add8e6" text="#000000">
<?php
// Si le formulaire à été soumis, ajout vaudra true
if ( isset($ajout) ) {
// Ici se trouve le script d'ajout du message
include('config.php');
// Ici on ouvre une connexion au serveur MySQL
$db = mysql_connect ( $dbhost, $dbuser, $dbpass );
mysql_select_db($dbname,$db);
// On vérifie que les champs ne sont pas vide
if (!empty($name) && !empty($email) && !empty($pageweb) && !empty($comment)) {
// Définit la variable de date
$date = time();
// Requete ordonnant les messages par dates
$query = "SELECT name,email,pageweb,comment,date FROM $table ORDER BY date DESC";
// Créé la requête
$query = "INSERT INTO $table(name,email,pageweb,comment,date) VALUES('$name','$email','$pageweb','$comment','$date')";
// Execute la requete d'insertion du message
$result = mysql_query($query) or die('Erreur SQL : '.mysql_error());
}
echo ' <script language="JavaScript">';
echo ' window.location="guestbook.php"';
echo ' </script>';
}
?>
<table border="1" align="center" cellspacing="2" bgcolor="#1d210c" cellpadding="5" width="100%">
<tbody>
<tr>
<td bgcolor="#a9a9a9" align="center" valign="middle" nowrap>
<font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" color="#161917" size="+0">
<b>
Livre d'or
</b>
</font>
<br>
<font color="black" size="4">
Vos commentaires m'intéressent, n'hésitez pas à me donner votre avis, j'en tiendrai compte. Merci d'avance.
</font>
</td>
</tr>
</tbody>
</table>
<form method="post" action="<?php echo $url; ?>" onSubmit="return testform(this.name,this.email,this.pageweb,this.comment)">
<input type="hidden" name="ajout" value="true">
<table width="549" border="2" cellpadding="1" cellspacing="0" align="center" bgcolor="#a9a9a9">
<tr>
<td>
<table border="0" cellpadding="10" width="549" align="center" cellspacing="0" bgcolor="#add8e6">
<tr valign="middle">
<td><b>Nom :</b></td>
<td colspan=2><input type="text" name="name" value="" size="50"></td>
</tr>
<tr valign="middle">
<td><b>Email :</b></td>
<td><input type="text" name="email" value="" size="50"></td>
<td align="right">(facultatif)</td>
</tr>
<tr valign="middle">
<td><b>Page web :</b></td>
<td><input type="text" name="pageweb" size="50"></td>
<td align="right">(facultatif)</td>
</tr>
<tr>
<td valign="top">
<p><b>Commentaires :</b></p>
</td>
<td colspan=2><textarea name="comment" cols="50" rows="10" wrap="virtual"></textarea></td>
</tr>
<tr>
<td width="144"><input type="reset" name="reset" value="Effacer"></td>
<td colspan=2 align="RIGHT"><input type="submit" name="Valider" value=" OK ! "></td>
</tr>
</table>
</td>
</tr>
</table>
</form>
</body>
</html> |
[Edit] J'ai renommé le fichier config.inc par config.php afin d'éviter la lecture de ce fichier de l'éxtérieur. |
|
_________________ Nous avons bien reçu votre formulaire d'inscription : 24/04/2006
Votre inscription a été validée par France Télécom : 26/04/2006 (2 jours => Bravo)
Votre Freebox est en cours d'envoi : 28/04/2006
Freebox envoyée par colissimo : 20/05/2006 (22 jours => Pas de Bravo. hihihi)
Freebox HD reçue ce lundi 22/05/2006 (héhéhé)
Problèmes de conjugaison ? ==> http://www.la-conjugaison.fr/
Dernière édition par Alain91 le Mardi 29 Août 2006 08:50:03; édité 1 fois |
|
|
|
|
|