Php Mysql
Résolu
Charlotte
-
UgglyBoy Messages postés 426 Date d'inscription Statut Membre Dernière intervention -
UgglyBoy Messages postés 426 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'aurais besoin d'un peu d'aide. Je vous explique.
J'ai une page php sur laquel il y a 2 moteurs de recherches avec un bouton pr chaque et je souhaite que ces deux moteurs de recherche affichent sur une même page le résultat selon la recherche qui est utilisée. Je me doute qu'il me faut un if() mais je vois pas comment le mettre:
if (c'est le premier moteur de recherche alors tu utilises cette requête sql)
else(tu utilises l'autre requête)
Et puis j'ai une seconde petite question, j'ai une requête qui fonctionne quand je la teste ds ma BDD mais pas ds ma page php je ne comprends pas , la voici:
SELECT * FROM definition, terme, refLit, exemple WHERE definition.Code_T = terme.Code_T AND refLit.Code_Def = definition.Code_Def AND exemple.Code_Def = definition.Code_Def LIKE Nom_T = 'A*'
Et si je change comme ceci elle ne fonctionne ds aucun des 2
SELECT * FROM definition, terme, refLit, exemple WHERE definition.Code_T = terme.Code_T AND refLit.Code_Def = definition.Code_Def AND exemple.Code_Def = definition.Code_Def AND Nom_T LIKE 'A*'
Pouvez vous m'aider ???
Merci :)
j'aurais besoin d'un peu d'aide. Je vous explique.
J'ai une page php sur laquel il y a 2 moteurs de recherches avec un bouton pr chaque et je souhaite que ces deux moteurs de recherche affichent sur une même page le résultat selon la recherche qui est utilisée. Je me doute qu'il me faut un if() mais je vois pas comment le mettre:
if (c'est le premier moteur de recherche alors tu utilises cette requête sql)
else(tu utilises l'autre requête)
Et puis j'ai une seconde petite question, j'ai une requête qui fonctionne quand je la teste ds ma BDD mais pas ds ma page php je ne comprends pas , la voici:
SELECT * FROM definition, terme, refLit, exemple WHERE definition.Code_T = terme.Code_T AND refLit.Code_Def = definition.Code_Def AND exemple.Code_Def = definition.Code_Def LIKE Nom_T = 'A*'
Et si je change comme ceci elle ne fonctionne ds aucun des 2
SELECT * FROM definition, terme, refLit, exemple WHERE definition.Code_T = terme.Code_T AND refLit.Code_Def = definition.Code_Def AND exemple.Code_Def = definition.Code_Def AND Nom_T LIKE 'A*'
Pouvez vous m'aider ???
Merci :)
A voir également:
- Php Mysql
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Php alert - Forum PHP
- Mysql a répondu : documentation connexion impossible : paramètres incorrects. - Forum Bases de données
10 réponses
Pour la première question :
<form name="form1" method="post" action="./essai.php"> <center> <p> <input type="text" name="motscle" id="motscle" /></p> <p> <input type="submit" name="submit1" value="requete 1"/> <input type="submit" name="submit2" value="requete 2"/> </p> </center> </form> <?php if (!empty($_POST['submit1'])){ echo "requete 1"; } if (!empty($_POST['submit2'])){ echo "requete 2"; } ?>
Charlotte
merci bcp je vais essayer de ce pas
Pour t'a deuxième question que renvoi comme erreur le page php ?
Montre comme tu insère la requête dans ton code .
Montre comme tu insère la requête dans ton code .
Ma page php ne me renvoie rien elle tourne dans le vide comme si j'avais une boucle infinie
voici mon code:
<?php
include("connexion.php");
$query="SELECT * FROM definition, terme, refLit, exemple WHERE definition.Code_T = terme.Code_T AND refLit.Code_Def = definition.Code_Def AND exemple.Code_Def = definition.Code_Def AND Nom_T LIKE 'A*'";
$execute=mysql_query($query,$connexion);
while($req=mysql_fetch_row($execute))
{
echo $req[5]."<br>";
echo $req[1].$req[2]."<br>";
echo "EXEMPLE: ".$req[10]."<br>";
echo "LIT. ".$req[7]."<br>";
}
voici mon code:
<?php
include("connexion.php");
$query="SELECT * FROM definition, terme, refLit, exemple WHERE definition.Code_T = terme.Code_T AND refLit.Code_Def = definition.Code_Def AND exemple.Code_Def = definition.Code_Def AND Nom_T LIKE 'A*'";
$execute=mysql_query($query,$connexion);
while($req=mysql_fetch_row($execute))
{
echo $req[5]."<br>";
echo $req[1].$req[2]."<br>";
echo "EXEMPLE: ".$req[10]."<br>";
echo "LIT. ".$req[7]."<br>";
}
Bonjour,
dans le like en SQL, le joker est le % pas le *
qui plus est, le like est un prédicat à lui tout seul (cf 2e syntaxe)
je connais pas trop MySQL, mais essaie donc de remplacer ton * par un % pour voir
dans le like en SQL, le joker est le % pas le *
qui plus est, le like est un prédicat à lui tout seul (cf 2e syntaxe)
je connais pas trop MySQL, mais essaie donc de remplacer ton * par un % pour voir
J'aurai plutôt fait comme ca la requête :
SELECT * FROM definition
JOIN terme ON definition.Code_T = terme.Code_T
JOIN refLit ON refLit.Code_Def = definition.Code_
JOIN exemple ON exemple.Code_Def = definition.Code_Def
WHERE (la il manque le nom de table du champ).Nom_T LIKE '%A%'
SELECT * FROM definition
JOIN terme ON definition.Code_T = terme.Code_T
JOIN refLit ON refLit.Code_Def = definition.Code_
JOIN exemple ON exemple.Code_Def = definition.Code_Def
WHERE (la il manque le nom de table du champ).Nom_T LIKE '%A%'
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mais elle fonctionne dans l'interface MySQL
SELECT * FROM definition
JOIN terme ON definition.Code_T = terme.Code_T
JOIN refLit ON refLit.Code_Def = definition.Code_T
JOIN exemple ON exemple.Code_Def = definition.Code_Def
WHERE (la il manque le nom de table du champ).Nom_T LIKE '%A%'
Sinon quel est le message d'erreur??
SELECT * FROM definition
JOIN terme ON definition.Code_T = terme.Code_T
JOIN refLit ON refLit.Code_Def = definition.Code_T
JOIN exemple ON exemple.Code_Def = definition.Code_Def
WHERE (la il manque le nom de table du champ).Nom_T LIKE '%A%'
Sinon quel est le message d'erreur??
il ne me donne aucun message d'erreur.
voila ce qu'il me dit et si je mets LIKE %A% il me donne tout les termes qui contiennent un A alors j'ai changé et j'ai mis A% qui veut dire ce qui commence par A et là il me donne aucun réponse.
MySQL n'a retourné aucun enregistrement. (traitement: 0.0003 sec.)
requête SQL:
SELECT *
FROM definition
JOIN terme ON definition.Code_T = terme.Code_T
JOIN refLit ON refLit.Code_Def = definition.Code_T
JOIN exemple ON exemple.Code_Def = definition.Code_Def
WHERE terme.Nom_T LIKE 'A%'
voila ce qu'il me dit et si je mets LIKE %A% il me donne tout les termes qui contiennent un A alors j'ai changé et j'ai mis A% qui veut dire ce qui commence par A et là il me donne aucun réponse.
MySQL n'a retourné aucun enregistrement. (traitement: 0.0003 sec.)
requête SQL:
SELECT *
FROM definition
JOIN terme ON definition.Code_T = terme.Code_T
JOIN refLit ON refLit.Code_Def = definition.Code_T
JOIN exemple ON exemple.Code_Def = definition.Code_Def
WHERE terme.Nom_T LIKE 'A%'
Cela veux dire qu'il n'y pas d'enregistrement dans la colonne Nom_T commençant par "A"
NOTA : l’opérateur LIKE effectue une recherche en tenant compte de la différence entre lettres majuscules et minuscules. Si vous voulez effectuer une recherche en ne tenant aucunement compte de la différence entre majuscules et minuscules, il convient d’utiliser les opérateurs LOWER et UPPER (voir ci dessous). Mais la plupart du temps, l'utilisation du like dans un SGBDR donné ignore la casse.
http://sqlpro.developpez.com/cours/sqlaz/select/#L3.4
NOTA : l’opérateur LIKE effectue une recherche en tenant compte de la différence entre lettres majuscules et minuscules. Si vous voulez effectuer une recherche en ne tenant aucunement compte de la différence entre majuscules et minuscules, il convient d’utiliser les opérateurs LOWER et UPPER (voir ci dessous). Mais la plupart du temps, l'utilisation du like dans un SGBDR donné ignore la casse.
http://sqlpro.developpez.com/cours/sqlaz/select/#L3.4
... WHERE table.field LIKE("%string%"); essaie avec d'autre guillemets et essaie aussi avec des parenthèses
c'est normal, car
LIKE("a%") renvoie "Albert"
LIKE("%a%") renvoie "ballon"
LIKE("%a") renvoie "canada"
LIKE("a%a") renvoie "alexandra"
...
LIKE("a%") renvoie "Albert"
LIKE("%a%") renvoie "ballon"
LIKE("%a") renvoie "canada"
LIKE("a%a") renvoie "alexandra"
...