Probleme dans la requete
ladj59
Messages postés
322
Statut
Membre
-
Alex -
Alex -
Bonjour,
je ne comprends pas pourquoi mais aparament ma requete ne marche pas .voici mon code :
<?php
mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("physique"); // Sélection de la base coursphp
$sql ="SELECT * FROM base_physique WHERE ";
if (($donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']==''))
{
$sql .=" auteur LIKE '%".$_POST["auteur"]."%'";
$reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
?>
<p>
<strong>L'auteur est</strong> : <?php echo $donnees['auteur']; ?><br />
Le titre est : <?php echo $donnees['titre']; ?> et l'année est <?php echo $donnees['année']; ?> <br />
Le journal est : <?php echo $donnees['journal']; ?> et le volume est :<?php echo $donnees['volume']; ?> <br />
La page est :<?php echo $donnees['page']; ?> <br/>
Les mots clé de la recherche sont:<?php echo $donnees['motsclé']; ?> <br/>
<a href="<?php echo $donnees['pdf']?>"> Clique ici pour voir le pdf associé </a>
</p>
<?php
}
}
je ne compreds pas pourquoi mais il ne m'affiche aucun resultat
help me please
je ne comprends pas pourquoi mais aparament ma requete ne marche pas .voici mon code :
<?php
mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("physique"); // Sélection de la base coursphp
$sql ="SELECT * FROM base_physique WHERE ";
if (($donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']==''))
{
$sql .=" auteur LIKE '%".$_POST["auteur"]."%'";
$reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
?>
<p>
<strong>L'auteur est</strong> : <?php echo $donnees['auteur']; ?><br />
Le titre est : <?php echo $donnees['titre']; ?> et l'année est <?php echo $donnees['année']; ?> <br />
Le journal est : <?php echo $donnees['journal']; ?> et le volume est :<?php echo $donnees['volume']; ?> <br />
La page est :<?php echo $donnees['page']; ?> <br/>
Les mots clé de la recherche sont:<?php echo $donnees['motsclé']; ?> <br/>
<a href="<?php echo $donnees['pdf']?>"> Clique ici pour voir le pdf associé </a>
</p>
<?php
}
}
je ne compreds pas pourquoi mais il ne m'affiche aucun resultat
help me please
Configuration: Windows XP Internet Explorer 7.0
A voir également:
- Probleme dans la requete
- Echec de la requete en raison d'une grave erreur materielle - Forum Disque dur / SSD
- Quelle requete écrire pour demander au moteur de recherche tennis - Forum Access
- Echec de la requete en raison d'une grave erreur matérielle de l'appareil - Forum Disque dur / SSD
- Requete sql pix - Forum PHP
- Quelle requête doit-elle taper dans le champ de recherche ? ✓ - Forum Programmation
10 réponses
SELECT * FROM base_physique WHERE
deja ta une clause "where" qui est vide.
Met plutot: SELECT * FROM base_physique
deja ta une clause "where" qui est vide.
Met plutot: SELECT * FROM base_physique
Ta base se nomme physique, pourquoi utilise tu :
Ne devrais tu pas utiliser :
$sql ="SELECT * FROM base_physique WHERE ";
Ne devrais tu pas utiliser :
$sql ="SELECT * FROM physique WHERE ";
nan ma base se nomme base_physique
en fait ce que je voulais faire c'est dire $sql="SELECT * FROM base_physique WHERE ";
et dans le cas ou $donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']=='')
alors je concatene a sql auteur LIKE '%".$_POST["auteur"]."%'";
et ensuite je fais ma requete $reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
....
je veux faire ca car dans un autre cas je pars encore de $sql="SELECT * FROM base_physique WHERE ";
mais je concaténerais un autre truc si je veux par exemple faire une recherche par titre....
en fait ce que je voulais faire c'est dire $sql="SELECT * FROM base_physique WHERE ";
et dans le cas ou $donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']=='')
alors je concatene a sql auteur LIKE '%".$_POST["auteur"]."%'";
et ensuite je fais ma requete $reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
....
je veux faire ca car dans un autre cas je pars encore de $sql="SELECT * FROM base_physique WHERE ";
mais je concaténerais un autre truc si je veux par exemple faire une recherche par titre....
nan ma base se nomme base_physique
en fait ce que je voulais faire c'est dire $sql="SELECT * FROM base_physique WHERE ";
et dans le cas ou $donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']=='')
alors je concatene a sql auteur LIKE '%".$_POST["auteur"]."%'";
et ensuite je fais ma requete $reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
....
je veux faire ca car dans un autre cas je pars encore de $sql="SELECT * FROM base_physique WHERE ";
mais je concaténerais un autre truc si je veux par exemple faire une recherche par titre....
en fait ce que je voulais faire c'est dire $sql="SELECT * FROM base_physique WHERE ";
et dans le cas ou $donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']=='')
alors je concatene a sql auteur LIKE '%".$_POST["auteur"]."%'";
et ensuite je fais ma requete $reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
....
je veux faire ca car dans un autre cas je pars encore de $sql="SELECT * FROM base_physique WHERE ";
mais je concaténerais un autre truc si je veux par exemple faire une recherche par titre....
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Hé bien alors tu ne dois pas mettre :
Mais :
mysql_select_db("physique");
Mais :
mysql_select_db("base_physique");
Ok, excuse moi.
Tente de vérifier la valeur de $sql avant la query avec un Echo, et renvoie nous le résultat s'il te plait.
Tente de vérifier la valeur de $sql avant la query avec un Echo, et renvoie nous le résultat s'il te plait.
<?php
}
if (($donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']==''))
{
$sql .=" auteur LIKE '%".$_POST["auteur"]."%'";
echo $sql;
$reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
ca ne maffiche rien
en fait vu que je fais ma recherche sur une autre page et que je fais form action vers la page dont on parle depuis tout a lheure je me demande si il peut repéré ce qu'il y a dans le if
car si il ne reconnait pas qu'il est dans le if c'estr normal que ca marche pas
}
if (($donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']==''))
{
$sql .=" auteur LIKE '%".$_POST["auteur"]."%'";
echo $sql;
$reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
ca ne maffiche rien
en fait vu que je fais ma recherche sur une autre page et que je fais form action vers la page dont on parle depuis tout a lheure je me demande si il peut repéré ce qu'il y a dans le if
car si il ne reconnait pas qu'il est dans le if c'estr normal que ca marche pas