Select dans deux table

Select dans deux table - PHP - Programmation

Marsh Posté le 30-10-2015 à 11:23:51    

Bonjour,  
 
je cherche actuellement a faire un tableau d'application s'appuyant sur deux tables de ma bdd  
 
le hic est lors du select, je ne sais pas comment faire deux select sur la même requete et qu'il s'affiche tous les deux dans mon tableaux  
pour le moment il me prend la derniere table et n'affiche pas la premiere  
 
voici mon code :

Code :
  1. <?php
  2.                         include '..\Script\connectdb.php';
  3.                         $link = mysqli_connect ($host,$user,$pass) or die ('Erreur01 : '.mysql_error() );
  4.                             mysqli_select_db($link, $db) or die ('Erreur02 :'.mysql_error());
  5.                             mysqli_set_charset($link, "utf8" );
  6.                         $select = 'SELECT * FROM applisa , applial';
  7.                         $result = mysqli_query($link,$select) or die ('Erreur03 : '.mysql_error() );
  8.                         $total = mysqli_num_rows($result);
  9.                                 echo '<tr>';
  10.                                     echo '<td><input type="checkbox" id="FullCtrlApplis" ></input></td>';
  11.                                     echo '<td><strong>Nom<</strong></td>';
  12.                                     echo '<td><strong>Type</strong></td>';
  13.                                     echo '<td><strong>Connexion</strong></td>';
  14.                                     echo '<td><strong>Compte</strong></td>';
  15.                                     echo '<td><strong>Mot de passe</strong></td>';                           
  16.                         while($row = mysqli_fetch_array($result))
  17.                             {
  18.                                 echo '<tr>';
  19.                                     echo '<td id="CheckAppli" ><input type="Checkbox"  name="Appli[]" value='.$row["Nom"].'></input></td>';
  20.                                     echo '<td>'.$row["Nom"].'</td>';
  21.                                     echo '<td>'.$row["Type"].'</td>';
  22.                                     echo '<td>'.$row["ConnRequir"].'</td>';
  23.                                     if ($row['ConnRequir'] == "Oui" ) {
  24.                                             echo '<td><input type="text"/></td>';
  25.                                             echo '<td><input type="password"/></td>';
  26.                                     }
  27.                                    
  28.                                 echo '</tr>'."\n";
  29.                             }
  30.                                                         $data = mysqli_fetch_all ($result);
  31.                             mysqli_free_result($result);
  32.                             mysqli_close($link);
  33.                         ?>
  34.                         </table>


 
merci d'avance

Reply

Marsh Posté le 30-10-2015 à 11:23:51   

Reply

Marsh Posté le 30-10-2015 à 11:34:26    

Faut faire une jointure entre les 2 tables (sur des clés primaires et/ou étrangères). -> tuto SQL :o


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 30-10-2015 à 11:40:36    

les jointures ce n'est pas le problème, c'est surtout la partie du tableaux qui me pose problème

Reply

Marsh Posté le 30-10-2015 à 11:53:25    

Quand je vois ça : $select = 'SELECT * FROM applisa , applial';
Je me dis que si, t'as bien un problème de jointure. Parce que là, ta requête fait un produit cartésien, donc, probablement pas ce à quoi tu t'attends :/
 
Par ailleurs, je te déconseille très vivement l'utilisation du * dans le select :o


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 03-11-2015 à 16:46:35    

Hello!
Si tes tables sont comme je le pense (un vieux truc moche où tu aurais une table par appli, mais ayant les même colonnes)
Tu peux faire avec UNION :  

Code :
  1. SELECT Nom,Type,ConnRequir,...FROM applisa UNION SELECT Nom,Type,ConnRequir,...FROM applial


Message édité par kokola le 03-11-2015 à 16:46:57
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed