查看来自多个表的所有数据(html / php)

时间:2019-07-12 00:29:36

标签: php html

我希望能够以结构化的方式显示来自表的数据。让我解释一下,我想在第一张表中恢复x数据并在第二张表中做同样的事情,但我希望显示顺序地面对: 第一行->第一表数据-第二表数据 第二行->数据第一表-数据第二表 ...

我用于连接BDD的功能

<?php
   function connexionPDO(){
       $login = "root";
       $mdp = "";
       $bd = "test_tuto";
       $serveur = "localhost";
       try{
           $conn = new PDO("mysql:host=$serveur;dbname=$bd", $login, $mdp);
           return $conn;
       }catch(PDOException $e){
           print "Erreur de connexion PDO";
           die(); // On peut également faire un return null
       }
   }
?>

我的测试无法正常工作

<?php

$pdo = connexionPDO();


//$reponse = $pdo->query('SELECT * FROM profil WHERE pseudo_profil=\'' . $_GET['pseudo'] . '\' order by datemesure desc');
 $reponse = $pdo->query('SELECT p.datemesure, p.nom, p.profession, p.tel, p.email, p.conducteur, 
 p.circonstance, p.proces, p.vehiculeAssure, p.degats, p.blesses, p.dateAccident, p.lieu, p.gps, 
 p.pseudo_profil, f.photo_name, f.signature_name, f.caption FROM profil p LEFT OUTER JOIN photo f 
  ON  f.caption=p.pseudo_profil ORDER BY p.datemesure desc');

  // On affiche chaque entrée une à une
   while ($donnees = $reponse->fetch())
   {

    ?>
        <div class="encadrement">

        <p class="encadrement_e"> Date d'enregistrement : <?php echo $donnees['datemesure']; ?> </p> </br>
        <p class="encadrement_e2"/> <strong>Nom du propriétaire du véhicule : </strong><?php echo $donnees['nom']; ?> </br>
        <p class="encadrement_e2"/> <strong>Profession : </strong><?php echo $donnees['profession']; ?> </br>
        <p class="encadrement_e2"/> <strong>Numéro de téléphone : </strong><?php echo $donnees['tel']; ?> </br>
        <p class="encadrement_e2"/> <strong>Email : </strong><?php echo $donnees['email']; ?> </br>
        <p class="encadrement_e2"/> <strong>Nom du conducteur: </strong><?php echo $donnees['conducteur']; ?> </br>
        <p class="encadrement_e2"/> <strong>Circonstance de l'accident : </strong><?php echo $donnees['circonstance']; ?> </br>
        <p class="encadrement_e2"/> <strong>procès verbal établi ? </strong><?php echo $donnees['proces']; ?> </br>
        <p class="encadrement_e2"/> <strong>Le véhicule est-il assuré ? </strong><?php echo $donnees['vehiculeAssure']; ?> </br>
        <p class="encadrement_e2"/> <strong>Dégats de l'accident : </strong><?php echo $donnees['degats']; ?> </br>
        <p class="encadrement_e2"/> <strong>Nom et nombre des blessés : </strong><?php echo $donnees['blesses']; ?> </br>
        <p class="encadrement_e2"/> <strong>Date de l'accident : </strong><?php echo $donnees['dateAccident']; ?> </br>
        <p class="encadrement_e2"/> <strong>Lieu de l'accident : </strong><?php echo $donnees['lieu']; ?> </br>
        <p class="encadrement_e2"/> <strong>Données GPS : </strong><?php echo $donnees['gps']; ?> </br>
        <p class="encadrement_e2"/> <strong>Pseudo du propriétaire du compte : </strong><?php echo $donnees['pseudo_profil']; ?> </br>

        </div>
    <?php
    }

?>

在我的2个表中有4行,它向我显示表的每一行“概要文件” 4次,这根本不正常。 如果有人可以给我带来一些解决方案,我将非常高兴。 祝大家一切顺利。

1 个答案:

答案 0 :(得分:0)

您好,纳迪尔(Nadir),谢谢您这么早做出答复。实际上,我不知道表联接上的此属性。因此,我按如下所示进行了规避,虽然它不是很专业,但是可以:

$reponse = $pdo->query('SELECT * FROM profil WHERE profil.pseudo_profil=\'' . $_GET['pseudo'] . '\' order by datemesure desc');
			$reponse2 = $pdo->query('SELECT * FROM photo WHERE photo.caption=\'' . $_GET['pseudo'] . '\' order by id desc');
			
			?><div class="encadrement"><?php
				
				while ($donnees = $reponse->fetch())
				{
			?>
					<p class="encadrement_e"> Date d'enregistrement : <?php echo $donnees['datemesure']; ?> </p> </br>
					<p class="encadrement_e2"/> <strong>Nom du propriétaire du véhicule : </strong><?php echo $donnees['nom']; ?> </br>
					<p class="encadrement_e2"/> <strong>Profession : </strong><?php echo $donnees['profession']; ?> </br>
					<p class="encadrement_e2"/> <strong>Numéro de téléphone : </strong><?php echo $donnees['tel']; ?> </br>
					<p class="encadrement_e2"/> <strong>Email : </strong><?php echo $donnees['email']; ?> </br>
					<p class="encadrement_e2"/> <strong>Nom du conducteur: </strong><?php echo $donnees['conducteur']; ?> </br>
					<p class="encadrement_e2"/> <strong>Circonstance de l'accident : </strong><?php echo $donnees['circonstance']; ?> </br>
					<p class="encadrement_e2"/> <strong>procès verbal établi ? </strong><?php echo $donnees['proces']; ?> </br>
					<p class="encadrement_e2"/> <strong>Le véhicule est-il assuré ? </strong><?php echo $donnees['vehiculeAssure']; ?> </br>
					<p class="encadrement_e2"/> <strong>Dégats de l'accident : </strong><?php echo $donnees['degats']; ?> </br>
					<p class="encadrement_e2"/> <strong>Nom et nombre des blessés : </strong><?php echo $donnees['blesses']; ?> </br>
					<p class="encadrement_e2"/> <strong>Date de l'accident : </strong><?php echo $donnees['dateAccident']; ?> </br>
					<p class="encadrement_e2"/> <strong>Lieu de l'accident : </strong><?php echo $donnees['lieu']; ?> </br>
					<p class="encadrement_e2"/> <strong>Données GPS : </strong><?php echo $donnees['gps']; ?> </br>
					<p class="encadrement_e2"/> <strong>Pseudo du propriétaire du compte : </strong><?php echo $donnees['pseudo_profil']; ?> </br>
					<?php 
						$donnees2 = $reponse2->fetch();
					?>
					<p class="encadrement_e2"/> <strong>Nom de la photo de l'accident : </strong><?php echo $donnees2['photo_name'];?></br><?php
					echo '<a href="phone/upload_photo/'.$donnees2['photo_name'].'"><img class="encadrement_e3" src="phone/upload_photo/'.$donnees2['photo_name'].'" alt="photo accident" title="Cliquez pour agrandir"/></a>';
					?> </br>
					<p class="encadrement_e2"/> <strong>Nom de la signature : </strong><?php echo $donnees2['signature_name'];?></br><?php
					echo '<a href="phone/upload_signature/'.$donnees2['signature_name'].'"><img class="encadrement_e3" src="phone/upload_signature/'.$donnees2['signature_name'].'" alt="photo signature" title="Cliquez pour agrandir"/></a>';
					?> </br>
					
					
					<div class="espace"> </div>
					
				<?php
				}
				$reponse->closeCursor(); // Termine le traitement de la requête
				
			?></div><?php