ludolimc
Nouveau membre
Bonjour,
Voilà maintenant près de 3 jours que je ne trouve pas la solution à mon problème aussi je me permet de me tourner vers vous...
J'ai mis en place un formulaire de saisie pour enregistrer des véhicules avec diverses données...Afin de rechercher un véhicule en particulier j'essaie de mettre en place un formulaire de recherche avec 4 critères : je souhaite que les recherches soient possibles avec 1 critère saisie comme avec les 4...
Voici mon code:
[cpp]<?php
include("haut_recherche.php");
?><br/><br/>
<form method="post"/>
<?php
include("date_recherche.php");
include ("immat_recherche.php");
include("marque_recherche.php");
include("genre_recherche.php");?>
<p><input type="submit" value="Rechercher" tabindex="90"/></p><br/><br/>
<?php
include("bas.php"); ?>
<table>
<tr>
<th>Date de remise</th>
<th>Nom</th>
<th>Adresse</th>
<th>Ville</th>
</tr>
<?php
if(isset ($_POST['chiffre']) OR isset($_POST['lettre']) OR isset($_POST['marque']) OR isset($_POST['genre']))
{
if ($_POST['chiffre'] != NULL OR $_POST['lettre'] != NULL OR $_POST['marque'] != NULL OR $_POST['genre'] != NULL)
{
//ouverture de la base forbachww pour chercher les données
@mysql_connect("localhost", "root", "") or die ("Impossible de se connecter");
mysql_select_db("forbachww");
$sqlWHERE='';
if (!empty($jour) AND !empty($mois) AND !empty($annee))
{
$sqlWHERE.= "AND debut<='".$_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour']."'";
$date=$annee.'-'.$mois.'-'.$jour;
$jour=$_POST['jour'];
$mois=$_POST['mois'];
$annee=$_POST['annee'];
}
//if (!empty($chiffre)AND !empty($lettre))
//{
//$sqlWHERE.=" AND immatriculation='".$_POST['chiffre'].$_POST['lettre']."'";
if(!empty($chiffre) AND !empty($lettre))
{
$imww=$chiffre.$lettre;
$chiffre=$_POST['chiffre'];
$lettre=$_POST['lettre'];
$sqlWHERE.="AND immatriculation='".$_POST['chiffre'].$_POST['lettre']."'";
}
if (!empty($_POST['marque']))
{
$sqlWHERE.= " AND marque='".$_POST['marque']."'";
$marque=$_POST['marque'];
}
if (!empty($_POST['genre']))
{
$sqlWHERE.= " AND genre='".$_POST['genre']."'";
$genre=$_POST['genre'];
}
$sqlWHERE=substr($sqlWHERE,4);
$reponse=mysql_query("SELECT * FROM ww_db WHERE $sqlWHERE");
while($donnees = mysql_fetch_array($reponse) )
{
echo $sqlWHERE;
echo $chiffre;
echo $lettre;
echo $imww;
?>
<tr>
<td><?php echo $donnees['debut'];?></td>
<td><?php echo $donnees['nom'];?></td>
<td><?php echo $donnees['adresse'];?></td>
<td><?php echo $donnees['ville'];?></td>
</tr>
<?php
}
}
}
@mysql_close() or die (mysql_error());?>
</table>
[/cpp]
Le souci c'est que tous les critères fonctionnent sauf celui de l'immatriculation...MySQL me donne un message d'erreur comme si ces variables n'étaient pas définis or elles le sont bien :
[cpp]if(!empty($chiffre) AND !empty($lettre))
{
$imww=$chiffre.$lettre;
$chiffre=$_POST['chiffre'];
$lettre=$_POST['lettre'];
$sqlWHERE.="AND immatriculation='".$_POST['chiffre'].$_POST['lettre']."'";[/cpp]
et dans le module concerné (immat_recherche.php) on trouve ceci:
[cpp]<p class="requete"><label>Immatriculation : <input type="int" name="chiffre"tabindex="20" size=4 onKeyup="autotab(this, document.formulaire.second)" maxlength=4></label>
<select name="lettre" tabindex="20">
<option value=""></option>
<option value="WWE">WWE</option>
<option value="WWF">WWF</option>
<option value="WWG">WWG</option>
</select></p>[/cpp]
J'avoue être vraiment perdu d'autant que j'ai débuté le php en décembre alors
Si quelqu'un peut m'aider...ça m'aiderait vraiment beaucoup...
Voilà maintenant près de 3 jours que je ne trouve pas la solution à mon problème aussi je me permet de me tourner vers vous...
J'ai mis en place un formulaire de saisie pour enregistrer des véhicules avec diverses données...Afin de rechercher un véhicule en particulier j'essaie de mettre en place un formulaire de recherche avec 4 critères : je souhaite que les recherches soient possibles avec 1 critère saisie comme avec les 4...
Voici mon code:
[cpp]<?php
include("haut_recherche.php");
?><br/><br/>
<form method="post"/>
<?php
include("date_recherche.php");
include ("immat_recherche.php");
include("marque_recherche.php");
include("genre_recherche.php");?>
<p><input type="submit" value="Rechercher" tabindex="90"/></p><br/><br/>
<?php
include("bas.php"); ?>
<table>
<tr>
<th>Date de remise</th>
<th>Nom</th>
<th>Adresse</th>
<th>Ville</th>
</tr>
<?php
if(isset ($_POST['chiffre']) OR isset($_POST['lettre']) OR isset($_POST['marque']) OR isset($_POST['genre']))
{
if ($_POST['chiffre'] != NULL OR $_POST['lettre'] != NULL OR $_POST['marque'] != NULL OR $_POST['genre'] != NULL)
{
//ouverture de la base forbachww pour chercher les données
@mysql_connect("localhost", "root", "") or die ("Impossible de se connecter");
mysql_select_db("forbachww");
$sqlWHERE='';
if (!empty($jour) AND !empty($mois) AND !empty($annee))
{
$sqlWHERE.= "AND debut<='".$_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour']."'";
$date=$annee.'-'.$mois.'-'.$jour;
$jour=$_POST['jour'];
$mois=$_POST['mois'];
$annee=$_POST['annee'];
}
//if (!empty($chiffre)AND !empty($lettre))
//{
//$sqlWHERE.=" AND immatriculation='".$_POST['chiffre'].$_POST['lettre']."'";
if(!empty($chiffre) AND !empty($lettre))
{
$imww=$chiffre.$lettre;
$chiffre=$_POST['chiffre'];
$lettre=$_POST['lettre'];
$sqlWHERE.="AND immatriculation='".$_POST['chiffre'].$_POST['lettre']."'";
}
if (!empty($_POST['marque']))
{
$sqlWHERE.= " AND marque='".$_POST['marque']."'";
$marque=$_POST['marque'];
}
if (!empty($_POST['genre']))
{
$sqlWHERE.= " AND genre='".$_POST['genre']."'";
$genre=$_POST['genre'];
}
$sqlWHERE=substr($sqlWHERE,4);
$reponse=mysql_query("SELECT * FROM ww_db WHERE $sqlWHERE");
while($donnees = mysql_fetch_array($reponse) )
{
echo $sqlWHERE;
echo $chiffre;
echo $lettre;
echo $imww;
?>
<tr>
<td><?php echo $donnees['debut'];?></td>
<td><?php echo $donnees['nom'];?></td>
<td><?php echo $donnees['adresse'];?></td>
<td><?php echo $donnees['ville'];?></td>
</tr>
<?php
}
}
}
@mysql_close() or die (mysql_error());?>
</table>
[/cpp]
Le souci c'est que tous les critères fonctionnent sauf celui de l'immatriculation...MySQL me donne un message d'erreur comme si ces variables n'étaient pas définis or elles le sont bien :
[cpp]if(!empty($chiffre) AND !empty($lettre))
{
$imww=$chiffre.$lettre;
$chiffre=$_POST['chiffre'];
$lettre=$_POST['lettre'];
$sqlWHERE.="AND immatriculation='".$_POST['chiffre'].$_POST['lettre']."'";[/cpp]
et dans le module concerné (immat_recherche.php) on trouve ceci:
[cpp]<p class="requete"><label>Immatriculation : <input type="int" name="chiffre"tabindex="20" size=4 onKeyup="autotab(this, document.formulaire.second)" maxlength=4></label>
<select name="lettre" tabindex="20">
<option value=""></option>
<option value="WWE">WWE</option>
<option value="WWF">WWF</option>
<option value="WWG">WWG</option>
</select></p>[/cpp]
J'avoue être vraiment perdu d'autant que j'ai débuté le php en décembre alors
Si quelqu'un peut m'aider...ça m'aiderait vraiment beaucoup...