Fonction PHP get_browser .



  • Bonjour,

    Je voudrais utiliser la fonction get_browser pour pouvoir l'utiliser pour mes scripts …
    Je m'explique :
    je dois voir si :

    • les cookies sont activé
    • le js actif .

    Voici le lien de la fonction : http://php.net/manual/fr/function.get-browser.php
    Et d'après se que j'ai lu, il faudrait le configurer dans php.ini :? :?
    Le ptit lien de l'article : https://admin-serv.net/blog/2009/11/29/ … t_browser/

    Ou sinon indiquer moi avec quel fonction je peut détecter ses 2 paramètres ...
    Je suis sur le ns11

    Merci d'avance Corentin



  • Pour le javascript il suffit des balises en html```
    <noscript>Javascript non actif</noscript>

    setcookie('nom_cookie', 'valeur_cookie');
    if (isset($_COOKIE['nom_cookie']))
    {
    echo "Les cookies sont activé";
    }
    else
    {
    echo "Les cookies ne sont pas activé";
    }

    La fonction setcookie() doit être utilisé avant l'écriture de html


  • Oué mes comment je retourne tout sa dans 1 variables …. :? Pour le js

    Corentin



  • 2 variables ? Je suis pas sur de bien te suivre la ^^'



  • Oué pour pourvoir savoir si le js est actif ou pas pour choisir quel type de vérif j'utilise …



  • J'ai fait ce code mais je suis pas sur qu'il marche a 100% car faire une condition avec du html c'est limite ^^ :

    <?php
    setcookie('nom_cookie', 'valeur_cookie');
    if (isset($_COOKIE['nom_cookie']))
    {
    	$cookie_actif = true;
    }
    else 
    {
    	$cookie_actif = false;
    }
    ?>
    
    <script><?php $js_actif = true; ?></script>
    <noscript><?php $js_actif = false; ?></noscript>
    
    <?php
    if ($cookie_actif)
    {
    	echo "cookie actif";
    }
    else
    {
    	echo "cookie non actif";
    }
    
    if($js_actif)
    {
    	echo "Javascript actif";
    }
    else
    {
    	echo "Javascript non actif";
    }
    ?>
    


  • re,

    Presque mes sa me renvoie toujours Javascript actif si il est désactivé …
    Je c'est vraiment pas comme je peut faire ? :cry: :cry:

    Merci
    Corentin



  • Sa devrait être quelques chose comme sa:

    function test_capacity()
    	{
    		$capacity = get_browser(null, true);
    
    		if ($capacity['cookies'] === 1 and $capacity['javascript']) return true;
    		else return false;
    	}
    
    

    J'ai pas tester, mais sa devrait marcher.

    Faut lire la doc, celle de PHP est super bien foutue.



  • Salut,
    @phenix:

    		$capacity = get_browser(null, true);
    
    

    Sauf que comme indiquer si dessus faut configurer php.ini …



  • Mise à jour, j'ai fait une erreur:

    function test_capacity_broswer()
    	{
    		$capacity = get_browser(null, true);
    
    		if ($capacity['cookies'] === 1 and $capacity['javascript'] === 1) return true;
    		else return false;
    	}
    

    Sauf que comme indiquer si dessus faut configurer php.ini …

    Oui, mais en même temps, cette fonction n'a pas beaucoup d'intérêt:

    • Elle ce base sur les capacité THEORIQUE du navigateur, et non celle qui sont réellement activée.

    A ma connaissance, il n'y a aucun moyen de vérifier que le javascript est activer via PHP. De même le seul moyen de tester si les cookies sont activer est de le teste soi même.

    Pour tester proprement les cookies:

    if (!setcookie('nom_cookie', 'valeur_cookie')) echo 'Cookies n'ont activé';
    
    

    Note pour Game-War: On peu lire dans la doc que setcookie renvoie false si elle échoue, il suffit donc de tester la valeur de retour du setcookie. Si elle est différente de false, tout va bien.



  • Ok merci quand même ^^



  • Il est impossible d'être sûr que les cookies sont activés ou non.
    C'est simplement parce que la requête n'est théoriquement pas envoyée avant la fin du script (dans les faits c'est un peu différent), et que le cookie est créé par le navigateur à la réception de la requête.
    D'ailleurs la documentation php est stricte sur ce point :

    Si setcookie() réussi, elle retournera TRUE. Cela n'indique pas si le client accepte ou pas le cookie.



  • Oué mais les cookies c'est pas très embêtant …
    C'est plutôt le Json de javascript voir ici http://www.passion-camion.com/contact.html quand on valide ...

    Corentin



  • Dans ces cas-là, on fait généralement en sorte que le js ne soit pas bloquant.
    Suffit que tu fasses une version qui traite les données reçues sous le format JSON et une autre qui traite en considérant que les données ont été envoyées par POST.
    T'as juste à rajouter un &version=json dans ton url du submit javascript, le traitement associé au POST, et le tour est joué. :)



  • Oué mes comment tu différencie les 2.
    Je m'explique comment tu peut savoir si sa par en json ou que sa part en post php …

    Corentin



  • Remplace

    $.post(url,{nom:nom,prenom:prenom,mail:mail,objet:objet,message:message}
    ```par
    

    $.post(url,{json:'yes',nom:nom,prenom:prenom,mail:mail,objet:objet,message:message}

    Ensuite t'as juste un faire un
    

    if (isset($_POST['json'])) {
    ...
    }



  • Même si le js est désactivé sa me renvoie yes donc sa coince …

    Corentin



  • Ça, ce n'est pas trop très possible.
    T'es sûr d'avoir remplacé les bons codes ?
    Un echo de $_POST['json'] te donne yes ?



  • oué tout le temps je les enlever …

    Dois avoir un moyen en démarrant jquery mes je trouve pas ...

    Corentin


Se connecter pour répondre
 

Il semble que votre connexion ait été perdue, veuillez patienter pendant que nous vous re-connectons.