Requete a compléter
ladj59
Messages postés
322
Statut
Membre
-
ladj59 Messages postés 322 Statut Membre -
ladj59 Messages postés 322 Statut Membre -
Bonjour,
dans ma bdd les mots clé sont séparés par des virgules et aprés je fais des recherches par motsclé (code ci -dessous qui marche)
cependant les mots clé étant parfois longs ou au pluriel, j'aimerai faire que dans ma requete, si je tape tome alors que le mot clé est atomes cela m'affiche quand même le résultat de la recherche.
Je pense qu'il faut utilisé du LIKE et des % mais je n'aboutis a rien
Quelqu'un peut m'aider svp???
merci d'avance
<code type="php">
if( isset( $_POST['motscle'] ) && $_POST['motscle'] != "" )
for($rangMotscle = 0 ; $rangMotscle < sizeof($mots) ; $rangMotscle++)
{
if($rangMotscle > 0)
$laRequete .= " OR ";
$laRequete .= " AND motscle LIKE '%" . $mots[ $rangMotscle ] . "%'";
}
$reponse = mysql_query( $laRequete );
if( !$reponse )
{
$message = 'Requête invalide : ' . mysql_error() . "\n";
$message .= 'Requête complète : ' . $laRequete;
die($message);
}
</code>
dans ma bdd les mots clé sont séparés par des virgules et aprés je fais des recherches par motsclé (code ci -dessous qui marche)
cependant les mots clé étant parfois longs ou au pluriel, j'aimerai faire que dans ma requete, si je tape tome alors que le mot clé est atomes cela m'affiche quand même le résultat de la recherche.
Je pense qu'il faut utilisé du LIKE et des % mais je n'aboutis a rien
Quelqu'un peut m'aider svp???
merci d'avance
<code type="php">
if( isset( $_POST['motscle'] ) && $_POST['motscle'] != "" )
for($rangMotscle = 0 ; $rangMotscle < sizeof($mots) ; $rangMotscle++)
{
if($rangMotscle > 0)
$laRequete .= " OR ";
$laRequete .= " AND motscle LIKE '%" . $mots[ $rangMotscle ] . "%'";
}
$reponse = mysql_query( $laRequete );
if( !$reponse )
{
$message = 'Requête invalide : ' . mysql_error() . "\n";
$message .= 'Requête complète : ' . $laRequete;
die($message);
}
</code>
Configuration: Windows XP Internet Explorer 7.0
A voir également:
- Requete a compléter
- Quelle requete écrire pour demander au moteur de recherche tennis - Forum Access
- Quelle requête écrire pour demander au moteur de recherche de présenter de préférence les pages web traitant de tennis mais pas de tennis de table ? ✓ - Forum Access
- L'opérateur ou l'administrateur a refusé la requête ✓ - Forum Access
- Organigramme à compléter - Guide
- Télécharger sage 100 comptabilité i7 2018 complet licence à vie - Forum compta / gestion
1 réponse
Bonjour,
Effectivement tu peux utiliser des %
As-tu essayé cela ?
2-3 questions se sont glissées en commentaires. Si la modif ne marche pas pourrais-tu y répondre s'il te plait
Effectivement tu peux utiliser des %
As-tu essayé cela ?
if( isset( $_POST['motscle'] ) && $_POST['motscle'] != "" )
for($rangMotscle = 0 ; $rangMotscle < sizeof($mots) ; $rangMotscle++)
{
if($rangMotscle > 0)
$mot_cle = $mots[ $rangMotscle ]; //Comment obtiens-tu le $mots[] ?
$laRequete .= " OR ";// QUE VIENS FAIRE CE OR ICI ???
$laRequete .= " AND motscle LIKE '%$mot_cle%'";
}
$reponse = mysql_query( $laRequete );
if( !$reponse )
{
$message = 'Requête invalide : ' . mysql_error() . "\n";
$message .= 'Requête complète : ' . $laRequete;
die($message);// Et alors il te "die" un message ou pas ??
}
2-3 questions se sont glissées en commentaires. Si la modif ne marche pas pourrais-tu y répondre s'il te plait
pour ta question :
$mots4 = explode(",", $_SESSION['sujet']);