par
Jib » 01 avr. 2006, 22:24
Salut,
Bah ma fonction en javascript ne fonctionne pas.
Si tu veux, je te montre mon code. Ce que tu m'as dis de faire ne fait rien du tout.
voila le code :
<p class="ecrit">Vous avez décidez d'ouvir un vol
<?PHP
if (isset($_POST['nbescale']))
{
$nbescale=$_POST['nbescale'];
echo "<form method=\"post\" name=\"formulaire\" action=\"abis.php?nbescale=$nbescale\" onSubmit=\"return compare2($nbescale);\" >";
}
else
{
echo "<form method=\"post\" name=\"formulaire\" action=\"index.php\" onSubmit=\"return check();\" >";
}
<table>
<tr>
<!--<td>Continent</td>-->
<td>ville</td>
<td>heure départ</td>
<td>heure arrivée</td>
<td>modele-fabricant</td>
<td>fréquence</td>
<td> </td>
</tr>
<tr class="ecrit">
<!--<td>
<select name="continent" style="width:110px;" onKeyUp="javascript:couleur(this);">
<? if (isset($_POST['continent'])){ ?><option><?echo $_POST['continent'];?></option><? }?>
<option value="1">Europe</option>
<option value="2">Asie</option>
<option value="3">Océanie</option>
<option value="4">Amerique du Sud</option>
<option value="5">Amerique du Nord</option>
</select>
</td>-->
<td>
<select name=ville onKeyUp="javascript:couleur(this);">
<? if (isset($_POST['ville'])){ ?><option><?echo $_POST['ville'];?></option><? }?>
<?php
$result=pg_exec($db,"select nom_ville from ville_desservie;");
$max=pg_numrows($result);
for($i=0 ; $i<$max ;$i++)
{
$vil=pg_fetch_array($result,$i);
$ville=$vil[0];
echo "<option value=$ville>$ville</option>";
}
echo "</select>";
?>
</td>
<td>
<input size="9" type="text" name="h_depart" value="<?=$_POST['h_depart'];?>" onKeyUp="javascript:couleur(this);">
</td>
<td >
<input size="9" type="text" name="h_arrive" value="<?=$_POST['h_arrive'];?>" onKeyUp="javascript:couleur(this);" >
</td>
<td>
<SELECT name=Type onKeyUp="javascript:couleur(this);" >
<? if (isset($_POST['Type'])){ ?><option><?echo $_POST['Type'];?></option><? }?>
<?
$resulttype=pg_exec($db,"select distinct modele, fabricant from type_avion;");
$max=pg_numrows($resulttype);
for($i=0 ; $i<$max ;$i++)
{
$type=pg_fetch_array($resulttype,$i);
$Type=$type[0].'-'.$type[1];
echo "<OPTION VALUE='$Type'> $Type</OPTION>";
}
echo "</SELECT>";
?>
</td>
<td >
<select name=frequence tabindex=40 onKeyUp="javascript:couleur(this);" >
<?PHP if (isset($_POST['frequence'])){?> <option><? echo
$_POST['frequence']; ?></option><?}
else
{
?>
<option value="lundi">Lundi </option>
<option value="mardi">Mardi </option>
<option value="mercredi">Mercredi </option>
<option value="jeudi">Jeudi </option>
<option value="vendredi">Vendredi </option>
<option value="samedi">Samedi </option>
<option value="dimanche">Dimanche </option>
<?PHP
}
?>
</select>
</td>
<td>
</tr>
<tr><td>mois</td><td></tr>
<tr>
<td>
<select name=mois>
<?PHP
if (isset($_POST['mois'])){ ?><option><?echo $_POST['mois'];?></option><? }
else
{
?>
<option value="janvier"> janvier </option>
<option value="fevrier"> fevrier </option>
<option value="mars"> mars </option>
<option value="avril"> avril </option>
<option value="mai"> mai </option>
<option value="juin"> juin </option>
<option value="juillet"> juillet </option>
<option value="aout"> aout </option>
<option value="septembre"> septembre </option>
<option value="octobre"> octobre </option>
<option value="novembre"> novembre </option>
<option value="decembre"> decembre </option>
<?PHP
}
?>
</select>
</td>
</tr>
<?PHP
if (!isset($nbescale))
{
?>
<tr>
<td colspan=6>
nombre d'escales ? :
<input id="liste_1" size=4 type=text name=nbescale />
<input type=submit VALUE=valider /></form>
</td>
</tr>
<?PHP
}
else
{
// on recupere le type de l'avion
//$modele=$_POST['modele'];
//$fabricant=$_POST['fabricant'];
list($modele, $fabricant) = explode("-",$_POST['Type']);
$Rnum_type=pg_exec($db,"select n_type from type_avion where fabricant='$fabricant' and modele='$modele';");
$num_type=pg_fetch_array($Rnum_type,0);
$Ntype= $num_type[0];
$ville=$_POST['ville'];
$ville=trim($ville);
//generation du numero de vol
//on va d abord recuperer le continent en fonction de la ville choisie
$reque=pg_exec("select code_continent from ville_desservie where nom_ville='$ville';");
$cont=pg_fetch_array($reque,0);
$continent=$cont[0];
$requ=pg_exec("select num_dernier_vol from continent where code_continent=$continent;");
$num=pg_fetch_array($requ,0);
echo "<input type=hidden name=continent value=$continent />";
$n_vol=$num[0];
//ici, on va traiter la variable recuperée
$len=strlen($n_vol);
$rest = substr($n_vol, 1, $len);
$rest=$rest+1;
if ($rest<10){ $rest='00'.$rest;}
else if ($rest<100) {$rest='0'.$rest;}
$n_vol=$continent.$rest;
//$n_vol=$_POST['continent'].date('d').date('s');
echo" <input type=hidden name=n_vol value=$n_vol />";
/*
pas besoin finalement
$requeteNA=pg_exec("select n_avion from avion where n_type=$Ntype;");
$maw=pg_numrows($requeteNA);
echo "<tr><td colspan=6> choisir le numéro d'avion pour le vol
$n_vol<select name=n_avion>";
for($k=0 ; $k<$maw ; $k++)
{
$nA=pg_fetch_array($requeteNA,$k);
$n_avion=$nA[0];
echo "<option value=$n_avion> $n_avion </option>";
}
echo "</select></td></tr>";
*/
echo" <input type=hidden name=Ntype value=$Ntype />";
if ($nbescale !=0)
echo "<tr><td colspan=6>vous pouvez creer jusqu'à $nbescale escale";
else
echo "<tr><td colspan=6>Aucune escale n'est a créer";
echo " pour le vol de num $n_vol : </td></tr>";
// on va rechercher le type de l avion
$j=1;
while ($j <= $nbescale)
{
?>
<tr class="escale">
<td colspan=6>
<u>Création de l'escale pour ce vol :</u>
<br />
<label>continent</label>
<select name="continent_e<? echo $j;?>" style="width:110px;">
<option value=""></option>
<option value="1">Europe</option>
<option value="2">Asie</option>
<option value="3">Océanie</option>
<option value="4">Amerique du Sud</option>
<option value="5">Amerique du Nord</option>
</select>
<label>ville</label>
<select name=ville_e<? echo $j;?>>
<?PHP
$result=pg_exec($db,"select nom_ville from ville_desservie;");
$max=pg_numrows($result);
for($i=0 ; $i<$max ;$i++)
{
$vil=pg_fetch_array($result,$i);
$ville=$vil[0];
?>
<option value="<? echo $ville;?> "><?echo $ville;?></option>
<?
}
echo "</select>";
?>
<br />
<label>arrive </label>
<input size=8 type=text name="arr_e<? echo $j;?>" />
<label>depart</label>
<input size=8 type=text name="dep_e<? echo $j;?>" /><br />
</td>
</tr>
<?
$j=$j+1;
//echo "j: ".$j."<br/>";
// echo "nbescale: ".$nbescale."<br/>";
}
echo "</table><br /><input class=bouton type=submit value=Envoyer /></form>";
}
?>
?>
et la fonction javascript:
Code : Tout sélectionner
function compare2(nb)
{
for (i=1; i<=nb; i++)
{
var elem_arr = 'arr_e'+i;
var elem_dep = 'dep_e'+i;
if (document.forms['formulaire'].elements['elem_arr'].value > document.forms['formulaire'].elements['elem_dep'].value)
alert ("votre heure d'arrivee pour l escale est superieur à celle de depart");
else
alert ("ok");
}
}
ps: J'ai fai un test avec des valeurs numeriques mais cela ne fais rien.
Alors a defaut de reussir le javascript je teste de le faire en php mais je dois savoir comment comparer des heures.
ps2: dans une autre page, je dois additionner des heures de vols et soustraires d autres heures de vols.
Merci
Salut,
Bah ma fonction en javascript ne fonctionne pas.
Si tu veux, je te montre mon code. Ce que tu m'as dis de faire ne fait rien du tout.
voila le code :
[php]
<p class="ecrit">Vous avez décidez d'ouvir un vol
<?PHP
if (isset($_POST['nbescale']))
{
$nbescale=$_POST['nbescale'];
echo "<form method=\"post\" name=\"formulaire\" action=\"abis.php?nbescale=$nbescale\" onSubmit=\"return compare2($nbescale);\" >";
}
else
{
echo "<form method=\"post\" name=\"formulaire\" action=\"index.php\" onSubmit=\"return check();\" >";
}
<table>
<tr>
<!--<td>Continent</td>-->
<td>ville</td>
<td>heure départ</td>
<td>heure arrivée</td>
<td>modele-fabricant</td>
<td>fréquence</td>
<td> </td>
</tr>
<tr class="ecrit">
<!--<td>
<select name="continent" style="width:110px;" onKeyUp="javascript:couleur(this);">
<? if (isset($_POST['continent'])){ ?><option><?echo $_POST['continent'];?></option><? }?>
<option value="1">Europe</option>
<option value="2">Asie</option>
<option value="3">Océanie</option>
<option value="4">Amerique du Sud</option>
<option value="5">Amerique du Nord</option>
</select>
</td>-->
<td>
<select name=ville onKeyUp="javascript:couleur(this);">
<? if (isset($_POST['ville'])){ ?><option><?echo $_POST['ville'];?></option><? }?>
<?php
$result=pg_exec($db,"select nom_ville from ville_desservie;");
$max=pg_numrows($result);
for($i=0 ; $i<$max ;$i++)
{
$vil=pg_fetch_array($result,$i);
$ville=$vil[0];
echo "<option value=$ville>$ville</option>";
}
echo "</select>";
?>
</td>
<td>
<input size="9" type="text" name="h_depart" value="<?=$_POST['h_depart'];?>" onKeyUp="javascript:couleur(this);">
</td>
<td >
<input size="9" type="text" name="h_arrive" value="<?=$_POST['h_arrive'];?>" onKeyUp="javascript:couleur(this);" >
</td>
<td>
<SELECT name=Type onKeyUp="javascript:couleur(this);" >
<? if (isset($_POST['Type'])){ ?><option><?echo $_POST['Type'];?></option><? }?>
<?
$resulttype=pg_exec($db,"select distinct modele, fabricant from type_avion;");
$max=pg_numrows($resulttype);
for($i=0 ; $i<$max ;$i++)
{
$type=pg_fetch_array($resulttype,$i);
$Type=$type[0].'-'.$type[1];
echo "<OPTION VALUE='$Type'> $Type</OPTION>";
}
echo "</SELECT>";
?>
</td>
<td >
<select name=frequence tabindex=40 onKeyUp="javascript:couleur(this);" >
<?PHP if (isset($_POST['frequence'])){?> <option><? echo
$_POST['frequence']; ?></option><?}
else
{
?>
<option value="lundi">Lundi </option>
<option value="mardi">Mardi </option>
<option value="mercredi">Mercredi </option>
<option value="jeudi">Jeudi </option>
<option value="vendredi">Vendredi </option>
<option value="samedi">Samedi </option>
<option value="dimanche">Dimanche </option>
<?PHP
}
?>
</select>
</td>
<td>
</tr>
<tr><td>mois</td><td></tr>
<tr>
<td>
<select name=mois>
<?PHP
if (isset($_POST['mois'])){ ?><option><?echo $_POST['mois'];?></option><? }
else
{
?>
<option value="janvier"> janvier </option>
<option value="fevrier"> fevrier </option>
<option value="mars"> mars </option>
<option value="avril"> avril </option>
<option value="mai"> mai </option>
<option value="juin"> juin </option>
<option value="juillet"> juillet </option>
<option value="aout"> aout </option>
<option value="septembre"> septembre </option>
<option value="octobre"> octobre </option>
<option value="novembre"> novembre </option>
<option value="decembre"> decembre </option>
<?PHP
}
?>
</select>
</td>
</tr>
<?PHP
if (!isset($nbescale))
{
?>
<tr>
<td colspan=6>
nombre d'escales ? :
<input id="liste_1" size=4 type=text name=nbescale />
<input type=submit VALUE=valider /></form>
</td>
</tr>
<?PHP
}
else
{
// on recupere le type de l'avion
//$modele=$_POST['modele'];
//$fabricant=$_POST['fabricant'];
list($modele, $fabricant) = explode("-",$_POST['Type']);
$Rnum_type=pg_exec($db,"select n_type from type_avion where fabricant='$fabricant' and modele='$modele';");
$num_type=pg_fetch_array($Rnum_type,0);
$Ntype= $num_type[0];
$ville=$_POST['ville'];
$ville=trim($ville);
//generation du numero de vol
//on va d abord recuperer le continent en fonction de la ville choisie
$reque=pg_exec("select code_continent from ville_desservie where nom_ville='$ville';");
$cont=pg_fetch_array($reque,0);
$continent=$cont[0];
$requ=pg_exec("select num_dernier_vol from continent where code_continent=$continent;");
$num=pg_fetch_array($requ,0);
echo "<input type=hidden name=continent value=$continent />";
$n_vol=$num[0];
//ici, on va traiter la variable recuperée
$len=strlen($n_vol);
$rest = substr($n_vol, 1, $len);
$rest=$rest+1;
if ($rest<10){ $rest='00'.$rest;}
else if ($rest<100) {$rest='0'.$rest;}
$n_vol=$continent.$rest;
//$n_vol=$_POST['continent'].date('d').date('s');
echo" <input type=hidden name=n_vol value=$n_vol />";
/*
pas besoin finalement
$requeteNA=pg_exec("select n_avion from avion where n_type=$Ntype;");
$maw=pg_numrows($requeteNA);
echo "<tr><td colspan=6> choisir le numéro d'avion pour le vol
$n_vol<select name=n_avion>";
for($k=0 ; $k<$maw ; $k++)
{
$nA=pg_fetch_array($requeteNA,$k);
$n_avion=$nA[0];
echo "<option value=$n_avion> $n_avion </option>";
}
echo "</select></td></tr>";
*/
echo" <input type=hidden name=Ntype value=$Ntype />";
if ($nbescale !=0)
echo "<tr><td colspan=6>vous pouvez creer jusqu'à $nbescale escale";
else
echo "<tr><td colspan=6>Aucune escale n'est a créer";
echo " pour le vol de num $n_vol : </td></tr>";
// on va rechercher le type de l avion
$j=1;
while ($j <= $nbescale)
{
?>
<tr class="escale">
<td colspan=6>
<u>Création de l'escale pour ce vol :</u>
<br />
<label>continent</label>
<select name="continent_e<? echo $j;?>" style="width:110px;">
<option value=""></option>
<option value="1">Europe</option>
<option value="2">Asie</option>
<option value="3">Océanie</option>
<option value="4">Amerique du Sud</option>
<option value="5">Amerique du Nord</option>
</select>
<label>ville</label>
<select name=ville_e<? echo $j;?>>
<?PHP
$result=pg_exec($db,"select nom_ville from ville_desservie;");
$max=pg_numrows($result);
for($i=0 ; $i<$max ;$i++)
{
$vil=pg_fetch_array($result,$i);
$ville=$vil[0];
?>
<option value="<? echo $ville;?> "><?echo $ville;?></option>
<?
}
echo "</select>";
?>
<br />
<label>arrive </label>
<input size=8 type=text name="arr_e<? echo $j;?>" />
<label>depart</label>
<input size=8 type=text name="dep_e<? echo $j;?>" /><br />
</td>
</tr>
<?
$j=$j+1;
//echo "j: ".$j."<br/>";
// echo "nbescale: ".$nbescale."<br/>";
}
echo "</table><br /><input class=bouton type=submit value=Envoyer /></form>";
}
?>
?>
[/php]
et la fonction javascript:
[code]
function compare2(nb)
{
for (i=1; i<=nb; i++)
{
var elem_arr = 'arr_e'+i;
var elem_dep = 'dep_e'+i;
if (document.forms['formulaire'].elements['elem_arr'].value > document.forms['formulaire'].elements['elem_dep'].value)
alert ("votre heure d'arrivee pour l escale est superieur à celle de depart");
else
alert ("ok");
}
}
[/code]
ps: J'ai fai un test avec des valeurs numeriques mais cela ne fais rien.
Alors a defaut de reussir le javascript je teste de le faire en php mais je dois savoir comment comparer des heures.
ps2: dans une autre page, je dois additionner des heures de vols et soustraires d autres heures de vols.
Merci