A voir également:
- Variable "Tous" en php/MySQL
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Php natif - Forum PHP
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
7 réponses
sam3000
Messages postés
1225
Date d'inscription
mercredi 22 décembre 2004
Statut
Membre
Dernière intervention
13 juin 2005
144
4 janv. 2005 à 15:35
4 janv. 2005 à 15:35
pour le cas du "TOUS" tu devrais simplement enlever la clause "WHERE":
Select * From Table;
L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.
Select * From Table;
L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.
GallyNet
Messages postés
434
Date d'inscription
mardi 1 juin 2004
Statut
Membre
Dernière intervention
15 décembre 2008
387
5 janv. 2005 à 19:28
5 janv. 2005 à 19:28
en faisant comme ca tu risque de ralentir un peu ton traitement sur la base SQL, alors que si tu fait un truc dans le genre:
$sql="select * from matable"; if($maVar!='Tous'){ $sql.="where col=$maVar"; }
sam3000
Messages postés
1225
Date d'inscription
mercredi 22 décembre 2004
Statut
Membre
Dernière intervention
13 juin 2005
144
5 janv. 2005 à 19:46
5 janv. 2005 à 19:46
il ne faut pas pas oublier l'espace avant WHERE!
et les quotes simples (') avant et apres $maVar si le champs est du type texte (char)
L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.
et les quotes simples (') avant et apres $maVar si le champs est du type texte (char)
$sql="select * from matable"; if($maVar!='Tous'){ $sql.=" where col='$maVar'"; }
L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.
Tu aurai aussi bien pu travail avec la fonction "Switch"!!! Je pense qu'elle serait la plus appropiée...mé bon
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
GallyNet
Messages postés
434
Date d'inscription
mardi 1 juin 2004
Statut
Membre
Dernière intervention
15 décembre 2008
387
6 janv. 2005 à 11:26
6 janv. 2005 à 11:26
Non, le if est plus utile dans ce cas la car on a que 2 choix:
la variable égale Tous ou non, ce qui donne
le switch est utile dans le cas ou l'on a 3 valeur distincte et que l'on serait obligé d'utilisé deux if
la variable égale Tous ou non, ce qui donne
si(var='Tous'){ ... } sinon { ... }
le switch est utile dans le cas ou l'on a 3 valeur distincte et que l'on serait obligé d'utilisé deux if
Bonjour,
j'ai fait un moteur en utilisant DW mx, et pour insérer le "Tous", c ok, sauf que pour ma page de resultat, ça bug...erreur de synaxe...
$colrubrique_rsCatalogue = "1";
if (isset($_GET['VARrubrique'])) {
$colrubrique_rsCatalogue = (get_magic_quotes_gpc()) ? $_GET['VARrubrique'] : addslashes($_GET['VARrubrique']);
}
mysql_select_db($database_connBoutsimple, $connBoutsimple);
$query_rsCatalogue = sprintf("SELECT recette.nom, recette.vin_1, FROM recette, vin WHERE recette.rubriqueid=%s AND recette.nom LIKE '%%%s%%' AND vin.id_vin=recette.vin_1", $colrubrique_rsCatalogue,$colnom_rsCatalogue);
$query_limit_rsCatalogue = sprintf("%s LIMIT %d, %d", $query_rsCatalogue, $startRow_rsCatalogue, $maxRows_rsCatalogue);
$rsCatalogue = mysql_query($query_limit_rsCatalogue, $connBoutsimple) or die(mysql_error());
$row_rsCatalogue = mysql_fetch_assoc($rsCatalogue);
et le message pour la page de resultat
Erreur de syntaxe près de '% AND recette.nom LIKE '%iran%' AND vin.id_vin=recette.vin_1 LIM' à la ligne 1
merci de m'aider c mon dernier bug ..
j'ai fait un moteur en utilisant DW mx, et pour insérer le "Tous", c ok, sauf que pour ma page de resultat, ça bug...erreur de synaxe...
$colrubrique_rsCatalogue = "1";
if (isset($_GET['VARrubrique'])) {
$colrubrique_rsCatalogue = (get_magic_quotes_gpc()) ? $_GET['VARrubrique'] : addslashes($_GET['VARrubrique']);
}
mysql_select_db($database_connBoutsimple, $connBoutsimple);
$query_rsCatalogue = sprintf("SELECT recette.nom, recette.vin_1, FROM recette, vin WHERE recette.rubriqueid=%s AND recette.nom LIKE '%%%s%%' AND vin.id_vin=recette.vin_1", $colrubrique_rsCatalogue,$colnom_rsCatalogue);
$query_limit_rsCatalogue = sprintf("%s LIMIT %d, %d", $query_rsCatalogue, $startRow_rsCatalogue, $maxRows_rsCatalogue);
$rsCatalogue = mysql_query($query_limit_rsCatalogue, $connBoutsimple) or die(mysql_error());
$row_rsCatalogue = mysql_fetch_assoc($rsCatalogue);
et le message pour la page de resultat
Erreur de syntaxe près de '% AND recette.nom LIKE '%iran%' AND vin.id_vin=recette.vin_1 LIM' à la ligne 1
merci de m'aider c mon dernier bug ..
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
26 avril 2005 à 18:58
26 avril 2005 à 18:58
recette.rubriqueid='%s' AND
4 janv. 2005 à 21:26
Mais j'ai trouvé la solution, je fais un test avant la requête. Si la variable a pris la valeur "tous" dans la liste déroulante, je dis que cette variable est égal à"%" dans la requête, sinon elle garde sa valeur prise dans la liste déroulante. Ca marche comme ça !