Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/06/2007, 09h41   #1
Membre régulier
 
Avatar de lou87
 
Inscription : février 2006
Messages : 349
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : février 2006
Messages : 349
Points : 81
Points : 81
Par défaut [SQL] pb de résultat et d'affichage

Bonjour !

Excusez moi je suis débutante en php, je vais avoir besoin de votre aide, car là il y a des choses que je ne comprend pas du tout.

Tout d'abord, j'aimerais afficher dans une zone de sélection certains critères d'un table, et il m'en affiche qu'un sur les trois, seulement le nom...

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<html>
<head>
<title>Sélection des catégories de livre</title>
</head>
<body>
<?
//debut du code PHP
$connect=mysql_connect("localhost","root","");
//connexion au serveur localhost
$selectdb=mysql_select_db("bibliotheque") or die ('Sélection impossible');
//sélection de la base de données
if ($connect)
//connexion reussie
{
echo '<form action="resultat_auteur.php" method=post>';
echo "<H2>Liste des auteurs</H2>";
echo "<p>Sélectionnez l'auteur souhaité:</p>";
echo '<SELECT NAME="CODE_AUT" size=5>';
//appel du fichier resultat_cat.php et affichage titre debut liste déroulante
$sqlquery="select CODE_AUT, NOM_AUT, PRENOM_AUT from auteur order by CODE_AUT;";
//recherche code et nom, prénom de l'auteur
$queryresult=mysql_query($sqlquery) or die ('requete ne pouvant etre exécutée');
// requete ne pouvant pas etre executée
	If(($queryresult)==false)
	// si non trouve dans la table
		{
			?><script>alert('donnees introuvables dans la table');</script><?;$verif='ok';
			//affichage message erreur et variable de blocage insertion
		}	
			else
			{			
			while($row=mysql_fetch_array($queryresult)){
			//tant que la requete retourne un enregistrement
			echo'<option selected value= '.$row["CODE_AUT"].'>'.$row["NOM_AUT"] ; }
			}		
echo '</select>';
echo '<p><input type ="submit" value ="Afficher la liste"></p>';
echo "</form>";
}
?>
</body>
</html>
Et voici la page en image :



Puis quand j'ai sélectionné l'auteur que je veux et que je clic sur le bouton 'Afficher la liste', il ne m'affiche qu'une erreur :
Notice: Undefined variable: code in c:\program files\easyphp1-8\www\bibliotheque\resultat_auteur.php on line 16
requete ne pouvant etre exécutée


Et voici le code de la page de résultat :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<html>
<head>
<title>Liste des livres du type choisi</title>
</head>
<body>
<?
//debut du code PHP
 
$connect=mysql_connect("localhost","root","");
//connexion au serveur localhost
$selectdb=mysql_select_db("bibliotheque") or die ('Sélection impossible');
//sélection de la base de données
if ($connect)
//connexion reussie
{
$sqlquery="select TITRE_LI,NBPAGE_LI,RESUME_LI from livre,auteur where livre.CODE_AUT =auteur.CODE_AUT and CODE_AUT='$code' ;";
//requete cherchant les livres dont le type est sélectionnée dans la liste déroulante de liste_type.php
$queryresult=mysql_query($sqlquery) or die ('requete ne pouvant etre exécutée');
// requete ne pouvant pas etre executée
$nb=0;
echo "<H1> Liste des livres de l'auteur concerné</H1>";
echo '<p><table border=2 widht="75%">';
echo"<TR><th>TITRE</th><th>NOMBRE DE PAGE</th><th>RESUME</th></tr>";
If(($queryresult)==false)
	// si non trouve dans la table
		{
		?><script>alert('donnees introuvalbles dans la table');</script><?;$verif='ok';
			//affichage message erreur et variable de blocage insertion
		}	
			else
			{
			while($row=mysql_fetch_array($queryresult))
				{
 
			//tant que la requete retourne un enregistrement
			echo "<tr><td>".$row["TITRE_LI"] ."</td><td>".$row["NBPAGE_LI"]."</td><td>".$row["RESUME_LI"] ."</td></tr>";
			//affichage du résultat dans un tableau
			$nb++;
				}
			}
echo "</table><p>";
echo "Il y a ".$nb." livres";
}
?>
</body>
</html>
Je suis quasiment sûr que le problème vient de la contrainte dans la requête SQL, la variable $code, je pense qu'elle doit être vide ou quelque chose comme ça, si c'est le cas comment la remplir avec l'élément sélectionné dans la liste des auteur ?

Merci pour votre patience.

__________________
Programmer c'est comme gravir une montagne...
Il faut procéder par étapes...
(? auteur ?)
Un seul être vous manque et tout est dépeuplé.
Lamartine (merci chat hotplug ^^)
lou87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 10h02   #2
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 451
Points : 5 451
Bonjour

A première vue, tes problèmes viennent de fautes de syntaxe (ce n'est pas une critique , juste une remarque)

D'abord, ta liste ne t'affiche que le nom de l'auteur parce que tu ne lui dit pas d'afficher autre chose.
Code php :
echo'<option value= '.$row["CODE_AUT"].'>'.$row["NOM_AUT"].' '.$row["PRENOM_AUT"] ;
Ensuite, pour utiliser un champ passé par post, il faut utiliser la variable superglobale $_POST. En clair pour ton champ code, tu récupères la variable $_POST['code'].

Enfin un conseil : pour l'exécution des requêtes tu peux utiliser la syntaxe suivante, qui en cas de problème t'affichera la requête et l'erreur.
Code php :
$res = mysql_query($rq) or die(" requete $rq : ".mysql_error());
Bon courage !
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 10h09   #3
Invité régulier
 
Inscription : mai 2007
Messages : 5
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 5
Points : 6
Points : 6
Code :
1
2
3
4
 
...
echo'<option selected value= '.$row["CODE_AUT"].'>'.$row["NOM_AUT"] ; '
...
Cela ne t'affiche que le nom parce que tu ne demandes d'afficher que le nom.
Concatène les autres valeurs à $row["NOM_AUT"] du style :
$row["NOM_AUT"].' - '.$row["PRENOM_AUT"].' - '$row["CODE_AUT"]

Pour la varible code, il te faut la récupérer par $_POST, vu que ton formulaire est passé en post. Cela donnerais :
$code=$_POST['code'];
ijnebi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 10h12   #4
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 21
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 21
Points : 13
Points : 13
Bonjour lou87,

Le problème à mon avis est que tu n'envoi pas la valeur sélectionnée au fichier résultat pour qu'il puisse exécuter son traitement. L'erreur te dit qu'il y a uin problème sur la variable code dans le fichier résultat.
Tu devrais essayer de récupérer la valeur de la variable code en insérant à la fin du fichier de sélection la commande:
$code = $_POST['CODE_AUT'];
nicocaine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 10h16   #5
Membre régulier
 
Avatar de lou87
 
Inscription : février 2006
Messages : 349
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : février 2006
Messages : 349
Points : 81
Points : 81
Un grand merci à tous

Je vais essayer ça tout de suite, je vous informe du résultat.
__________________
Programmer c'est comme gravir une montagne...
Il faut procéder par étapes...
(? auteur ?)
Un seul être vous manque et tout est dépeuplé.
Lamartine (merci chat hotplug ^^)
lou87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 14h28   #6
Membre régulier
 
Avatar de lou87
 
Inscription : février 2006
Messages : 349
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : février 2006
Messages : 349
Points : 81
Points : 81
Coucou !

Voici le code avec l'ajout (en vert).

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<html>
<head>
<title>Sélection des auteurs de livre</title>
</head>
<body>
<?
//debut du code PHP
$connect=mysql_connect("localhost","root","");
//connexion au serveur localhost
$selectdb=mysql_select_db("bibliotheque") or die ('Sélection impossible');
//sélection de la base de données
if ($connect)
//connexion reussie
{
echo '<form action="resultat_auteur.php" method=post>';
echo "<H2>Liste des auteurs</H2>";
echo "<p>Sélectionnez l'auteur souhaité:</p>";
echo '<SELECT NAME="CODE_AUT" size=5>';
//appel du fichier resultat_cat.php et affichage titre debut liste déroulante
$sqlquery="select CODE_AUT,NOM_AUT,PRENOM_AUT from auteur order by CODE_AUT;";
//recherche code et libellé de la catégorie
$queryresult=mysql_query($sqlquery) or die ('requete ne pouvant etre exécutée');
// requete ne pouvant pas etre executée
$code = $_POST['CODE_AUT'];
	If(($queryresult)==false)
	// si non trouve dans la table
		{
			?><script>alert('donnees introuvables dans la table');</script><?;$verif='ok';
			//affichage message erreur et variable de blocage insertion
		}	
			else
			{			
			while($row=mysql_fetch_array($queryresult)){
			//tant que la requete retourne un enregistrement
			echo'<option selected value= '.$row["NOM_AUT"].'>'.$row["CODE_AUT"].' '.$row["NOM_AUT"].' '.$row["PRENOM_AUT"]; }
			}		
echo '</select>';
echo '<p><input type ="submit" value ="Afficher la liste"></p>';
echo "</form>";
}
?>
</body>
</html>
Voici le code de la page de résultat ( avec en orange ce qui cloche d'après ce message d'erreur :

Notice: Undefined variable: code in c:\program files\easyphp1-8\www\bibliotheque\resultat_auteur.php on line 16
requete ne pouvant etre exécutée



Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<html>
<head>
<title>Liste des livres de l'auteur choisi </title>
</head>
<body>
<?
//debut du code PHP

$connect=mysql_connect("localhost","root","");
//connexion au serveur localhost
$selectdb=mysql_select_db("bibliotheque") or die ('Sélection impossible');
//sélection de la base de données
if ($connect)
//connexion reussie
{
$sqlquery="select CODE_LI,TITRE_LI,NBPAGE_LI,RESUME_LI from livre,auteur where livre.CODE_AUT =auteur.CODE_AUT and CODE_AUT='$code' ;";
//requete cherchant les livres dont le type est sélectionnée dans la liste déroulante de liste_type.php
$queryresult=mysql_query($sqlquery) or die ('requete ne pouvant etre exécutée');
// requete ne pouvant pas etre executée
$nb=0;
echo "<H1> Liste des livres de l'auteur concerné</H1>";
echo '<p><table border=2 widht="75%">';
echo"<TR><th>TITRE</th><th>NOMBRE DE PAGE</th><th>RESUME</th></tr>";
If(($queryresult)==false)
	// si non trouve dans la table
		{
		?><script>alert('donnees introuvalbles dans la table');</script><?;$verif='ok';
			//affichage message erreur et variable de blocage insertion
		}	
			else
			{
			while($row=mysql_fetch_array($queryresult))
				{

			//tant que la requete retourne un enregistrement
			echo "<tr><td>".$row["TITRE_LI"] ."</td><td>".$row["NBPAGE_LI"]."</td><td>".$row["RESUME_LI"] ."</td></tr>";
			//affichage du résultat dans un tableau
			$nb++;
				}
			}
echo "</table><p>";
echo "Il y a ".$nb." livres";
}
?>
</body>
</html>
Quelqu'un aurait-il une idée ?

Merci

P.S : Désolée j'ai dut recommencer mon message, désolée.
__________________
Programmer c'est comme gravir une montagne...
Il faut procéder par étapes...
(? auteur ?)
Un seul être vous manque et tout est dépeuplé.
Lamartine (merci chat hotplug ^^)
lou87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 14h40   #7
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 451
Points : 5 451
En fait $_POST['code], c'est pour récupérer la valeur du champ code après soumission du formulaire, donc dans la page où ton formulaire t'envoie (page résultat).

Edit : euh, oui avec $_POST['CODE_AUT'] c'est mieux
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 14h49   #8
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 21
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 21
Points : 13
Points : 13
c'est normal que ça marche pas car comme je t'ai dit plus haut ton champs de selection s'appelle CODE_AUT:

Code :
echo '<SELECT NAME="CODE_AUT" size=5>';
donc quand tu met la commande $_POST il faut que ce soit:

$code = $_POST['CODE_AUT'];
nicocaine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 15h38   #9
Invité régulier
 
Inscription : mai 2007
Messages : 5
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 5
Points : 6
Points : 6
Code php :
$code = $_POST['CODE_AUT'];
Ce code doit être placé dans resultat.php en début de code il est préférable.
Et ce n'est qu'aprés que tu peux utiliser la variable $code et notamment dans ta requete qui plante vu que ton script ne récupère pas ce fameux code auteur.

Dans page contenant le formulaire $code = $_POST['CODE_AUT'] ne te sert à rien.
ijnebi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 16h25   #10
Membre régulier
 
Avatar de lou87
 
Inscription : février 2006
Messages : 349
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : février 2006
Messages : 349
Points : 81
Points : 81
Oki, j'ai modifié. Et ça marche effectivement déjà mieux.

Merci à tous.

Maintenant il faut que je trouve pourquoi ma requête SQL ne fonctionne pas.

Car maintenant il me met le message d'erreur déjà défini dans mon code si la requête ne fonctionne pas.

"requete ne pouvant etre exécutée"
__________________
Programmer c'est comme gravir une montagne...
Il faut procéder par étapes...
(? auteur ?)
Un seul être vous manque et tout est dépeuplé.
Lamartine (merci chat hotplug ^^)
lou87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2007, 16h33   #11
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 451
Points : 5 451
Utilises mysql_error pour détecter le problème
Code php :
1
2
3
4
//au lieu de 
$queryresult=mysql_query($sqlquery) or die ('requete ne pouvant etre exécutée');
// utilises :
$queryresult=mysql_query($sqlquery) or die ('requete '.$sqlquery.' : '.mysql_error());
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 09h31   #12
Membre régulier
 
Avatar de lou87
 
Inscription : février 2006
Messages : 349
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : février 2006
Messages : 349
Points : 81
Points : 81
Là j'abuse je sais ^^. Et merci pour l'astuce c'est clair que c'est plus simple comme ça.

Mais y a-t-il quelque chose dans ce genre mais pour le tout ?

Merci d'avance
__________________
Programmer c'est comme gravir une montagne...
Il faut procéder par étapes...
(? auteur ?)
Un seul être vous manque et tout est dépeuplé.
Lamartine (merci chat hotplug ^^)
lou87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 09h45   #13
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 21
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 21
Points : 13
Points : 13
je ne comprends pas vraiment ta question?
nicocaine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 10h29   #14
Membre régulier
 
Avatar de lou87
 
Inscription : février 2006
Messages : 349
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : février 2006
Messages : 349
Points : 81
Points : 81
C'est pas grave c'est bon c'est règlé.

Mais bon bizarrement il m'affiche rien alors qu'il y a au moins un enregistrement par auteur....

Bizard
__________________
Programmer c'est comme gravir une montagne...
Il faut procéder par étapes...
(? auteur ?)
Un seul être vous manque et tout est dépeuplé.
Lamartine (merci chat hotplug ^^)
lou87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 10h36   #15
Invité régulier
 
Inscription : mai 2007
Messages : 5
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 5
Points : 6
Points : 6
Citation:
Envoyé par lou87
C'est pas grave c'est bon c'est règlé.
Mais bon bizarrement il m'affiche rien alors qu'il y a au moins un enregistrement par auteur....

Bizard
Alors ce n'est pas réglé !
Tu dois avoir un soucis avec ta requête. Tu l'as testé ?
ijnebi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 11h17   #16
Membre régulier
 
Avatar de lou87
 
Inscription : février 2006
Messages : 349
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : février 2006
Messages : 349
Points : 81
Points : 81
Et bien, il n'y a point d'erreur commise dans la requête...

Donc je pense que le problème est dans la retransmittion des résultats, non ?
__________________
Programmer c'est comme gravir une montagne...
Il faut procéder par étapes...
(? auteur ?)
Un seul être vous manque et tout est dépeuplé.
Lamartine (merci chat hotplug ^^)
lou87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 11h32   #17
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 451
Points : 5 451
Dans ce cas, il faut que tu nous redonnes la dernière version de ton code, qu'on puisse y jeter un coup d'oeil
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 11h43   #18
Membre régulier
 
Avatar de lou87
 
Inscription : février 2006
Messages : 349
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : février 2006
Messages : 349
Points : 81
Points : 81
Oki et merci encore pour votre patience et votre aide précieuse.

Donc voici les codes dans l'état actuel :

liste auteur :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<html>
<head>
<title>Sélection des auteurs de livre</title>
</head>
<body>
<?
//debut du code PHP
$connect=mysql_connect("localhost","root","");
//connexion au serveur localhost
$selectdb=mysql_select_db("bibliotheque") or die ('Sélection impossible');
//sélection de la base de données
if ($connect)
//connexion reussie
{
echo '<form action="resultat_auteur.php" method=post>';
echo "<H2>Liste des auteurs</H2>";
echo "<p>Sélectionnez l'auteur souhaité:</p>";
echo '<SELECT NAME="CODE_AUT" size=5>';
//appel du fichier resultat_cat.php et affichage titre debut liste déroulante
$sqlquery="select CODE_AUT,NOM_AUT,PRENOM_AUT from auteur order by CODE_AUT;";
//recherche code et libellé de la catégorie
$queryresult=mysql_query($sqlquery) or die ('requete ne pouvant etre exécutée');
// requete ne pouvant pas etre executée
 
	If(($queryresult)==false)
	// si non trouve dans la table
		{
			?><script>alert('donnees introuvables dans la table');</script><?;$verif='ok';
			//affichage message erreur et variable de blocage insertion
		}	
			else
			{			
			while($row=mysql_fetch_array($queryresult)){
			//tant que la requete retourne un enregistrement
			echo'<option selected value= '.$row["NOM_AUT"].'>'.$row["CODE_AUT"].' '.$row["NOM_AUT"].' '.$row["PRENOM_AUT"]; }
			}		
echo '</select>';
echo '<p><input type ="submit" value ="Afficher la liste"></p>';
echo "</form>";
}
?>
</body>
</html>
Page de résultat :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<html>
<head>
<title>Liste des livres de l'auteur choisi</title>
</head>
<body>
<?
//debut du code PHP
$code_aut = $_POST['CODE_AUT'];
$connect=mysql_connect("localhost","root","");
//connexion au serveur localhost
$selectdb=mysql_select_db("bibliotheque") or die ('Sélection impossible');
//sélection de la base de données
if ($connect)
//connexion reussie
{
$sqlquery="select CODE_LI,TITRE_LI,NBPAGE_LI,RESUME_LI from auteur,livre where auteur.CODE_AUT = livre.CODE_AUT and livre.CODE_AUT='$code_aut';";
//requete cherchant les livres dont l'auteur est sélectionné dans la liste déroulante de liste_auteur.php
$queryresult=mysql_query($sqlquery,$connect) or die ('requete ne pouvant etre exécutée');
// requete ne pouvant pas etre executée
$nb=0;
echo "<H1> Liste des livres de l'auteur concerné</H1>";
echo '<p><table border=2 widht="75%">';
echo"<TR><th>CODE</th><th>TITRE</th><th>NOMBRE DE PAGE</th><th>RESUME</th></tr>";
If(($queryresult)==false)
	// si non trouve dans la table
		{
		?><script>alert('donnees introuvalbles dans la table');</script><?;$verif='ok';
			//affichage message erreur et variable de blocage insertion
		}	
			else
			{
			while($row=mysql_fetch_array($queryresult))
				{
 
			//tant que la requete retourne un enregistrement
			echo "<tr><td>".$row["CODE_LI"] ."</td><td>".$row["TITRE_LI"] ."</td><td>".$row["NBPAGE_LI"]."</td><td>".$row["RESUME_LI"] ."</td></tr>";
			//affichage du résultat dans un tableau
			$nb++;
				}
			}
echo "</table><p>";
echo "Il y a ".$nb." livres";
}
?>
</body>
</html>
Voici une petite image pour vous faire une idée de ma page de résultat :

__________________
Programmer c'est comme gravir une montagne...
Il faut procéder par étapes...
(? auteur ?)
Un seul être vous manque et tout est dépeuplé.
Lamartine (merci chat hotplug ^^)
lou87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 11h48   #19
Candidat au titre de Membre du Club
 
Inscription : juin 2007
Messages : 21
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 21
Points : 13
Points : 13
c'est normal que ça marche pas car tu veux récupérer le code de l'auteur et porutant tu met le nom de l'auteur dans la valeur du select.
Il faut que tu remplasse:

Code :
echo'<option selected value= '.$row["NOM_AUT"].'>'.$row["CODE_AUT"].' '.$row["NOM_AUT"].' '.$row["PRENOM_AUT"];
par:

Code :
echo'<option selected value= '.$row["CODE_AUT"].'>'.$row["CODE_AUT"].' '.$row["NOM_AUT"].' '.$row["PRENOM_AUT"];
nicocaine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2007, 11h54   #20
Membre régulier
 
Avatar de lou87
 
Inscription : février 2006
Messages : 349
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : février 2006
Messages : 349
Points : 81
Points : 81
Merci beaucoup nicocaine, Celira, ijnebi !!!!!!

__________________
Programmer c'est comme gravir une montagne...
Il faut procéder par étapes...
(? auteur ?)
Un seul être vous manque et tout est dépeuplé.
Lamartine (merci chat hotplug ^^)
lou87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h09.


 
 
 
 
Partenaires

Hébergement Web