Probleme syntaxe??
Fermé
ladj59
Messages postés
322
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
29 décembre 2008
-
18 févr. 2008 à 08:58
ladj59 Messages postés 322 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 29 décembre 2008 - 18 févr. 2008 à 13:07
ladj59 Messages postés 322 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 29 décembre 2008 - 18 févr. 2008 à 13:07
A voir également:
- Probleme syntaxe??
- Erreur de syntaxe : fin de fichier prématurée ✓ - Forum Linux / Unix
- La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte - Forum Logiciels
- Erreur syntaxe casio graph 35+e ✓ - Forum calculatrices
- La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte. - Forum Windows 7
- Erreur de syntaxe dans la clause from - Forum Programmation
7 réponses
ladj59
Messages postés
322
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
29 décembre 2008
3
18 févr. 2008 à 10:09
18 févr. 2008 à 10:09
please est-ce que quelqu'un peut m'aier c'est urgent...
Enax
Messages postés
203
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
16 mars 2010
145
18 févr. 2008 à 10:14
18 févr. 2008 à 10:14
"auteur LIKE '%".$_POST['auteur']."%'"
Commande LIKE : http://sql.1keydata.com/fr/sql-like.php
ladj59
Messages postés
322
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
29 décembre 2008
3
18 févr. 2008 à 11:02
18 févr. 2008 à 11:02
ok merci enax ca marche mais maintenant j'ai un autre souci
en effet avec le code que je vais mettre ci-dessous cela ne m'affiche que la dernière ligne où l'auteur est celui que j'ai tapé( si dans mon tableau j'ai 2auteurs qui s'appellent albert il ne m'affichera suer le 2éme et pas le premier ) et je ne sais pas pourquoi donc si vous avez une idée....
$sql ="SELECT * FROM base_physique WHERE ";
$sql .="auteur LIKE '%".$_POST['auteur']."%'";
$reponse = mysql_query($sql);
$donnees = mysql_fetch_array($reponse);
if (($donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']==''))
{
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>
en effet avec le code que je vais mettre ci-dessous cela ne m'affiche que la dernière ligne où l'auteur est celui que j'ai tapé( si dans mon tableau j'ai 2auteurs qui s'appellent albert il ne m'affichera suer le 2éme et pas le premier ) et je ne sais pas pourquoi donc si vous avez une idée....
$sql ="SELECT * FROM base_physique WHERE ";
$sql .="auteur LIKE '%".$_POST['auteur']."%'";
$reponse = mysql_query($sql);
$donnees = mysql_fetch_array($reponse);
if (($donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']==''))
{
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>
Utilisateur anonyme
18 févr. 2008 à 11:28
18 févr. 2008 à 11:28
Normal, tu as fait 2 requêtes
1) $donnees = mysql_fetch_array($reponse);
2) while ($donnees = mysql_fetch_array($reponse))
1) $donnees = mysql_fetch_array($reponse);
2) while ($donnees = mysql_fetch_array($reponse))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Utilisateur anonyme
18 févr. 2008 à 11:37
18 févr. 2008 à 11:37
Essaye
$sql ="SELECT * FROM base_physique WHERE auteur LIKE '%".$_POST['auteur']."%'"; $reponse = mysql_query($sql); while ($donnees = mysql_fetch_array($reponse)) { if ($donnees['auteur']==$_POST['auteur'] && $_POST['titre']=='' && $_POST['année']=='' && $_POST['journal']=='' && ($_POST['motsclé']=='') { echo ' <p> <strong>L'auteur est</strong> : '. $donnees['auteur'].'<br /> Le titre est : '.$donnees['titre'].' et l'année est '. $donnees['année'].' <br /> Le journal est : '.$donnees['journal'].' et le volume est :'.$donnees['volume'].' <br /> La page est :'.$donnees['page'].' <br /> Les mots clé de la recherche sont: '.$donnees['motsclé'].' <br /> <a href="'.$donnees['pdf'].'"> Clique ici pour voir le pdf associé </a> </p>'; } }
ladj59
Messages postés
322
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
29 décembre 2008
3
18 févr. 2008 à 11:39
18 févr. 2008 à 11:39
$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);
if (($_POST['auteur']=='') && ($donnees['titre']==$_POST['titre']) && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']==''))
{
$sql .="titre LIKE '%".$_POST['titre']."%'";
$reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
?>
probleme: je veux que ca verifie si lauteur que je tape est dans la base de données(dans le champ auteur ou titre..) et ensuite selon le cas la requete est diférente... mais ler probleme c'est que il ne peut pas faire le if car je ne le renseigne pas sur ce que c'est que donnees ( je pensais mettre $donnees = mysql_fetch_array($reponse) au début mais ca marche pas)donc je ne sais pas comment gérer le probléme...
help me plz
if (($donnees['auteur']==$_POST['auteur']) && ($_POST['titre']=='') && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']==''))
{
$sql .="auteur LIKE '%".$_POST['auteur']."%'";
$reponse = mysql_query($sql);
if (($_POST['auteur']=='') && ($donnees['titre']==$_POST['titre']) && ($_POST['année']=='') && ($_POST['journal']=='') && ($_POST['motsclé']==''))
{
$sql .="titre LIKE '%".$_POST['titre']."%'";
$reponse = mysql_query($sql);
while ($donnees = mysql_fetch_array($reponse))
{
?>
probleme: je veux que ca verifie si lauteur que je tape est dans la base de données(dans le champ auteur ou titre..) et ensuite selon le cas la requete est diférente... mais ler probleme c'est que il ne peut pas faire le if car je ne le renseigne pas sur ce que c'est que donnees ( je pensais mettre $donnees = mysql_fetch_array($reponse) au début mais ca marche pas)donc je ne sais pas comment gérer le probléme...
help me plz
ladj59
Messages postés
322
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
29 décembre 2008
3
18 févr. 2008 à 13:07
18 févr. 2008 à 13:07
quelqur'un aurait-il une solution?.????