Aide pour code formulaire php/base de données
Marjory
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
Marjory Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Marjory Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai créé un code en php pour un formulaire de recherche.
Ce code marche très bien avec ma base de données.
Par contre, ma question est :
Comment faire pour rajouter une ligne "indifférent" à chaque case? En fait, rajouter "indifférent", je sais faire, je devrais plutôt demander :
Quel code rajouter pour que cela me donne tous les champs possible lorsqu'"indifférent" est notifié?
S'il vous faut aussi le code de ma 2eme page, dites-le moi.
Merci pour votre aide :-)
Marjorie
<form action="reponse.php" method="post">
<fieldset>
<legend class="titre"></legend>
<legend class="titre">Recherche</legend>
<table width="277" border="0" align="center" cellpadding="0" cellspacing="5" bordercolor="#FFFFFF">
<tr>
<td width="277" height="32"><div align="center">
<label for="nom"><span class="textetableau">Référence : </span></label>
<span class="textetableau"></span></span>
<input name="ref" type="text" class="liste" id="ref" size="20" maxlength="20" />
</div></td>
</tr>
<tr>
<td height="32"><div align="center"><span class="textetableau">Ville :
<select name="ville" size="1" class="liste" id="ville">
<option value="Carcassonne">Carcassonne</option>
<option value="Narbonne">Narbonne</option>
</select>
</span> </div></td>
</tr>
<tr>
<td height="37"><div align="center">
<p><span class="textetableau">Type : </span>
<select name="type" size="1" class="liste" id="type">
<option value="Maison">Maison</option>
<option value="Appartement">Appartement</option>
</select>
</p>
<p><span class="textetableau">Animaux acceptés :
</span>
<input name="checkbox" type="checkbox" class="liste" value="checkbox" />
</p>
</div></td>
</tr>
<tr>
<td><div align="center">
<p>
<input name="Submit" type="submit" class="textetableau" value="Envoyer" />
J'ai créé un code en php pour un formulaire de recherche.
Ce code marche très bien avec ma base de données.
Par contre, ma question est :
Comment faire pour rajouter une ligne "indifférent" à chaque case? En fait, rajouter "indifférent", je sais faire, je devrais plutôt demander :
Quel code rajouter pour que cela me donne tous les champs possible lorsqu'"indifférent" est notifié?
S'il vous faut aussi le code de ma 2eme page, dites-le moi.
Merci pour votre aide :-)
Marjorie
<form action="reponse.php" method="post">
<fieldset>
<legend class="titre"></legend>
<legend class="titre">Recherche</legend>
<table width="277" border="0" align="center" cellpadding="0" cellspacing="5" bordercolor="#FFFFFF">
<tr>
<td width="277" height="32"><div align="center">
<label for="nom"><span class="textetableau">Référence : </span></label>
<span class="textetableau"></span></span>
<input name="ref" type="text" class="liste" id="ref" size="20" maxlength="20" />
</div></td>
</tr>
<tr>
<td height="32"><div align="center"><span class="textetableau">Ville :
<select name="ville" size="1" class="liste" id="ville">
<option value="Carcassonne">Carcassonne</option>
<option value="Narbonne">Narbonne</option>
</select>
</span> </div></td>
</tr>
<tr>
<td height="37"><div align="center">
<p><span class="textetableau">Type : </span>
<select name="type" size="1" class="liste" id="type">
<option value="Maison">Maison</option>
<option value="Appartement">Appartement</option>
</select>
</p>
<p><span class="textetableau">Animaux acceptés :
</span>
<input name="checkbox" type="checkbox" class="liste" value="checkbox" />
</p>
</div></td>
</tr>
<tr>
<td><div align="center">
<p>
<input name="Submit" type="submit" class="textetableau" value="Envoyer" />
A voir également:
- Aide pour code formulaire php/base de données
- Whatsapp formulaire opposition - Guide
- Code ascii - Guide
- Formulaire de réclamation facebook - Guide
- Code de déverrouillage oublié - Guide
- Code puk bloqué - Guide
4 réponses
Je suppose que tu veux mettre indifferent dans tes listes <select ?
Alors tu testes dans ton script de traitement lorsque tu reçoit indifférent, dans ta requette mysql tu mets WHERE champ LIKE '%'
(vas voir sur le site Mysql pour plus de précisions) de mémoire je ne me souviens plus trop de la syntaxe
Alors tu testes dans ton script de traitement lorsque tu reçoit indifférent, dans ta requette mysql tu mets WHERE champ LIKE '%'
(vas voir sur le site Mysql pour plus de précisions) de mémoire je ne me souviens plus trop de la syntaxe
Tout d'abord, merci pour ta réponse :-)
Effectivement, je voudrais mettre "indifférent" dans mes listes "select".
J'ai testé:
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE ='%$ville%' AND type='$type'") or die(mysql_error()); // Requête SQL
Mais ça me dit ça :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '='%Cagnes sur Mer%' AND type='Maison'' at line 1
Je comprend bien que j'ai une erreur de syntaxe :-p. Je continu de chercher mais vos avis sont les bienvenus !
Soyez indulgents, ça fait 1 mois et demi que je ne me suis pas replongée dans les codes!
Marjorie
Effectivement, je voudrais mettre "indifférent" dans mes listes "select".
J'ai testé:
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE ='%$ville%' AND type='$type'") or die(mysql_error()); // Requête SQL
Mais ça me dit ça :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '='%Cagnes sur Mer%' AND type='Maison'' at line 1
Je comprend bien que j'ai une erreur de syntaxe :-p. Je continu de chercher mais vos avis sont les bienvenus !
Soyez indulgents, ça fait 1 mois et demi que je ne me suis pas replongée dans les codes!
Marjorie
J'ai essayé avec ça :
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE ville='%$ville%' AND type='$type'") or die(mysql_error()); // Requête SQL
Et ça ne me trouve aucune réponse, ça me dit "aucune réponse ne correspond", la phrase que je fais s'afficher quand il n'y a psa de réponse.
Au moins, ça ne me donne plus d'erreur de syntaxe. Mais je ne vois pas où corriger.
Je vous met en-dessous le code de ma 2eme page:
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE ville='%$ville%' AND type='$type'") or die(mysql_error());
if ($donnees = mysql_fetch_assoc($reponse)){
do {
?>
</span></p>
<fieldset><table width="651" height="114" border="0" align="center" cellpadding="0" cellspacing="2">
<tr>
<td width="361"><span class="texte">Référence : <?php echo $donnees['ref']; ?></span><span class="Style1"><br />
</span><span class="texte">Ville : <?php echo $donnees['ville']; ?></span></td>
<td width="290"><span class="texte">Type : <?php echo $donnees['type']; ?> </tr>
<tr>
<td colspan="2"><span class="texte">Description : <?php echo $donnees['description']; ?></span></td>
</tr>
</table></fieldset>
<p><span class="Style1"><br />
<br />
<?php
} while ($donnees=mysql_fetch_assoc($reponse));
} else {
?>
</span></p>
<span class="Style1">
<div align="center" class="texte">Il n'y a pas de réponse à votre recherche</div>
<?php
}
mysql_close(); // Déconnexion de MySQL
?>
</span></span>
</body>
</html>
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE ville='%$ville%' AND type='$type'") or die(mysql_error()); // Requête SQL
Et ça ne me trouve aucune réponse, ça me dit "aucune réponse ne correspond", la phrase que je fais s'afficher quand il n'y a psa de réponse.
Au moins, ça ne me donne plus d'erreur de syntaxe. Mais je ne vois pas où corriger.
Je vous met en-dessous le code de ma 2eme page:
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE ville='%$ville%' AND type='$type'") or die(mysql_error());
if ($donnees = mysql_fetch_assoc($reponse)){
do {
?>
</span></p>
<fieldset><table width="651" height="114" border="0" align="center" cellpadding="0" cellspacing="2">
<tr>
<td width="361"><span class="texte">Référence : <?php echo $donnees['ref']; ?></span><span class="Style1"><br />
</span><span class="texte">Ville : <?php echo $donnees['ville']; ?></span></td>
<td width="290"><span class="texte">Type : <?php echo $donnees['type']; ?> </tr>
<tr>
<td colspan="2"><span class="texte">Description : <?php echo $donnees['description']; ?></span></td>
</tr>
</table></fieldset>
<p><span class="Style1"><br />
<br />
<?php
} while ($donnees=mysql_fetch_assoc($reponse));
} else {
?>
</span></p>
<span class="Style1">
<div align="center" class="texte">Il n'y a pas de réponse à votre recherche</div>
<?php
}
mysql_close(); // Déconnexion de MySQL
?>
</span></span>
</body>
</html>
Essayes plutôt:
Mais il faut que tu fasses trois requettes:
if($_POST['ville']=='Indifferent" && $_POST['type']!='Indifferent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE '%' AND type='$type'");
}
if($_POST['ville']!='Indifferent" && $_POST['type']=='Indifferent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type LIKE '%' ");
}
if($_POST['ville']!='Indifferent" && $_POST['type']!='Indifferent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type='$type'");
}
% est un caractère "jocker"
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE '%' AND type='$type'")
Mais il faut que tu fasses trois requettes:
if($_POST['ville']=='Indifferent" && $_POST['type']!='Indifferent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE '%' AND type='$type'");
}
if($_POST['ville']!='Indifferent" && $_POST['type']=='Indifferent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type LIKE '%' ");
}
if($_POST['ville']!='Indifferent" && $_POST['type']!='Indifferent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type='$type'");
}
% est un caractère "jocker"
J'ai rectifié, mais ça me dit encore ça :
Parse error: syntax error, unexpected '}' in /home.13/monsite/www/reponse_gite.php on line 14
La ligne 14, c'est juste une accolade !
if($_POST['ville']=="Indifférent" && $_POST['type']!="Indifférent")
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE '%' AND type='$type'");
} ......................................................................................................................LIGNE 14
Je ne comprend vraiment pas l'erreur (dès fois, elle est juste sous nos yeux et on ne voit rien...)
un bout de mon code :
mysql_connect("mysql5-2", "monsite", "****")or die('Erreur de connexion');
mysql_select_db("****") or die('Base inexistante');
if($_POST['ville']=="Indifférent" && $_POST['type']!="Indifférent")
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE '%' AND type='$type'");
}
if($_POST['ville']!="Indifférent" && $_POST['type']=="Indifférent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type LIKE '%'");
}
if($_POST['ville']!="Indifférent" && $_POST['type']!="Indifférent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type='$type'");
}
if ($donnees = mysql_fetch_assoc($reponse)){
do {
Parse error: syntax error, unexpected '}' in /home.13/monsite/www/reponse_gite.php on line 14
La ligne 14, c'est juste une accolade !
if($_POST['ville']=="Indifférent" && $_POST['type']!="Indifférent")
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE '%' AND type='$type'");
} ......................................................................................................................LIGNE 14
Je ne comprend vraiment pas l'erreur (dès fois, elle est juste sous nos yeux et on ne voit rien...)
un bout de mon code :
mysql_connect("mysql5-2", "monsite", "****")or die('Erreur de connexion');
mysql_select_db("****") or die('Base inexistante');
if($_POST['ville']=="Indifférent" && $_POST['type']!="Indifférent")
$reponse = mysql_query("SELECT * FROM gites WHERE ville LIKE '%' AND type='$type'");
}
if($_POST['ville']!="Indifférent" && $_POST['type']=="Indifférent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type LIKE '%'");
}
if($_POST['ville']!="Indifférent" && $_POST['type']!="Indifférent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type='$type'");
}
if ($donnees = mysql_fetch_assoc($reponse)){
do {
AIE ! J'ai parlé trop vite !
J'ai une nouvelle erreur quand je fais "Indifférent" dans ville et "Indifférent" dans type, pour avoir la totalité de ma liste qui s'affiche.
Ca me dit :
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home.13/monsite/www/reponse_gite.php on line 27
Ma ligne 27 comprend ma boucle:
if($_POST['ville']!="Indifférent" && $_POST['type']!="Indifférent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type='$type'");
}
// On fait une boucle pour lister tout ce que contient la table :
if ($donnees = mysql_fetch_assoc($reponse)){............................................................Ma ligne 27
do {
J'ai une nouvelle erreur quand je fais "Indifférent" dans ville et "Indifférent" dans type, pour avoir la totalité de ma liste qui s'affiche.
Ca me dit :
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home.13/monsite/www/reponse_gite.php on line 27
Ma ligne 27 comprend ma boucle:
if($_POST['ville']!="Indifférent" && $_POST['type']!="Indifférent"){
$reponse = mysql_query("SELECT * FROM gites WHERE ville='$ville' AND type='$type'");
}
// On fait une boucle pour lister tout ce que contient la table :
if ($donnees = mysql_fetch_assoc($reponse)){............................................................Ma ligne 27
do {