fredxhaflaire Posté 12 Décembre 2017 Posté 12 Décembre 2017 Bonjour j'ai téléchargé sur le web un script de dédicace il est assez complet juste il manque d'une administration c'est-à-dire que j'aimerais ajouter un bouton Supprimer bloquer l ip ou affiché le message recu sur mon site j'ai fait un tour sur le web mais je ne trouve pas où je n'y arrive pas du tous a modifier je vous envoie les code ci-dessous du script complet si possible de m'aider ça me ferait super plaisir merci Config.php <?php /*------------------------------------------------- | A MODIFIER | -------------------------------------------------*/ /*Variables pour la connexion a la base de donnée */ $host = ""; //L'adresse du serveur MySql $username_sql = ""; //Le nom d'utilisateur $password_sql = ""; //Le mot de passe $nom_bd_sql = "radiobe2_site"; //Le nom de la base de donnée (Database) /*Variables pour le systeme de dédicace*/ $nombre_limiter_pseudo_mini = '3'; //nombre minimum de caractere pour le pseudo $nombre_limiter_pseudo_maxi = '103'; //nombre maximum de caractere pour le pseudo $nombre_limiter_message_mini = '2'; //nombre minimum de caractere pour le message $nombre_limiter_message_maxi = '40000'; //nombre maximum de caractere pour le message $tempsantiflood = '30'; //Nombre de secondes entre chaque message pour l'antiflood /*------------------------------------------------- | ! NE PAS MODIFIER ! | -------------------------------------------------*/ session_start(); mysql_connect($host, $username_sql, $password_sql) or die('Impossible de se connecter au serveur '.$host.'. veuillez verifier votre configuration'); mysql_select_db($nom_bd_sql) or die('Impossible de se connecter a la base de donnée '.$nom_bd_sql.''); ?> Lire.php <center> <?php include ('config.php'); //A inserer sur chaques pages d'envoie et d'affichage des dédicaces include ('envoi.php'); //A insérer seulement sur la page d'envoie des dédicaces ?> <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Lire message - radio</title> <style type="text/css"> h1 { font-size: 26px; color: #333; text-align:center; } h2 { font-size: 22px; color: #69F; text-align:center; } h3 { font-size: 18px; color: #333; } p{ display:inline; } .titre { font-weight: bold; color: #69F; } .pseudo { font-weight: bold; color: #69F; } .dedicace { font-style: italic; margin-right: 30px; } .err { color:#F00; font-weight: bolder; } .ok { color:#0C3; font-weight: bolder; } </style> </head> </center> <marquee width=1240 height=32 direction=left> <?php /*On cherche les 10 dernière dédicaces dans la base de donnée*/ $retour_dedi = mysql_query('SELECT * FROM message ORDER BY id DESC limit 0,10')or die(mysql_error("Impossible de selectionner les données dans la tables <b>'message'</b> ")); while($donnes_dedi = mysql_fetch_array($retour_dedi))//On fais une boucle { $pseudo_dedicace = htmlspecialchars($donnes_dedi['pseudo']); //On récupère le pseudo $message_dedicace = htmlspecialchars($donnes_dedi['message']); // On récupère la dédicace echo '<p class="pseudo">'.$pseudo_dedicace.'</p> <p class="dedicace">'.$message_dedicace.'</p>'; //On affiche la dédicace } ?> </marquee> <br /><br /><br /> Envoi.php <?php // Si l'auditeur à cliquer sur envoyer if (isset($_POST['envoyer_dedi'])) { $pseudo_post = mysql_real_escape_string($_POST['pseudo_poster']); //On récupère le pseudo $message_post = mysql_real_escape_string($_POST['message_poster']); // on récupère le message // Si l'auditeur n'a pas mis de pseudo if ($_POST['pseudo_poster']==null) { echo "<p class='err'>Vous n'avez pas renseigné de pseudo</p><br />"; } // Si l'auditeur n'a pas mis de message else if ($_POST['message_poster']==null) { echo "<p class='err'>Vous n'avez pas renseigné de message</p><br />"; } //Si l'auditeur à renseigner le pseudo + le message else if ($_POST['pseudo_poster']!=null && $_POST['message_poster']!=null) { // Si le pseudo est plus grand ou plus petit que les limites mis dans config.php if(strlen($pseudo_post) < $nombre_limiter_pseudo_mini || strlen($pseudo_post) > $nombre_limiter_pseudo_maxi) { echo "<p class='err'>Votre pseudo doit être compris entre ".$nombre_limiter_pseudo_mini." et ".$nombre_limiter_pseudo_maxi." caractères</p><br />"; } // Si le message est plus grand ou plus petit que les limites mis dans config.php else if(strlen($message_post) < $nombre_limiter_message_mini || strlen($message_post) > $nombre_limiter_message_maxi) { echo "<p class='err'>Votre message doit être compris entre ".$nombre_limiter_message_mini." et ".$nombre_limiter_message_maxi." caractères</p><br />"; } // Si il n'y a pas d'erreurs else { //On calcul de temps d'envoie entre l'ancienne dédicace (antiflood) $tempsrestant = time() - $_SESSION['time']; $tempsatt = $tempsantiflood-$tempsrestant; //Si le temps est inférieur à la limite d'antiflood du config.php if($_SESSION['time']!=null && $tempsrestant < $tempsantiflood) { echo "<p class='err'>Veuillez attendre ".$tempsatt." secondes <br />avant d'envoyer un nouveau message</p><br />"; } //Si le temps est supérieur à la limite d'antiflood else { $ip = $_SERVER['REMOTE_ADDR']; // On récupère l'ip $date = 'le : '.date('d/m/Y').' a '.date('H:i').''; //On récupère la date //On insère les infos dans la base MySql mysql_query("INSERT INTO message(pseudo, message, ip, date) VALUES('".$pseudo_post."', '".$message_post."', '".$ip."', '".$date."')")or die(mysql_error("Impossible d'envoyer les données dans la base de donnée!")); //On met le message comme quoi la dédicace à bien été envoyé echo "<p class='ok'>Votre message à bien été envoyé !.</p><br />"; $_SESSION['time'] = time();//On récupère l'heure à la quel le message à été envoyé $pseudo_post = ""; $message_post = ""; } } } } ?> Admin.php <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Admin - radio</title> <style type="text/css"> h1 { font-size: 26px; color: #333; text-align:center; } h2 { font-size: 22px; color: #69F; text-align:center; } h3 { font-size: 18px; color: #333; } p{ display:inline; } .titre { font-weight: bold; color: #69F; } .pseudo { font-weight: bold; color: #69F; } .dedicace { font-style: italic; margin-right: 30px; } .err { color:#F00; font-weight: bolder; } .ok { color:#0C3; font-weight: bolder; } </style> </head> <center> <?php include ('config.php'); //A inserer sur chaques pages d'envoie et d'affichage des dédicaces include ('envoi.php'); //A insérer seulement sur la page d'envoie des dédicaces ?> <center> <!--Formulaire d'envoie de la dédicace--> <h3>Envoi un message</h3> <form method="post" action="#"> <p>Pseudo</p><br /><input type="text" maxlength="20" name="pseudo_poster" <?php echo 'value="'.$pseudo_post.'"';?> /><br/><br/> <p>Message</p><br /><textarea cols="30" rows="5" name="message_poster"><?php echo $message_post;?></textarea><br/><br/> <input type="submit" name="envoyer_dedi" value="envoyer" /> </form> <center> <h3>Message reçu</h3> <table width="900" border="1"> <tr> <td width="150" align="center"> Pseudo / IP </td> <td align="center"> Message / Date </td> </tr> <?php /*On cherche les 20 dernière dédicaces dans la base de donnée*/ $retour_dedi = mysql_query('SELECT * FROM message ORDER BY id DESC limit 0,20')or die(mysql_error("Impossible de selectionner les données dans la tables <b>'message'</b> ")); while($donnes_dedi = mysql_fetch_array($retour_dedi))//On fais une boucle { $pseudo_dedicace = htmlspecialchars($donnes_dedi['pseudo']); //On récupère le pseudo $message_dedicace = htmlspecialchars($donnes_dedi['message']); // On récupère la dédicace $date_dedicace = htmlspecialchars($donnes_dedi['date']); //On récupère la date d'envoie $ip_dedicace = htmlspecialchars($donnes_dedi['ip']); // On récupère l'ip echo ' <tr> <td width="150"> <p class="pseudo">'.$pseudo_dedicace.'</p><br /><br /><p><i>'.$ip_dedicace.'</i></p> </td> <td> <p class="dedicace">'.$message_dedicace.'</p><br /><br /><p>=> Envoyé '.$date_dedicace.'</p> </td> </tr>'; //On affiche la dédicace } ?> </table> </body> </html> SQL -- phpMyAdmin SQL Dump -- version 4.7.3 -- https://www.phpmyadmin.net/ -- -- Hôte : localhost:3306 -- Généré le : mer. 06 déc. 2017 à 20:03 -- Version du serveur : 10.1.24-MariaDB-cll-lve -- Version de PHP : 5.6.30 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET AUTOCOMMIT = 0; START TRANSACTION; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- Base de données : `radiobe2_site` -- -- -------------------------------------------------------- -- -- Structure de la table `message` -- CREATE TABLE `message` ( `valide_stat` int(11) NOT NULL, `id` int(11) NOT NULL, `pseudo` text NOT NULL, `message` text NOT NULL, `ip` text NOT NULL, `date` text NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -- Déchargement des données de la table `message` -- INSERT INTO `message` (`valide_stat`, `id`, `pseudo`, `message`, `ip`, `date`) VALUES (0, 14, 'Fred', 'Bienvenue ', '1', 'le : 11/11/2017 a 20:55'); -- -- Index pour les tables déchargées -- -- -- Index pour la table `message` -- ALTER TABLE `message` ADD PRIMARY KEY (`id`); -- -- AUTO_INCREMENT pour les tables déchargées -- -- -- AUTO_INCREMENT pour la table `message` -- ALTER TABLE `message` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=33;COMMIT; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant