Page 1 sur 1

Retour à la ligne automatique

Posté : 24 juin 2010, 09:55
par Ezak
Bonjour,

J'ai une petite question j'espère que vous pourrez m'aider.

J'ai fais un script qui va rechercher des informations dans une BD et les affiche dans un tableau.

Ce sont des données météorologiques transmise par une station.
Je souhait avoir un tableau qui contient tout, ensuite pour les données de chaque jour un nouveau tableau et à l'intérieur d'un tableau d'un jour, 24 tableaux qui contiennent les données de une heure.

Voilà mon script:
<?php
 require('includes/application_top.php');
 //$id = (isset($_REQUEST['id']))?$_REQUEST['id']:'';	 
 ?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="<?php echo DIR_WS_STYLES; ?>style_admin.css" type="text/css" media="screen" />
<title>Page d'archives</title>
</head>
<body>
<?php
//Requête pour sélectionner les jours d'archives de la stations voulue
 $result = db_query("SELECT DISTINCT DATE_FORMAT(`data_time`, '%Y-%m-%d') AS jours FROM `data2` LEFT OUTER JOIN sensors ON data2.data_sensor_id = sensors.sensor_id WHERE sensor_station_id = 1001");
 //Pour chaque jour
 while($row = db_fetch_array($result)){
 // On crée le le tableau qui contiendra les données pour un jour
?>
	<table width="1024px">
		<thead>
			<th>Jours: <?php echo $row['jours']; ?></th>
		</thead>
		<tbody>
		<tr>

<?php
		//Requête pour sélectionner les heures correspondantes au jour et à la stations
		$result2 = db_query("SELECT DISTINCT DATE_FORMAT(`data_time`, '%Y-%m-%d') AS jours, DATE_FORMAT(`data_time`, '%H:00') AS heures FROM `data2` LEFT OUTER JOIN sensors ON data2.data_sensor_id = sensors.sensor_id WHERE sensor_station_id = 1001 AND `data_time` LIKE '".$row['jours']."%'");																																																																																																																							
		//Pour chaque heure ...
		while($row2 = db_fetch_array($result2)){
?>		
			<td>
			<table>
				<thead>
					<th><?php echo $row2['heures']; ?></th>
				</thead>
				<tbody>
				<tr>
				<td>
<?php
				//Requête pour sélectionner les messures correspondantes à l'heure, au jour et à la station
				$result3 = db_query("SELECT * FROM `data2` LEFT OUTER JOIN sensors ON data2.data_sensor_id = sensors.sensor_id LEFT OUTER JOIN units ON sensors.sensor_unit_id = units.unit_id WHERE sensor_station_id = 1001 AND `data_time` LIKE '".$row['jours']." ".$row2['heures']."%' ORDER BY sensor_channel");
				//Pour chaque mesure ...
?>					
					<table>				
<?php
					while($row3 = db_fetch_array($result3)){
?>					
						<tr>
							<td><?php echo $row3['sensor_name']; ?></td>
						</tr>
						<tr>
							<td><?php echo $row3['data_value']; ?> <?php echo $row3['unit_unit']; ?></td>

						</tr>
<?php
				}
?>
				</table>
				</td>
				</tr>
				</tbody>
			</table>
			</div>
					</td>
<?php	
		}
?>

		</tr>
		</tbody>
	</table>
	</div>
<?php
 }
?>
</body>
</html>
Le problème: mes tableaux se crée bien comme il faut mais ceux de chaque heure se mettent tous sur une ligne et j'ai un scroll horizontale qui va à perpet.

Qqun aurait une solution pour que mes tableaux se mettent automatiquement à la ligne si il dépassent 1024px de largeur ?

Merci d'avance :lol: et bonne journée

Re: Retour à la ligne automatique

Posté : 24 juin 2010, 10:17
par telnes
hello

ne pas mettre le <td> dans le while ... peut etre

++

Re: Retour à la ligne automatique

Posté : 24 juin 2010, 11:08
par Ezaki
hello

ne pas mettre le <td> dans le while ... peut etre

++

Non je ne pense pas que ca résoudra le problèmes :(
ça me donnera juste un paquet de donnée dans la même cellule et j'aurais un problème de mise en page après.

Merci quand même ++

Re: Retour à la ligne automatique

Posté : 24 juin 2010, 21:09
par Aureusms
Tu pourrais essayer de faire avec les CSS et la position float: left; mais que avec des paragraphes. Il faudra donc repenser ton affichage. La position float permettrait par exemple à des paragraphes de se mettre côte à côte et de revenir à la ligne.