Bonjour à tous,
aujourd'hui dans mon grand combat contre les mises à jour de IE je me suis décidé à faire une page "type" pour mes futurs sites.
Tout à l'air fonctionnel mais dans le soucis de la perfection serait-il possible de faire mieux ou moins brouillon ?
Petite explication rapide :
- J'ouvre une session qui me permettra de vérifier si j'ai déjà afficher l'information ou pas
- Je fais un test pour savoir si la variable session "visiteur_informer" a été créée
- Si non alors on teste si le navigateur est à jour
- Si non on créer la variable de session ci-dessus et on affiche l'info selon l'os de la personne (si c'est XP x86 / Vista on dirige vers IE8 32bits, si c'est XP x64 on le dirige vers IE8 64bits et si c'est windows 7 on le dirige vers IE9)
- Dans le cas ou l'OS n'est pas reconnu on le dirige vers firefox (navigateur universel et choix personnel ^^)
- Dans tous les cas on affiche le contenu normal du site en "background" de la bulle d'info et en aucun cas on empêche le visiteur de continuer sa navigation dans le cas ou il ne voudrait pas faire la mise à jour.
Autres infos :
- Le code jquery n'utilise pas de "raccourcis" tels que les $ qui pourrait causer des problèmes avec d'autres librairies.
Si vous avez des remarques n'hésitez pas
Voila aussi le dossier complet avec tous les fichiers si jamais vous voulez l'utiliser pour vous
Télécharger
Modifié par BiwAa (06 Sep 2011 - 16:21)
aujourd'hui dans mon grand combat contre les mises à jour de IE je me suis décidé à faire une page "type" pour mes futurs sites.
Tout à l'air fonctionnel mais dans le soucis de la perfection serait-il possible de faire mieux ou moins brouillon ?
Petite explication rapide :
- J'ouvre une session qui me permettra de vérifier si j'ai déjà afficher l'information ou pas
- Je fais un test pour savoir si la variable session "visiteur_informer" a été créée
- Si non alors on teste si le navigateur est à jour
- Si non on créer la variable de session ci-dessus et on affiche l'info selon l'os de la personne (si c'est XP x86 / Vista on dirige vers IE8 32bits, si c'est XP x64 on le dirige vers IE8 64bits et si c'est windows 7 on le dirige vers IE9)
- Dans le cas ou l'OS n'est pas reconnu on le dirige vers firefox (navigateur universel et choix personnel ^^)
- Dans tous les cas on affiche le contenu normal du site en "background" de la bulle d'info et en aucun cas on empêche le visiteur de continuer sa navigation dans le cas ou il ne voudrait pas faire la mise à jour.
Autres infos :
- Le code jquery n'utilise pas de "raccourcis" tels que les $ qui pourrait causer des problèmes avec d'autres librairies.
<?php
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Gestion des navigateurs</title>
<link type="text/css" href="css/ui-lightness/jquery-ui-1.8.16.custom.css" rel="stylesheet" />
<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.8.16.custom.min.js"></script>
<script>
jQuery(function() {
jQuery( "#dialog:ui-dialog" ).dialog( "destroy" );
// Dialog Link
jQuery( "#dialog-message" ).dialog({
modal: true,
width:500, // Largeur de la boite d'alerte
buttons: {
'Une autre foi': function() {
jQuery( this ).dialog( "close" );
}
}
});
});
</script>
</head>
<body>
<?php
/* Si on a déjà averti le visiteur on ne réaffiche pas */
if (!isset($_SESSION['visiteur_informer'])) {
$x = getenv("HTTP_USER_AGENT") ;
if(strpos($x,'MSIE 7.0') || strpos($x,'MSIE 6.0')) {
/* On change la variable indiquant qu'on averti le visiteur */
$_SESSION['visiteur_informer'] = 'oui';
/* Windows xp 32 bits ou windows vista */
if((preg_match("/Windows NT 5.1/", getenv("HTTP_USER_AGENT"))) || (preg_match("/Windows NT 6.0/", getenv("HTTP_USER_AGENT")))) {
echo '
<div class="demo">
<div id="dialog-message" title="Navigateur dépassé" style="text-align:justify">
<p>Le site que vous essayez d\'afficher n\'a pas été optimisé pour votre navigateur qui est actuellement désuet. </p> <p>Nous vous conseillons de mettre à jour votre navigateur grâce au lien proposé ci-dessous pour une meilleure navigation.</p
<p><a href="http://download.microsoft.com/download/B/B/F/BBFCC870-E61D-4515-B81F-69D4D2F2B23B/IE8-WindowsXP-x86-FRA.exe" target="_blank">Internet Explorer 8.0 (dernière version disponible pour votre système d\'exploitation)</a></p>
</div>
</div>
';
} /* Windows xp 64 bits */
elseif(preg_match("/Windows NT 5.2/", getenv("HTTP_USER_AGENT"))) {
echo '
<div class="demo">
<div id="dialog-message" title="Navigateur dépassé" style="text-align:justify">
<p>Le site que vous essayez d\'afficher n\'a pas été optimisé pour votre navigateur qui est actuellement désuet. </p> <p>Nous vous conseillons de mettre à jour votre navigateur grâce au lien proposé ci-dessous pour une meilleure navigation.</p>
<p><a href="http://download.microsoft.com/download/A/9/6/A96664CE-D3AB-4EDA-8908-64BB4DD985C5/IE8-WindowsServer2003-x64-FRA.exe" target="_blank">Internet Explorer 8.0 (dernière version disponible pour votre système d\'exploitation)</a></p>
</div>
</div>
';
} /* Windows 7 */
elseif(preg_match("/Windows NT 6.1/", getenv("HTTP_USER_AGENT"))) {
echo '
<div class="demo">
<div id="dialog-message" title="Navigateur dépassé" style="text-align:justify">
<p>Le site que vous essayez d\'afficher n\'a pas été optimisé pour votre navigateur qui est actuellement désuet. </p> <p>Nous vous conseillons de mettre à jour votre navigateur grâce au lien proposé ci-dessous pour une meilleure navigation.</p>
<p><a href="http://windows.microsoft.com/fr-CH/internet-explorer/downloads/ie" target="_blank">Internet Explorer 9.0 (dernière version disponible pour votre système d\'exploitation)</a></p>
</div>
</div>
';
} /* On ne connait pas le système d'exploitation on dirige donc vers firefox qui est universel */
else {
echo '
<div class="demo">
<div id="dialog-message" title="Navigateur dépassé" style="text-align:justify">
<p>Le site que vous essayez d\'afficher n\'a pas été optimisé pour votre navigateur qui est actuellement désuet.</p> <p>Nous vous conseillons de mettre à jour votre navigateur grâce au lien proposé ci-dessous pour une meilleure navigation.</p>
<p><a href="http://www.mozilla-europe.org/fr/" target="_blank">Mozilla Firefox</a></p>
</div>
</div>
';
}
}
}
echo ' <!-- code de la page d\index à coller ici -->
<p><a href="" target="_self">Lien A</a></p>
<p><a href="" target="_self">Lien B</a></p> ';
?>
</body>
</html>
Si vous avez des remarques n'hésitez pas

Voila aussi le dossier complet avec tous les fichiers si jamais vous voulez l'utiliser pour vous

Télécharger
Modifié par BiwAa (06 Sep 2011 - 16:21)