Administration d'un "livre d'or".

Résolu/Fermé
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024 - 17 nov. 2022 à 10:59
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024 - 21 nov. 2022 à 09:03

Bonjour,

Sur mon "livre d'or", je ne peux plus utiliser certaines options telles la suppressions de messages, ou bannissements d'IP.

Voici sa présentation de la partie administration du site en image:

Et voici le script de la page accueil.php pour l'administrateur:

<?php
// Quelques variables
$template_titre = "Accueil"; // Titre de la page
$template_aide = strtolower($template_titre); // Fichier aide
$template_impromptu = 1; // Afficher JSimpromptu

require ("include/template/header.php"); // Head

require ('../include/classes/livor.class.php');  // Classe livre d'or
require ('../include/classes/pagination.class.php'); // Classe pagination

// ********************************************* Messages en attente de validation
/*$sql_count_message_a_valider = $connexion->prepare("SELECT count(id) AS nb_message_a_valider FROM ".$prefixe_tables."livor_messages WHERE message_valide = 1");*/
$sql_count_message_a_valider = $connexion->prepare("SELECT count(id) AS nb_message_a_valider FROM livor_messages WHERE message_valide = 1");
$sql_count_message_a_valider->setFetchMode(PDO::FETCH_OBJ);
$sql_count_message_a_valider->execute();
$row_count_message_a_valider = $sql_count_message_a_valider->fetch();

// ********************************************* Pagination
$sql_count = $connexion->prepare("SELECT count(id) AS nbEnr FROM livor_messages WHERE message_valide = 0");
//$sql_count = $connexion->prepare("SELECT count(id) AS nbEnr FROM ".$prefixe_tables."livor_messages WHERE message_valide = 0");
$sql_count->setFetchMode(PDO::FETCH_OBJ);
$sql_count->execute();
$row_count = $sql_count->fetch();

$nombre_de_sujet_par_page = $row_config->nbre_message_par_page;

// Options
$options = array(
	'nb_datas' => $row_count->nbEnr,
	'data_per_page' => $nombre_de_sujet_par_page,
	'nb_link_per_page' => 5,
	'url' => $_SERVER['PHP_SELF'].'?',
	'var_page' => 'page'
);
$pagination = new Pagination($options);
$pagination->separator = '';
if ($_GET['page'] != "") { $page_en_cours = $_GET['page']; } else { $page_en_cours = 1; }
$nombre_de_page = ceil($pagination->nb_datas / $nombre_de_sujet_par_page);


//  Requete d'affichage des messages
$sql = $connexion->prepare("SELECT * FROM livor_messages WHERE message_valide = '0' ORDER BY id DESC LIMIT  " . $pagination->start_offset . ", " . $pagination->data_per_page);
$sql->setFetchMode(PDO::FETCH_OBJ);
$sql->execute();

require ("include/template/body.php"); // Body
require ("include/noscript.php");

// ********************************************* ERREURS/SUUCCES MISE A JOUR AUTOMATIQUE
if (isset($_SESSION['error_maj1'])) {
	echo $_SESSION['error_maj1'];
}

if (isset($_SESSION['error_maj2'])) {
	echo $_SESSION['error_maj2'];
}

if (isset($_SESSION['error_maj3'])) {
	echo $_SESSION['error_maj3'];
}

if (isset($_SESSION['error_maj4'])) {
	echo $_SESSION['error_maj4'];
}

if (isset($_SESSION['succes_maj'])) {
	
// ********************************************* MAJ BDD
	// Changement de version
	$version = 9;
	$update = $connexion->prepare("UPDATE livor_config SET version = ? WHERE id_config = 1");
	$update->execute(array($version));			


	echo $_SESSION['succes_maj'];
}

// ********************************************* MESSAGES A VALIDER
if ($row_count_message_a_valider->nb_message_a_valider != 0) {
?>
                <div class="erreur"><a href="valider_messages.php">Il y a <?php echo $row_count_message_a_valider->nb_message_a_valider; ?> message(s) à valider.</a></div>
<?php 
}

// ********************************************* MODIFICATION D'UNE REPONSE
if ( $_GET['reponse'] == 'ok' ) {
?>
                <div class="succes">La réponse a été enregistrée avec succès.</div>
<?php 		
}
// ********************************************* MODIFICATION D'UNE REPONSE
if ( $_GET['modif'] == 'okr' ) {
?>
                <div class="succes">La réponse a été modifiée avec succès.</div>
<?php 		
}
			
// ********************************************* MODIFICATION D'UN MESSAGE
if ( $_GET['modif'] == 'ok' ) {
?>
                <div class="succes">Le message a été modifié avec succès.</div>
<?php 			
}

// ********************************************* SUPPRESSION D'UN MESSAGE
/*var_dump($_GET['action']); */
/*exit("<br/> Stop");*/
if ( $_GET['action'] == 'sup' ) {
	$delete = $connexion->prepare("DELETE FROM livor_messages WHERE id = '" . $_GET['id'] . "'");
	$delete->execute();
	
	$optimize = $connexion->prepare("OPTIMIZE TABLE livor_messages");
	$optimize->execute();
?>
          <div class="succes">Le message a été supprimé avec succès !!! Peut être devrez vous actualiser la page... </div>
<?php 
}

// ********************************************* SUPPRESSION D'UNE REPONSE
if ($_GET['action'] == 'suprep' ) {
	$delete = $connexion->prepare("DELETE FROM livor_reponses WHERE id_reponse = '" . $_GET['id'] . "'");
	$delete->execute();

	//$optimize = $connexion->prepare("OPTIMIZE TABLE ".$prefixe_tables."livor_reponses");
	$optimize = $connexion->prepare("OPTIMIZE TABLE livor_reponses");
	$optimize->execute();
?>
          <div class="succes">La réponse a été supprimée avec succès !!! Peut être devrez vous actualiser la page... </div>
<?php 
}

// ********************************************* BANNISSEMENT D'UNE IP
if ( $_GET['action'] == 'ban' ) {
	// Requête d'insertion
	$id = NULL;
	$insert = $connexion->prepare("INSERT INTO livor_ip (id_ip,ip) VALUES (?,?)");
	$insert->bindParam(1, $id);
	$insert->bindParam(2, $_GET['ip']);
	$insert->execute();
?>
          <div class="succes">L'IP a été bannie avec succès !!!</div>
<?php 

}
?>				
                <!-- PAGINATION -->
                <div class="contour_pagination">
                  <table width="100%" border="0" cellspacing="0" cellpadding="5">
                    <tr>
                      <td class="affichage_page_X_sur_Y"><?php echo "Page " . $page_en_cours . " sur " . $nombre_de_page . ""; // affichage page X sur Y ?></td>
                      <td class="page_en_cours">Page en cours : <?php echo $page_en_cours; ?></td>
                      <td class="nombre_de_sujet">Nombre de message : <?php echo $pagination->nb_datas; ?></td>
                      <td class="pagination"><?php echo $pagination->getFirstLinks() . $pagination->getLinks() . $pagination->getLastLinks(); ?></td>
                    </tr>
                  </table>
                </div>
                
                <!-- AFFICHAGE DU LIVRE D'OR -->
<?php
// Affichage des messages
while( $row = $sql->fetch() ) {
	$sql_reponse = $connexion->prepare("SELECT * FROM livor_reponses WHERE message_id = '".$row->id."'");
	$sql_reponse->setFetchMode(PDO::FETCH_OBJ);
	$sql_reponse->execute();
	$row_reponse = $sql_reponse->fetch();

	// Si résultat est différent de zéro
	if ( $sql_reponse->rowCount() != 0 ) {		
		$reponse_admin = $row_reponse->reponse;
	}
	else {
		$reponse_admin = "";
	}

	// Instentiation de la classe
	$Classe_Livre_dor = new Livre_dor($row->nom, $row->email, $row->site, $row->ville_pays, $row->time, $row->note, $row->message, $query, $admin = 'o', $reponse_admin);
?>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					<?php echo $Classe_Livre_dor->afficher_nom(); ?></strong>
					<?php echo $Classe_Livre_dor->afficher_email(); ?>
					<?php echo $Classe_Livre_dor->afficher_site();?>
					</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=<?php echo $row->id; ?>
					&amp;page=<?php echo $_GET['page']; ?>"><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(<?php echo $row->id; ?>,<?php echo $page_en_cours ; ?>)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [<?php echo $Classe_Livre_dor->afficher_nom(); ?>]" title="Supprimer le message de [<?php echo $Classe_Livre_dor->afficher_nom(); ?>]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('<?php echo $row->ip; ?>','<?php echo $page_en_cours ; ?>')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [<?php echo $row->ip; ?> de <?php echo $Classe_Livre_dor->afficher_nom(); ?>]" title="Bannir l'IP [<?php echo $row->ip; ?> de <?php echo $Classe_Livre_dor->afficher_nom(); ?>]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					<?php if ($reponse_admin == "") { ?> 
					&nbsp;<a href="repondre.php?id=<?php echo $row->id; ?>&amp;page=<?php echo $_GET['page']; ?>"><img src="../images/commun/admin.png" alt="Répondre à ce message" title="Répondre à ce message" width="16" height="16" /></a><?php } ?>

					<!--DATE-->
					&nbsp;<?php echo $Classe_Livre_dor->afficher_date(); ?>
					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note"><?php echo $Classe_Livre_dor->afficher_ville_pays(); ?>
					<?php echo $Classe_Livre_dor->afficher_note(); ?>
					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					<?php echo $Classe_Livre_dor->afficher_message(); 
					if ($reponse_admin != "") { ?>
					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=<?php echo $row_reponse->id_reponse; ?>
					&amp;page=<?php echo $_GET['page']; ?>"><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(<?php echo $row_reponse->id_reponse; ?><?php echo $page_en_cours ; ?>)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span><?php echo $Classe_Livre_dor->afficher_reponse(); ?></div><?php } ?></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
<?php
}
?>
                <!-- PAGINATION -->
                <div class="contour_pagination">
                  <table width="100%" border="0" cellspacing="0" cellpadding="5">
                    <tr>
                      <td class="affichage_page_X_sur_Y"><?php echo "Page " . $page_en_cours . " sur " . $nombre_de_page . "";// affichage page X sur Y ?></td>
                      <td class="page_en_cours">Page en cours : <?php echo $page_en_cours; ?></td>
                      <td class="nombre_de_sujet">Nombre de message : <?php echo $pagination->nb_datas; ?></td>
                      <td class="pagination"><?php echo $pagination->getFirstLinks() . $pagination->getLinks() . $pagination->getLastLinks(); ?></td>
                    </tr>
                  </table>
                </div>

<script>

	function confirmsupmessage(id,page) {
  
		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{			
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
				}			
			 } 
		});
	
		return false ;	
	}
       
	function confirmsupreponse(id,page)

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}
	
	function confirmban(ip,page) {

		$.prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
			show:'dropIn',
			buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
				}			
			 } 
		});
	
		return false ;	
	}
	
</script> 
                
<?php
var_dump($_GET['action']); 

require ("include/template/footer.php"); // Footer
?>

En ce qui me concerne, en prenant l'exemple de la suppression d'un message inséré dans le livre par un utilisateur, je n'y parviens plus en cliquant sur l'icône représentée par l'image ci dessus.

C'est à dire plus exactement au niveau du script à la ligne 193 par onclick

Car en fait pour supprimer ce message, il faudrait que la condition en ligne 109 soit vraie.

Mais celle ci ne peut l' être comme l'indique cette image:

crée par le script de la ligne 107 (ligne 2 ci dessous) de ce même fichier que voici:

// ********************************************* SUPPRESSION D'UN MESSAGE
var_dump($_GET['action']); 
/*exit("<br/> Stop");*/
if ( $_GET['action'] == 'sup' ) {
	$delete = $connexion->prepare("DELETE FROM livor_messages WHERE id = '" . $_GET['id'] . "'");
	$delete->execute();
	
	$optimize = $connexion->prepare("OPTIMIZE TABLE livor_messages");
	$optimize->execute();
?>
          <div class="succes">Le message a été supprimé avec succès !!! Peut être devrez vous actualiser la page... </div>
<?php 
}

Il ne m'est plus possible aussi de bannir les adresses IP indésirables ainsi que d'effacer mes réponses éventuelles à certains utilisateurs de mon livre.

Je compte sur votre aide pour résoudre au moins deux de ces problèmes. Car seul, je n'y parviens pas malgré ces quelques investigations de ma part.

Cordialement.
Windows / Firefox 107.0

23 réponses

yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477
17 nov. 2022 à 12:17

bonjour,

quel est le lien affiché dans la barre d'adresse quand s'affiche l'image que tu partages?

Peux-tu partager le code source HTML (que tu obtiens sans doute en faisant ctrl-U dans le navigateur) de la page dans laquelle tu cliques pour faire la suppression?

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
17 nov. 2022 à 15:31

Voici le lien:

https://jeuxechecs.fr/livre_d_or/Adm_Livre02/index.php

Mais si c'est pour y parvenir, il faut passer par un fichier /Admin_Livre02/index.php auquel il est demandé à l'administrateur d'entrer ces coordonnées pour aller plus loin.

Voici le code source du fichier accueil.php en faisant comme tu me le préconise ctrl-U en étant sur cette page:

<!doctype html>
<html lang="fr">
<head>
    <title>Administration : 
    Accueil</title>
	<meta charset="utf-8">
    <meta name="robots" content="noindex,nofollow">
    <link rel="stylesheet" type="text/css" href="../css/style.php" />
    <link rel="stylesheet" type="text/css" href="css/style.php" />

</head>
<!-- BODY -->
<body>

    <a name="hautdepage" id="hautdepage"></a>

    <!-- GLOBAL -->
    <div class="global_admin">

        <!-- CONTENU -->
        <div id="contenu_admin">

            <!-- MENU -->
            <div id="menu_admin"><p><img src="images/accueil.png" alt="Accueil" title="Accueil" width="16" height="16" />&nbsp;
Accueil</p><p><img src="images/debannir_ip.png" alt="Gestion des IP" title="Gestion des IP" width="16" height="16" />&nbsp;<a href="ip.php" title="Débannir une IP">Débannir une IP</a></p><p><img src="images/censure.png" alt="Gestion des mots censurés" title="Gestion des mots censurés" width="16" height="16" />&nbsp;<a href="censure.php" title="Gestion des mots cencurés">Gestion des mots censurés</a></p><p><img src="images/smiley.png" alt="Gestion des Smileys" title="Gestion des Smileys" width="16" height="16" />&nbsp;<a href="smileys.php?action_smiley=1" title="Gestion des smileys">Gestion des smileys</a><br /><p><img src="images/configuration.png" alt="Configuration" title="Configuration" width="16" height="16" />&nbsp;<a href="configuration.php?action=1" title="Configuration">Configuration</a><br /></p><p><img src="images/css.png" alt="Css" title="Css" width="16" height="16" />&nbsp;<a href="css.php?action_css=1" title="Gestion des styles">Gestion des styles</a><br /></p><p><img src="images/code.png" alt="Code x derniers messages" title="Code x derniers messages" width="16" height="16" />&nbsp;<a href="code.php" title="Code x derniers messages">Code x derniers messages</a></p><p><img src="images/sauv_bdd.png" alt="Sauvegarde base de données" title="Sauvegarde base de données" width="16" height="16" />&nbsp;<a href="sauv_bdd.php" title="Sauvegarde base de données">Sauvegarde base de données</a></p><p><img src="images/bug.png" alt="Bugs, sugestions, c'est par là" title="Bugs, sugestions, c'est par là" width="16" height="16" />&nbsp;<a href="http://www.arizona-dream.com/php-livre-dor/bug.php" target="_blank" title="Bugs, sugestions">Bugs, sugestions</a></p><p><img src="images/logout.gif" alt="Déconnexion" title="Déconnexion" width="16" height="16" />&nbsp;<a href="include/logout.php" title="Déconnexion">Déconnexion</a></p><p class="centrer"><a href="http://www.arizona-dream.com/php-livre-dor/livre-dor-php.php" target="_blank"><img src="images/azd_php.png" alt="El Coyotos Livre d'or" width="174" height="72" border="0" title="El Coyotos Livre d'or" /></a></p>
<p class="centrer"><img src="images/version.png" alt="PHP version : 8.0.25" title="PHP version : 8.0.25" width="16" height="16" /> PHP version : 8.0.25</p>
<p class="centrer"><img src="images/version.png" alt="Version 9" title="Version 9" width="16" height="16" />&nbsp;Livre d'or version : 9</p></div>
            
            <!-- MAIN --> 
            <div id="admin">
            
                <!-- TITRE -->
                <div class="global_titre"><div id="titre">Accueil</div></div>

                <!-- JAVASCRIPT DESACTIVE ? -->
                <noscript><div class="erreur">Vous devez activer Javascript !<br />Sinon, vous ne pourrez pas faire de suppression !</div></noscript> 
NULL
				
                <!-- PAGINATION -->
                <div class="contour_pagination">
                  <table width="100%" border="0" cellspacing="0" cellpadding="5">
                    <tr>
                      <td class="affichage_page_X_sur_Y">Page 1 sur 9</td>
                      <td class="page_en_cours">Page en cours : 1</td>
                      <td class="nombre_de_sujet">Nombre de message : 87</td>
                      <td class="pagination"><span>1</span>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=2">2</a>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=3">3</a>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=4">4</a>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=5">5</a>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=6">6</a>&nbsp;<a href="/livre_d_or/Adm_Livre02/accueil.php?page=2" ><img src="images/commun/suivant.gif" alt="Page suivante" title="Page suivante" width="16" height="13" /> Suivante</a> </td>
                    </tr>
                  </table>
                </div>
                
                <!-- AFFICHAGE DU LIVRE D'OR -->
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Bolluy</strong>
															</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=155					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(155,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Bolluy]" title="Supprimer le message de [Bolluy]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('90.110.155.235','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [90.110.155.235 de Bolluy]" title="Bannir l'IP [90.110.155.235 de Bolluy]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 09-11-2022 à 17:36					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					&nbsp;					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					 <img src="../images/smileys/defaut/bravo.gif" alt="Applaudissement" title="Applaudissement" /> <br />
Bravo.					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=66					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(661)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Merci.</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Picapro</strong>
															</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=154					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(154,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Picapro]" title="Supprimer le message de [Picapro]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('213.211.148.230','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [213.211.148.230 de Picapro]" title="Bannir l'IP [213.211.148.230 de Picapro]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 01-11-2022 à 08:55					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					&nbsp;					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					&quot;Faites chauffer vos neurones&quot; comme disait ...  <br />
<img src="../images/smileys/defaut/merci.gif" alt="Merci" title="Merci" /> 					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=65					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(651)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Oui mais pas trop!</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Bolluy</strong>
					<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#102;&#106;&#101;&#112;&#45;&#118;&#105;&#108;&#108;&#101;&#114;&#115;&#64;&#108;&#97;&#112;&#111;&#115;&#116;&#101;&#46;&#110;&#101;&#116;"><img src="../images/commun/email.gif" alt="Envoyer un email à [&#102;&#106;&#101;&#112;&#45;&#118;&#105;&#108;&#108;&#101;&#114;&#115;&#64;&#108;&#97;&#112;&#111;&#115;&#116;&#101;&#46;&#110;&#101;&#116;]" title="Envoyer un email à [&#102;&#106;&#101;&#112;&#45;&#118;&#105;&#108;&#108;&#101;&#114;&#115;&#64;&#108;&#97;&#112;&#111;&#115;&#116;&#101;&#46;&#110;&#101;&#116;]" width="25" height="16" /></a>										</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=152					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(152,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Bolluy]" title="Supprimer le message de [Bolluy]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('90.110.155.235','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [90.110.155.235 de Bolluy]" title="Bannir l'IP [90.110.155.235 de Bolluy]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 05-09-2022 à 12:22					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					Note : 10 /10					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					Hello.<br />
Encore une belle saison de ce jeu en votre compagnie.<br />
Bravo.<br />
 <img src="../images/smileys/defaut/bravo.gif" alt="Applaudissement" title="Applaudissement" /> 					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=64					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(641)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Merci :)</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Picapro</strong>
															</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=151					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(151,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Picapro]" title="Supprimer le message de [Picapro]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('85.234.196.156','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [85.234.196.156 de Picapro]" title="Bannir l'IP [85.234.196.156 de Picapro]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 02-07-2022 à 08:49					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					&nbsp;					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					Merci pour cette nouvelle édition du jeu et bonnes réflexions à tou(te)s.<br />
					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=63					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(631)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Merci Picapro.</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Picapro</strong>
															</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=150					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(150,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Picapro]" title="Supprimer le message de [Picapro]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('85.234.200.181','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [85.234.200.181 de Picapro]" title="Bannir l'IP [85.234.200.181 de Picapro]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 05-04-2022 à 18:46					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					&nbsp;					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					Merci Alex et Pascal pour ce jeu  <img src="../images/smileys/defaut/salut.gif" alt="Salut" title="Salut" /> <br />
Bravo aux participants.<br />
Je ferai mieux la prochaine fois !<br />
					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=62					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(621)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Merci et bonne chance pour le prochain jeu qui aura lieu cet été.</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Arlene brochu</strong>
					<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#97;&#114;&#108;&#101;&#110;&#101;&#98;&#64;&#118;&#105;&#100;&#101;&#111;&#116;&#114;&#111;&#110;&#46;&#99;&#97;"><img src="../images/commun/email.gif" alt="Envoyer un email à [&#97;&#114;&#108;&#101;&#110;&#101;&#98;&#64;&#118;&#105;&#100;&#101;&#111;&#116;&#114;&#111;&#110;&#46;&#99;&#97;]" title="Envoyer un email à [&#97;&#114;&#108;&#101;&#110;&#101;&#98;&#64;&#118;&#105;&#100;&#101;&#111;&#116;&#114;&#111;&#110;&#46;&#99;&#97;]" width="25" height="16" /></a>					<a href="http://videotron" target="_blank"><img src="../images/commun/site.gif" alt="Visiter le site [http://videotron]" title="Visiter le site [http://videotron]" width="25" height="16" /></a>					</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=149					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(149,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Arlene brochu]" title="Supprimer le message de [Arlene brochu]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('74.59.182.228','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [74.59.182.228 de Arlene brochu]" title="Bannir l'IP [74.59.182.228 de Arlene brochu]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 22-01-2022 à 20:38					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					Note : 10 /10					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					Bonjour bonne partie à tous :) 					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=61					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(611)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Merci Alène. Il ne manque plus que toi sur Checkmate !</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Llecavaliernoir</strong>
					<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#108;&#117;&#99;&#46;&#103;&#117;&#105;&#110;&#101;&#116;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;"><img src="../images/commun/email.gif" alt="Envoyer un email à [&#108;&#117;&#99;&#46;&#103;&#117;&#105;&#110;&#101;&#116;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;]" title="Envoyer un email à [&#108;&#117;&#99;&#46;&#103;&#117;&#105;&#110;&#101;&#116;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;]" width="25" height="16" /></a>										</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=148					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(148,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Llecavaliernoir]" title="Supprimer le message de [Llecavaliernoir]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('176.169.192.85','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [176.169.192.85 de Llecavaliernoir]" title="Bannir l'IP [176.169.192.85 de Llecavaliernoir]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 17-12-2021 à 06:14					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					Note : 10 /10					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					 <img src="../images/smileys/defaut/bravo.gif" alt="Applaudissement" title="Applaudissement" /> et merci à tous pour vos QCM qui sont toujours passionnants et....à jouer sans masque...., bonnes fêtes à tous.  					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=60					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(601)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Merci.Bonne fête de fin d'année également.
A bientôt :)</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Gortax</strong>
					<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#99;&#98;&#111;&#109;&#109;&#101;&#114;&#101;&#122;&#64;&#104;&#111;&#116;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;"><img src="../images/commun/email.gif" alt="Envoyer un email à [&#99;&#98;&#111;&#109;&#109;&#101;&#114;&#101;&#122;&#64;&#104;&#111;&#116;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;]" title="Envoyer un email à [&#99;&#98;&#111;&#109;&#109;&#101;&#114;&#101;&#122;&#64;&#104;&#111;&#116;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;]" width="25" height="16" /></a>										</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=147					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(147,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Gortax]" title="Supprimer le message de [Gortax]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('37.120.236.215','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [37.120.236.215 de Gortax]" title="Bannir l'IP [37.120.236.215 de Gortax]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 04-12-2021 à 09:47					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					Note : 10 /10					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					Encore un super concours.<br />
Vivement le prochain.<br />
Bravo !!					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=58					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(581)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Merci :)</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Bolluy</strong>
					<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#112;&#115;&#102;&#116;&#120;&#97;&#64;&#102;&#114;&#101;&#101;&#46;&#102;&#114;"><img src="../images/commun/email.gif" alt="Envoyer un email à [&#112;&#115;&#102;&#116;&#120;&#97;&#64;&#102;&#114;&#101;&#101;&#46;&#102;&#114;]" title="Envoyer un email à [&#112;&#115;&#102;&#116;&#120;&#97;&#64;&#102;&#114;&#101;&#101;&#46;&#102;&#114;]" width="25" height="16" /></a>										</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=146					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(146,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Bolluy]" title="Supprimer le message de [Bolluy]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('90.103.163.10','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [90.103.163.10 de Bolluy]" title="Bannir l'IP [90.103.163.10 de Bolluy]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 30-11-2021 à 17:04					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					Note : 10 /10					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					Encore une bien bonne et belle saison.<br />
 <img src="../images/smileys/defaut/merci.gif" alt="Merci" title="Merci" /> 					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=59					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(591)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Merci. :)</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					Tootsienet</strong>
					<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#98;&#114;&#105;&#103;&#105;&#116;&#116;&#101;&#98;&#111;&#110;&#110;&#101;&#115;&#49;&#50;&#52;&#64;&#104;&#111;&#116;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;"><img src="../images/commun/email.gif" alt="Envoyer un email à [&#98;&#114;&#105;&#103;&#105;&#116;&#116;&#101;&#98;&#111;&#110;&#110;&#101;&#115;&#49;&#50;&#52;&#64;&#104;&#111;&#116;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;]" title="Envoyer un email à [&#98;&#114;&#105;&#103;&#105;&#116;&#116;&#101;&#98;&#111;&#110;&#110;&#101;&#115;&#49;&#50;&#52;&#64;&#104;&#111;&#116;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;]" width="25" height="16" /></a>										</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=145					&amp;page="><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
					&nbsp;<a onclick="return confirmsupmessage(145,1)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [Tootsienet]" title="Supprimer le message de [Tootsienet]" width="16" height="16" /></a>

					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('90.38.73.127','1')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [90.38.73.127 de Tootsienet]" title="Bannir l'IP [90.38.73.127 de Tootsienet]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					
					<!--DATE-->
					&nbsp;Le 30-11-2021 à 13:58					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note">					Note : 9 /10					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					 <img src="../images/smileys/defaut/bravo.gif" alt="Applaudissement" title="Applaudissement" />  a toute l'équipe pour ce jeu ! <img src="../images/smileys/defaut/merci.gif" alt="Merci" title="Merci" /> 					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=57					&amp;page="><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(571)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span>Merci Tootsie</div></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
                <!-- PAGINATION -->
                <div class="contour_pagination">
                  <table width="100%" border="0" cellspacing="0" cellpadding="5">
                    <tr>
                      <td class="affichage_page_X_sur_Y">Page 1 sur 9</td>
                      <td class="page_en_cours">Page en cours : 1</td>
                      <td class="nombre_de_sujet">Nombre de message : 87</td>
                      <td class="pagination"><span>1</span>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=2">2</a>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=3">3</a>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=4">4</a>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=5">5</a>    <a href="/livre_d_or/Adm_Livre02/accueil.php?page=6">6</a>&nbsp;<a href="/livre_d_or/Adm_Livre02/accueil.php?page=2" ><img src="images/commun/suivant.gif" alt="Page suivante" title="Page suivante" width="16" height="13" /> Suivante</a> </td>
                    </tr>
                  </table>
                </div>

<script>

	function confirmsupmessage(id,page) {
  
		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{			
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
				}			
			 } 
		});
	
		return false ;	
	}
       
	function confirmsupreponse(id,page)

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}
	
	function confirmban(ip,page) {

		$.prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
			show:'dropIn',
			buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
				}			
			 } 
		});
	
		return false ;	
	}
	
</script> 
                
                <br class="clearfloat" />
				
                <!-- AIDE -->
                <div id="aide"><img src="images/aides.png" alt="Aides" width="16" height="16" />&nbsp;<a href="#" onClick="javascript:reinit();changeDisplay('voir_aide', true);return false;">Besoin d'aide ?</a></div><div class="montrer_cacher" id="voir_aide"><p>C'est ici que vous pouvez modifier et/ou supprimer un message.</p>
<p>Vous pouvez aussi bannir une IP. Cela aura pour effet d'interdire à la personne utilisant cette IP de poster un message !  </p>
</div>
			                      
 
            </div> <!-- MAIN --> 
            
        </div> <!-- CONTENU -->  
         
    </div> <!-- GLOBAL -->

	<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>     
   
	<script src="lib/afficher_cacher.js"></script>
</body>
</html>

Bonne chance.

0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477
17 nov. 2022 à 16:27

Et tu reçois bien l'avertissement?

ATTENTION : LA SUPPRESSION EST IRREVERSIBLE
0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
17 nov. 2022 à 16:54

Je ne reçois l'avertissement que voici:

Que lorsque les scripts javascript sont modifiés ainsi:

<script>

	function confirmsupmessage(id,page) {
  
		prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{			
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
				}			
			 } 
		});
	
		return false ;	
	}
       
	/*function confirmsupreponse(id,page)

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}*/
	
	function confirmban(ip,page) {

		prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
			show:'dropIn',
			buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
				}			
			 } 
		});
	
		return false ;	
	}
	
</script> 

Suppression des $. aux lignes 5 et 35 du script ci dessus. au lieu de $.prompt comme cela est à l'origine.

Et décommenté les lignes 18 à 31.

Quand à cette ligne 107

var_dump($_GET['action']); 

Je l' active juste avant de cliquer sur l'icône "supprimer le message". Donc avant qu'apparaisse le message ci dessus.

Mais le résultat est toujours null ligne 107.

0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477
17 nov. 2022 à 17:40

En ligne 193 de accueil.php, j'essaierais en supprimant 

href="accueil.php"
0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024 > yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024
18 nov. 2022 à 11:17

Merci.

Mais cela me supprime l'icône servant à effacer le message de l'utilisateur.

0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477 > Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
18 nov. 2022 à 11:30

Bizarre que l'icône disparaisse.  Montre-nous le code PHP adapté, et la source HTML (ctrl-U) correspondante.

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
17 nov. 2022 à 17:01

Enfin non.

Il n'y a pas de réponse du

var_dump($_GET['action']); 

Car la lecture du fichier ne passe plus par la ligne 107 après avoir cliqué sur OK du message envoyé par JavaScript.

0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477
18 nov. 2022 à 08:48

Ce que tu écrit en #4 n'était pas correct, ou n'est plus correct?

"la lecture du fichier ne passe plus par la ligne 107": es-tu certain que la page est rafraichie?

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024 > yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024
18 nov. 2022 à 11:21

Non la page n'était pas rafraichie bien sure.

Pas facile de s'expliquer unique que par l'écrit lors de manipulations compliquées!

Et quand on veux apporter un maximum de détails.

0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477 > Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
18 nov. 2022 à 11:29

De plus, si tu modifies ton code sans nous tenir au courant, impossible pour nous de comprendre.

Le mieux, je pense, est d'ouvrir une nouvelle discussion, celle-ci est devenue inutile.

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024 > yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024
18 nov. 2022 à 11:42

Je ne modifie pas mon code sans vous tenir au courant !

C'est ainsi qu'il n'est pas nécessaire de repartir à zéro en ouvrant un autre sujet.

Les script ci dessus sont restés les même depuis le début à l'ouverture du sujet!

0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477 > Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
18 nov. 2022 à 17:34

Tu n'as rien changé, et la lecture du fichier ne passe plus par la ligne 107?  Bizarre, non?

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question

Bonjour,

Tu ne peux pas modifier ton code comme cela, les fonctions $.prompt et prompt sont deux fonctions différentes qui n'ont pas les mêmes paramètres.

La fonction $.prompt n'existe pas nativement dans jQuery, je suppose que tu avais un plugin ou script supplémentaire qui ajoutait cette fonction. N'aurais tu pas supprimé ce script dans le fichier include/template/footer.php ?

Tu as aussi une erreur de syntaxe dans le code html publié à 15h31, il manque une accolade ouvrante pour la fonction confirmsupreponse(id, page) {

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
17 nov. 2022 à 18:45

Je ne trouve pas la fonction $.prompt ni dans include/template/footer.php, ni dans

../include/classes/livor.class.php ni dans 
../include/classes/pagination.class.php

ni dans l'ensemble des fichiers du site.

Et pourtant je ne me suis jamais permis de modifier ou supprimer une fonction que je ne connais pas.

A savoir qu'il y a 4 ans l'effacement des messages indésirables fonctionnait encore.Ainsi que le bannissement des IP puisque c'est la seule fois durant cette période où j'ai rencontré des problèmes avec un individu qui écrivait des messages insensés en changeant d' IP à chaque fois.

Concernant l'accolade ouvrante, vous pourrez la trouver à la ligne 214.

Ou ci dessous à la ligne 1.

if ($reponse_admin != "") { ?>
					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=<?php echo $row_reponse->id_reponse; ?>
					&amp;page=<?php echo $_GET['page']; ?>"><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(<?php echo $row_reponse->id_reponse; ?><?php echo $page_en_cours ; ?>)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span><?php echo $Classe_Livre_dor->afficher_reponse(); ?></div><?php } ?></div>
                         

et la fermante à la ligne 6.

Enfin, un site qui fonctionne, je n'y touche pas. C'est le cas pour ce livre d'or.

Et quand je modifie quelque chose, je sauvegarde toujours le site d' origine par sécurité.

C'est ce qui fait que j'ai pu adapter mes sites à PHP 8 avec l'aide de ce forum que je remercie pour sa contribution indispensable à sa maintenance:

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
18 nov. 2022 à 11:07

En poussant plus loin mes recherche j'ai pu découvrir que la fonction $.prompt fonctionne lorsqu' un utilisateur du livre ne rempli pas le formulaire pour écrire un message.

Car j'ai retrouvé le script qui produit cette fenêtre d'erreur:

Que voici en ligne 40 de javascript.php:

	<script src="lib/smileys.js"></script>
    <script src="lib/md5.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
    <script src="lib/jquery-impromptu.js"></script>
    <script>
    /* Impromptu */
    $.fn.extend({
        dropIn: function(speed, callback){
            var $t = $(this);
    
            if($t.css("display") == "none"){
                eltop = $t.css('top');
                elouterHeight = $t.outerHeight(true);
    
                $t.css({ top: -elouterHeight, display: 'block' })
                    .animate({ top: eltop },speed,'swing', callback);
            }
        }
    });


    /* Vérification du formulaire */
    function verif_form(){
    
		var pseudo = document.livor.nom.value;
<?php if ($row_config->champ_email == "o" ) { ?>			
		var email = document.livor.email.value;
		var tetsemail = (/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/);
<?php } ?>			
		var message = document.livor.message_textarea.value; 
		var code = document.livor.captcha.value;
		var verifcode = document.livor.verifcode.value;
		
		if (pseudo == ""){
			$.prompt('Vous avez oublié d\'écrire votre pseudo.<br>Veuillez recommencer SVP.',{show:'dropIn', buttons:{Ok: true}, prefix:'jqi'});
			return false;
		} 
		
		else if (message == "") {
			$.prompt('Vous avez oublié d\'écrire votre message.<br>Veuillez recommencer SVP.',{show:'dropIn', buttons:{Ok: true}, prefix:'jqi'});
			return false;
		}
		
		else if (hex_md5(code.toLowerCase()) != verifcode){
			$.prompt('Le code 4 lettres n\'est pas correct.<br>Veuillez recommencer SVP.',{show:'dropIn',buttons:{Ok: true}, prefix:'jqi'});
			return false;
		} 

<?php if ($row_config->champ_email == "o" ) { ?>		
		else if (email != "") {
			if (!tetsemail.test(email)) {
				$.prompt('Votre email semble incorrect.<br>Veuillez recommencer SVP.',{show:'dropIn', buttons:{Ok: true}, prefix:'jqi'});
				return false;
			}
		}
<?php } ?>	
    
    }

    /* Vérification du formulaire de recherche */
    function verif_form_recherche(){
    
		var keyword = document.recherche.keyword.value;
		keywordlongueur = keyword.length;
		
		if (keyword == ""){
			$.prompt('Vous avez oublié d\'écrire un mot.<br>Veuillez recommencer SVP.',{show:'dropIn', buttons:{Ok: true}, prefix:'jqi'});
			return false;
		}

		if (keywordlongueur < 3){
			$.prompt('Votre mot doit faire au moins trois lettres.<br>Veuillez recommencer SVP.',{show:'dropIn', buttons:{Ok: true}, prefix:'jqi'});
			return false;
		}
	
    }
    </script>

Par ce chemin:

https://jeuxechecs.fr/livre_d_or/include/livor/javascript.php

Ainsi ma question serait pourquoi la fonction $.prompt fonctionne lorsque l'utilisateur ne présente pas un message à partir du fichier formulaire.php que voici:

	  	
       
        <!-- FORMULAIRE POUR DEPOSER UN MESSAGE -->
        <div id="main_formulaire_message">
            <form action="ajout_message.php" method="post" name="livor" id="livor" onsubmit="javascript:return verif_form();">
            <table width="100%" border="0" cellspacing="5" cellpadding="0">
            <tr>
              <td width="30%" class="droite">Votre nom ou pseudo :</td>
              <td width="70%"><input name="nom" id="nom" type="text" size="55" maxlength="50" /></td>
            </tr>
<?php 
if ($row_config->champ_email == "o" ) { 
?>
            <tr>
              <td class="droite">Votre email :</td>
              <td><input name="email" id="email" type="text" size="55" maxlength="150"/></td>
            </tr>
<?php 
} 
if ($row_config->champ_url == "o" ) {
?>
            <tr>
              <td class="droite">L'URL de votre site web :</td>
              <td><input name="site" id="site" type="text" size="55" maxlength="150" /></td>                                    
            </tr>
<?php 
} 
if ($row_config->champ_ville == "o" ) {
?>
            <tr>
              <td class="droite">Votre ville / pays :</td>
              <td><input name="ville_pays" id="ville_pays" type="text" size="55" maxlength="60" /></td>
            </tr>
<?php 
}
if ($row_config->note == "o" ) { 
?>
            <tr>
              <td class="droite">Votre note pour ce site :</td>
              <td><select name="note_site" size="1" class="option">
                <option value="" selected="selected">-</option>
                <option value="10">10 : Fantastique !</option>
                <option value="9">9</option>
                <option value="8">8</option>
                <option value="7">7</option>
                <option value="6">6</option>
                <option value="5">5 : Moyen</option>
                <option value="4">4</option>
                <option value="3">3</option>
                <option value="2">2</option>
                <option value="1">1</option>
                <option value="0">0 : Complètement raté</option>
              </select></td>
            </tr> 
<?php 
} 
// Requete d'affichage smiley  
//$sql_smiley = $connexion->prepare("SELECT * FROM ".$prefixe_tables."livor_smileys");
$sql_smiley = $connexion->prepare("SELECT * FROM livor_smileys");
$sql_smiley->setFetchMode(PDO::FETCH_OBJ);
$sql_smiley->execute();
?>
            <tr>
              <td class="droite_haut">Votre message :</td>
              <td><textarea name="message_textarea" id="message_textarea" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);"  rows="4" cols="42"></textarea></td>
            </tr>
            <tr>
              <td>&nbsp;</td>
              <td><?php while( $row_smiley = $sql_smiley->fetch() ) { $smiley = htmlspecialchars($row_smiley->car_replace); ?><a href="#" onclick="ajoute_smiley(' <?php echo $smiley; ?> ');return(false)"><img src="images/smileys/<?php echo $row_config->smileys; ?>/<?php echo $row_smiley->smiley; ?>" alt="<?php echo $row_smiley->alt_smiley; ?>" title="<?php echo $row_smiley->alt_smiley; ?>" /></a><?php } ?></td>
            </tr>
            <tr>
              <td colspan="2" class="centrer"><span class="information"><img src="images/commun/information.png" alt="Informations" title="Informations" width="16" height="16" />&nbsp;Veuillez copier le code ci-contre dans la case de droite</span>&nbsp;<?php echo $img ?>&nbsp;<input name="captcha" type="text" id="captcha" size="4" maxlength="4" /><input type="hidden" name="verifcode" id="verifcode" value="<?php echo( md5(strtolower($phrase)) ); ?>">&nbsp;<a href="#" onclick="$.prompt('Cette saisie nous permet de vérifier que le message va être posté par une personne  réelle et non par un programme automatisé qui va faire de la pub.')">Explication</a></td>
            </tr>
            <tr>
              <td colspan="2" class="centrer"><input name="ajouter" type="submit" class="btn" value="Ajouter votre message" /></td>
            </tr>
            </table>
            </form>
            <script>document.livor.nom.focus();</script><!-- Script focus -->
        </div>

alors que cette fonction se trouvant aussi dans le fichier accueil.php ne fonctionne pas?

Pour tenter de trouver la réponse, je vous présente le fichier index.php se trouvant à cette adresse que voici:

https://jeuxechecs.fr/livre_d_or/index.php

Et dont voici le script:

require ("include/livor/before_header.php");
include "../entete.php"; 
?>
<!doctype html>
<html lang="fr">
<head>
    <title><?php echo htmlspecialchars($row_config->titre_page); ?></title>
    <meta name="Keywords" content="<?php echo htmlspecialchars($row_config->meta_mots_cles); ?>" />
    <meta name="Description" content="<?php echo htmlspecialchars($row_config->meta_description); ?>" />
	<meta charset="utf-8">
    <meta name="language" content="fr-FR" />
    <meta name="robots" content="index,follow,noodp,noydir" />
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="canonical" href="http://<?php echo $_SERVER['HTTP_HOST']; ?><?php echo $_SERVER['REQUEST_URI']; ?>" />
    <link rel="stylesheet" type="text/css" href="css/style.php" />
    <link rel="stylesheet" href="/stylee.css" />
</head>

<!--BODY -->
<body>
    <!--<script type="text/javascript" src="http://services.supportduweb.com/menus-horizon/style-20.js?txt=Accueil%3Dhttp%253A%252F%252Fjeuxechecs.fr%252Findex.html%0A--Documentaires%3Dhttp%253A%252F%252Fjeuxechecs.fr%252Fdocumentaires%252FPage1.html%0AParties%3Dhttp%253A%252F%252Fjeuxechecs.fr%252FParties.html%0A--Checkmate%3Dhttp%253A%252F%252Fjeuxechecs.fr%252Fechecs%252Flogin.php%0ASite%2520forum%3Dhttp%253A%252F%252Fjeuxechecs.fr%252FSite_forum.html%0A--Tutoriels%3Dhttp%253A%252F%252Fjeuxechecs.fr%252FTutoriels.html%0A--Forum%3Dhttp%253A%252F%252Fjeuechec.forumgratuit.ch%252Fforum%2520%2520%2520%2520%0AGallerie%2520photos%3Dhttp%253A%252F%252Fjeuxechecs.fr%252Fgalerie%252Fgalerie.html%0AT%25C3%25A9l%25C3%25A9chargements%3Dhttp%253A%252F%252Fjeuxechecs.fr%252Ftelechargement.html%0AContact%3Dmailto%253Apostmaster%2540jeuxechecs.fr%0A"></script>-->
<br>
    <div style="text-align: center;">
        <img src="/images/livre_d_or.gif" alt="Livre d'or" />
    </div>
    
    <a name="hautdepage" id="hautdepage"></a>
    
    <!-- CONTENU GLOBAL -->
    <div id="global">   
    <?php require ("include/connexion.php"); ?>   
    <?php require ("include/livor/note_et_messages.php"); ?>
    <?php require ("include/livor/formulaire.php"); ?>
    <?php require ("include/livor/formulaire_recherche.php"); ?>
    <?php require ("include/livor/pagination.php"); ?>
        <!-- CONTENU -->
        <div id="contenu">	
        <?php require ("include/livor/body.php"); ?>
        <?php require ("include/livor/pagination.php"); ?>	
        <?php include ("include/powered.php"); ?>
        </div> <!-- CONTENU -->
        
    </div><!-- CONTENU GLOBAL -->
    
<?php require ("include/livor/javascript.php"); 
require ("../calendrier.html");
?>    



</body>
</html>
<?php
$connexion = null; // On ferme la connexion à la BDD
ob_end_flush(); // Affiche le cache PHP
?>

En espérant que cela pourra nous aider.

Merci d'avance.

0

La fonction $.prompt est une fonction javascript (lié à jQuery vu le symbole $), il faudrait plutôt chercher dans les fichier .js.

Si on compare les scripts présents sur les deux pages : 

- sur accueil.php, tu inclus le script jquery.min.js et le script afficher_cacher.js, mais la fonction $.prompt ne fonctionne pas (fonction non définie)

- sur index.php, tu inclus jquery.min.js et jquery-impromptu.js, sur cette page la fonction $.prompt fonctionne correctement

Il semble donc que la fonction $.prompt soit définie dans le fichier jquery-impromptu.js, il faudrait donc inclure ce fichier dans la page accueil.php (après l'inclusion de jQuery qui semble être faite dans le fichier footer.php d'après ton code).

Concernant l'accolade, je parlais de la fonction suivante pour laquelle il manque l'accolade ouvrante afin que le corps de la fonction soit englobé correctement :

	function confirmsupreponse(id,page)

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}

Tu devrais d'ailleurs avoir une erreur à ce sujet dans la console de ton navigateur, prends le réflexe de consulter cette console pour voir les éventuelles erreurs javascript.

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
18 nov. 2022 à 16:11

Effectivement. Pour une raison qui m'est totalement inconnue l'accolade ouvrante n'était pas présente.

La voici désormais:

function confirmsupreponse(id,page){

Je confirme que la fonction $.prompt se trouve bien dans le fichier jquery-impromptu.js que voici:

/*
 * jQuery Impromptu
 * By: Trent Richardson [http://trentrichardson.com]
 * Version 3.2
 * Last Modified: 10/31/2011
 * 
 * Copyright 2011 Trent Richardson
 * Dual licensed under the MIT and GPL licenses.
 * http://trentrichardson.com/Impromptu/GPL-LICENSE.txt
 * http://trentrichardson.com/Impromptu/MIT-LICENSE.txt
 * 
 */
 
(function(a){a.prompt=function(b,c){c=a.extend({},a.prompt.defaults,c);a.prompt.currentPrefix=c.prefix;var d=a.browser.msie&&a.browser.version<7;var e=a(document.body);var f=a(window);c.classes=a.trim(c.classes);if(c.classes!="")c.classes=" "+c.classes;var g='<div class="'+c.prefix+"box"+c.classes+'" id="'+c.prefix+'box">';if(c.useiframe&&(a("object, applet").length>0||d)){g+='<iframe src="javascript:false;" style="display:block;position:absolute;z-index:-1;" class="'+c.prefix+'fade" id="'+c.prefix+'fade"></iframe>'}else{if(d){a("select").css("visibility","hidden")}g+='<div class="'+c.prefix+'fade" id="'+c.prefix+'fade"></div>'}g+='<div class="'+c.prefix+'" id="'+c.prefix+'"><div class="'+c.prefix+'container"><div class="';g+=c.prefix+'close">X</div><div id="'+c.prefix+'states"></div>';g+="</div></div></div>";var h=a(g).appendTo(e);var i=h.children("#"+c.prefix);var j=h.children("#"+c.prefix+"fade");if(b.constructor==String){b={state0:{html:b,buttons:c.buttons,focus:c.focus,submit:c.submit}}}var k="";a.each(b,function(d,e){e=a.extend({},a.prompt.defaults.state,e);b[d]=e;k+='<div id="'+c.prefix+"_state_"+d+'" class="'+c.prefix+'_state" style="display:none;"><div class="'+c.prefix+'message">'+e.html+'</div><div class="'+c.prefix+'buttons">';a.each(e.buttons,function(a,b){if(typeof b=="object")k+='<button name="'+c.prefix+"_"+d+"_button"+b.title.replace(/[^a-z0-9]+/gi,"")+'" id="'+c.prefix+"_"+d+"_button"+b.title.replace(/[^a-z0-9]+/gi,"")+'" value="'+b.value+'">'+b.title+"</button>";else k+='<button name="'+c.prefix+"_"+d+"_button"+a+'" id="'+c.prefix+"_"+d+"_button"+a+'" value="'+b+'">'+a+"</button>"});k+="</div></div>"});i.find("#"+c.prefix+"states").html(k).children("."+c.prefix+"_state:first").css("display","block");i.find("."+c.prefix+"buttons:empty").css("display","none");a.each(b,function(b,d){var e=i.find("#"+c.prefix+"_state_"+b);e.children("."+c.prefix+"buttons").children("button").click(function(){var b=e.children("."+c.prefix+"message");var f=d.buttons[a(this).text()];if(f==undefined){for(var g in d.buttons)if(d.buttons[g].title==a(this).text())f=d.buttons[g].value}if(typeof f=="object")f=f.value;var h={};a.each(i.find("#"+c.prefix+"states :input").serializeArray(),function(a,b){if(h[b.name]===undefined){h[b.name]=b.value}else if(typeof h[b.name]==Array||typeof h[b.name]=="object"){h[b.name].push(b.value)}else{h[b.name]=[h[b.name],b.value]}});var j=d.submit(f,b,h);if(j===undefined||j){p(true,f,b,h)}});e.find("."+c.prefix+"buttons button:eq("+d.focus+")").addClass(c.prefix+"defaultbutton")});var l=function(){if(c.persistent){var b=c.top.toString().indexOf("%")>=0?f.height()*(parseInt(c.top,10)/100):parseInt(c.top,10),d=parseInt(i.css("top").replace("px",""),10)-b;a("html,body").animate({scrollTop:d},"fast",function(){var a=0;h.addClass(c.prefix+"warning");var b=setInterval(function(){h.toggleClass(c.prefix+"warning");if(a++>1){clearInterval(b);h.removeClass(c.prefix+"warning")}},100)})}else{p()}};var m=function(b){var c=window.event?event.keyCode:b.keyCode;if(c==27){l()}if(c==9){var d=a(":input:enabled:visible",h);var e=!b.shiftKey&&b.target==d[d.length-1];var f=b.shiftKey&&b.target==d[0];if(e||f){setTimeout(function(){if(!d)return;var a=d[f===true?d.length-1:0];if(a)a.focus()},10);return false}}};var n=function(){var b=e.outerHeight(true),d=f.height(),g=a(document).height(),k=b>d?b:d,l=parseInt(f.scrollTop(),10)+(c.top.toString().indexOf("%")>=0?d*(parseInt(c.top,10)/100):parseInt(c.top,10));k=k>g?k:g;h.css({position:"absolute",height:k,width:"100%",top:0,left:0,right:0,bottom:0});j.css({position:"absolute",height:k,width:"100%",top:0,left:0,right:0,bottom:0});i.css({position:"absolute",top:l,left:"50%",marginLeft:i.outerWidth()/2*-1})};var o=function(){j.css({zIndex:c.zIndex,display:"none",opacity:c.opacity});i.css({zIndex:c.zIndex+1,display:"none"});h.css({zIndex:c.zIndex})};var p=function(b,e,g,k){i.remove();f.unbind("resize",n);j.fadeOut(c.overlayspeed,function(){j.unbind("click",l);j.remove();if(b){c.callback(e,g,k)}h.unbind("keypress",m);h.remove();if(d&&!c.useiframe){a("select").css("visibility","visible")}})};n();o();j.click(l);f.resize(n);h.bind("keydown keypress",m);i.find("."+c.prefix+"close").click(p);j.fadeIn(c.overlayspeed);i[c.show](c.promptspeed,c.loaded);i.find("#"+c.prefix+"states ."+c.prefix+"_state:first ."+c.prefix+"defaultbutton").focus();if(c.timeout>0)setTimeout(a.prompt.close,c.timeout);return h};a.prompt.defaults={prefix:"jqi",classes:"",buttons:{Ok:true},loaded:function(){},submit:function(){return true},callback:function(){},opacity:.6,zIndex:999,overlayspeed:"slow",promptspeed:"fast",show:"promptDropIn",focus:0,useiframe:false,top:"15%",persistent:true,timeout:0,state:{html:"",buttons:{Ok:true},focus:0,submit:function(){return true}}};a.prompt.currentPrefix=a.prompt.defaults.prefix;a.prompt.setDefaults=function(b){a.prompt.defaults=a.extend({},a.prompt.defaults,b)};a.prompt.setStateDefaults=function(b){a.prompt.defaults.state=a.extend({},a.prompt.defaults.state,b)};a.prompt.getStateContent=function(b){return a("#"+a.prompt.currentPrefix+"_state_"+b)};a.prompt.getCurrentState=function(){return a("."+a.prompt.currentPrefix+"_state:visible")};a.prompt.getCurrentStateName=function(){var b=a.prompt.getCurrentState().attr("id");return b.replace(a.prompt.currentPrefix+"_state_","")};a.prompt.goToState=function(b,c){a("."+a.prompt.currentPrefix+"_state").slideUp("slow");a("#"+a.prompt.currentPrefix+"_state_"+b).slideDown("slow",function(){a(this).find("."+a.prompt.currentPrefix+"defaultbutton").focus();if(typeof c=="function")c()})};a.prompt.nextState=function(b){var c=a("."+a.prompt.currentPrefix+"_state:visible").next();a("."+a.prompt.currentPrefix+"_state").slideUp("slow");c.slideDown("slow",function(){c.find("."+a.prompt.currentPrefix+"defaultbutton").focus();if(typeof b=="function")b()})};a.prompt.prevState=function(b){var c=a("."+a.prompt.currentPrefix+"_state:visible").prev();a("."+a.prompt.currentPrefix+"_state").slideUp("slow");c.slideDown("slow",function(){c.find("."+a.prompt.currentPrefix+"defaultbutton").focus();if(typeof b=="function")b()})};a.prompt.close=function(){a("#"+a.prompt.currentPrefix+"box").fadeOut("fast",function(){a(this).remove()})};a.fn.extend({prompt:function(b){if(b==undefined)b={};if(b.withDataAndEvents==undefined)b.withDataAndEvents=false;a.prompt(a(this).clone(b.withDataAndEvents).html(),b)},promptDropIn:function(b,c){var d=a(this);if(d.css("display")=="none"){var e=d.css("top");d.css({top:a(window).scrollTop(),display:"block"}).animate({top:e},b,"swing",c)}}})})(jQuery)

(https://jeuxechecs.fr/livre_d_or/lib/jquery-impromptu.js)

J'ai donc ensuite inclus ce fichier dans accueil.php comme ci dessous:

<?php
}
?>
                <!-- PAGINATION -->
                <div class="contour_pagination">
                  <table width="100%" border="0" cellspacing="0" cellpadding="5">
                    <tr>
                      <td class="affichage_page_X_sur_Y"><?php echo "Page " . $page_en_cours . " sur " . $nombre_de_page . "";// affichage page X sur Y ?></td>
                      <td class="page_en_cours">Page en cours : <?php echo $page_en_cours; ?></td>
                      <td class="nombre_de_sujet">Nombre de message : <?php echo $pagination->nb_datas; ?></td>
                      <td class="pagination"><?php echo $pagination->getFirstLinks() . $pagination->getLinks() . $pagination->getLastLinks(); ?></td>
                    </tr>
                  </table>
                </div>

<script>

	function confirmsupmessage(id,page) {
  
		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{			
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
				}			
			 } 
		});
	
		return false ;	
	}
       
	function confirmsupreponse(id,page){

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}
	
	function confirmban(ip,page) {

		$.prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
			show:'dropIn',
			buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
				}			
			 } 
		});
	
		return false ;	
	}
	
</script> 
                
<?php
require ("include/template/footer.php"); // Footer
require ('../lib/jquery-impromptu.js');
?>

Le résultat me retourne une page blanche comme celle ci:

Je pense que nous nous rapprochons de la solution avec la découverte de la fonction $.prompt qui se trouve dans le fichier jquery-impromptu.js

Mais faut il encore l'utiliser avec le fichier accueil.php pour supprimer les messages par exemple.

Merci de bien vouloir m'aider encore un peu.

Cordialement.

0

Le fichier  jquery-impromptu.js est un script JavaScript et non PHP, il faut donc l'importer avec une balise <script> (comme les autres scripts js) et non via la fonction PHP require :

<?php
require ("include/template/footer.php"); // Footer
?>
<script src="/livre_d_or/lib/jquery-impromptu.js"></script>
0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
18 nov. 2022 à 17:06

Merci pour cette indication.

Mais c'est toujours une page blanche qui s'affiche.

Même avec la dernière ligne commentée comme ceci:

</script> 
                
<?php
require ("include/template/footer.php"); // Footer
?>
<!--<script src="/livre_d_or/lib/jquery-impromptu.js"></script>-->

Par contre la page accueil.php s'affiche à nouveau lorsque le script se présente à nouveau comme avant:

</script> 
                
<?php
require ("include/template/footer.php"); // Footer
?>
0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
19 nov. 2022 à 09:05

Récapitulons:

Avec le fichier accueil.php tel qu'il se présente sur mon site aujourd'hui:

<?php
// Quelques variables
$template_titre = "Accueil"; // Titre de la page
$template_aide = strtolower($template_titre); // Fichier aide
$template_impromptu = 1; // Afficher JSimpromptu

require ("include/template/header.php"); // Head

require ('../include/classes/livor.class.php');  // Classe livre d'or
require ('../include/classes/pagination.class.php'); // Classe pagination

// ********************************************* Messages en attente de validation
/*$sql_count_message_a_valider = $connexion->prepare("SELECT count(id) AS nb_message_a_valider FROM ".$prefixe_tables."livor_messages WHERE message_valide = 1");*/
$sql_count_message_a_valider = $connexion->prepare("SELECT count(id) AS nb_message_a_valider FROM livor_messages WHERE message_valide = 1");
$sql_count_message_a_valider->setFetchMode(PDO::FETCH_OBJ);
$sql_count_message_a_valider->execute();
$row_count_message_a_valider = $sql_count_message_a_valider->fetch();

// ********************************************* Pagination
$sql_count = $connexion->prepare("SELECT count(id) AS nbEnr FROM livor_messages WHERE message_valide = 0");
//$sql_count = $connexion->prepare("SELECT count(id) AS nbEnr FROM ".$prefixe_tables."livor_messages WHERE message_valide = 0");
$sql_count->setFetchMode(PDO::FETCH_OBJ);
$sql_count->execute();
$row_count = $sql_count->fetch();

$nombre_de_sujet_par_page = $row_config->nbre_message_par_page;

// Options
$options = array(
	'nb_datas' => $row_count->nbEnr,
	'data_per_page' => $nombre_de_sujet_par_page,
	'nb_link_per_page' => 5,
	'url' => $_SERVER['PHP_SELF'].'?',
	'var_page' => 'page'
);
$pagination = new Pagination($options);
$pagination->separator = '';
if ($_GET['page'] != "") { $page_en_cours = $_GET['page']; } else { $page_en_cours = 1; }
$nombre_de_page = ceil($pagination->nb_datas / $nombre_de_sujet_par_page);


//  Requete d'affichage des messages
$sql = $connexion->prepare("SELECT * FROM livor_messages WHERE message_valide = '0' ORDER BY id DESC LIMIT  " . $pagination->start_offset . ", " . $pagination->data_per_page);
$sql->setFetchMode(PDO::FETCH_OBJ);
$sql->execute();

require ("include/template/body.php"); // Body
require ("include/noscript.php");

// ********************************************* ERREURS/SUUCCES MISE A JOUR AUTOMATIQUE
if (isset($_SESSION['error_maj1'])) {
	echo $_SESSION['error_maj1'];
}

if (isset($_SESSION['error_maj2'])) {
	echo $_SESSION['error_maj2'];
}

if (isset($_SESSION['error_maj3'])) {
	echo $_SESSION['error_maj3'];
}

if (isset($_SESSION['error_maj4'])) {
	echo $_SESSION['error_maj4'];
}

if (isset($_SESSION['succes_maj'])) {
	
// ********************************************* MAJ BDD
	// Changement de version
	$version = 9;
	$update = $connexion->prepare("UPDATE livor_config SET version = ? WHERE id_config = 1");
	$update->execute(array($version));			


	echo $_SESSION['succes_maj'];
}

// ********************************************* MESSAGES A VALIDER
if ($row_count_message_a_valider->nb_message_a_valider != 0) {
?>
                <div class="erreur"><a href="valider_messages.php">Il y a <?php echo $row_count_message_a_valider->nb_message_a_valider; ?> message(s) à valider.</a></div>
<?php 
}

// ********************************************* MODIFICATION D'UNE REPONSE
if ( $_GET['reponse'] == 'ok' ) {
?>
                <div class="succes">La réponse a été enregistrée avec succès.</div>
<?php 		
}
// ********************************************* MODIFICATION D'UNE REPONSE
if ( $_GET['modif'] == 'okr' ) {
?>
                <div class="succes">La réponse a été modifiée avec succès.</div>
<?php 		
}
			
// ********************************************* MODIFICATION D'UN MESSAGE
if ( $_GET['modif'] == 'ok' ) {
?>
                <div class="succes">Le message a été modifié avec succès.</div>
<?php 			
}

// ********************************************* SUPPRESSION D'UN MESSAGE
//var_dump($_GET['action']); 
//exit("<br/> Stop");
if ( $_GET['action'] == 'sup' ) {
	$delete = $connexion->prepare("DELETE FROM livor_messages WHERE id = '" . $_GET['id'] . "'");
	$delete->execute();
	
	$optimize = $connexion->prepare("OPTIMIZE TABLE livor_messages");
	$optimize->execute();
?>
          <div class="succes">Le message a été supprimé avec succès !!! Peut être devrez vous actualiser la page... </div>
<?php 
}

// ********************************************* SUPPRESSION D'UNE REPONSE
if ($_GET['action'] == 'suprep' ) {
	$delete = $connexion->prepare("DELETE FROM livor_reponses WHERE id_reponse = '" . $_GET['id'] . "'");
	$delete->execute();

	//$optimize = $connexion->prepare("OPTIMIZE TABLE ".$prefixe_tables."livor_reponses");
	$optimize = $connexion->prepare("OPTIMIZE TABLE livor_reponses");
	$optimize->execute();
?>
          <div class="succes">La réponse a été supprimée avec succès !!! Peut être devrez vous actualiser la page... </div>
<?php 
}

// ********************************************* BANNISSEMENT D'UNE IP
if ( $_GET['action'] == 'ban' ) {
	// Requête d'insertion
	$id = NULL;
	$insert = $connexion->prepare("INSERT INTO livor_ip (id_ip,ip) VALUES (?,?)");
	$insert->bindParam(1, $id);
	$insert->bindParam(2, $_GET['ip']);
	$insert->execute();
?>
          <div class="succes">L'IP a été bannie avec succès !!!</div>
<?php 

}
?>				
                <!-- PAGINATION -->
                <div class="contour_pagination">
                  <table width="100%" border="0" cellspacing="0" cellpadding="5">
                    <tr>
                      <td class="affichage_page_X_sur_Y"><?php echo "Page " . $page_en_cours . " sur " . $nombre_de_page . ""; // affichage page X sur Y ?></td>
                      <td class="page_en_cours">Page en cours : <?php echo $page_en_cours; ?></td>
                      <td class="nombre_de_sujet">Nombre de message : <?php echo $pagination->nb_datas; ?></td>
                      <td class="pagination"><?php echo $pagination->getFirstLinks() . $pagination->getLinks() . $pagination->getLastLinks(); ?></td>
                    </tr>
                  </table>
                </div>
                
                <!-- AFFICHAGE DU LIVRE D'OR -->
<?php
// Affichage des messages
while( $row = $sql->fetch() ) {
	$sql_reponse = $connexion->prepare("SELECT * FROM livor_reponses WHERE message_id = '".$row->id."'");
	$sql_reponse->setFetchMode(PDO::FETCH_OBJ);
	$sql_reponse->execute();
	$row_reponse = $sql_reponse->fetch();

	// Si résultat est différent de zéro
	if ( $sql_reponse->rowCount() != 0 ) {		
		$reponse_admin = $row_reponse->reponse;
	}
	else {
		$reponse_admin = "";
	}

	// Instentiation de la classe
	$Classe_Livre_dor = new Livre_dor($row->nom, $row->email, $row->site, $row->ville_pays, $row->time, $row->note, $row->message, $query, $admin = 'o', $reponse_admin);
?>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					<?php echo $Classe_Livre_dor->afficher_nom(); ?></strong>
					<?php echo $Classe_Livre_dor->afficher_email(); ?>
					<?php echo $Classe_Livre_dor->afficher_site();?>
					</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=<?php echo $row->id; ?>
					&amp;page=<?php echo $_GET['page']; ?>"><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
				    &nbsp;<a onclick="return confirmsupmessage(<?php echo $row->id; ?>,<?php echo $page_en_cours ; ?>)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [<?php echo $Classe_Livre_dor->afficher_nom(); ?>]" title="Supprimer le message de [<?php echo $Classe_Livre_dor->afficher_nom(); ?>]" width="16" height="16" /></a>


					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('<?php echo $row->ip; ?>','<?php echo $page_en_cours ; ?>')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [<?php echo $row->ip; ?> de <?php echo $Classe_Livre_dor->afficher_nom(); ?>]" title="Bannir l'IP [<?php echo $row->ip; ?> de <?php echo $Classe_Livre_dor->afficher_nom(); ?>]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					<?php if ($reponse_admin == "") { ?> 
					&nbsp;<a href="repondre.php?id=<?php echo $row->id; ?>&amp;page=<?php echo $_GET['page']; ?>"><img src="../images/commun/admin.png" alt="Répondre à ce message" title="Répondre à ce message" width="16" height="16" /></a><?php } ?>

					<!--DATE-->
					&nbsp;<?php echo $Classe_Livre_dor->afficher_date(); ?>
					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note"><?php echo $Classe_Livre_dor->afficher_ville_pays(); ?>
					<?php echo $Classe_Livre_dor->afficher_note(); ?>
					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					<?php echo $Classe_Livre_dor->afficher_message(); 
					if ($reponse_admin != "") { ?>
					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=<?php echo $row_reponse->id_reponse; ?>
					&amp;page=<?php echo $_GET['page']; ?>"><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(<?php echo $row_reponse->id_reponse; ?><?php echo $page_en_cours ; ?>)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span><?php echo $Classe_Livre_dor->afficher_reponse(); ?></div><?php } ?></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
<?php
}
?>
                <!-- PAGINATION -->
                <div class="contour_pagination">
                  <table width="100%" border="0" cellspacing="0" cellpadding="5">
                    <tr>
                      <td class="affichage_page_X_sur_Y"><?php echo "Page " . $page_en_cours . " sur " . $nombre_de_page . "";// affichage page X sur Y ?></td>
                      <td class="page_en_cours">Page en cours : <?php echo $page_en_cours; ?></td>
                      <td class="nombre_de_sujet">Nombre de message : <?php echo $pagination->nb_datas; ?></td>
                      <td class="pagination"><?php echo $pagination->getFirstLinks() . $pagination->getLinks() . $pagination->getLastLinks(); ?></td>
                    </tr>
                  </table>
                </div>

<script>

	function confirmsupmessage(id,page) {
  
		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{			
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
				}			
			 } 
		});
	
		return false ;	
	}
       
	function confirmsupreponse(id,page){

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}
	
	function confirmban(ip,page) {

		$.prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
			show:'dropIn',
			buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
				}			
			 } 
		});
	
		return false ;	
	}
	
</script> 
                
<?php
require ("include/template/footer.php"); // Footer
?>
<script src="/livre_d_or/lib/jquery-impromptu.js"></script>

Il renvoie une page blanche.

C'est ainsi que je pense pour en localiser la raison, quel débugage serait il possible?

Un var_dump(), un exit("<br/> Stop") ou autre chose pour en connaître une variable?

Et à quel endroit ou quelle ligne?

Merci.

0

Une page blanche correspond généralement à une erreur de syntaxe PHP mais je n'en vois pas à priori dans ton code, du coup je n'arrive pas à comprendre comment l'ajout d'une balise script peut causer cette page blanche.

Pas d'erreur dans la console du navigateur ?

Tu ne vois aucun code dans la source de la page (Ctrl+U) ?

Peux-tu partager le code du fichier include/template/footer.php si possible ?

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
19 nov. 2022 à 10:15

Pour la console du navigateur, voici en image ce qu'elle indique:

Je ne comprends pas ce qu'elle ces indications.

Pour le code source par (Ctrl+U), je ne l'obtiens pas.C'est une page blanche aussi.

Voici le fichier include/template/footer.php (https://jeuxechecs.fr/livre_d_or/Adm_Livre02/include/template/footer.php)

<?php
$template_smileys = "";
$template_popup = "";
$template_charcounter = "";
$template_impromptu = "";
if (isset($template_aide)) {
?>				
                <!-- AIDE -->
                <div id="aide"><img src="images/aides.png" alt="Aides" width="16" height="16" />&nbsp;<a href="#" onClick="javascript:reinit();changeDisplay('voir_aide', true);return false;">Besoin d'aide ?</a></div><div class="montrer_cacher" id="voir_aide"><?php include ("include/aides/aide_".$template_aide.".php"); ?></div>
<?php
}
?>			                      
 
            </div> <!-- MAIN --> 
            
        </div> <!-- CONTENU -->  
         
    </div> <!-- GLOBAL -->

	<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>     
<?php 
if ($template_smileys == 1) {
?>
	<script src="../lib/smileys.js"></script>
<?php 
}

if ($template_popup == 1) {
?>
	<script src="lib/js_popup.js"></script>
<?php 
}

if ($template_charcounter == 1) {
?>
	<script>
<?php
 require ("lib/charcounter.php");
?>
    </script>
<?php 
}

if (isset($template_jquery)) {
?>
	<script>
        $(document).ready(function(){
 <?php
 echo $template_jquery; 
 ?>  
         }); 
    </script>
<?php 
}
?>   
	<script src="lib/afficher_cacher.js"></script>
<?php 
if ($template_impromptu == 1) {
?>
	
	<script src="../lib/jquery-impromptu.js"></script>
	<script>
	/* Impromptu */
	$.fn.extend({
		dropIn: function(speed, callback){
			var $t = $(this);
			if($t.css("display") == "none"){
				eltop = $t.css('top');
				elouterHeight = $t.outerHeight(true);
				$t.css({ top: -elouterHeight, display: 'block' })
				.animate({ top: eltop },speed,'swing', callback);
			}
		}
	});
	</script>
<?php 
}

if (isset($template_js)) {
?>
	<script>
 <?php
 echo $template_js; 
 ?>	
 	</script>
<?php 
}
?>
</body>
</html>
<?php
$connexion = null; // On ferme la connexion à la BDD
ob_end_flush(); // Affiche le cache PHP
?>

Je sais que cela est "maigre" comme informations.

Néanmoins je vais déplacer ce script :

<script src="/livre_d_or/lib/jquery-impromptu.js"></script>

à d'autres endroits de la page accueil.php pour tenter de voir si une page blanche apparait toujours.

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
19 nov. 2022 à 10:26

Peut être un indice pouvant nous servir.

Lorsque je déplace

<script src="/livre_d_or/lib/jquery-impromptu.js"></script>

comme ceci en ligne 240 à la place de <script>

<script src="/livre_d_or/lib/jquery-impromptu.js"></script>

	function confirmsupmessage(id,page) {
  
		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{			
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
				}			
			 } 
		});
	
		return false ;	
	}
       
	function confirmsupreponse(id,page){

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}
	
	function confirmban(ip,page) {

		$.prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
			show:'dropIn',
			buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
				}			
			 } 
		});
	
		return false ;	
	}
	
</script> 
                
<?php
require ("include/template/footer.php"); // Footer
?>

Je n'obtiens plus de page blanche.

Mais les clics sur les 3 icônes en questions restent toujours sans effet pour effacer les messages et bannir l'IP.

0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477
19 nov. 2022 à 11:13

"clic sans effet": donc pas non plus d'avertissement "ATTENTION", ni de rafraichissement de la page?

0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477
19 nov. 2022 à 11:26

Est-ce utile, pour toi, de garder ces avertissements "ATTENTION ..."?

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
19 nov. 2022 à 13:45

Le même problème de page blanche se présente aussi à cette adresse:

https://jeuxechecs.fr/livre_d_or/Adm_Livre02/ip.php

Avec le fichier ip.php que voici:

<?php
// Quelques variables
$template_titre = "Débannir une IP"; // Titre de la page
$template_aide = "ip"; // Fichier aide
$template_impromptu = 1; // Afficher JSimpromptu
$template_js = '
	function confirmsup(ip) {
		
		$.prompt("ATTENTION : Etes-vous sûr de vouloir débannir cette IP ?",{
			show:"dropIn",
			buttons:[{title: "Débannir",value:true},{title: "Annuler",value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="ip.php?ip="+ip+"&action=deban";
				}			
			 } 
		});
	
		return false ;	
	}
';

require ("include/template/header.php"); // Head

// Nombre d'IP
//$sql_nb_ip = $connexion->prepare("SELECT count(id_ip) AS nb_ip FROM ".$prefixe_tables."livor_ip");
$sql_nb_ip = $connexion->prepare("SELECT count(id_ip) AS nb_ip FROM livor_ip");
$sql_nb_ip->setFetchMode(PDO::FETCH_OBJ);
$sql_nb_ip->execute();
$rown_nb_ip = $sql_nb_ip->fetch();

// ********************************************* SUPPRESSION D'UNE IP BANNIE
if ( $_GET['action'] == 'deban' ) {

	// requete de suppression
	//$delete = $connexion->prepare("DELETE FROM ".$prefixe_tables."livor_ip WHERE id_ip = '" . $_GET['ip'] . "'");
	$delete = $connexion->prepare("DELETE FROM livor_ip WHERE id_ip = '" . $_GET['ip'] . "'");
	$delete->execute();
	
	//$optimize = $connexion->prepare("OPTIMIZE TABLE ".$prefixe_tables."livor_ip");
	$optimize = $connexion->prepare("OPTIMIZE TABLE livor_ip");
	$optimize->execute();
}

//$sql_ip = $connexion->prepare("SELECT * FROM ".$prefixe_tables."livor_ip ORDER BY id_ip DESC");
$sql_ip = $connexion->prepare("SELECT * FROM livor_ip ORDER BY id_ip DESC");
$sql_ip->setFetchMode(PDO::FETCH_OBJ);
$sql_ip->execute();

require ("include/template/body.php"); // Body
require ("include/noscript.php");

// Message d'erreur ou de succès
if ( $_GET['action'] == 'deban' ) {
?>
                <div class="succes">L'IP a été débannie avec succès.</div>
<?php 
}

 
// Si il n'y a pas d'IP bannies
if ( $rown_nb_ip->nb_ip < 1 ) {
?>
                <div class="information">Aucune IP n'a  été bannie pour le moment...</div>
 <?php 
}

else {
?> 
                <div id="formulaire_admin">
                <table border="0" align="center" cellpadding="0" cellspacing="0">
                    <tr class="gras">
                    <td colspan="3" class="centrer">Débannir une  IP</td>
                    </tr>
                    <tr>
                    <td colspan="3">&nbsp;</td>
                    </tr>
<?php
$i = 1;
while( $row_ip = $sql_ip->fetch() ) {			   
?>
                <tr class="couleur<?php echo ($i%2); ?>">
                <td class="droite"><?php echo $row_ip->ip; ?></td>
                <td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
                <td class="centrer"><a onclick="return confirmsup(<?php echo $row_ip->id_ip; ?>)" href="ip.php"><img src="images/supprimer.png" alt="Supprimer l'IP [<?php echo $row_ip->ip; ?>]" title="Supprimer l'IP [<?php echo $row_ip->ip; ?>]" width="16" height="16" /></a></td>
                </tr>
<?php 
$i++;
}
?>
                    <tr>
                    <td colspan="3">&nbsp;</td>
                    </tr> 
                    <tr>
                    <td colspan="3" class="centrer"><a href="#hautdepage">Haut de page</a></td>
                    </tr>
                </table>
                </div>
<?php 
}

require ("include/template/footer.php"); // Footer
?>
<script src="/livre_d_or/lib/jquery-impromptu.js"></script>

Lorsque la ligne 104 n'est pas présente:

<script src="/livre_d_or/lib/jquery-impromptu.js"></script>

Voici l'image de cette page:

En toute logique, je crois pouvoir affirmer que les fichiers accueil.php et ip.php ne seraient pas en cause sans ce script sur leurs dernière ligne.

(A savoir aussi qu'il n'est pas possible de débannir une adresse IP en cliquant sur son icône respective).

0
yg_be Messages postés 22731 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 avril 2024 1 477
19 nov. 2022 à 14:04

Veux-tu dire que tout fonctionne bien sans la ligne 104?

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
19 nov. 2022 à 14:42

J'ai tenté encore autre chose qui ne produit plus de page blanche sur accueil.php:

<script>

	function confirmsupmessage(id,page) {
  
		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{			
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
				}			
			 } 
		});
	
		return false ;	
	}
       
	function confirmsupreponse(id,page){

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			show:'dropIn',
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}
	
	function confirmban(ip,page) {

		$.prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
			show:'dropIn',
			buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
				}			
			 } 
		});
	
		return false ;	
	}
	
</script>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 

<script src="/livre_d_or/lib/jquery-impromptu.js"></script>

Pour cela j'ai récupéré la ligne 50 ci dessus après avoir effacé ceci:

<?php
require ("include/template/footer.php"); // Footer
?>

à partir du fichier Adm_Livre02/include/template/footer.php que voici en ligne 22:

                <br class="clearfloat" />
<?php

$template_smileys = "";
$template_popup = "";
$template_charcounter = "";
$template_impromptu = "";
if (isset($template_aide)) {
?>				
                <!-- AIDE -->
                <div id="aide"><img src="images/aides.png" alt="Aides" width="16" height="16" />&nbsp;<a href="#" onClick="javascript:reinit();changeDisplay('voir_aide', true);return false;">Besoin d'aide ?</a></div><div class="montrer_cacher" id="voir_aide"><?php include ("include/aides/aide_".$template_aide.".php"); ?></div>
<?php
}
?>			                      
 
            </div> <!-- MAIN --> 
            
        </div> <!-- CONTENU -->  
         
    </div> <!-- GLOBAL -->

	 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>    

<?php 
if ($template_smileys == 1) {
?>
	<script src="../lib/smileys.js"></script>
<?php 
}

if ($template_popup == 1) {
?>
	<script src="lib/js_popup.js"></script>
<?php 
}

if ($template_charcounter == 1) {
?>
	<script>
<?php
 require ("lib/charcounter.php");
?>
    </script>
<?php 
}

if (isset($template_jquery)) {
?>
	<script>
        $(document).ready(function(){
 <?php
 echo $template_jquery; 
 ?>  
         }); 
    </script>
<?php 
}
?>   
	<script src="lib/afficher_cacher.js"></script>
<?php 
if ($template_impromptu == 1) {
?>
	
	<script src="../lib/jquery-impromptu.js"></script>
	<script>
	/* Impromptu */
	$.fn.extend({
		dropIn: function(speed, callback){
			var $t = $(this);
			if($t.css("display") == "none"){
				eltop = $t.css('top');
				elouterHeight = $t.outerHeight(true);
				$t.css({ top: -elouterHeight, display: 'block' })
				.animate({ top: eltop },speed,'swing', callback);
			}
		}
	});
	</script>
<?php 
}

if (isset($template_js)) {
?>
	<script>
 <?php
 echo $template_js; 
 ?>	
 	</script>
<?php 
}
?>
</body>
</html>
<?php
$connexion = null; // On ferme la connexion à la BDD
ob_end_flush(); // Affiche le cache PHP
?>

Mais il n'est toujours pas possible d'effacer les messages et bannir une IP du fait  que les fonctions situées de la ligne 1 à 46 ne fonctionnent pas.

0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
19 nov. 2022 à 16:19

Bonjour,

Si tu regardes dans la console, tu verras qu'il n'arrive pas à charger le fichier  https://jeuxechecs.fr/livre_d_or/Adm_Livre02/include/template/lib/afficher_cacher.js

Donc soit le fichier n'existe pas ..  soit tu ne donnes pas le bon chemin

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024 > jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024
19 nov. 2022 à 18:02

Merci jordane45 de bien vouloir participer à ces recherches avec nous.

Pour répondre à ta question, je dois t'indiquer que ce chemin lib/afficher_cacher.js n'existe pas sur mon site.

Ainsi le fichier afficher_cacher.js est tellement bien caché que je ne l'ai pas trouvé.

Car en fait il n'existe pas dans aucun répertoire.

0

Remet l'instruction require("include/template/footer.php"); à la fin du fichier accueil.php comme à l'origine.

Déplace la balise script pour jquery-impromptu.js sous celle déjà présente pour jquery.min.js à la ligne 22 du fichier footer.php
 

    </div> <!-- GLOBAL -->

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>    
    <script src="/livre_d_or/lib/jquery-impromptu.js"></script>

Pour faire fonctionner les fonctions, j'ai supprimé les options show:"dropIn" qui causait une erreur lors de mes tests, je n'ai pas cherché à corriger l'erreur :

<script>
    function confirmsupmessage(id,page) {
        $.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{            
            buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}],
            submit: function(v,m,f){     
                if (v != false) {
                    document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
                }            
             }
        });
    
        return false ;    
    }
       
    function confirmsupreponse(id,page) {
        $.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
            buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}],
            submit: function(v,m,f){     
                if (v != false) {
                    document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
                }            
             }
        });
    
        return false ;    
    }
    
    function confirmban(ip,page) {
        $.prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
            buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}],
            submit: function(v,m,f){     
                if (v != false) {
                    document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
                }            
             }
        });
    
        return false ;    
    }
</script>

Avec ces modifications, le code fonctionne correctement de mon coté.

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
19 nov. 2022 à 18:32

J'ai bien remis l'instruction require("include/template/footer.php"); dans le fichier accueil.php.

Ainsi que la suppression show:'dropIn', de chaque fonction comme ci dessous:

<script>

	function confirmsupmessage(id,page) {
  
		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{			
			
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
				}			
			 } 
		});
	
		return false ;	
	}
       
	function confirmsupreponse(id,page){

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}
	
	function confirmban(ip,page) {

		$.prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
			
			buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
				}			
			 } 
		});
	
		return false ;	
	}
	
</script>

<?php
require ("include/template/footer.php"); // Footer
?>

J'ai déplacé la balise script pour jquery-impromptu.js sous celle déjà présente pour jquery.min.js à la ligne 22 du fichier footer.php

**************************************************************************************************************************************************

L' effacement des messages des utilisateurs fonctionne.

Le bannissement des IP fonctionne aussi.

Seul l'effacement des messages de l'administrateur ne fonctionne pas malgré les messages que voici:

Puis:

Et malgré le rafraichissement de la page.

Je chercherai quelle en est la raison demain pour résoudre ce petit problème.

En attendant, merci encore pour votre aide qui me fut indispensable.

Je pense que ce sujet sera résolu demain après que j'aurai corrigé le dysfonctionnement de l'effacement de mes messages en tant qu'administrateur.

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
20 nov. 2022 à 12:45

Bonjour.

Il me reste à résoudre le petit problème de l'effacement des messages de l'administrateur comme l'indique l'image ci dessous:

Pour cela j'ai localisé le dysfonctionnement par cette ligne que voici:

 var_dump($_GET['id']);

en ligne 122 du fichier acceuil.php (https://jeuxechecs.fr/livre_d_or/Adm_Livre02/index.php)

<?php
// Quelques variables
$template_titre = "Accueil"; // Titre de la page
$template_aide = strtolower($template_titre); // Fichier aide
$template_impromptu = 1; // Afficher JSimpromptu

require ("include/template/header.php"); // Head

require ('../include/classes/livor.class.php');  // Classe livre d'or
require ('../include/classes/pagination.class.php'); // Classe pagination

// ********************************************* Messages en attente de validation
/*$sql_count_message_a_valider = $connexion->prepare("SELECT count(id) AS nb_message_a_valider FROM ".$prefixe_tables."livor_messages WHERE message_valide = 1");*/
$sql_count_message_a_valider = $connexion->prepare("SELECT count(id) AS nb_message_a_valider FROM livor_messages WHERE message_valide = 1");
$sql_count_message_a_valider->setFetchMode(PDO::FETCH_OBJ);
$sql_count_message_a_valider->execute();
$row_count_message_a_valider = $sql_count_message_a_valider->fetch();

// ********************************************* Pagination
$sql_count = $connexion->prepare("SELECT count(id) AS nbEnr FROM livor_messages WHERE message_valide = 0");
//$sql_count = $connexion->prepare("SELECT count(id) AS nbEnr FROM ".$prefixe_tables."livor_messages WHERE message_valide = 0");
$sql_count->setFetchMode(PDO::FETCH_OBJ);
$sql_count->execute();
$row_count = $sql_count->fetch();

$nombre_de_sujet_par_page = $row_config->nbre_message_par_page;

// Options
$options = array(
	'nb_datas' => $row_count->nbEnr,
	'data_per_page' => $nombre_de_sujet_par_page,
	'nb_link_per_page' => 5,
	'url' => $_SERVER['PHP_SELF'].'?',
	'var_page' => 'page'
);
$pagination = new Pagination($options);
$pagination->separator = '';
if ($_GET['page'] != "") { $page_en_cours = $_GET['page']; } else { $page_en_cours = 1; }
$nombre_de_page = ceil($pagination->nb_datas / $nombre_de_sujet_par_page);


//  Requete d'affichage des messages
$sql = $connexion->prepare("SELECT * FROM livor_messages WHERE message_valide = '0' ORDER BY id DESC LIMIT  " . $pagination->start_offset . ", " . $pagination->data_per_page);
$sql->setFetchMode(PDO::FETCH_OBJ);
$sql->execute();

require ("include/template/body.php"); // Body
require ("include/noscript.php");

// ********************************************* ERREURS/SUUCCES MISE A JOUR AUTOMATIQUE
if (isset($_SESSION['error_maj1'])) {
	echo $_SESSION['error_maj1'];
}

if (isset($_SESSION['error_maj2'])) {
	echo $_SESSION['error_maj2'];
}

if (isset($_SESSION['error_maj3'])) {
	echo $_SESSION['error_maj3'];
}

if (isset($_SESSION['error_maj4'])) {
	echo $_SESSION['error_maj4'];
}

if (isset($_SESSION['succes_maj'])) {
	
// ********************************************* MAJ BDD
	// Changement de version
	$version = 9;
	$update = $connexion->prepare("UPDATE livor_config SET version = ? WHERE id_config = 1");
	$update->execute(array($version));			


	echo $_SESSION['succes_maj'];
}

// ********************************************* MESSAGES A VALIDER
if ($row_count_message_a_valider->nb_message_a_valider != 0) {
?>
                <div class="erreur"><a href="valider_messages.php">Il y a <?php echo $row_count_message_a_valider->nb_message_a_valider; ?> message(s) à valider.</a></div>
<?php 
}

// ********************************************* MODIFICATION D'UNE REPONSE
if ( $_GET['reponse'] == 'ok' ) {
?>
                <div class="succes">La réponse a été enregistrée avec succès.</div>
<?php 		
}
// ********************************************* MODIFICATION D'UNE REPONSE
if ( $_GET['modif'] == 'okr' ) {
?>
                <div class="succes">La réponse a été modifiée avec succès.</div>
<?php 		
}
			
// ********************************************* MODIFICATION D'UN MESSAGE
if ( $_GET['modif'] == 'ok' ) {
?>
                <div class="succes">Le message a été modifié avec succès.</div>
<?php 			
}

// ********************************************* SUPPRESSION D'UN MESSAGE
//var_dump($_GET['action']); 
//exit("<br/> Stop");
if ( $_GET['action'] == 'sup' ) {
	$delete = $connexion->prepare("DELETE FROM livor_messages WHERE id = '" . $_GET['id'] . "'");
	$delete->execute();
	
	$optimize = $connexion->prepare("OPTIMIZE TABLE livor_messages");
	$optimize->execute();
?>
          <div class="succes">Le message a été supprimé avec succès !!! Peut être devrez vous actualiser la page... </div>
<?php 
}

// ********************************************* SUPPRESSION D'UNE REPONSE
if ($_GET['action'] == 'suprep' ) {
    var_dump($_GET['id']);
	$delete = $connexion->prepare("DELETE FROM livor_reponses WHERE id_reponse = '" . $_GET['id'] . "'");
	$delete->execute();

	//$optimize = $connexion->prepare("OPTIMIZE TABLE ".$prefixe_tables."livor_reponses");
	$optimize = $connexion->prepare("OPTIMIZE TABLE livor_reponses");
	$optimize->execute();
?>
          <div class="succes">La réponse a été supprimée avec succès !!! Peut être devrez vous actualiser la page... </div>
<?php 
}

// ********************************************* BANNISSEMENT D'UNE IP
if ( $_GET['action'] == 'ban' ) {
	// Requête d'insertion
	$id = NULL;
	$insert = $connexion->prepare("INSERT INTO livor_ip (id_ip,ip) VALUES (?,?)");
	$insert->bindParam(1, $id);
	$insert->bindParam(2, $_GET['ip']);
	$insert->execute();
?>
          <div class="succes">L'IP a été bannie avec succès !!!</div>
<?php 

}
?>				
                <!-- PAGINATION -->
                <div class="contour_pagination">
                  <table width="100%" border="0" cellspacing="0" cellpadding="5">
                    <tr>
                      <td class="affichage_page_X_sur_Y"><?php echo "Page " . $page_en_cours . " sur " . $nombre_de_page . ""; // affichage page X sur Y ?></td>
                      <td class="page_en_cours">Page en cours : <?php echo $page_en_cours; ?></td>
                      <td class="nombre_de_sujet">Nombre de message : <?php echo $pagination->nb_datas; ?></td>
                      <td class="pagination"><?php echo $pagination->getFirstLinks() . $pagination->getLinks() . $pagination->getLastLinks(); ?></td>
                    </tr>
                  </table>
                </div>
                
                <!-- AFFICHAGE DU LIVRE D'OR -->
<?php
// Affichage des messages
while( $row = $sql->fetch() ) {
	$sql_reponse = $connexion->prepare("SELECT * FROM livor_reponses WHERE message_id = '".$row->id."'");
	$sql_reponse->setFetchMode(PDO::FETCH_OBJ);
	$sql_reponse->execute();
	$row_reponse = $sql_reponse->fetch();

	// Si résultat est différent de zéro
	if ( $sql_reponse->rowCount() != 0 ) {		
		$reponse_admin = $row_reponse->reponse;
	}
	else {
		$reponse_admin = "";
	}

	// Instentiation de la classe
	$Classe_Livre_dor = new Livre_dor($row->nom, $row->email, $row->site, $row->ville_pays, $row->time, $row->note, $row->message, $query, $admin = 'o', $reponse_admin);
?>
                <div class="les_messages">
                
                    <!-- AFFICHAGE NOM + EMAIL + SITE -->
                    <div class="nom"><strong>
					<?php echo $Classe_Livre_dor->afficher_nom(); ?></strong>
					<?php echo $Classe_Livre_dor->afficher_email(); ?>
					<?php echo $Classe_Livre_dor->afficher_site();?>
					</div>
                    
                    <!-- Modification message -->
                    <div class="date"><a href="modifier.php?id=<?php echo $row->id; ?>
					&amp;page=<?php echo $_GET['page']; ?>"><img src="images/modifier.png" alt="Modifier le message" title="Modifier le message" width="16" height="16" /></a>

					<!-- Supprimer message -->
				    &nbsp;<a onclick="return confirmsupmessage(<?php echo $row->id; ?>,<?php echo $page_en_cours ; ?>)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer le message de [<?php echo $Classe_Livre_dor->afficher_nom(); ?>]" title="Supprimer le message de [<?php echo $Classe_Livre_dor->afficher_nom(); ?>]" width="16" height="16" /></a>


					<!-- Banir IP -->
					&nbsp;<a onclick="return confirmban('<?php echo $row->ip; ?>','<?php echo $page_en_cours ; ?>')" href="accueil.php"><img src="images/bannir_ip.png" alt="Bannir l'IP [<?php echo $row->ip; ?> de <?php echo $Classe_Livre_dor->afficher_nom(); ?>]" title="Bannir l'IP [<?php echo $row->ip; ?> de <?php echo $Classe_Livre_dor->afficher_nom(); ?>]" width="16" height="16" /></a>	

					<!-- Lorsque Admin n'a pas encore répondu à un message -->
					<?php if ($reponse_admin == "") { ?> 
					&nbsp;<a href="repondre.php?id=<?php echo $row->id; ?>&amp;page=<?php echo $_GET['page']; ?>"><img src="../images/commun/admin.png" alt="Répondre à ce message" title="Répondre à ce message" width="16" height="16" /></a><?php } ?>

					<!--DATE-->
					&nbsp;<?php echo $Classe_Livre_dor->afficher_date(); ?>
					</div>
                                                    
                    <!-- VILLE/PAYS + NOTE -->
                    <div class="note"><?php echo $Classe_Livre_dor->afficher_ville_pays(); ?>
					<?php echo $Classe_Livre_dor->afficher_note(); ?>
					</div>
                                                                    
                    <!-- Modification du message Admin par celui ci -->
                    <div class="le_message">
					<?php echo $Classe_Livre_dor->afficher_message(); 
					if ($reponse_admin != "") { ?>
					<div class="reponse"><div class="droite"><a href="modifier_reponse.php?id=<?php echo $row_reponse->id_reponse; ?>
					&amp;page=<?php echo $_GET['page']; ?>"><img src="images/modifier.png" alt="Modifier la réponse" title="Modifier la réponse" width="16" height="16" /></a>&nbsp;
                     
					<!-- Suppression de la réponse de l'admi par lui même --> 
					&nbsp;<a onclick="return confirmsupreponse(<?php echo $row_reponse->id_reponse; ?><?php echo $page_en_cours ; ?>)" href="accueil.php"><img src="images/supprimer.png" alt="Supprimer la réponse" title="Supprimer la réponse" width="16" height="16" /></a></div><span class="gras">Réponse de l'administrateur : </span><?php echo $Classe_Livre_dor->afficher_reponse(); ?></div><?php } ?></div>
                         
                </div>
                
                <div class="centrer"><p><a href="#hautdepage"><img src="../images/commun/haut_page_gauche.gif" alt="Haut de page" title="Haut de page" width="16" height="13" />Haut de page<img src="../images/commun/haut_page_droite.gif" alt="Haut de page" title="Haut de page" width="16" height="13" /></a></p></div>
<?php
}
?>
                <!-- PAGINATION -->
                <div class="contour_pagination">
                  <table width="100%" border="0" cellspacing="0" cellpadding="5">
                    <tr>
                      <td class="affichage_page_X_sur_Y"><?php echo "Page " . $page_en_cours . " sur " . $nombre_de_page . "";// affichage page X sur Y ?></td>
                      <td class="page_en_cours">Page en cours : <?php echo $page_en_cours; ?></td>
                      <td class="nombre_de_sujet">Nombre de message : <?php echo $pagination->nb_datas; ?></td>
                      <td class="pagination"><?php echo $pagination->getFirstLinks() . $pagination->getLinks() . $pagination->getLastLinks(); ?></td>
                    </tr>
                  </table>
                </div>

<script>

	function confirmsupmessage(id,page) {
  
		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer ce message ?',{			
			
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=sup";
				}			
			 } 
		});
	
		return false ;	
	}
       
	function confirmsupreponse(id,page){

		$.prompt('ATTENTION : LA SUPPRESSION EST IRREVERSIBLE !!!\n\nEtes-vous sûr de vouloir supprimer cette réponse ?',{
			
			buttons:[{title: 'Supprimer',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?id="+id+"&page="+page+"&action=suprep";
				}			
			 } 
		});
	
		return false ;	
	}
	
	function confirmban(ip,page) {

		$.prompt('Etes-vous sûr de vouloir bannir cette IP ?',{
			
			buttons:[{title: 'Bannir',value:true},{title: 'Annuler',value:false}], 
			submit: function(v,m,f){ 	
				if (v != false) {
					document.location.href="accueil.php?ip="+ip+"&page="+page+"&action=ban";
				}			
			 } 
		});
	
		return false ;	
	}
	
</script>

<?php
require ("include/template/footer.php"); // Footer
?>

Ainsi j'obtiens ceci:

Il se trouve que $_GET['id'] valant 681, cette valeur ne se trouve pas dans la table livor_reponses comme l'indique l'image de cette table ci dessous:

Par contre si j'entre la valeur 68 dans la variable $_GET['id'] la ligne 68 de la table ci dessus sera effacée.

(Ligne 123 du fichier accueil.php).

Comme ceci:

$_GET['id']=68;

Je pense que pour résoudre cette valeur erronée de $_GET['id'] , il serait nécessaire de savoir à quel endroit est créée celle ci? comme dans cette exemple : 681

Merci.

0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
20 nov. 2022 à 13:46

Bonjour

C'est donc l'id transmis lors de l'appel de ta fonction a la ligne 221 ?

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024
20 nov. 2022 à 17:32

A la ligne 221 l'id transmis ( $row_reponse->id_reponse ) à pour valeur (68) et qui correspond à ce qu'on trouve dans le champ id_reponse de la ligne à supprimer dans la table livor_reponses afin de détruire le message de l'administrateur.

Mais en fait c'est $_GET['id'] avec une valeur bien supérieur (681 pour cet exemple) qui est utilisé pour supprimer la ligne correspondante de la table id_reponse en ligne 122.

Cela ne fonctionne pas car la valeur du champ livor_reponses ne possède 681 sur aucune de ces lignes

Alors serait il possible de remplacer $_GET['id'] en ligne 122 par $row_reponse->id_reponse ?

0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
20 nov. 2022 à 17:36

Regarde bien ta ligne 221....

Tu as certainement oublié une virgule entre tes deux variables... Le 1 en trop correspondant certainement à la page en cours....

0
Max747 Messages postés 258 Date d'inscription vendredi 11 juillet 2014 Statut Membre Dernière intervention 11 janvier 2024 > jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024
20 nov. 2022 à 19:27

Oui le 1 est la page en cours.

Mais je ne vois pas l'endroit où il manque une virgule?

0