begin process at 2012 05 30 22:05:52
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Bases de données

 > 

Jointure / pb affichage dans un while


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Jointure / pb affichage dans un while

mercredi 3 mai 2006 à 10:15:18 | Jointure / pb affichage dans un while

cybermalicia

kikou à tous !!!
Voila jsui en ce moment en train de créer un petit site dont je mettrait les sources en ligne une fois fini.

Mais pour le moment j'ai un petit souci d'affichage de requete dont voici un bout de code.

//Explications préalables : 
Ce code est un formulaire permettant ajouter suppr.... les droits d'un membre du bureau.

J'ai le même code de présent dans mes autres formulaires et tous passent correctement sauf que dans ce cas j'ai une requête avec une jointure. Je m'explique :
2 tables : 
   - une intitulée staff pour le nom prenom des membres du bureau
   - l'autre intitulée admin qui contient MDP + login.
Elles sont mises en relation grâce à id_staf présent dans les 2 tables.

<form name="add_user" method="POST">
<select name="liste">
<?
//Je liste les membres dans un menu déroulant ca c'est ok.
$staf = mysql_query('SELECT nom_staf, prenom_staf, id_staf FROM staff ORDER BY nom_staf') or die ('erreur accès base staff');
while ($staff = mysql_fetch_array($staf))
{
echo "<option value=".$staff['id_staf'].">".$staff['nom_staf']." ".$staff['prenom_staf']."</option>";
}
?>
</select></span>
<span class="formulaire">
<input type='submit' value='Ajouter les droits à cet employé' name='add'></input></span>
</form>
// fin du formulaire que j'ai abrégé.

<?//il faut que la variable soit préalablement saisie dans le menu déroulant
if (isset ($_POST['liste']))
{
$id=htmlentities(addslashes($_POST['liste']));
echo $id; // L'id_staf s'affiche bien dans ma page
//on vérifie que l'on ai appuyé sur le bouton ajouter ce qui permettra de faire la mm choz pour suppr dans le même formulaire.
if (isset ($_POST['add']))
{
//requête me permettant de mettre en relation mes 2 tables. la requête fonctionne je n'ai pas d'erreur. Je l'ai testé via phpmyadmin et ca fonctionne très bien.
$query = mysql_query ('SELECT nom_staf, prenom_staf, s.id_staf, a.id_staf, log, pass FROM staff s, admin a WHERE a.id_staf AND s.id_staf LIKE '.$id.'')or die ('erreur de requete multi');

// pas d'erreur au niveau de la requete mais je n'arrive pas a entre dans la boucle :/ ce doit être du à la jointure des 2 tables....
//J'ai testé avec une requete simple sans jointure et ca passe.

while ($r = mysql_fetch_assoc($query)or die (mysql_error())) // j'ai remplacé le mysql_error() par une phrase. la phrase s'affiche mais je n'ai aucune erreur SQL
{
?>
<form name="confirm_add_user"  method='POST'  action='rep_user.php'>
<div class="colone">
<span class="label">Nom  : </span>
<span class="formulaire">
<input type ="text" name="nom" value='<?=$r['nom_staf']?>'> </span>

.......

Pourriez vous m'expliquer d'où ca pourrait venir car ca fait un bon moment que je potasse dessus... :/
Merci d'avance

-=Cyberm@lici@=-

mercredi 3 mai 2006 à 12:15:22 | Re : Jointure / pb affichage dans un while

sidf

$query = mysql_query ("SELECT nom_staf, prenom_staf, s.id_staf, a.id_staf, log, pass FROM staff s, admin a
WHERE a.id_staf AND s.id_staf LIKE '%$id' ");
...ça ne marche pas comme ça

$query = mysql_query ("SELECT nom_staf, prenom_staf, s.id_staf, a.id_staf, log, pass FROM staff s, admin a
WHERE a.id_staf LIKE '$id%' AND s.id_staf LIKE '$id%' ");
mercredi 3 mai 2006 à 14:27:52 | Re : Jointure / pb affichage dans un while

cybermalicia

Merci pour ta réponse sidf et pr ta rapidité mais tjs négatif :/

J'avais déjà fait de cette manière et ca ne fonctionne pas pour autant :/ (Jai même modifié le like".$id" ... enfin toutes les syntaxe qui habituellement fonctionnent bien.

J'ai retesté en copiant ton code et c'est sans succès je fé un bon ti blocage sur ce coup.

Déjà jsui pas très doué ca fait vraiment pas longtps que je m'y suis mise mais dès que je suis pour travailler avec 2 tables ca ne fonctionne pas même sur mes autres fichiers...

Je pensais ptetre que je n'utilisais pas le bon fetch :/.
Enfin tjs en cours de résolution. Dès que je trouve je poste.

merci encore

-=Cyberm@lici@=-



Cette discussion est classée dans : mysql, id, jointure, staf, staff


Répondre à ce message

Sujets en rapport avec ce message

problème de mise à jour de base de données [ par rildspael ] Ben en fait maintenant j'ai refait ce code, je me suis concentré, j'ai tout analysé mais rien ne marche encore et je ne comprends pas : le voici :Donc mysql_fetch_row [ par angelique ] Bonjour,Après avoir rempli un formulaire, je voudrais utiliser les résultats d'une requête pour alimenter une autre table de ma base :$resultatid = my Afficher une ligne d'une table mysql [ par Alferox ] Bonjours,bon bin une question de base toute con.Je voudrais afficher uniquement la ligne qui port l'id 2 d'une table. Il n'y a pas plus simple que de Jointure de requétes odbc->access et MySQL [ par msohet ] Bonjour à tous,J'expose ce que je souhaite faire :Dans une page php j'affiche le résultat de requétes sélection faisant intervenir deux sources de don Pb Requet SQL [ par NoMitsu ] Voila je debute avec Php et MySql et j'ai quelque probleme pour faire marcher cette requet si quelqu'un pouvais me dire se qui cloche merci d'avance$c Sélectionner les lignes différentes entre deux tables [ par Mikemadest ] Bonjour,J'ai cherché sans trouver de réponse à mon problème,ce qui m'amène à vous poser cette question !D'avance je m'excuse si j'ai raté la solution Prob requete mysql [ par zzzzzz ] salut phpmyadmin me genere ca j'aimerai faire un champ qui s'auto incremente mais ca marche pas la requete de phpmyadmin:Erreurrequête SQL : ALTER T Recup de donnee dans MYSQL par ID du plus recent au plus ancien [ par jf2402 ] Salut,Je voudrais savoir comment récupérer mes enregistrements d'une table de ma base de donnée MYSQL en les classants du plus récent ID au plus ancie Mysql_insert_id() -> Problme -> A l'aide [ par Samiby ] J'ai une fonction d'exécution de requêtes avec déconnexion automatique (pour faire une connexion la moins lonque possible).function query_db($query) php/mysql erreur incomprehenssible <help> [ par luccs ] bonjour, voila j ais fait un petit script qui va gentilment afficher les details d un fournisseur (lister dans une box)mais voila il plante quand l id


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,638 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales