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

Langage PHP Discussion :

Probléme de compatibilité avec Safari


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut Probléme de compatibilité avec Safari
    Bonjour,

    sur certains sites, selon la résolution de l'écran de l'utilisateur (obtenue via une fonction js), j'affiche un bandeau différent pour éviter de faire apparaître un ascenseur horizontal : je fais le choix via un switch PHP, puis je forme le nom du fichier via une concaténation PHP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $bandeau="nom_dépendant_de_la_résolution.jpeg"
    . Or, sous Safari, ça ne marche pas, l'image s'appelant tout le temps ".jpeg". Y a-t-il une solution pour éviter ça ?
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    PHP n'est pas dépendant du navigateur. Donc si ça marche sur FF ou IE et pas sur Safari à partir du même serveur, c'est probablement que le problème ne se situe pas au niveau du PHP. On va vérifier quand même, mais pour ça il nous faudrait un peu de code
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    OK, voici un des sites où j'ai le problème : http://ecuriesducoldelarc.free.fr et voici le code PHP où ce situe le problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?php $client_screen_width=$_GET['w']; $client_screen_height=$_GET['h']; $_SESSION['w']=$client_screen_width; $_SESSION['h']=$client_screen_height; 
    switch ($client_screen_width) { case 1280 : $image="banniere1280"; break; case 1024 : $image="banniere1024"; break; case 800 : $image="banniere800"; break; } $bandeau="../_frame/".$image.".jpeg"; ?>
    (Je ne mets pas le code de toute la page, car il est un peu longuet). Un brin d'explication : j'obtiens la largeur et la hauteur de l'écran via une fonction js, puis je la passe à la page PHP via l'URL (exemple : http://ecuriesducoldelarc.free.fr/topic/index1.php?w=1280&h=800), et je les stocke dans des variables session pour que ça puisse resservir. (Le lien de l'exemple ne marche pas, car pour qu'il s'affiche en entier, j'ai dû ruser)
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Je suppose que ta fonction javascript ne donne pas le resultat sur tous les navigateurs.
    Tu pourrais prévoir ce cas et définir une valeur par défaut.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Tu as probablement raison, mais comme je n'y connais rien en js (j'avais justement récupéré cette fonction sur ce forum), pourrais-tu me donner le code pour que je rajoute le code qui teste si le navigateur est safari ?
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  6. #6
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Je pense que ce que sabotage proposait, c'était plutôt d'ajouter une valeur par défaut dans ton switch sur la résolution pour les cas où la résolution n'est pas remontée. Ce qui marcherait aussi pour les gens qui ont des écrans un peu bizarres (genre mon écran qui utilise la résolution 1440*900)
    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
    switch ($client_screen_width) 
    { 
    	case 1280 : 
    		$image="banniere1280"; 
    		break; 
    	case 1024 : 
    		$image="banniere1024"; 
    		break; 
    	case 800 : 
    		$image="banniere800"; 
    		break; 
    	default : 
    		$image="banniere1024"; 
    		break; 
    }
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  7. #7
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Merci pour ta réponse et le code PHP, car même si je connais ça, il m'a suffit de faire un copier-coller ; je ne savais même pas que ta résolution existait (cela dit, si ma fonction js marchait sur ton navigateur, ça aurait marché...). Sinon, j'ai fait la modif que tu m'indiquais partout où ça s'imposait, soit sur toutes les pages de 3 sites , donc l'emploi d'un include m'aurait simplifié la vie, mais comme il n'y en avait pas, que le fait de le rajouter aurait pris au moins autant de temps que la modif et que le besoin risque de ne pas se représenter, je ne l'ai pas fait. Merci quand même.
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

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

Discussions similaires

  1. Problème de compatibilité avec firefox
    Par djnext dans le forum Mon site
    Réponses: 4
    Dernier message: 15/08/2006, 23h39
  2. Problème de compatibilité avec DreamWeaver 8.
    Par ok---Où dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 06/07/2006, 20h27
  3. [CKEditor] Problème de compatibilité avec FireFox
    Par FzF dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 28/06/2006, 16h07
  4. Problème de compatibilité avec IE ?¿
    Par artotal dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 13/01/2006, 04h14
  5. [LDAP] [D7] [NT] problème de compatibilité avec Win NT
    Par plante20100 dans le forum Web & réseau
    Réponses: 22
    Dernier message: 10/10/2005, 16h14

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