Afficher deux requêtes differents sur meme table
Bonjour à tous
j'ai vraiment besoin de votre aide , pouvez vous m'aider sil vous plait , j’apprends le php actuellement depuis 2 jours
je fais du traitement de données php sur oracle 11g , j' utilise pdo , ma connection à ma base est parfaite.
mon souci est d'utilisé deux requêtes différentes avec une même table et d'afficher les résultats : de cette façon
date_parcourt ,distancev120 ; distancev140 ; performance120 ; performance140 , mon souci est au niveau de mon foreach qui doit utiliser les deux requêtes
différente à cause de de l'id équipement est propre à chaque équipement : ( je donne plus d'information dans le commentaire du code)
Données :
Table : velo (ve_id ,equi_id,date_parcourt, distance ,performance)
equipement (equi_id , nom_tb)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| <?php
require('db_connect.php');
//requête pour avoir les données de l'equipement v120
$requete1 = $conn->query("select * from velo where equi_id in (2358,2383)");
// requête pour avoir les données de l'équipement v140
$requete2 = $conn->query("select * from velo where equi_id in (2380,2381)");
foreach ($requete1 as $row1) {
/* affichage des deux resultats */
// je souhaite afficher les données des deux requêtes .les deux requêtes utilisent la même table ,même colonnes mais les données change en fonction
//du equi_id qui leur sont prope . en gros je veux comparer les données de léquipement v120 et de léquipement v140 sur le velo.
//je ne sais pas coment utiliser $requete2 as $row2 en même tant que foreach ($requete1 as $row1). dois je utiliser deux foreach ? comment ?
?>
<tr>
<td><?php echo $row1['date_parcourt']; ?></td>
<td><?php echo $row1['distance']; ?></td><td><?php echo $row2['distance']; ?></td>
<td><?php echo $row1['performance']; ?></td><td><?php echo $row2['performance']; ?></td>
<?php } ?>
</table border="10"> |
Merci bcp
2 pièce(s) jointe(s)
Php pdo - 3 listes déroulantes - affichage des données
je m'excuses de vous déranger encore mais j'ai encore un autres soucis à part le prémier soucis de comparaison des données V140 et V120.
toujours avec ma table : tmp_trip_data.
je fois faire un formulaire qui utilisent 3 listes déroulantes :
- une liste déroulante : type de vélo
-une liste déroulante : id Equipement
-une liste déroulante : date
-un bouton de validation
je dois afficher le resultat des éléments sélectionner et valider
mes données sont :
TypeVelo |
V140 (TTD_EQUIP_ID) |
V120_id (TTD_EQUIP_ID) |
BMX |
2358 |
2380
|
Vtt |
2383 |
2381 |
Atala |
2389 |
2388 |
BTWIN |
2386 |
2409 |
CERVELO |
2385 |
2384 |
l'unique table que nous avons : tmp_trip_data
Table : TMP_TRIP_DATA |
libellés |
TTD_EQUIP_ID |
Numéro de l’équipement |
TTD_CREATION_DT |
Date |
TTD_TYPE_VELO |
Type de vélo |
TTD_DISTANCE_PER_DAY |
Distance |
TTD_TOTAL_NUMBER_A |
Number_Arrival |
TTD_TOTAL_NUMBER_D |
Number_Departure |
TTD_TOTAL_NUMBER_T |
Number_T |
TTD_GPS_ACC_RATE |
Number_of_Alerts |
TTD_GPS_OFFSET_RATE |
GPS_availability_per_d |
voici le code de mon formulaire : quand , je fais ainsi je vois bien mes 3 listes déroulantes qui contiennent des données mais le gros soucis , je n'arrivent pas à avoir l'affichage de mes données après selections des 3 données et validation.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Liste déroulante test</title>
</head>
<body>
<form method="post" action="traitement0.php">
<label for="tmp_trip_data">quel est le type de velo ?</label><br />
<select name="tmp_trip_data" id="tmp_trip_data">
<?php
require('db_connect_oracle_payd.php');
$reponse = $conn->query('SELECT * FROM tmp_trip_data');
while ($donnees = $reponse->fetch())
{
?>
<option value=" <?php echo $donnees['TTD_TYPE_VELO']; ?>"> <?php echo $donnees['TTD_TYPE_VELO']; ?></option>
<?php
}
$reponse->closeCursor();
?>
</select>
<label for="tmp_trip_data">quel est le type de device ?</label><br />
<select name="tmp_trip_data" id="tmp_trip_data">
<?php
require('db_connect_oracle_payd.php');
$reponse = $conn->query('SELECT * FROM tmp_trip_data');
while ($donnees = $reponse->fetch())
{
?>
<option value=" <?php echo $donnees['TTD_DEV_ID']; ?>"> <?php echo $donnees['TTD_DEV_ID']; ?></option>
<?php
}
$reponse->closeCursor();
?>
</select>
</select>
<label for="tmp_trip_data">quel est la date du FT ?</label><br />
<select name="tmp_trip_data" id="tmp_trip_data">
<?php
require('db_connect_oracle_payd.php');
$reponse = $conn->query('SELECT * FROM tmp_trip_data');
while ($donnees = $reponse->fetch())
{
?>
<option value=" <?php echo $donnees['TTD_CREATION_DT']; ?>"> <?php echo $donnees['TTD_CREATION_DT']; ?></option>
<?php
}
$reponse->closeCursor();
?>
</select>
<p>
<input type="submit" value="Envoyer" />
</p>
</form>
</body>
</html> |
voici le code de mon fichier de traitement :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
<?php
if (empty($_POST['TTD_TYPE_VELO']) || empty($_POST['TTD_DEV_ID']) || empty($_POST['TTD_CREATION_DT'])) {
echo '<p class="erreur">Attention, vous devez remplir tous les champs</p>';
} else {
// connexion à la base
require_once("db_connect_oracle_payd.php");
// on écrit la requête sql
$sql = 'INSERT INTO tmp_trip_data(TTD_TYPE_VELO, TTD_DEV_ID, TTD_CREATION_DT) VALUES(' . $bdd->quote($_POST['TTD_CAR_TRIP_TYPE']) . ','
. $bdd->quote($_POST['TTD_DEV_ID']) . ','
. $bdd->quote($_POST['TTD_CREATION_DT']) . ')';
// on insère les informations du formulaire dans la table
try {
$bdd->query($sql);
} catch (Exception $e) {
echo '<p class="erreur">', $e->getMessage(), '</p>';
}
// on affiche le résultat pour le visiteur
echo '<span class="laclasse qui va bien">Votre message à bien été envoyé !</span>';
}
?> |
j'ai mit les deux fichiers en pièce jointe ( liste.php et traitement0.php) , merci merci mille merci pour votre aide