fred-xhaflaire
Messages postés13Date d'inscriptionjeudi 7 décembre 2017StatutMembreDernière intervention16 décembre 2019
-
Modifié le 7 déc. 2017 à 20:20
fred-xhaflaire
Messages postés13Date d'inscriptionjeudi 7 décembre 2017StatutMembreDernière intervention16 décembre 2019
-
8 déc. 2017 à 19:58
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.''); ?>
<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 = ""; } } } } ?>
<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>
<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 */;
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` --
-- -- 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 */;
A voir également:
"Le code à recopier et à mettre sur votre site avant de commencer"
Ensuite.... dis nous exactement ce que tu as essayé de faire (en nous montrant le code correspondant) et là nous pourrons essayer de t'aider.
Car bon... nous n'allons pas le coder à ta place ... :-)
fred-xhaflaire
Messages postés13Date d'inscriptionjeudi 7 décembre 2017StatutMembreDernière intervention16 décembre 2019 8 déc. 2017 à 19:58
Bonjour je ne mi connaît pas du tous pour le modifier et enfaite j'aimerai ajouter sur la page admin un bouton pour ne pas que les dédicace s affiche directement sur lire.php ces à dire un bouton accepter supprimé et bloqué l up si possible merci
8 déc. 2017 à 19:58