Chark Posté 26 Octobre 2006 Partager Posté 26 Octobre 2006 Pour un meilleur confort visuel, je cherche à detecter la largeur du navigateur du l'internaute qui se connecte à mon site, pour ensuite afficher un nombre d'article par page ( pour un site de commerce ) en rapport. la fonction JS : var largeur;largeur = screen . width; Mais comment récuperer cette variable en variable php ? J'aimerais que "var largeur" soit récupérée dans une variable php du type $largeur Une solution ? ( de plus, si il existe une solution sans JS je suis preneur aussi ) merci Lien vers le commentaire Partager sur d’autres sites More sharing options...
Compte supprimé Posté 26 Octobre 2006 Partager Posté 26 Octobre 2006 une première solution ici http://www.commentcamarche.net/faq/sujet-8...ion-d-affichage Lien vers le commentaire Partager sur d’autres sites More sharing options...
Chark Posté 26 Octobre 2006 Auteur Partager Posté 26 Octobre 2006 merci, J'y avais pensé oui mais est il possible de faire cela sans modifier l'URL ou recharger la page ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Leonick Posté 26 Octobre 2006 Partager Posté 26 Octobre 2006 Attention à ne pas confondre largeur d'écran et largeur du navigateur ! En plus, même en supposant que l'on navigue plein écran, comment peut-on être sur que le visiteur ne navigue pas avec un bandeau latéral ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Chark Posté 26 Octobre 2006 Auteur Partager Posté 26 Octobre 2006 (modifié) Je suis bien d'accord avec toi. Mais dans mon cas particulier, cela n'est pas trop important : En gros: Je fais un site de e-commerce ( Rayon de soleil .Pour l'instant , la plupart des articles sont dans la catégorie "prochainement") qui va afficher un certain nombre d'articles par pages. Pour l'instant, j'ai défini ce nombre a 12 pour qu'il soit divisible par 2, 3 et 4 : Sur un navigateur en 800x600 : 2 articles par lignes, 6 lignes Sur un navigateur en 1024 : 3 articles par lignes, 4 lignes Sur un navigateur en 1280 : 4 articles par lignes, 3 lignes Le but étant que chaque ligne soit "complete", pas de trous Tout cela sans avoir besoin de JS ou autre, ni meme de connaitre la taille du navigateur ( Div en % et cellules en float ) Si l'internaute redimensionne son navigateur, cela va quand meme s'adapter sans problemes, car a chaque fois, chaque ligne sera complete ( exemple: un navigateur en 1024 redimensionné ou avec une colone favoris a gauche = 2 articles par lignes, 6 lignes ). Mais comme je suis très perfectionniste, j'ai remarqué que sur certains grands écrans le nombre d'articles affichés par ligne est 5, donc avec 12 articles par pages, cela fait moins joli ( 5 la premiere ligne, 4 la deuxieme ) La solution ? trouver un chiffre divisible par 2,3,4 et 5... mais le chiffre minimum dans ce cas est 60 , cela fait beaucoup trop d'articles par pages. D'ou mon idée de gerer aussi la résolution de l'affichage du navigateur pour essayer de trouver une solution intermédiaire pour rendre le site le plus parfait possible Modifié 26 Octobre 2006 par Chark Lien vers le commentaire Partager sur d’autres sites More sharing options...
Leonick Posté 26 Octobre 2006 Partager Posté 26 Octobre 2006 Le plus pratique, insérer une image invisible en js (qui contiendra l'id de session) qui enverra la taille de l'écran et qui sera récupérée par le serveur pour les pages suivantes... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Chark Posté 26 Octobre 2006 Auteur Partager Posté 26 Octobre 2006 Ca c'est une idée oui ! Ou encore inscrire la taille du navigateur dans un fichier texte récupéré par php ( avec l'id de session ).. mais JS sait faire ca ( écrire/créer un fichier texte ) ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Leonick Posté 26 Octobre 2006 Partager Posté 26 Octobre 2006 il serait où le fichier texte ? car pour une question de sécurité, en dehors d'un formulaire d'upload, le navigateur ne peut avoir accès aux fichiers locaux et js ne peut écrire sur le serveur Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 27 Octobre 2006 Partager Posté 27 Octobre 2006 Ou plus simplement (en oubliant carrément le JS et le traitement dynamique) : Tu gères chaque zone en DIV (et non plus en case de tableau), et tu attribues un style 'float: left' à chacun. De cette manière, quelle que soit la résolution d'écran de l'utilisateur, les blocs s'adapteront à l'espace disponible. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Chark Posté 27 Octobre 2006 Auteur Partager Posté 27 Octobre 2006 Tu gères chaque zone en DIV (et non plus en case de tableau), et tu attribues un style 'float: left' à chacun. De cette manière, quelle que soit la résolution d'écran de l'utilisateur, les blocs s'adapteront à l'espace disponible. Comme je l'ai dit précédemment, c'est déja exactement ce que je fais... Mon problème se situant sur le nombre d'articles à afficher, non pas sur leur positions Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant