Navigator (+cssdetector)

Soyez le premier à donner votre avis sur cette source.

Vue 5 125 fois - Téléchargée 287 fois

Description

_______________________________________________________________________________________________Ecrit_par_VoxPopuli
Ce petit utilitaire PHP utilise la variable $_SERVER pour détecter le navigateur, la version du navigateur et le moteur graphique utilisé par les visiteurs de votre site internet. Il mettra a disposition de votre code les variables suivantes: $navigateur, $nav_version et $moteurcss.
Le script est documenté afin d'aider a personnaliser le script
Il suffit de supprimer

//exemple
echo 'tu utilise: '.$navigateur.' version: '.$nav_version;
//exemple
pour que le programme entre en service discrètement

Pour supprimer l'appel a la fonction, supprimé les lignes 10 à 20.

Compatibilité: Firefox, Internet Explorer, Safari, Opera, Chrome, Konqueror, Netscape,

Slimbrowser, Acoo Browser, Charon, Avant Browser, GreenBrowser, MyIE2, uzbl, Flock, Kapiko, Iceweasel,

lolifox, Lunascape, Madfox, myibrow, Orca, Palemoon, Pogo, Wyzo, Escape, Deepnet Explorer, Crazy Browser,

iRider, KKman, Lobo, Sleipnir, uZard Web, ChromePlus, Iron, Comodo_Dragon, Fluid, Maxthon Browser,

Midori, Shiira, Stainless, Sunrise, TeaShark, Opera Mini, Opera Mobi, Epiphany, Lynx, Amaya, Epic Browser,

K-Meleon, ABrowse, America Online Browser, AmigaVoyager, AOL, Arora, Beonex, BonEcho, Camino, Cheshire,

Chimera, CometBird, Cyberdog, DeskBrowse, Dillo, DoobleDooble, Element Browser, Elinks, Fennec, Firebird,

Galaxy, Galeon, GranParadiso, Hana, HotJava, IBM WebExplorer, IBrowse, iCab, Iceape, IceCat, iNet Browser,

K-Ninja, Kazehakase, KMLite, LeechCraft, Links, Lorentz, Minefield, Minimo, Namoroka, NCSA_Mosaic,

NetNewsWire, NetPositive, NetSurf, OmniWeb, Oregano, Prism, QtWeb Internet Browser, retawq, SeaMonkey,

Shiretoko, Vonkeror, Xtreme Broswer, w3m, Playstattion 3, Playstation Portable, Sleipnir

Source / Exemple :

<?php

				/* Navigator(+ CSSDetector) By VoxPopuli */

    /* programme permettant de trouver le navigateur du client, sa version ainsi que son moteur CSS */

    /* renvois pour l'ENSEMBLE DU CODE SUIVANT les variables $navigateurs, $nav_version et $moteurcss */

	

	/* compatible 10/2011: Firefox, Internet Explorer,  Safari, Opera, Chrome, Konqueror,  Netscape, 

	Slimbrowser, Acoo Browser, Charon, Avant Browser, GreenBrowser, MyIE2, uzbl, Flock, Kapiko, Iceweasel,

	lolifox, Lunascape, Madfox, myibrow, Orca, Palemoon, Pogo, Wyzo, Escape, Deepnet Explorer, Crazy Browser,

	iRider, KKman, Lobo, Sleipnir, uZard Web, ChromePlus, Iron, Comodo_Dragon, Fluid, Maxthon Browser,

	Midori,	Shiira, Stainless, Sunrise, TeaShark, Opera Mini, Opera Mobi, Epiphany, Lynx, Amaya, Epic Browser,

	K-Meleon, ABrowse, America Online Browser, AmigaVoyager, AOL, Arora, Beonex, BonEcho, Camino, Cheshire,

	Chimera, CometBird,  Cyberdog, DeskBrowse, Dillo, DoobleDooble, Element Browser, Elinks, Fennec, Firebird,

	Galaxy, Galeon, GranParadiso, Hana, HotJava, IBM WebExplorer, IBrowse, iCab, Iceape, IceCat, iNet Browser,

	K-Ninja, Kazehakase, KMLite, LeechCraft, Links, Lorentz, Minefield, Minimo,  Namoroka, NCSA_Mosaic,

	NetNewsWire, NetPositive, NetSurf, OmniWeb, Oregano, Prism, QtWeb Internet Browser, retawq, SeaMonkey,

	Shiretoko, Vonkeror, Xtreme Broswer, w3m, Playstattion 3, Playstation Portable */

	

	

	

    /*$Retour = Navigator();

    $nav_version = $Retour[2];

    $navigateur = $Retour[1];

	$moteurcss = CSSDetector();*/

	

	

	//exemple

	//echo 'tu utilise: '.$navigateur.' version: '.$nav_version.' moteur css: '.$moteurcss;

    //exemple

	

	

	

    function Navigator() {

	$verif = false;

    $navigateur = false;

    $secteurderecherche = " ".$_SERVER["HTTP_USER_AGENT"];

    $chaine = $secteurderecherche;

	$version = false;

    $caractdebut = null; //permet de dire a DecoupeurDeChaine a partir de quoi il doit commencer le travail

    $caractfin1 = " "; //

    $caractfin2 = ";"; // permet de dire a DecoupeurDeChaine jusqu'ou il doit travailler.

	$caractfin3 = ")"; //

	

	$listenav = listenavigateur();

	foreach ($listenav as $TMPrecherche) {

		if (stripos($secteurderecherche, $TMPrecherche['search'])) {

			$recherche = $TMPrecherche;

			$verif= true;

		break; // On sort de la boucle, on garde $listenav avec les bonnes valeurs

		}

	}

	if ($recherche['caractdebut']){ /* si la version peut etre trouvee, continue */

    $version = DecoupeurDeChaineDeCaracteres ($chaine, $recherche['caractdebut'], $caractfin1, $caractfin2, $caractfin3);

	}



     /* script pour les test

    echo '<br> <br>'; 

    echo '<script type="text/javascript">alert("tu utilises : '.$navigateur.' - version : '.$version.'")</script>';*/

		if ($verif){

			$retour[1] = $recherche['nom'];

			$retour[2] = $version;

		}else{

			$retour[1] = $verif;

			$retour[2] = $verif;

		}

    return $retour;

    }

    

    function DecoupeurDeChaineDeCaracteres ($chaine, $caractdebut, $caractfin1, $caractfin2, $caractfin3) {

        /* le programme découpe une chaine de caractères en repérant un caractère de débuts et un (ou des) caractères de fin de recherche, il permet de s'adapter a une recherche avec trois fins possible ^^ */

        $debut = (strripos($chaine, $caractdebut) + strlen($caractdebut) + 1);

            /* boucle permettant d'extraire  le contenu recherché */

            $compteur = 0;

            $chaineretenue = null;

            while (isset($chaine[$debut+$compteur]) || !empty($chaine[$debut+$compteur])) {

            

                if ($chaine[$debut+$compteur] == $caractfin1 || $chaine[$debut+$compteur] == $caractfin2 || $chaine[$debut+$compteur] == $caractfin3){

                /* si les caractères de fin de recherche sont repéré, stop la boucle */ 

                    break;

                }

                $chaineretenue = $chaineretenue.$chaine[$debut+$compteur];

                $compteur++;

            }//fin while

        return $chaineretenue;

        }

		

		/* Detecte le moteur CSS utilise par le navigateur */

		/* compatibilite CSSDetector 11/2010: Trident, Gecko, WebKit, Presto */

	function CSSDetector () {

		$secteurderecherche = " ".$_SERVER["HTTP_USER_AGENT"];;

		$moteur = false;

		

		if (stripos($secteurderecherche, "MSIE") || stripos($secteurderecherche, "trident")) {

			$moteur = "Trident";

			/* trident n'est pas forcément visible, il faut déduire sa présence en recherchant si le navigateur est basé sur IExplorer */

		}

		if (stripos($secteurderecherche, "gecko")){

			$moteur = "Gecko";

		}

		if (stripos($secteurderecherche, "WebKit")){

			$moteur = "WebKit";

		}

		if (stripos($secteurderecherche, "presto")) {

			$moteur = "Presto";

		}

		

	return $moteur;

	}

	

	function listenavigateur () {

		

		$liste = array(

		// nom => nom du navigateur

		//search => le mot clé utilisé pour rechercher le navigateur

		//caractdebut => le mot clé juste avant la version permettant de la récuperer, false si le navigateur ne renvoit pas la version

		

		/* sans version */

			array('nom' => 'Slimbrowser', 'search' => 'slimbrowser', 'caractdebut' => false),

			array('nom' => 'Acoo Browser', 'search' => 'Acoo Browser', 'caractdebut' => false),

			array('nom' => 'Charon', 'search' => 'charon', 'caractdebut' => false),

			array('nom' => 'Avant Browser', 'search' => 'avant browser', 'caractdebut' => false),

			array('nom' => 'GreenBrowser', 'search' => 'GreenBrowser', 'caractdebut' => false), //dois OBLIGATOIREMENT se situer AVANT IEXPLORER

			array('nom' => 'MyIE2', 'search' => 'MyIE2', 'caractdebut' => false),//dois OBLIGATOIREMENT se situer AVANT IEXPLORER

			array('nom' => 'uzbl', 'search' => 'uzbl', 'caractdebut' => false),

		

		

		/* avec version */

			array('nom' => 'Flock', 'search' => 'flock', 'caractdebut' => 'flock'), //dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'Kapiko', 'search' => 'Kapiko', 'caractdebut' => 'Kapiko'),//dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'Iceweasel', 'search' => 'Iceweasel', 'caractdebut' => 'Iceweasel'), //dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'lolifox', 'search' => 'lolifox', 'caractdebut' => 'lolifox'),//dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'Lunascape', 'search' => 'lunascape', 'caractdebut' => 'lunascape'),//dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'Madfox', 'search' => 'Madfox', 'caractdebut' => 'Madfox'),//dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'myibrow', 'search' => 'myibrow', 'caractdebut' => 'myibrow'),//dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'Orca', 'search' => 'Orca', 'caractdebut' => 'Orca'),//dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'Palemoon', 'search' => 'Palemoon', 'caractdebut' => 'Palemoon'),//dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'Pogo', 'search' => 'Pogo', 'caractdebut' => 'Pogo'),//dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'Wyzo', 'search' => 'Wyzo', 'caractdebut' => 'Wyzo'),//dois OBLIGATOIREMENT SE TROUVER AVANT FIREFOX

			array('nom' => 'Firefox', 'search' => 'firefox', 'caractdebut' => 'firefox'), //FIREFOX

			array('nom' => 'Escape', 'search' => 'Escape', 'caractdebut' => 'Escape'), //dois OBLIGATOIREMENT SE TROUVER AVANT IEXPLORER

			array('nom' => 'Deepnet Explorer', 'search' => 'Deepnet Explorer', 'caractdebut' => 'Deepnet Explorer'),// dois OBLIGATOIREMENT SE SITUER AVANT IEXPLORER

			array('nom' => 'Crazy Browser', 'search' => 'crazy browser', 'caractdebut' => 'crazy browser'), //dois OBLIGATOIREMENT SE TROUVER AVANT IEXPLORER

			array('nom' => 'iRider', 'search' => 'iRider', 'caractdebut' => 'iRider'),//dois OBLIGATOIREMENT SE TROUVER AVANT IEXPLORER

			array('nom' => 'KKman', 'search' => 'KKman', 'caractdebut' => 'KKman'),//dois OBLIGATOIREMENT SE TROUVER AVANT IEXPLORER

			array('nom' => 'Lobo', 'search' => 'Lobo', 'caractdebut' => 'Lobo'),//dois OBLIGATOIREMENT SE TROUVER AVANT IEXPLORER

			array('nom' => 'uZard Web', 'search' => 'uZard Web', 'caractdebut' => 'uZard Web'),//dois OBLIGATOIREMENT SE TROUVER AVANT IEXPLORER

			array('nom' => 'Sleipnir', 'search' => 'Sleipnir', 'caractdebut' => 'Sleipnir'),//dois OBLIGATOIREMENT SE TROUVER AVANT IEXPLORER

			array('nom' => 'Internet Explorer', 'search' => 'MSIE', 'caractdebut' => 'MSIE'), //IEXPLORER

			array('nom' => 'ChromePlus', 'search' => 'chromeplus', 'caractdebut' => 'chromeplus'),//dois OBLIGATOIREMENT SE TROUVER AVANT CHROME ET SAFARI

			array('nom' => 'Iron', 'search' => 'Iron', 'caractdebut' => 'Iron'),//dois OBLIGATOIREMENT SE TROUVER AVANT CHROME ET SAFARI

			array('nom' => 'Comodo_Dragon', 'search' => 'Comodo_Dragon', 'caractdebut' => 'Comodo_Dragon'),//dois OBLIGATOIREMENT SE TROUVER AVANT CHROME ET SAFARI

			array('nom' => 'Chrome', 'search' => 'Chrome', 'caractdebut' => 'chrome'), //DOIS OBLIGATOIREMENT SE SITUER AVANT SAFARI

			array('nom' => 'Fluid', 'search' => 'Fluid', 'caractdebut' => 'Fluid'), //dois OBLIGATOIREMENT se situer avant SAFARI

			array('nom' => 'Maxthon Browser', 'search' => 'maxthon', 'caractdebut' => 'maxthon'),//dois OBLIGATOIREMENT se situer avant SAFARI

			array('nom' => 'Midori', 'search' => 'Midori', 'caractdebut' => 'Midori'),//dois OBLIGATOIREMENT se situer avant SAFARI

			array('nom' => 'Shiira', 'search' => 'Shiira', 'caractdebut' => 'Shiira'),//dois OBLIGATOIREMENT se situer avant SAFARI

			array('nom' => 'Stainless', 'search' => 'Stainless', 'caractdebut' => 'Stainless'),//dois OBLIGATOIREMENT se situer avant SAFARI

			array('nom' => 'Sunrise', 'search' => 'Sunrise', 'caractdebut' => 'Sunrise'),//dois OBLIGATOIREMENT se situer avant SAFARI

			array('nom' => 'TeaShark', 'search' => 'TeaShark', 'caractdebut' => 'TeaShark'),//dois OBLIGATOIREMENT se situer avant SAFARI

			array('nom' => 'Epiphany', 'search' => 'epiphany', 'caractdebut' => 'epiphany'),//dois OBLIGATOIREMENT se situer avant SAFARI

			array('nom' => 'Safari', 'search' => 'safari', 'caractdebut' => 'safari'), //SAFARI

			array('nom' => 'Opera Mini', 'search' => 'Opera Mini', 'caractdebut' => 'Opera Mini'),//dois OBLIGATOIREMENT se situer avant OPERA

			array('nom' => 'Opera Mobi', 'search' => 'Opera Mobi', 'caractdebut' => 'Opera Mobi'),//dois OBLIGATOIREMENT se situer avant OPERA

			array('nom' => 'Opera', 'search' => 'opera', 'caractdebut' => 'opera'),//OPERA

			array('nom' => 'Konqueror', 'search' => 'Konqueror', 'caractdebut' => 'konqueror'),

			array('nom' => 'Lynx', 'search' => 'lynx', 'caractdebut' => 'lynx'),

			array('nom' => 'Netscape', 'search' => 'navigator', 'caractdebut' => 'navigator'),

			array('nom' => 'Amaya', 'search' => 'amaya', 'caractdebut' => 'amaya'),

			array('nom' => 'Epic Browser', 'search' => 'epic', 'caractdebut' => 'crazy browser'),

			array('nom' => 'K-Meleon', 'search' => 'k-meleon', 'caractdebut' => 'k-meleon'),

			array('nom' => 'ABrowse', 'search' => 'abrowse', 'caractdebut' => 'abrowse'),

			array('nom' => 'America Online Browser', 'search' => 'America Online Browser', 'caractdebut' => 'America Online Browser'),

			array('nom' => 'AmigaVoyager', 'search' => 'AmigaVoyager', 'caractdebut' => 'AmigaVoyager'),

			array('nom' => 'AOL', 'search' => 'AOL', 'caractdebut' => 'aol'),

			array('nom' => 'Arora', 'search' => 'arora', 'caractdebut' => 'arora'),

			array('nom' => 'Beonex', 'search' => 'beonex', 'caractdebut' => 'beonex'),

			array('nom' => 'BonEcho', 'search' => 'bonecho', 'caractdebut' => 'bonecho'),

			array('nom' => 'Camino', 'search' => 'camino', 'caractdebut' => 'camino'),

			array('nom' => 'Cheshire', 'search' => 'Cheshire', 'caractdebut' => 'Cheshire'),

			array('nom' => 'Chimera', 'search' => 'chimera', 'caractdebut' => 'chimera'),

			array('nom' => 'CometBird', 'search' => 'CometBird', 'caractdebut' => 'CometBird'),

			array('nom' => 'Cyberdog', 'search' => 'Cyberdog', 'caractdebut' => 'Cyberdog'),

			array('nom' => 'DeskBrowse', 'search' => 'DeskBrowse', 'caractdebut' => 'DeskBrowse'),

			array('nom' => 'Dillo', 'search' => 'Dillo', 'caractdebut' => 'Dillo'),

			array('nom' => 'DoobleDooble', 'search' => 'DoobleDooble', 'caractdebut' => 'DoobleDooble'),

			array('nom' => 'Element Browser', 'search' => 'Element Browser', 'caractdebut' => 'Element Browser'),

			array('nom' => 'Elinks', 'search' => 'Elinks', 'caractdebut' => 'Elinks'),

			array('nom' => 'Fennec', 'search' => 'Fennec', 'caractdebut' => 'Fennec'),

			array('nom' => 'Firebird', 'search' => 'Firebird', 'caractdebut' => 'Firebird'),

			array('nom' => 'Galaxy', 'search' => 'Galaxy', 'caractdebut' => 'Galaxy'),

			array('nom' => 'Galeon', 'search' => 'Galeon', 'caractdebut' => 'Galeon'),

			array('nom' => 'GranParadiso', 'search' => 'GranParadiso', 'caractdebut' => 'GranParadiso'),

			array('nom' => 'Hana', 'search' => 'Hana', 'caractdebut' => 'Hana'),

			array('nom' => 'HotJava', 'search' => 'HotJava', 'caractdebut' => 'HotJava'),

			array('nom' => 'IBM WebExplorer', 'search' => 'IBM WebExplorer', 'caractdebut' => 'IBM WebExplorer'),

			array('nom' => 'IBrowse', 'search' => 'IBrowse', 'caractdebut' => 'IBrowse'),

			array('nom' => 'iCab', 'search' => 'iCab', 'caractdebut' => 'iCab'),

			array('nom' => 'Iceape', 'search' => 'Iceape', 'caractdebut' => 'Iceape'),

			array('nom' => 'IceCat', 'search' => 'IceCat', 'caractdebut' => 'IceCat'),

			array('nom' => 'iNet Browser', 'search' => 'iNet Browser', 'caractdebut' => 'iNet Browser'),

			array('nom' => 'K-Ninja', 'search' => 'K-Ninja', 'caractdebut' => 'K-Ninja'),

			array('nom' => 'Kazehakase', 'search' => 'Kazehakase', 'caractdebut' => 'Kazehakase'),

			array('nom' => 'KMLite', 'search' => 'KMLite', 'caractdebut' => 'KMLite'),

			array('nom' => 'LeechCraft', 'search' => 'LeechCraft', 'caractdebut' => 'LeechCraft/Poshuku'),

			array('nom' => 'Links', 'search' => 'Links', 'caractdebut' => 'Links'),

			array('nom' => 'Lorentz', 'search' => 'Lorentz', 'caractdebut' => 'Lorentz'),

			array('nom' => 'Minefield', 'search' => 'Minefield', 'caractdebut' => 'Minefield'),

			array('nom' => 'Minimo', 'search' => 'Minimo', 'caractdebut' => 'Minimo'),

			array('nom' => 'Namoroka', 'search' => 'Namoroka', 'caractdebut' => 'Namoroka'),

			array('nom' => 'NCSA_Mosaic', 'search' => 'NCSA_Mosaic', 'caractdebut' => 'NCSA_Mosaic'),

			array('nom' => 'NetNewsWire', 'search' => 'NetNewsWire', 'caractdebut' => 'NetNewsWire'),

			array('nom' => 'NetPositive', 'search' => 'NetPositive', 'caractdebut' => 'NetPositive'),

			array('nom' => 'NetSurf', 'search' => 'NetSurf', 'caractdebut' => 'NetSurf'),

			array('nom' => 'OmniWeb', 'search' => 'OmniWeb', 'caractdebut' => 'OmniWeb'),

			array('nom' => 'Oregano', 'search' => 'Oregano', 'caractdebut' => 'Oregano'),

			array('nom' => 'Phoenix', 'search' => 'Phoenix', 'caractdebut' => 'Phoenix'),

			array('nom' => 'Prism', 'search' => 'Prism', 'caractdebut' => 'Prism'),

			array('nom' => 'QtWeb Internet Browser', 'search' => 'QtWeb Internet Browser', 'caractdebut' => 'QtWeb Internet Browser'),

			array('nom' => 'retawq', 'search' => 'retawq', 'caractdebut' => 'retawq'),

			array('nom' => 'SeaMonkey', 'search' => 'SeaMonkey', 'caractdebut' => 'SeaMonkey'),

			array('nom' => 'Shiretoko', 'search' => 'Shiretoko', 'caractdebut' => 'Shiretoko'),

			array('nom' => 'Vonkeror', 'search' => 'Vonkeror', 'caractdebut' => 'Vonkeror'),

			array('nom' => 'Xtreme Browser', 'search' => 'Xtreme Browser', 'caractdebut' => 'Xtreme Browser'),

			array('nom' => 'w3m', 'search' => 'w3m', 'caractdebut' => 'w3m'),

			

			

			/* console */

			array('nom' => 'Playstation 3', 'search' => 'Playstation 3', 'caractdebut' => 'Playstation 3'),

			array('nom' => 'Playstation Portable', 'search' => 'Playstation Portable', 'caractdebut' => 'Playstation Portable);')

		);	

	

	return $liste;

	}

?>

Conclusion :

Le script ayant la plus haute compatibilité en matière de détection de navigateur. Il se base sur une logique permettant d'éditer et rajouter aisément des navigateurs.
Il vous permettra d'adapter le rendu graphique de vos pages en fonction des moteurs web graphiques utilisé par vos visiteurs.

PS: le zip n'est pas a jours, utilisez le copié-collé

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
8
Date d'inscription
dimanche 7 novembre 2010
Statut
Membre
Dernière intervention
16 novembre 2010

J'entends rangé par a la fin du code, pour la feuille annexe, je le ferais peut-être si je trouve d'autres trucs a ajouter car en attendant, ce n'est pas le plus utile ^^.
Messages postés
125
Date d'inscription
mardi 4 août 2009
Statut
Membre
Dernière intervention
27 novembre 2010

bah heuuu néophyte, non, au contraire, un néophyte vas plus galérer en ayant à chercher ça dans le code qu'en ayant un fichier annexe.

Pour listenavigateur(); je ne comprends toujours pas l'intérêt, qu'appèle tu "ranger" ? $liste remplis déjà son rôle de "rangement".
Messages postés
8
Date d'inscription
dimanche 7 novembre 2010
Statut
Membre
Dernière intervention
16 novembre 2010

Pour l'utilité, moi c'est pour lorsque j'ai un css personnalisé pour firefox. Mais l'utilitaire est prévu pour toute future autre utilité, car je suis certains que d'autres auront du boulot pour lui pour d'autres utilisations que moi.

J'ai préféré garder tout en un seul fichier histoire qu'un néophite (comme moi) s'y retrouve facilement et éviter de produire deux fichiers pour un seul petit utilitaire.
Ce programme est actuellement prévu pour qu'on l'actualise manuellement, je pourrais peut-être améliorer le système de stockage mais je préfère tout garder dans un seul fichier php (j'aime pas me retrouver avec une flopée de fichier dans mes dossiers ^^).
Mais je dis pas qu'une version améliorée ne sera pas disponible dans le futur avec cette possibilité, je fais attention a toutes vos bonnes remarques ;)

Listenavigateur est une simple fonction permettant de ranger le tableau contenant la liste des navigateurs et la renvoyant a qui veut.
Messages postés
125
Date d'inscription
mardi 4 août 2009
Statut
Membre
Dernière intervention
27 novembre 2010

Je ne vois pas d'autre lieu pour en causer.

'fin bref, perso, il y as un truc qui me perturbe, c'est la non externalisation de ton listing de navigateurs, trop galère à mettre à jour.

puis je capte pas le but de la fonction listenavigateur(); ( si ce n'est pour une question de modularité, dans ce cas, bien vus )
Messages postés
8
Date d'inscription
dimanche 7 novembre 2010
Statut
Membre
Dernière intervention
16 novembre 2010

Statistique par exemple, mais je laisse google amener les gens qui auront besoin de ce programme; je ne pense pas que le lieu soit vraiment a discuter de son utilité mais plutôt de son perfectionnement si tu veux bien :)

Je pense ajouter un détecteur de robot pour ceux qui voudraient faire un peu comme les forums et afficher quand le robot google ou autres se promène sur leur site :)
Afficher les 19 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.