Je bute sur le problème suivant. j'ai une zone déroulante à partir d'une table de ma base.Je voudrais récupérer la valeur sélectionnée pour
la mettre en critère dans une requête select. En clair, j'ai créé une table avec des modèles d'écritures comprenant le nom de l'écriture modèle,
(l'objet de la zone déroulante), puis des comptes qui correspondent à l'écriture modèle.
j'ai créé deux pages, la zone déroulante qui fonctionne et une page qui envoie les données à ma table écriture.
Je ne sais pas comment faire pour récupérer les comptes en rapport avec la sélection de l'utilisateur.
Page 1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>saisie écriture</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="modeleecriture" href="plancompta.css" />
</head>
<body>
<h1>SAISIE ECRITURE </h1>
<?php
setlocale(LC_TIME, 'fr_FR', 'french', 'fra');
echo '<select name="jour">
<option value="">Jour</option>';
for($j = 1; $j <= 31; $j++)
echo '<option value="'.str_pad($j, 2, 0, STR_PAD_LEFT).'">'.str_pad($j, 2, 0, STR_PAD_LEFT).'</option>';
echo '</select>
<select name="mois">
<option value="">Mois</option>';
for($m = 1; $m <= 12; $m++)
echo '<option value="'.str_pad($m, 2, 0, STR_PAD_LEFT).'">'.ucfirst(strftime('%b', strtotime('2010-'.str_pad($m, 2, 0, STR_PAD_LEFT).'-01'))).'</option>';
echo '</select>
<select name="annee">
<option value="">Année</option>';
for($a = date('Y'); $a >= 2010; $a--)
echo '<option value="'.$a.'">'.$a.'</option>';
echo '</select>';
?>
<?php
if(!empty($_POST['jour']) AND !empty($_POST['mois']) AND !empty($_POST['annee']) AND checkdate(intval($_POST['mois']), intval($_POST['jour']), $_POST['annee'])){
$date = $_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour'];
}
?>
<?php
//parametres de connexion
$machine="localhost";
$utilisateur="root";
$mot_passe="";
$nom_base="compta";
//connexion au SGBD Mysql
$con=mysql_connect($machine,$utilisateur,$mot_passe) or die ('Erreur : '.mysql_error() );
//selection de la base des donnees
mysql_select_db($nom_base);
// requête SQL qui compte le nombre total d'enregistrement dans la table et qui
//récupère tous les enregistrements
$sql = " SELECT nom FROM ecrituremodele";
$result = mysql_query($sql) or die("Requete pas comprise");
echo "<form action='form_saisieecriture.php' method='POST'>
<table><tr><td> MODELE ECRITURE
<select name='nom'>";
while ($row=mysql_fetch_array($result))
{
echo "<option value='choix'>".$result[0]."</option>";
}
echo"</select></td></tr>
</table>
</form>";
?>
<FORM action="form_saisieecriture.php" method="post">
MONTANT HT :
<INPUT type="text" name="chargeht" size="25" >
<BR>
PORT :
<INPUT type="text" name="portht" size="25" >
<BR>
TVA :
<INPUT type="text" name="montanttva" size="25" >
<BR>
MONTANT TTC :
<INPUT type="text" name="montantttc" size="25" >
<BR>
<BR>
<BR>
<BR>
<BR>
<INPUT type="submit" name="OK">
</FORM>
</body>
</html>
Page 2<?php
// Récupération des champs
$montant = $_POST['chargeht'];
// Fabrication de la requête INSERT
$ma_requete = "INSERT INTO `ecriture` (`montant`)VALUES ('$montant')";
// Connexion au serveur MySQL et selection de la base "compta"
$db_link = mysql_connect("localhost", "root", "")
or die(mysql_error());
mysql_select_db("compta", $db_link) or die(mysql_error());
// Envoi de la requête
mysql_query($ma_requete,$db_link) or die(mysql_error());
// Déconnexion
mysql_close($db_link);
?>
<HTML>
<BODY>
<?php
// Affichage d'un message de réussite
echo "Le compte vient d'être enregistré avec succès !";
?>
</BODY>
Merci par avance