Rechercher : dans
Par :

Php et javascript: passation de variable

Dernière réponse le 18 jui 2007 à 19:29:44 tonguim, le 18 jui 2007 à 17:32:16 
 Signaler ce message aux modérateurs

Bonjour,

je voudrai afficher un certain nombre d'images sur une ligne d'un tableau. Le nombre d'images à afficher est relatif et dépend du nombre d'images que peut contenir la largeur de l'écran de l'ordinateur; le nombre de lignes du tableau variera donc d'une page à l'autre: pour cela il me faut connaître la largeur de l'écran; mais comment faire?
A l'aide d'un script javascript, je récupère la largeur de l'écran, mais je ne sais comment exploiter cette valeur dans du code php.

Voici mon code:

	<body>	
		<script language='JavaScript'>
			var name="LargEcran";
			lLargEcran=window.screen.width;
		</script>	
		<?php
			include "connexion.php";			
			
			$largEcran = $_GET['largEcran'];
				
			$php_select_pays=$_POST['select_pays'];			
			
			$requete="select repertoire, nom_timbre from timbres where pays like '$php_select_pays' ";
			$resultat=mysql_query($requete);
			
			echo "<table><tr><td><h1>Brésil</h1></td></tr></table>";
			
			while($ligne=mysql_fetch_array($resultat))
			{
				echo '<img src="../images/'.$ligne['repertoire'].'/'.$ligne['nom_timbre'].'" alt="" title="" />';
			}
		?>

	</body>
Configuration: Windows XP
Firefox 2.0.0.4

Meilleures réponses pour « php et javascript: passation de variable » dans :
[PHP] Notice: Undefined index: VoirSi vous utilisez les tableaux $_POST ou $_GET pour récupérer les variables de vos formulaires ou autres, il se peut que vous tombiez sur cette erreur: Notice: Undefined index 'champs du tableau' in 'chemin du fichier php en cours d'execution' on line...
PHP - Concaténation VoirPHP permet de concaténer des chaînes de caractères grâce à l'opérateur "." : $concatenation= $a . $b; Ou encore pour affecter, dans la variable $a, la valeur de la concaténation de $a et de $b : $a.=$b; Pour concaténer des chaînes et des...
Javascript - Les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. En Javascript, les noms de variables peuvent être aussi long que l'on désire,...
PHP - Les variables VoirConcept de variable avec PHP Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois...
PHP - Les variables d'environnement VoirNotion de variable d'environnement Les variables d'environnement sont, comme leur nom l'indique, des données stockées dans des variables permettant au programme d'avoir des informations sur son environnement. L'environnement, dans le cas du script...

1

A.Nonymous, le 18 jui 2007 à 17:36:49

Je pense deviner ce que tu veux obtenir, et je serais plutôt d'avis de te diriger vers des CSS (je suppose qu'il s'agit d'afficher autant d'images que possible sur une ligne, sans que ça fasse apparaitre l'ascenceur horizontal, et que les suivantes passent sur la ligne en dessous ... Si tel est le cas, il vaudrait mieux en effet voir du côté des CSS)

Répondre à A.Nonymous

2

JB Le Duigou, le 18 jui 2007 à 17:39:02

Est-ce que tu ne pourrais pas utiliser une variable caché d'un formulaire ?

Exemple :
<form id="trucmuche">
<input type="hidden" value="1200" />
</form>

Répondre à JB Le Duigou

3

JB Le Duigou, le 18 jui 2007 à 17:41:40

Après une deuxième réflexion, je pense que l'idéal serait de stocker la taille de l'ecran dans une session

Répondre à JB Le Duigou

4

Thiby, le 18 jui 2007 à 17:43:02

J'ai trouvé çà :

$valeurphp = "<script language='Javascript'> document.write(variableGlobaleJavascript); </script>";

sur

http://www.clubic.com/...

Apparemment le gars a réussi

Répondre à Thiby

5

 tonguim, le 18 jui 2007 à 19:29:44

Merci à Thiby; effectivement par ce moyen, on récupère bien en php la valeur de la variable javascript.
A.Nonymous a raison: je souhaite que l'affichage se fasse sans que la barre de défilement horizontale n'apparaîsse. Mais je ne vois pas comment le css peut résoudre dynamiquement mon problème.

Si seulement je pouvais récupérer la largeur (width) des cellules du tableau, les additionner (somme cumulative) et comparer à la largeur de l'écran, le tour serait joué.

NB: les images ont des largeurs différentes les unes des autres.

Si quelqu'un a une meilleure proposition, merci de me la proposer.

Répondre à tonguim
Collection CommentÇaMarche.net