jointure

Répondre
silver
le 15/01/2006 à 17:24
silver
Bonjour !
J'aimerais avoir un renseignement, voilà je possède deux tables de données une nommée membres et l'autre connectes et je désires récupérer des valeurs sur les deux pour cela je dois faire une jointure. Maismalheureusement cela ne marche pas. Si quelqu'un pouvais me dire pkoi...
Voici mon code

<?php
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('espace_membre', $base);

$sql=mysql_query("SELECT pseudo, messages.titre FROM membres, messages ORDER BY pseudo");


while ($data = mysql_fetch_array($sql)) {

echo "$pseudo et $titre";


}

?>

Cela nefonctionne pas il ne m'affiche pas le titre de la table connecte et pas le pseudo de la table membres.
LA GLOBULE
le 15/01/2006 à 17:38
LA GLOBULE
Ben tu n'as fais aucune jointure, c'est peut etre pour cela que ca ne fonctionne pas.

Regarde le cours approprié du site, c'est expliqué comment faire.
i M@N
le 15/01/2006 à 17:40
i M@N
Hello !

Essaye comme ça :
<?php

$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('espace_membre', $base);

$sql = "SELECT pseudo, messages.titre FROM membres, messages ORDER BY pseudo";

/*on oublie pas de lancer la requête (mysql_query)
et on impose un message d'erreur si la requête
ne se passe pas bien (or die) */
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.''.mysql_error());

while ($data = mysql_fetch_array($req)) {

/*on oublie pas de récupérer les valeurs
qui nous intéressent ^^ */
$pseudo = $data['pseudo'];
$titre = $data['messages.titre'];

echo $pseudo.' et '.$titre;

}

?>
@+...
One Love, One Heart, One Unity.
i M@N
le 15/01/2006 à 17:41
i M@N
arf pitin c'est vrai y'a pas de jointure aussi ! smiley
One Love, One Heart, One Unity.
universdupc
le 15/01/2006 à 17:48
universdupc
Mais normalement celadevrais fonctionner car j'ai lu un cour sur le net pour faire l'association de deux table il montré cette syntaxe!!
universdupc
le 15/01/2006 à 18:06
universdupc
Ben il me semble que c'est ca si je suis la chose. Car la vous faite une jointure pour effecuter des condition (where) Mais moi jeveuxpas limiter la recherche juste récuprer les valeur donc la syntaxe est la même.
Je dois etre con car je compredn pas tout votre exemple je les compris mais pour mon cas je nepeux faire comme cela car ce n'est pas le focntionnement queje désire c'est pour cela que je les fait dans le select
i M@N
le 15/01/2006 à 18:21
i M@N
Reuh ...

bon on dirait que là c'est bon ... essaye ça :
<?php

$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('espace_membre', $base);

$sql = "SELECT membres.pseudo,messages.titre
FROM membres, messages
WHERE membres.pseudo = messages.pseudo
ORDER BY membres.pseudo ASC;";

/*on oublie pas de lancer la requête (mysql_query)
et on impose un message d'erreur si la requête
ne se passe pas bien (or die) */
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.''.mysql_error());

while ($data = mysql_fetch_array($req)) {

/*on oublie pas de récupérer les valeurs
qui nous intéressent ^^ */

$pseudo = $data['pseudo'];
$titre = $data['titre'];

echo $pseudo.'-'.$titre.'';

}

?>
@+...
One Love, One Heart, One Unity.
universdupc
le 15/01/2006 à 18:24
universdupc
En faite j'ai compris pour effecuter une jointure on doit avoir un element commun sur les deux mais moi j'ai pas d'element comment sur mes deux table.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours