Accueil > > > AFFICHAGE D'UNE PAGE D'ALERTE FORMAT HTML (TEMPORAIRE ET UNE SEULE FOIS) ET REMPLACEMENT PAR LA PAGE PRINCIPALE.
AFFICHAGE D'UNE PAGE D'ALERTE FORMAT HTML (TEMPORAIRE ET UNE SEULE FOIS) ET REMPLACEMENT PAR LA PAGE PRINCIPALE.
Information sur la source
Description
Permet de faire passer une page d'alerte avant l'affichage de votre page principale. Avec la possibilité de filtrer les utilisateurs à prevenir et d'avertir l'administrateur que le message a bien été lu (par mail). Ce code nécéssite une base de donnée de type MySql. Cette partie peut être remplacée par des cookies mais dans ce cas on ne peux être sur que le message ne sera vu qu'une seule fois.
Source
- <?php
-
- /*
- ce php necessite la creation d'un table dans une base de donnée pour savoir si c'est lu et par qui
- et pour être sur que le messsage ne sera lu qu'une fois, l'adminstrateur est prevenu par mail de la lecture du message.
- */
- /* le SQL de creation de la table*/
- /*
- SQLyog - Free MySQL GUI v5.19
- Host - 3.23.43-nt : Database - votreDataBase
- *********************************************************************
- Server version : 3.23.43-nt
-
-
- Table structure for table `trace`
-
- DROP TABLE IF EXISTS `trace`;
-
- CREATE TABLE `trace` (
- `machine` varchar(20) default NULL,
- `lu` varchar(11) binary default NULL,
- `date` date default NULL,
- `time` time default NULL
- ) TYPE=MyISAM;
-
- */
-
- function Connexion ($pNom, $pMotPasse, $pBase, $pServeur) {
- $connexion = mysql_pconnect ($pServeur, $pNom, $pMotPasse);
- if (!$connexion) {
- echo "Désolé, connexion au serveur $pServeur impossible\n";
- exit;
- }
- if (!mysql_select_db ($pBase, $connexion)) {
- echo "Désolé, accès à la base $pBase impossible\n";
- echo "<B>Message de MySQL :</B> " . mysql_error($connexion);
- exit;
- }
- return $connexion;
- }
- $date = date("Y-m-d");
- $time = date("H:i:s");
- $hostaddr = gethostbyaddr($_SERVER['REMOTE_ADDR']);
- //echo "<br>$hostaddr<br>";
- $machine = explode(".", $hostaddr);
- //echo "<br>machine : $machine[0] date : $date time : $time<br>";
- $str = strtoupper($machine[0]);
-
- /*
- si l'on ne veux que seuls certain hostname puisse voir le message
- sinon on enleve la partie switch ou on place un default :
- */
- switch ($str) {
- case 'host1' :
- case 'host2' :
- case 'host3' :
- $SQLuser="votre_user";
- $SQLpassword="votre_password";
- $SQLdb = "votre_basededonnée";
- $SQLServer ="votreserverpourlabase de donnée";
- $SQLcnx = Connexion ($SQLuser, $SQLpassword, $SQLdb, $SQLServer);
- mysql_select_db($SQLdb , $SQLcnx) or die("Select DB Error: ".mysql_error());
- $query = "select machine from trace where machine='".$machine[0]."'";
- //print("<h3>$query</h3>");
- $result = mysql_query($query, $SQLcnx) or die("insert DB Error: ".mysql_error());
- $numrow = mysql_num_rows($result);
- if ($numrow == 0) {
- //echo "not exist";
- $query = "INSERT INTO trace (machine,lu,date,time ) VALUES ( '$machine[0]',1,'$date','$time');";
- //print("<h3>$query</h3>");
- $result = mysql_query($query, $SQLcnx) or die("insert DB Error: ".mysql_error());
-
- /* partie envoi du mail */
-
- $nom="mon_server"; // pas vraiment d'importance c'est pour que l'admin le repere
- $mail="celui_qui_envoie_le_mail@yahoo.fr";
- $objet="page lue par ".$str;
- $message="lu";
- $dest = "vous@votre_adresse.fr"; // administrateur address
-
- /////voici la version Mine
- $headers = "MIME-Version: 1.0\r\n";
- //////ici on détermine le mail en format text
- $headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";
- ////ici on détermine l'expediteur et l'adresse de réponse
- $headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";
-
- $subject="$objet";
- $destinataire=$dest;
- $body="$message";
-
- mail($destinataire,$subject,$body,$headers)
-
- ?>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <title>Message</title>
- <script language="JavaScript">
- function ShowT(){
- //alert ("start timer");
- setTimeout("exitview()",8000); //on affiche 8 secondes et c'est fini
- }
- function exitview(){
- //alert("exit");
- var url = "http://votresite.fr"; // changez ici le lien et redirigez votre visiteur où vous voulez
- window.location.replace(url);
- }
- </script>
- <style>
- </head>
- <body onload="ShowT()">
- <h3> Votre texte html qui va apparaitre 8 secondes et être remplacé par
- l'autre page sans possibilité de marche arriere (back)</h3>
- </body>
- </html>
- <?
- exit;
- } else {
- ?>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <title>Message</title>
- <script language="JavaScript">
- function ShowT(){
- var url = "http://votresite.fr"; // votre site par defaut
- window.location.replace(url);
- }
- </script>
- <style>
- </head>
- <body onload="ShowT()">
- </body>
- </html>
- <?
- }
- } //switch
- ?>
<?php
/*
ce php necessite la creation d'un table dans une base de donnée pour savoir si c'est lu et par qui
et pour être sur que le messsage ne sera lu qu'une fois, l'adminstrateur est prevenu par mail de la lecture du message.
*/
/* le SQL de creation de la table*/
/*
SQLyog - Free MySQL GUI v5.19
Host - 3.23.43-nt : Database - votreDataBase
*********************************************************************
Server version : 3.23.43-nt
Table structure for table `trace`
DROP TABLE IF EXISTS `trace`;
CREATE TABLE `trace` (
`machine` varchar(20) default NULL,
`lu` varchar(11) binary default NULL,
`date` date default NULL,
`time` time default NULL
) TYPE=MyISAM;
*/
function Connexion ($pNom, $pMotPasse, $pBase, $pServeur) {
$connexion = mysql_pconnect ($pServeur, $pNom, $pMotPasse);
if (!$connexion) {
echo "Désolé, connexion au serveur $pServeur impossible\n";
exit;
}
if (!mysql_select_db ($pBase, $connexion)) {
echo "Désolé, accès à la base $pBase impossible\n";
echo "<B>Message de MySQL :</B> " . mysql_error($connexion);
exit;
}
return $connexion;
}
$date = date("Y-m-d");
$time = date("H:i:s");
$hostaddr = gethostbyaddr($_SERVER['REMOTE_ADDR']);
//echo "<br>$hostaddr<br>";
$machine = explode(".", $hostaddr);
//echo "<br>machine : $machine[0] date : $date time : $time<br>";
$str = strtoupper($machine[0]);
/*
si l'on ne veux que seuls certain hostname puisse voir le message
sinon on enleve la partie switch ou on place un default :
*/
switch ($str) {
case 'host1' :
case 'host2' :
case 'host3' :
$SQLuser="votre_user";
$SQLpassword="votre_password";
$SQLdb = "votre_basededonnée";
$SQLServer ="votreserverpourlabase de donnée";
$SQLcnx = Connexion ($SQLuser, $SQLpassword, $SQLdb, $SQLServer);
mysql_select_db($SQLdb , $SQLcnx) or die("Select DB Error: ".mysql_error());
$query = "select machine from trace where machine='".$machine[0]."'";
//print("<h3>$query</h3>");
$result = mysql_query($query, $SQLcnx) or die("insert DB Error: ".mysql_error());
$numrow = mysql_num_rows($result);
if ($numrow == 0) {
//echo "not exist";
$query = "INSERT INTO trace (machine,lu,date,time ) VALUES ( '$machine[0]',1,'$date','$time');";
//print("<h3>$query</h3>");
$result = mysql_query($query, $SQLcnx) or die("insert DB Error: ".mysql_error());
/* partie envoi du mail */
$nom="mon_server"; // pas vraiment d'importance c'est pour que l'admin le repere
$mail="celui_qui_envoie_le_mail@yahoo.fr";
$objet="page lue par ".$str;
$message="lu";
$dest = "vous@votre_adresse.fr"; // administrateur address
/////voici la version Mine
$headers = "MIME-Version: 1.0\r\n";
//////ici on détermine le mail en format text
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";
////ici on détermine l'expediteur et l'adresse de réponse
$headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";
$subject="$objet";
$destinataire=$dest;
$body="$message";
mail($destinataire,$subject,$body,$headers)
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Message</title>
<script language="JavaScript">
function ShowT(){
//alert ("start timer");
setTimeout("exitview()",8000); //on affiche 8 secondes et c'est fini
}
function exitview(){
//alert("exit");
var url = "http://votresite.fr"; // changez ici le lien et redirigez votre visiteur où vous voulez
window.location.replace(url);
}
</script>
<style>
</head>
<body onload="ShowT()">
<h3> Votre texte html qui va apparaitre 8 secondes et être remplacé par
l'autre page sans possibilité de marche arriere (back)</h3>
</body>
</html>
<?
exit;
} else {
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Message</title>
<script language="JavaScript">
function ShowT(){
var url = "http://votresite.fr"; // votre site par defaut
window.location.replace(url);
}
</script>
<style>
</head>
<body onload="ShowT()">
</body>
</html>
<?
}
} //switch
?>
Conclusion
c'est la fonction timer du javascript qui nous redirige et c'est le php qui assure que la page n'est vue qu'une seule fois.
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
dhtml avec php ? [ par spliceh ]
comment faire du dhtml avec php ? par exemple declencher une fonction si on clique sur un bouton et sans poster le formulaire.
PHP JE PETE un cableeeeeeeeeeeeee [ par Skyyyy ]
salut !!bon jai ete voir sur ce site pour la fonction mail http://www.nexen.net/docs/php/annotee/function.mail.phpet je nai pas compris comment integr
PhP jai fait une etape mais....... [ par Skyyyy ]
Bon voila je me suis debrouille et jai fais caalors un fichier Index.php qui sera la page <Form action="1.php"> Login<input type=text name="l
php admin [ par darkvirus020 ]
Salut tout le monde. Je recherche un Script qui pourai modifier des fichiers php appartir de notre browser. Bien sure je voudrai qu'il demande un mot
Proteger des fichiers sur un site ..recherche d'un specialiste PHP [ par denisnospam ]
Bonjour,Je cherche avant tout un specialiste PHP a qui je pourrais poser des questions de temps en temps hors forum pour ne pas polluer le thread .Ens
Switch et php 5 [ par cseagle ]
bonsoir à toutes et à tous,voila mon souci :J'ai une page d'inscription avec un formulaire qui renvoi après validation vers cette même page contenant
PHP / LINUX [ par Cil20 ]
Bonjour à tousY' a t-il un moyen de modifier le mot de passe d'un utilisateur Linux via PHP.Et ainsi lui proposer un page web pour gérer son compte.Me
Nouveau site PHP : www.phpsources.net [ par LaurentKOogar ]
Bonjour,Nouveau site PHP : www.phpsources.net dont l'objectif est d'être un outil pratique pour les webmasters avec de nombreux liens, scripts, téléch
comment faire des pages .html en php ????? [ par aquewel ]
TOut est dans le titre Vous avez une idee pour générer des pages .html ???
Probleme de session [ par Zebra1928 ]
hello all;j'ai un vrai probleme avec les sessions, j'ai trouvé au forum la même question que la mienne mais malhereusement pas de réponse.Warning: Can
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|