Recherche dans une Base De Donnée SQL

Résolu
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   -  
 SOONA -
Bonjour à tous,

Je souhaite effectuer une recherche dans une base de donnée :

La variable marque contient deux marques, HP et Compaq.

La colonne marque contient soit HP soit COMPAQ.

Je souhaite que la requéte me trouve toutes les piéces qui soit de marque HP ou Compaq.

J'ai bien essayer d'utiliser la fonction LIKE mais je n'ai pas reussi a obtenir le résultat voulu. Surment je ne n'utilise pas de la bonne façon.

$piece = "cm";
$marque = 'HP/COMPAQ';

$query = "SELECT * FROM ".$piece."
WHERE marque LIKE '%".$marque2."'%";

Merci pour votre aide.
Cordialement
Exileur

A voir également:

4 réponses

sakoba2010 Messages postés 157 Date d'inscription   Statut Membre Dernière intervention   15
 
Essais ça:
$piece = "cm"; 
$marque1 = 'COMPAQ'; 
$marque2 = 'HP'; 

$query = "SELECT * FROM ".$piece." 
WHERE marque LIKE '%".$marque1."'%" 
 or marque LIKE '%".$marque2."'%";  
0
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   150
 
J'ai bien penssé à cette solution mais la variable marque est selectionner dans un formulaire.

Elle peux donc avoir pour valeur Acer, Apple, MSI ou autre.

J'ai penser à une recherche ou la collone contient au moins deux des caractéres de la variable mn'ai rien trouver de concluant.arque. Mais je
0
sakoba2010 Messages postés 157 Date d'inscription   Statut Membre Dernière intervention   15
 
dans ce cas remplace le slash '/' par la virgule ',' et essais ceci:
 where marque in(".$marque2.");
0
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   150
 
j'ai inserrer la commande comme ceci dans le code

WHERE marque in( ' ".$marque." ');

Quand $marque vaut "HP,COMPAQ", aucune réponse,
Quand $marque vaut " HP','COMPAQ " j'ai un resultat avec la magnifique erreur

"Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\gestion\form\form_model.php on line 21"

$query = "SELECT DISTINCT model FROM ".$piece." WHERE marque='".$marque."'";

$result = mysql_query($query);
$Nombre = mysql_num_rows($result); //(ligne 21)

Dois-je echaper la variable avant de la réutiliser ?
0
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   150
 
Pour mettre dans le context il s'agit d'un site qui gére le stock de piéce détaché. Donc une fois la sélection de la marque faite, on cherche les models disponible pour la marque
0
sakoba2010 Messages postés 157 Date d'inscription   Statut Membre Dernière intervention   15
 
Je ne sais pas si vous l'avez déjà fait mais Puisque les marques sont de type String vous devriez les mettre entre la cote. si je prends votre code je peux le modifier comme ceci:

$piece = "cm";
$marque = " 'HP','COMPAQ' "; // Modifié

$query = "SELECT * FROM ".$piece."
WHERE marque in( ' ".$marque." ');  
0
sakoba2010 Messages postés 157 Date d'inscription   Statut Membre Dernière intervention   15
 
modifiez cette ligne aussi
WHERE marque in( ".$marque." ); 
0
Exileur Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   150
 
Oui effectivement, je viens de m'appercevoir que l'erreur viens de l'ancienne commande qui n'avais pas était modifier.

Merci beaucoup pour ton aide qui m'a été bien préçieuse.

Cordialement
Exileur
0
SOONA
 
M666
0