Application web

wiem -  
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   -

je suis en train de réaliser une application web et j'ai le probléme suivant:mon formulaire contient des champs texte et des selects et un bouton rechercher;je veux afficher la liste des accidents selon le type de filtre que je saisie(type,lieu,période,...)ou bien l'accident dont je saisie son numéro,le probléme c'est quand je veux l'accident n°net je clique sur rechercher ,le résultat est affichée (un tableau géneré avec echo contenant un enregistrement )accompagnée des tableaux vides généré par echo pour les restes des conditions.aidez moi s'il vous plait.
voila mon code: <?php
if((isset($_GET['rechercher']))&&( isset($_GET['num'])))
{
if( isset($_GET['num']))
{
$num=$_GET['num'];
if($num !="")
{
$connexion=mysql_pconnect("localhost","root","");
$db=mysql_select_db("gpsst",$connexion);
$req="select * from accident where num='$num'";
$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)
{

echo "<table width=70% align=center border=1>
<tr> <TH>Numéro</TH>
<TH>Type</TH>
<TH>Date</TH>
<TH>Jour</TH>
<TH>Heure</TH>
<TH>Lieu</TH>
<TH>S.lésion</TH>
<TH>N.lésion</TH>
<TH>Cause(s)</TH>
<TH>Observations</TH>
<TH>Matricule victime</TH>
</tr>";
while($e=mysql_fetch_object($res))
{
echo "<tr>
<td>$e->num</td>
<td>$e->type</td>
<td>$e->date</td>
<td>$e->jour</td>
<td>$e->heure</td>
<td>$e->site</td>
<td>$e->s_lesion</td>
<td>$e->n_lesion</td>
<td>$e->cause</td>
<td>$e->obs</td>
<td>$e->mat</td>
</tr>";
echo "<caption><b>Résultat de la recherche </b></caption></table>";
echo" </table>";
}

}
else
{
echo "<br><b>Désolé! Aucune donnée.</b>";
}
}
}
else
{
if( isset($_GET['type']))
{
$type=$_GET['type'];
if($type !="")
{
$connexion=mysql_pconnect("localhost","root","");
$db=mysql_select_db("gpsst",$connexion);
$req1="select * from accident where type='$type'";
$res1=mysql_query($req1,$connexion);

if(mysql_num_rows($res1)!=0)
{
echo "<table width=70% align=center border=1>
<tr> <TH>Numéro</TH>
<TH>Type</TH>
<TH>Date</TH>
<TH>Jour</TH>
<TH>Heure</TH>
<TH>Lieu</TH>
<TH>S.lésion</TH>
<TH>N.lésion</TH>
<TH>Cause(s)</TH>
<TH>Observations</TH>
<TH>Matricule victime</TH>
</tr>";
while($e1=mysql_fetch_object($res1))
{
echo "<tr>
<td>$e->num</td>
<td>$e->type</td>
<td>$e->date</td>
<td>$e->jour</td>
<td>$e->heure</td>
<td>$e->site</td>
<td>$e->s_lesion</td>
<td>$e->n_lesion</td>
<td>$e->cause</td>
<td>$e->obs</td>
<td>$e->mat</td>
</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";
echo" </table>";
}
}
else
{
echo "<br><b>Désolé! Aucune donnée.</b>";
}
}
}
}

}
?>voic le reste du code:<?php

if((isset($_GET['rechercher']))&&( isset($_GET['site'])))

{

$site=$_GET['site'];

if($site !="")

{

$connexion=mysql_pconnect("localhost","root","");

$db=mysql_select_db("gpsst",$connexion);

$req="select * from accident where site='$site'";

$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)

{

echo "<table width=70% align=center border=1>

<tr> <TH>Numéro</TH>

<TH>Type</TH>

<TH>Date</TH>

<TH>Jour</TH>

<TH>Heure</TH>

<TH>Lieu</TH>

<TH>S.lésion</TH>

<TH>N.lésion</TH>

<TH>Cause(s)</TH>

<TH>Observations</TH>

<TH>Matricule victime</TH>

</tr>";

while($e=mysql_fetch_object($res))

{

echo "<tr>

<td>$e->num</td>

<td>$e->type</td>

<td>$e->date</td>

<td>$e->jour</td>

<td>$e->heure</td>

<td>$e->site</td>

<td>$e->s_lesion</td>

<td>$e->n_lesion</td>

<td>$e->cause</td>

<td>$e->obs</td>

<td>$e->mat</td>

</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";

echo" </table>";

}

}

else

{

echo "<br><b>Désolé! Aucune donnée.</b>";

}

}

}

?>

<?php

if((isset($_GET['rechercher']))&&( isset($_GET['chef'])))

{

$chef =$_GET['chef'];

if($chef !="")

{

$connexion=mysql_pconnect("localhost","root","");

$db=mysql_select_db("gpsst",$connexion);

$req="select * from accident,salarier where mat.accident=mat.salarier and chef_eq.salarier=$chef";

$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)

{

echo "<table width=70% align=center border=1>

<tr> <TH>Numéro</TH>

<TH>Type</TH>

<TH>Date</TH>

<TH>Jour</TH>

<TH>Heure</TH>

<TH>Lieu</TH>

<TH>S.lésion</TH>

<TH>N.lésion</TH>

<TH>Cause(s)</TH>

<TH>Observations</TH>

<TH>Matricule victime</TH>

</tr>";

while($e=mysql_fetch_object($res))

{

echo "<tr>

<td>$e->num</td>

<td>$e->type</td>

<td>$e->date</td>

<td>$e->jour</td>

<td>$e->heure</td>

<td>$e->site</td>

<td>$e->s_lesion</td>

<td>$e->n_lesion</td>

<td>$e->cause</td>

<td>$e->obs</td>

<td>$e->mat</td>

</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";

echo" </table>";

}

}

else

{

echo "<br><b>Désolé! Aucune donnée.</b>";

}

}

}

?>

<?php

if((isset($_GET['rechercher']))&&( isset($_GET['cause'])))

{

$cause =$_GET['cause'];

if($cause !="")

{

$connexion=mysql_pconnect("localhost","root","");

$db=mysql_select_db("gpsst",$connexion);

$req="select * from accident where cause=$cause";

$res=mysql_query($req,$connexion);

if($res)

{

echo "<table width=70% align=center border=1>

<tr> <TH>Numéro</TH>

<TH>Type</TH>

<TH>Date</TH>

<TH>Jour</TH>

<TH>Heure</TH>

<TH>Lieu</TH>

<TH>S.lésion</TH>

<TH>N.lésion</TH>

<TH>Cause(s)</TH>

<TH>Observations</TH>

<TH>Matricule victime</TH>

</tr>";

while($e=mysql_fetch_object($res))

{

echo "<tr>

<td>$e->num</td>

<td>$e->type</td>

<td>$e->date</td>

<td>$e->jour</td>

<td>$e->heure</td>

<td>$e->site</td>

<td>$e->s_lesion</td>

<td>$e->n_lesion</td>

<td>$e->cause</td>

<td>$e->obs</td>

<td>$e->mat</td>

</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";

echo" </table>";

}

}

else

{

echo "<br><b>Désolé! Aucune donnée.</b>";

}

}

}

?>

<?php

if((isset($_GET['rechercher']))&&( isset($_GET['n_lesion'])))

{

$n_lesion=$_GET['n_lesion'];

if($n_lesion !="")

{

$connexion=mysql_pconnect("localhost","root","");

$db=mysql_select_db("gpsst",$connexion);

$req="select * from accident where n_lesion='$n_lesion'";

$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)

{

echo "<table width=70% align=center border=1>

<tr> <TH>Numéro</TH>

<TH>Type</TH>

<TH>Date</TH>

<TH>Jour</TH>

<TH>Heure</TH>

<TH>Lieu</TH>

<TH>S.lésion</TH>

<TH>N.lésion</TH>

<TH>Cause(s)</TH>

<TH>Observations</TH>

<TH>Matricule victime</TH>

</tr>";

while($e=mysql_fetch_object($res))

{

echo "<tr>

<td>$e->num</td>

<td>$e->type</td>

<td>$e->date</td>

<td>$e->jour</td>

<td>$e->heure</td>

<td>$e->site</td>

<td>$e->s_lesion</td>

<td>$e->n_lesion</td>

<td>$e->cause</td>

<td>$e->obs</td>

<td>$e->mat</td>

</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";

echo" </table>";

}

}

else

{

echo "<br><b>Désolé! Aucune donnée.</b>";

}

}

}

?>

<?php

if((isset($_GET['rechercher']))&&( isset($_GET['s_lesion'])))

{

$s_lesion=$_GET['s_lesion'];

if($s_lesion !="")

{

$connexion=mysql_pconnect("localhost","root","");

$db=mysql_select_db("gpsst",$connexion);

$req="select * from accident where s_lesion='$s_lesion'";

$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)

{

echo "<table width=70% align=center border=1>

<tr> <TH>Numéro</TH>

<TH>Type</TH>

<TH>Date</TH>

<TH>Jour</TH>

<TH>Heure</TH>

<TH>Lieu</TH>

<TH>S.lésion</TH>

<TH>N.lésion</TH>

<TH>Cause(s)</TH>

<TH>Observations</TH>

<TH>Matricule victime</TH>

</tr>";

while($e=mysql_fetch_object($res))

{

echo "<tr>

<td>$e->num</td>

<td>$e->type</td>

<td>$e->date</td>

<td>$e->jour</td>

<td>$e->heure</td>

<td>$e->site</td>

<td>$e->s_lesion</td>

<td>$e->n_lesion</td>

<td>$e->cause</td>

<td>$e->obs</td>

<td>$e->mat</td>

</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";

echo" </table>";

}

}

else

{

echo "<br><b>Désolé! Aucune donnée.</b>";

}

}

}

?>

<?php

if((isset($_GET['rechercher']))&&( isset($_GET['datea']))&&( isset($_GET['dateb'])))

{

$datea=$_GET['datea'];

$dateb=$_GET['dateb'];

if(($datea !="")&& ($dateb !="") )

{

$connexion=mysql_pconnect("localhost","root","");

$db=mysql_select_db("gpsst",$connexion);

$req="select * from accident where date between $datea and $dateb";

$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)

{

echo "<table width=70% align=center border=1>

<tr> <TH>Numéro</TH>

<TH>Type</TH>

<TH>Date</TH>

<TH>Jour</TH>

<TH>Heure</TH>

<TH>Lieu</TH>

<TH>S.lésion</TH>

<TH>N.lésion</TH>

<TH>Cause(s)</TH>

<TH>Observations</TH>

<TH>Matricule victime</TH>

</tr>";

while($e=mysql_fetch_object($res))

{

echo "<tr>

<td>$e->num</td>

<td>$e->type</td>

<td>$e->date</td>

<td>$e->jour</td>

<td>$e->heure</td>

<td>$e->site</td>

<td>$e->s_lesion</td>

<td>$e->n_lesion</td>

<td>$e->cause</td>

<td>$e->obs</td>

<td>$e->mat</td>

</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";

echo" </table>";

}

}

else

{

echo "<br><b>Désolé! Aucune donnée.</b>";

}

}

}

?>

2 réponses

wiem
 
voic le reste du code:<?php
if((isset($_GET['rechercher']))&&( isset($_GET['site'])))
{
$site=$_GET['site'];
if($site !="")
{
$connexion=mysql_pconnect("localhost","root","");
$db=mysql_select_db("gpsst",$connexion);
$req="select * from accident where site='$site'";
$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)
{
echo "<table width=70% align=center border=1>
<tr> <TH>Numéro</TH>
<TH>Type</TH>
<TH>Date</TH>
<TH>Jour</TH>
<TH>Heure</TH>
<TH>Lieu</TH>
<TH>S.lésion</TH>
<TH>N.lésion</TH>
<TH>Cause(s)</TH>
<TH>Observations</TH>
<TH>Matricule victime</TH>
</tr>";
while($e=mysql_fetch_object($res))
{
echo "<tr>
<td>$e->num</td>
<td>$e->type</td>
<td>$e->date</td>
<td>$e->jour</td>
<td>$e->heure</td>
<td>$e->site</td>
<td>$e->s_lesion</td>
<td>$e->n_lesion</td>
<td>$e->cause</td>
<td>$e->obs</td>
<td>$e->mat</td>
</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";
echo" </table>";
}
}
else
{
echo "<br><b>Désolé! Aucune donnée.</b>";
}
}
}
?>
<?php
if((isset($_GET['rechercher']))&&( isset($_GET['chef'])))
{
$chef =$_GET['chef'];
if($chef !="")
{

$connexion=mysql_pconnect("localhost","root","");
$db=mysql_select_db("gpsst",$connexion);
$req="select * from accident,salarier where mat.accident=mat.salarier and chef_eq.salarier=$chef";
$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)
{
echo "<table width=70% align=center border=1>
<tr> <TH>Numéro</TH>
<TH>Type</TH>
<TH>Date</TH>
<TH>Jour</TH>
<TH>Heure</TH>
<TH>Lieu</TH>
<TH>S.lésion</TH>
<TH>N.lésion</TH>
<TH>Cause(s)</TH>
<TH>Observations</TH>
<TH>Matricule victime</TH>
</tr>";
while($e=mysql_fetch_object($res))
{
echo "<tr>
<td>$e->num</td>
<td>$e->type</td>
<td>$e->date</td>
<td>$e->jour</td>
<td>$e->heure</td>
<td>$e->site</td>
<td>$e->s_lesion</td>
<td>$e->n_lesion</td>
<td>$e->cause</td>
<td>$e->obs</td>
<td>$e->mat</td>
</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";
echo" </table>";
}
}
else
{
echo "<br><b>Désolé! Aucune donnée.</b>";
}
}
}
?>
<?php
if((isset($_GET['rechercher']))&&( isset($_GET['cause'])))
{
$cause =$_GET['cause'];
if($cause !="")
{
$connexion=mysql_pconnect("localhost","root","");
$db=mysql_select_db("gpsst",$connexion);
$req="select * from accident where cause=$cause";
$res=mysql_query($req,$connexion);

if($res)
{

echo "<table width=70% align=center border=1>
<tr> <TH>Numéro</TH>
<TH>Type</TH>
<TH>Date</TH>
<TH>Jour</TH>
<TH>Heure</TH>
<TH>Lieu</TH>
<TH>S.lésion</TH>
<TH>N.lésion</TH>
<TH>Cause(s)</TH>
<TH>Observations</TH>
<TH>Matricule victime</TH>
</tr>";
while($e=mysql_fetch_object($res))
{
echo "<tr>
<td>$e->num</td>
<td>$e->type</td>
<td>$e->date</td>
<td>$e->jour</td>
<td>$e->heure</td>
<td>$e->site</td>
<td>$e->s_lesion</td>
<td>$e->n_lesion</td>
<td>$e->cause</td>
<td>$e->obs</td>
<td>$e->mat</td>
</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";
echo" </table>";
}
}
else
{
echo "<br><b>Désolé! Aucune donnée.</b>";
}
}
}
?>
<?php
if((isset($_GET['rechercher']))&&( isset($_GET['n_lesion'])))
{
$n_lesion=$_GET['n_lesion'];
if($n_lesion !="")
{

$connexion=mysql_pconnect("localhost","root","");
$db=mysql_select_db("gpsst",$connexion);
$req="select * from accident where n_lesion='$n_lesion'";
$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)
{

echo "<table width=70% align=center border=1>
<tr> <TH>Numéro</TH>
<TH>Type</TH>
<TH>Date</TH>
<TH>Jour</TH>
<TH>Heure</TH>
<TH>Lieu</TH>
<TH>S.lésion</TH>
<TH>N.lésion</TH>
<TH>Cause(s)</TH>
<TH>Observations</TH>
<TH>Matricule victime</TH>
</tr>";
while($e=mysql_fetch_object($res))
{
echo "<tr>
<td>$e->num</td>
<td>$e->type</td>
<td>$e->date</td>
<td>$e->jour</td>
<td>$e->heure</td>
<td>$e->site</td>
<td>$e->s_lesion</td>
<td>$e->n_lesion</td>
<td>$e->cause</td>
<td>$e->obs</td>
<td>$e->mat</td>
</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";
echo" </table>";
}
}
else
{
echo "<br><b>Désolé! Aucune donnée.</b>";
}
}
}
?>
<?php
if((isset($_GET['rechercher']))&&( isset($_GET['s_lesion'])))
{
$s_lesion=$_GET['s_lesion'];
if($s_lesion !="")
{
$connexion=mysql_pconnect("localhost","root","");
$db=mysql_select_db("gpsst",$connexion);
$req="select * from accident where s_lesion='$s_lesion'";
$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)
{

echo "<table width=70% align=center border=1>
<tr> <TH>Numéro</TH>
<TH>Type</TH>
<TH>Date</TH>
<TH>Jour</TH>
<TH>Heure</TH>
<TH>Lieu</TH>
<TH>S.lésion</TH>
<TH>N.lésion</TH>
<TH>Cause(s)</TH>
<TH>Observations</TH>
<TH>Matricule victime</TH>
</tr>";
while($e=mysql_fetch_object($res))
{
echo "<tr>
<td>$e->num</td>
<td>$e->type</td>
<td>$e->date</td>
<td>$e->jour</td>
<td>$e->heure</td>
<td>$e->site</td>
<td>$e->s_lesion</td>
<td>$e->n_lesion</td>
<td>$e->cause</td>
<td>$e->obs</td>
<td>$e->mat</td>
</tr>";

echo "<caption><b>Résultat de la recherche </b></caption></table>";
echo" </table>";
}
}
else
{
echo "<br><b>Désolé! Aucune donnée.</b>";
}
}
}
?>
<?php
if((isset($_GET['rechercher']))&&( isset($_GET['datea']))&&( isset($_GET['dateb'])))
{
$datea=$_GET['datea'];
$dateb=$_GET['dateb'];
if(($datea !="")&& ($dateb !="") )
{
$connexion=mysql_pconnect("localhost","root","");
$db=mysql_select_db("gpsst",$connexion);
$req="select * from accident where date between $datea and $dateb";
$res=mysql_query($req,$connexion);

if(mysql_num_rows($res)!=0)
{
echo "<table width=70% align=center border=1>
<tr> <TH>Numéro</TH>
<TH>Type</TH>
<TH>Date</TH>
<TH>Jour</TH>
<TH>Heure</TH>
<TH>Lieu</TH>
<TH>S.lésion</TH>
<TH>N.lésion</TH>
<TH>Cause(s)</TH>
<TH>Observations</TH>
<TH>Matricule victime</TH>
</tr>";
while($e=mysql_fetch_object($res))
{
echo "<tr>
<td>$e->num</td>
<td>$e->type</td>
<td>$e->date</td>
<td>$e->jour</td>
<td>$e->heure</td>
<td>$e->site</td>
<td>$e->s_lesion</td>
<td>$e->n_lesion</td>
<td>$e->cause</td>
<td>$e->obs</td>
<td>$e->mat</td>
</tr>";
echo "<caption><b>Résultat de la recherche </b></caption></table>";
echo" </table>";
}
}
else
{
echo "<br><b>Désolé! Aucune donnée.</b>";
}
}
}
?>
0
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 510
 
Tu peux vérifier si cette informations à été précisée.
Pour vérifier si le champ est vide, utilise la fonction empty($chaine) qui retourne true si il n'y a rien (pour retirer les espaces en début et fin de chaine, tu as la fonction trim($chaine)).

$id = trim($_GET['id']);
if(empty($id)) {
	// Le code de ta recherche
} else {
	$id = (int) $id; // (on converti la chaine [string] en entier [int])
	$sql = 'SELECT * FROM table WHERE champ_id = '.$id;
	$req = mysql_query($sql);
    // ...
}


Par contre, tu as encore beaucoup de choses à apprendre en PHP avant de faire de vraies applications Web, comme un vrai pro. Tu pourrais commencer par séparer les différentes couches, en utilisant par exemple le pattern MVC. La POO ne serait pas de réfus pour une application évolutive. Ensuite, les fonctions mysql_ seront obsolètes avec l'arrivée de PHP6 (qui n'est malheureusement pas pour bientôt) : utilises PDO.
Pour ton code HTML, les noms de balises, les attributs et les valeurs de ceux-ci doivent être en minuscules.

Dernière petite chose : CCM prévoit une balise "code" qui permet de conserver la mise en forme des codes (indentation) : utilises-la !
Pour les codes très longs, tu peux passer par un site externe qui fourni un lien (comme Paste.pocoo.org).
0