Eléphanteau du PHP |
35 Messages
06 juin 2013, 15:43
d'accord
menu.php:
<?php
/* Variables de connexion */
$serveur = "localhost";
$admin = "root";
$mdp = "";
$base = "application";
/* On récupère si elle existe, la valeur de l'activité envoyée par le formulaire */
$val = isset($_POST['Activ_Principal'])?$_POST['Activ_Principal']:null;
?>
<html>
<head>
<title>Sélectionner une sous activiter selon l'activiter choisie</title>
</head>
<body style="font-family: verdana, helvetica, sans-serif; font-size: 85%">
<?php
/* On établit la connexion à MySQL */
$connexion = mysql_pconnect("localhost", "root","");
if($connexion != false)
{
$choixbase = mysql_select_db("application");
$sql1 = "SELECT `ID_Activprinc`, `Activ_Principal`".
" FROM `activiter_principales`".
" ORDER BY `ID_Activprinc`";
$rech_activ = mysql_query($sql1);
$code_activ = array();
$activ = array();
/* On active un compteur pour les activités */
$nb_activ = 0;
if($rech_activ!= false)
{
while($ligne = mysql_fetch_assoc($rech_activ))
{
array_push($code_activ, $ligne['ID_Activprinc']);
array_push($activ, $ligne['Activ_Principal']);
/* On incrémente de compteur */
$nb_activ++;
}
}
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" id="chgsact">
<fieldset style="border: 3px double #333399">
<legend>Selectionnez une activiter</legend>
<select name="Activ_Principal" id="Activ_principal" onchange="document.forms['chgsact'].submit();">
<option value="-1">- - - Choisissez une activiter - - -</option>
<?php
for($i = 0; $i < $nb_activ; $i++)
{
?>
<option value="<?php echo($code_activ[$i]); ?>"<?php echo((isset($val) && $val == $code_activ[$i])?" selected=\"selected\"":null); ?>><?php echo($activ[$i]); ?></option>
<?php
}
?>
</select>
<?php
mysql_free_result($rech_activ);
/* On commence par vérifier si on a envoyé un numéro de l'activité et le cas échéant s'il est différent de -1 */
if(isset($val) && $val != -1)
{
/* Cération de la requête pour avoir les sous activités de cette activité */
$sql2 = "SELECT `ID_Sousactiv`, `Sous_Activ`".
" FROM `sous_activiter`".
" WHERE `ID_Activprinc` = ". $val ."".
" ORDER BY `ID_Sousactiv`;";
if($connexion != false)
{
$rech_sactiv = mysql_query($sql2, $connexion);
/* Un petit compteur pour les sous activités */
$nd = 0;
/* On crée deux tableaux pour les numéros et les noms des sous activités */
$code_sactiv = array();
$nom_sactiv = array();
/* On va mettre les numéros et noms des sous activités dans les deux tableaux */
while($ligne_sactiv = mysql_fetch_assoc($rech_sactiv))
{
array_push($code_sactiv, $ligne_sactiv['ID_Sousactiv']);
array_push($nom_sactiv, $ligne_sactiv['Sous_Activ']);
$nd++;
}
/* Maintenant on peut construire la liste déroulante */
?>
<select name="Sous_Activ">
<?php
for($d = 0; $d<$nd; $d++)
{
?>
<option value="<?php echo($code_sactiv[$d]); ?>"<?php echo((isset($sactiv_selectionne) && $sactiv_selectionne == $code_sactiv[$d])?" selected=\"selected\"":null); ?>><?php echo($nom_sactiv[$d]." (". $code_sactiv[$d] .")"); ?></option>
<?php
}
?>
</select>
<?php
}
/* Un petit coup de balai */
mysql_free_result($rech_sactiv);
}
?>
<br /><input type="button" value="Valider" onclick="location.href='registre.php'"/>
<tr /><input type="button" value="Annuler" onclick="location.href='menu.php'" />
</fieldset>
</form>
<?php
/* ferme la connexion */
mysql_close($connexion);
}
else
{
?>
<p>Un incident s'est produit lors de la connexion à la base de données, veuiillez essayer à nouveau ultérieurement.</p>
<?php
}
?>
</body>
</html>
registre.php:
<html>
<head>
<title>enregistrement</title>
</head>
<body>
<?php
print_r($_POST);
$serveur = "localhost";
$admin = "root";
$mdp = "";
$base = "application";
$code_activ = isset($_POST['Activ_Principal'])?$_POST['Activ_Principal']:"";
echo $code_activ;
$code_sactiv = isset($_POST['Sous_Activ'])?$_POST['Sous_Activ']:"";
echo $code_sactiv;
$sactiv_selectionne="ID_Sousactiv";
$activ_selectionnee="ID_Activprinc";
mysql_connect("localhost","root","")
or die ("impossible de se connecter a la base de donnée");
mysql_select_db("application")
or die ("impossible de selectionné la base de donnée");
$sql = "INSERT INTO suivi (ID_Activprinc, ID_Sousactiv ,Temps_Action) VALUES('".$code_activ."','".$code_sactiv."','".date("Y-m-d H:i:s")."')";
$req = mysql_query($sql)
or die("Erreur dans la requete SQL! <a href='menu.php'>retour</a>");
if($req)
{
echo("L'enregistrement a ete correctement effectuee") ;
}
else
{
echo("L'enregistrement a echouee <a href='registre.php'>retour</a>") ;
}
?>
<p>Vous avez selectionne la sous activiter <?php echo($sactiv_selectionne); ?> dans l'activiter <?php echo($activ_selectionnee); ?></p>
<br /><input type="button" value="deconnexion" onclick="location.href='index.html'"/>
<tr /><input type="button" value="retour" onclick="location.href='menu.php'" />
</body>
</html>
voila
