Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Jointure PHP-MySQL

0 views
Skip to first unread message

Yannick VOYEAUD

unread,
Jun 5, 2021, 1:16:06 PM6/5/21
to
Bonsoir,

Le problème d'hier étant résolu je me penche sur un autre problème!
Ce que je veux
1) afficher Tous les champs de biblio_livres sauf Editeur qui doit être
servi par le champ Nom de biblio_editeurs sachant que Editeur de la
première table correspond à Id de la seconde

Je n'arrive pas à faire la jonction dans la vraie page. Si je le fait
dans une page spécifique c'est bon avec le seul code de la jointure.
Voici le code de la page que je veux modifier. J'ai supprimé tout ce qui
était inutile à la résolution du problème.

Merci de votre aide.

Amitiés


<?php echo "<?xml version=\"1.0\" encoding=\"UTF-8\">"; ?><?php
//INCLUSION DU FICHIER DE CONNEXION
require("../../.tcennoc/tcennoc.php");


//CONNEXION A LA BASE
$mysql_id=mysql_connect($server,$user,$pwd);

// Sortir du script en cas de problème de connexion
//au serveur.
if(!$mysql_id){
echo "Problème de connexion à la base : ".mysql_errno().":
".mysql_error()."<br />";
exit;
}

//SELECTION DE LA BASE
mysql_select_db($base,$mysql_id);

//SELECTION DE LA TABLE
$table = 'biblio_livres';
$table2= 'biblio_editeurs';

// Récupération des éléments de recherches
$id=$_REQUEST['id']; //Reçu de la page précédente

//REQUETE SQL
$qry="SELECT * FROM $table WHERE Id='".$id."'";
//echo $qry;
//EXECUTION DE LA REQUETE
$result=mysql_query($qry);


//Jointure
$jointure="SELECT '$table'.Editeur, '$table2'.Nom
FROM $table2
INNER JOIN $table
ON biblio_livres.Editeur = biblio_editeurs.Id "; //AND
biblio_editeurs.Id='variable qui est l'Id trouvé à la requête précédente'";
//echo $jointure;
//EXECUTION DE LA REQUETE
$result2=mysql_query($jointure);


//AFFECTATION DES VALEURS RENVOYEES AUX VARIABLES
while($row=mysql_fetch_object($result)){
$Nom=$row->Nom; //vient de la table biblio_editeurs et c'est cela que je
veux afficher à la variable $Editeur

$Titre=$row->Titre;
$Sous_titre=$row->Sous_titre;

$Editeur=$row->Editeur;
}

//DECLARATIONS DES FONCTIONS RIGHT ET LEFT QUI N'EXISTENT PAS EN PHP !
function left($chaine,$num) {
return substr($chaine,0,$num);
}

function right($chaine,$num) {
return substr($chaine,-$num);
}
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr-FR">
<head>
<title>Biblioth&eagrave;que des Amis de Vienne - Fiche ouvrage</title>
<style type="text/css">

body{
font-family: Trebuchet MS,Verdana,Geneva,Arial,Helvetica,sans-serif;
}
span.bold{
font-weight: bold;
}
a:link {
color: #0A42A7;
text-decoration:underline;
padding-right: 6px;
padding-left: 6px;
}
a:visited {
color: #0A42A7;
text-decoration:underline;
padding-right: 6px;
padding-left: 6px;
}
a:hover{
text-decoration:none;
color:#0A42A7;
padding-right: 6px;
padding-left: 6px;
}
</style>
</head>
<Body><font color="#0000FF">
<h3 style="text-align: center">Ensemble des informations sur</h3>
<h2 style="text-align: center;"><?php echo $Titre." <br/>\n
".$Sous_titre;?></h2></font><br>
<?php
echo "<br />\n"; //On passe une ligne

//Éditeur
if ($Editeur){
echo "<div style=\"padding-left: 15px;\"><span
class=\"bold\">&Eacute;diteur :</span><a href=Editeur.php?test=$Editeur
name=&Eacute;diteur target=blank> <span>$Editeur</span></a> (Affichage
en clair à venir)</div>";
}
?>

<!-- Pied de page -->
<?php
echo "<br />\n"; //On passe une ligne
require ('../../Pied_page.php') ;
?>
</body>
</html>
--
Yannick VOYEAUD
Nul n'a droit au superflu tant que chacun n'a pas son nécessaire
(Camille JOUFFRAY 1841-1924, maire de Vienne)
http://www.voyeaud.org
Créateur CimGenWeb: http://www.francegenweb.org/cimgenweb/
Journées du Logiciel Libre: http://jdll.org
Généalogie en liberté avec Ancestris https://www.ancestris.org

OpenPGP_signature
0 new messages