Selection double d'un produit dans une
ammm
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
voila, jai un projet de fin d'etude qui consiste en la realisation d'un intranet pour le suivi de facturation,
jai un formulaire pour l'ajout d'une nouvelle facture, qui est constitué en plusieur lignes facture (bien sur en depend du nombre de ligne que peut ajouter l'utilisateur),
dans chaque ligne facture lutilisateur doit choisir un produit a partir d'une liste deroulante alimentée depuis une table mysql,
mon probleme consite donc, dans la selection du produit, je doit limiter la selection de façon a ce que si un produit est deja selectionné, lutilisateur na pa la main de le reselectionner dans la deuxiemne ou la troisieme ligne, ou don tte autre ligne bien sur dans la meme facture,
jespere ke mon explication a été breve est explicite, si kelkeun pouvai me donner une idée a cmt procédé soit avec un test en php ou avec js, de preference js. merci davance pr ts ceux qui on pri la peine de lire mon prob....ciao ciao
voila, jai un projet de fin d'etude qui consiste en la realisation d'un intranet pour le suivi de facturation,
jai un formulaire pour l'ajout d'une nouvelle facture, qui est constitué en plusieur lignes facture (bien sur en depend du nombre de ligne que peut ajouter l'utilisateur),
dans chaque ligne facture lutilisateur doit choisir un produit a partir d'une liste deroulante alimentée depuis une table mysql,
mon probleme consite donc, dans la selection du produit, je doit limiter la selection de façon a ce que si un produit est deja selectionné, lutilisateur na pa la main de le reselectionner dans la deuxiemne ou la troisieme ligne, ou don tte autre ligne bien sur dans la meme facture,
jespere ke mon explication a été breve est explicite, si kelkeun pouvai me donner une idée a cmt procédé soit avec un test en php ou avec js, de preference js. merci davance pr ts ceux qui on pri la peine de lire mon prob....ciao ciao
A voir également:
- Selection double d'un produit dans une
- Double ecran - Guide
- Clé de produit windows 10 - Guide
- Whatsapp double sim - Guide
- Double driver - Télécharger - Pilotes & Matériel
- Double appel - Guide
1 réponse
Soit A le tableau de données utilisé pour remplir les listes déroulantes.
Soit B le tableau utilisé pour enregistrer les éléments des listes sélectionnés.
A chaque fois qu'une sélection est faite dans une liste, tu ajoutes l'élément à B.
A chaque construction d'une liste déroulante, tu ajoutes les élements de A qui ne sont pas dans B.
Soit B le tableau utilisé pour enregistrer les éléments des listes sélectionnés.
A chaque fois qu'une sélection est faite dans une liste, tu ajoutes l'élément à B.
A chaque construction d'une liste déroulante, tu ajoutes les élements de A qui ne sont pas dans B.
si tu a bien compri mon idée, stp je voudrai la syntaxe adequate a un tel code, o moin par un autre exemple plus simple.
merci merci
//je recupere le nombre de ligne et ainsi la ligne en cour:
else if ($action=='select'){
$i=1;
$nbligne=$_POST['nbligne'];
while ($i<=$nbligne){
$desig="desig".$i;
$sel="sel".$i;
$qnte="qnte".$i;
$descr="descr".$i;
$qntes="qntes".$i;
$pu="pu".$i;
$tva="tva".$i;
$$desig=$_POST[$desig];
$$sel=$_POST[$sel];
$$qnte=$_POST[$qnte];
$$descr=$_POST[$descr];
$$qntes=$_POST[$qntes];
$$pu=$_POST[$pu];
$$tva=$_POST[$tva];
$i++;
}
$ligne=$_REQUEST['ligne'];
$desig="desig".$ligne;
$sel="sel".$ligne;
$$sel=$_POST[$sel];
echo $$sel;
$$desig=$_POST[$desig];
$desigg=$$desig;
$sele=$$sel;
if (($ligne>=2) && ($$desig="selected=\"selected\"") && ($$desig="selected=\"selected\"")){
echo "<script type='text/javascript'>alert('Ce Produit est deja selectionné!Selectionné un autre produit');</script>";
$$desig=="";
}
else {
$desigg=$$desig;
$sql = " SELECT * FROM produitsm WHERE cod_pro='$desigg' ";
$result = mysql_query($sql) or die("Requete Incorecte!");
$cod_pro="cod_pro".$ligne;
$desig="desig".$ligne;
$descr="descr".$ligne;
$qntes="qntes".$ligne;
$qnte="qnte".$ligne;
$pu="pu".$ligne;
$tva="tva".$ligne;
while ($rows= mysql_fetch_array($result))
{
$$desig=$rows['cod_pro'];
$$cod_pro=$rows['cod_pro'];
$$descr=$rows['descr'];
$$qntes=$rows['qntes'];
$$pu=$rows['pu'];
$$tva=$rows['tva'];
}
CalculTotal($nbligne);
}
et la fonction js est la suivante:
function affiche(j){
var client=document.form1.nom.value;
if (client.length==0){
alert ("Vous devez d'abord selectionnez un client!");
document.form1.nom.focus();
}
else {
nbligne=document.form1.nbligne.value;
MyForm=document.form1;
MyForm.methode="POST";
MyForm.action="?categorie=admin&page=addfactures&action=select&nbligne="+nbligne+"&ligne="+j;
MyForm.submit();
}
}
<table align="center" width="751" border="0" bordercolor="#BEDFFA">
<tr>
<td colspan="2"><div align="right">
<b>Produit:</b>
Matériel /
<a href="?categorie=admin&page=addfactures1">Logiciel</a>
</div>
</td>
<td><div align="right"><b>Date :</b>
<input name="date_fac" type="text" id="date_fac" readonly size="10" value='.$date_fac.'></input>
</div></td>
</tr>
<tr>
<td colspan="3"><b>Client :</b>
<select name="nom" size="1" id="nom" onchange="selecte()">
<option value="">-Select-</option>';
while ($row=mysql_fetch_array($result1))
{
if ($nom==$row['cod_cli']){
echo"<option value=".$row[cod_cli]." SELECTED='SELECTED'>$row[nom]</option>";
}
else {
echo"<option value=".$row[cod_cli].">$row[nom]</option>";
}
}
echo'</select></td>
</tr>
<tr>
<td colspan="3">
Adresse :
<input name="adresse" type="text" id="adresse" readonly size="20" maxlength="200" value="'.$adresse.'"></input>
RC :
<input name="RC" type="text" id="RC" readonly size="20" maxlength="20" value="'.$RC.'"></input>
BC N° :
<select name="num_c" size="1">
<option value="">-Select-</option>';
while ($row=mysql_fetch_array($res))
{
if ($num_c==$row['num_c']){
echo"<option value=".$row[num_c]." SELECTED='SELECTED'>$row[num_c]/$row[date_c]</option>";
}
else {
echo"<option value=".$row[num_c].">$row[num_c]/$row[date_c]</option>";
}
}
echo'</select> </td>
</tr>
<tr>
<td colspan="3">
N.I.S :
<input name="NIS" type="text" readonly size="20" maxlength="20" value="'.$NIS.'"></input>
N° Article :
<input name="ART" type="text" readonly size="20" maxlength="20" value=""'.$ART.'"></input> </td>
</tr>
<tr>
<td colspan="3">
<table width="100%" border="1" bordercolor="#BBDAFF" cellspacing="0" cellpadding="0">
<tr>
<td width="6%"></td>
<td width="12%" bgcolor="#C9D7FC"><div align="center"><b>Produits</b></div></td>
<td width="36%" bgcolor="#C9D7FC"><div align="center"><b>Description</b></div></td>
<td width="12%" bgcolor="#C9D7FC"><div align="center"><b>Qte. Stock</b></div></td>
<td width="11%" bgcolor="#C9D7FC"><div align="center"><b>Qte.Cmdée</b></div></td>
<td width="12%" bgcolor="#C9D7FC"><div align="center"><b>Prix</b></div></td>
<td width="11%" bgcolor="#C9D7FC"><div align="center"><b> TVA </b></div></td>
</tr>
<tr>
<td><input type="hidden" name="nbligne" id="nbligne" value='.$nbligne.'></input></td></tr>
<tr>
<td height="18"><div align="center">
<img src="images/tab-close.png" style="cursor:pointer" onclick="suppression(1)" /> 1</div></td>
<td><div align="left">
<select name="desig1" size="1" onchange="affiche(1);">
<option value="">-Select-</option>';
while ($row=mysql_fetch_array($result2))
{
if ($desig1==$row['cod_pro']){
echo"<option value=".$row[cod_pro]." SELECTED='SELECTED'>$row[desig]</option>";
}
else {
echo"<option value=".$row[cod_pro].">$row[desig]</option>";
}
}
echo'</div><input name="sel1" type="hidden" id="sel1" value="'.$desig1.'"></input>
</td>
<td><div align="center">
<input name="descr1" type="text" id="descr1" readonly size="45" maxlength="200" value="'.$descr1.'"></input></div>
</td>
<td><div align="center">
<input name="qntes1" type="text" id="qntes1" readonly size="9" maxlength="10" value="'.$qntes1.'"></input></div>
</td>
<td><div align="center">
<input name="qnte1" type="text" id="qnte1" size="9" maxlength="10" onblur="verifQntes(1)" value="'.$qnte1.'"></input></div>
</td>
<td><div align="center">
<input name="pu1" type="text" id="pu1" readonly size="9" maxlength="10" value="'.$pu1.'"></input></div>
</td>
<td><div align="center">
<input name="tva1" type="text" id="tva1" readonly size="9" maxlength="4" value="'.$tva1.'"></input></div>
</td>
</tr>';
$j=2;
while ($j<=$nbligne){
$cod_pro="cod_pro".$j;
$qnte="qnte".$j;
$descr="descr".$j;
$qntes="qntes".$j;
$pu="pu".$j;
$tva="tva".$j;
$desig="desig".$j;
echo '<tr id="ligne_fac">
<td height="18"><div align="center">
<img src="images/tab-close.png" style="cursor:pointer" onclick="suppression('.$j.')"/> '.$j.'</div></td>
<td><div align="left">
<select name="desig'.$j.'" id="desig'.$j.'" size="1" onchange="affiche('.$j.');">
<option value="">-Select-</option>';
$sql = " SELECT * FROM produitsm ORDER BY desig";
$result = mysql_query($sql) or die("Requete Incorecte!");
while ($row=mysql_fetch_array($result))
{
if ($$desig==$row['cod_pro']){
echo"<option value=".$row[cod_pro]." SELECTED='SELECTED'>$row[desig]</option>";
}
else {
echo"<option value=".$row[cod_pro].">$row[desig]</option>";
}
}
echo'</div><input name="sel'.$j.'" type="hidden" id="sel'.$j.'" value="'.$$desig.'"></input>
</td>
<td><div align="center">
<input name="descr'.$j.'" type="text" id="descr'.$j.'" readonly size="45" maxlength="200" value="'.$$descr.'"></input></div>
</td>
<td><div align="center">
<input name="qntes'.$j.'" type="text" id="qntes'.$j.'" readonly size="9" maxlength="10" value="'.$$qntes.'"></input></div>
</td>
<td><div align="center">
<input name="qnte'.$j.'" type="text" id="qnte'.$j.'" size="9" maxlength="10" onblur="verifQntes('.$j.')" value="'.$$qnte.'"></input></div>
</td>
<td><div align="center">
<input name="pu'.$j.'" type="text" id="pu'.$j.'" readonly size="9" maxlength="10" value="'.$$pu.'"></input></div>
</td>
<td><div align="center">
<input name="tva'.$j.'" type="text" id="tva'.$j.'" readonly size="9" maxlength="4" value="'.$$tva.'"></input></div>
</td>
</tr>';
$j++;
}
echo '</table>
<label><div id="msg"><a href="#" name="add_lig" onclick="ajouter_ligne()">Ajouter ligne</a></div>
</label></td>
</tr>
<tr>
<td colspan="3"> </td>
</tr>
<tr>
<td colspan="2"> </td>
<td width="231"><div align="right"><table width="100%" border="0" align="right">
<tr>
<td width="44%" ><b>Total HT </b></td>
<td width="56%"><label><input name="MNTHT1" type="text" id="MNTHT1" size="15" value='.$MNTHT1.'></input> <b>DA</b></label></td>
</tr>
<tr>
<td ><b>Total TVA </b></td>
<td><label><input name="MNTVA1" type="text" id="MNTVA1" size="15" value='.$MNTVA1.'></input> <b>DA</b></label></td>
</tr>
<tr>
<td ><b>Total TTC</b></td>
<td><label><input name="TTC1" type="text" id="TTC1" size="15" value='.$TTC1.'></input> <b>DA</b></label></td>
</tr>
</table>