Probleme syntaxe??

ladj59 Messages postés 322 Statut Membre -  
ladj59 Messages postés 322 Statut Membre -
Bonjour,
j'ai un probléme et je crois que c'est un probléme de syntaxe((' " %...??? mais je n'en suis pas sur car j'ai essayé plein de trucs et ca ne marche toujours pas. Voici mon code donc ca m'aiderai bien si quelqu'un trouvait la solution merci:

<?php

mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("physique"); // Sélection de la base coursphp

$sql ="SELECT * FROM base_physique WHERE ";
$sql .="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é']==''))
{

ca me met ca : Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING à la ligne $sql .="auteur LIKE .%'$_POST['auteur']'%";

7 réponses

ladj59 Messages postés 322 Statut Membre 3
 
please est-ce que quelqu'un peut m'aier c'est urgent...
0
Enax Messages postés 204 Statut Membre 145
 
"auteur LIKE '%".$_POST['auteur']."%'"

Commande LIKE : http://sql.1keydata.com/fr/sql-like.php
0
ladj59 Messages postés 322 Statut Membre 3
 
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>
0
Utilisateur anonyme
 
Normal, tu as fait 2 requêtes

1) $donnees = mysql_fetch_array($reponse);

2) while ($donnees = mysql_fetch_array($reponse))
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
 
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>';

     }
}


0
ladj59 Messages postés 322 Statut Membre 3
 
$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
0
ladj59 Messages postés 322 Statut Membre 3
 
quelqur'un aurait-il une solution?.????
0