IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[JS->PHP] sans ajax si possible


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut [JS->PHP] sans ajax si possible
    Bonjour,

    Je voudrais tester via Javascript la resolution avec laquelle un utilisateur parcourt une applic web(en tout debut de script), puis selon que sa largeur est superieur a 1280px ou non , definir une variable de session php.
    Je connais Ajax, mais tres peu, c'est pour cette raison que je prefererais ne pas l'utiliser pour le moment.(lorsque je l'uilise , c'est par le biais de la bibliotheque JS 'prototype').
    De plus je voudrais que cette verif se fasse avant tout autre code sur les pages car elle conditionnerait tout le reste de la page.

    Je remercie d'avance ceux qui se pencheront sur ma question.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    voir dasn la FAQ ...
    http://javascript.developpez.com/faq...vig#resolVisit

    sauf que pour la suite à mon avis tout devra se passer coté client ...

    c'est a dire avoir plusieurs css par exemple et activer celui qui correspond à la resolution ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut
    Merci pour ta reponse et tes pistes pour la gestion ulterieure des differents styles (via plusieurs feuilles css), je suis plutot à l'aise dira-t-on la dedans, mais mon souci est de declarer une variable de session php a partir d'une variable havascript :
    if(screen.width>=1280) { ????}
    else { ????? }

    et si c'est possible sans ajax, ou alors avec ajax, il faudrait que la lecture de la page soit bloquée jusqu'a la reponse du fichier php qui attribuerait la valeur "grande" ou "petite" à la variable $_SESSION['resolution'] (exemple)

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    ben à part faire un retour au serveur par un location.href mais l'effet risuqe de ne pas etre joli... (genre redirection)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    self.location.href="resolution.php?res="+screen.width
    tu n'a aucun autre moyen à part ajax de communiquer une info au serveur sans recharger la page (hormis un formulaire mais en l'occurence...)
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Salut,

    Si ça peut servir, tu peux faire une requête via une image lors
    de l'affichage de ta première page (si c'est pas trop tard :-)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var code = "<img src='resolution.php?res="+screen.width + "' />";
    document.write(code);

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut
    merci marcha, mais c'est deja trop tard, je me suis attelé a Ajax, et ca fonctionne MAIS, ..
    Voici mon code :
    au tout debut de l'entete html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <script type="text/javascript" src="http://{$serveur}js/ajax/prototype_1.5.1.js"></script>
    {if !$smarty.session.resolution}
    <script type="text/javascript" src="http://{$serveur}js/ajax/ajax_definir_resolution.js"></script>
    <script language="javascript">	
    set_navigateur_vars(screen.width);
    </script>
    {/if}
    Ma fonction set_navigateur_vars(r) contenu dans ajax_definir_resolution.js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    function fonction_vide(request)
    {
     
    }
     
    function set_navigateur_vars(r)
    {
     
    	var url = "../../../php_ajax/set_navigateur_vars.php";
    	var requete_ajax = new Ajax.Request(
    										url,
    										{ 	"method" : 'get',
    											"parameters" : "r="+r,
    											"onSuccess" : fonction_vide
    										}
    									);
    }
    Ma page set_navigateur_vars.php est tres sommaire et definie uniquement la valeur de $_SESSION['resolution'] comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    session_start();
    if($_GET['r']>=1280) { $_SESSION['resolution'] = "grande"; } else { $_SESSION['resolution'] = "petite"; }
    ?>
    Ca fonctionne comme ceci, mais la page est affichée une premiere fois sans que la variable $_SESSION['resolution'] ait reçu encore sa valeur. Par contre apres lors de la navigation pas de soucis , la variable de session est bien déclarée.

    Je voudrais bloquer la lecture du script par le navigateur le temps que le contenu de mon fichier soit executer, pouvez vous m'aider SVP

  7. #7
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Tu as essayé avec une requête Ajax synchrone ?

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 110
    Par défaut
    Ah non, j'essaie ca des demain matin et je poste le resultat.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/01/2012, 16h52
  2. Réponses: 7
    Dernier message: 15/02/2009, 23h01
  3. [AJAX] Php/MySQL + AJAX : est ce possible
    Par johan06 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 26/10/2006, 09h58
  4. [AJAX] Recharger un menu deroulant php sans recharger la page
    Par ns_deux dans le forum Général JavaScript
    Réponses: 25
    Dernier message: 22/07/2006, 15h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo