Mais je ne veux pas le dernier composant, je veux juste le dernier numForm
le plus simple serait peut être que je mette tous le code mais ça risque de faire long, mais bon, j’essaie
premiere page formInsert.php
<title>Test FormInsert</title>
</head>
<?php
include "Test-Forms.js";
?>
<body>
<form id="formInsert" name="formInsert" method="post" action="reg.php">
<input type="hidden" name="envoie" value="1" />
<div id="formListDeroul">
<label>
<select name="listDerou" size="1" id="select" >
<option value="select" onclick="selectionner()">------Selectionner------</option>
<option value="auto" id="auto" onclick="auto()" >Auto</option>
<option value="manuel" onclick="manuel()">Manuel</option>
</select>
</label>
</div>
<br />
<div id="formSelectAuto" style="display:none">
Permanent <input type="radio" name="selectAuto" value="permanent" class="OPTION" />
<br>
Temporaire <input type="radio" name="selectAuto" value="temporaire" class="OPTION" />
<input name="adrauto" type="text" id="adrAuto" value="<?php
include("connect.php");
$ip = "224.0.1.0";
if(Connecter())
{
$MonSQL= "SELECT * FROM information ORDER BY Multicast";
$CurseurMulticast = mysql_query($MonSQL);
$UnMulticast = GetLigne($CurseurMulticast);
while($UnMulticast)
{
$suivante = long2ip(ip2long($ip)+1);
if($UnMulticast["Multicast"]==$ip)
{
$ip=$suivante;
}
$UnMulticast = GetLigne($CurseurMulticast);
}
echo $ip;
//return $ip;
}?>" size="30" />
<br />
</div>
<div id="formSelectMan" style="display:none">
<input name="adrman" type="text" id="adrMan" value="Entrez l'adresse" size="15" />
<input name="vue" type="button" value="Vérifier" onclick="verif()" />
</div>
<br />
<label> Port <input name="port" type="text" id="port" value="" size="8" /> </label>
<p>
<LABEL>Type : </LABEL>
MPTS <input type="radio" name="type" value="mpts" class="OPTION" onClick="javascript:MPTS()"/>
SPTS <input type="radio" name="type" value="spts" class="OPTION" onClick="javascript:SPTS()">
<div id="formulaireReference">
<br><label> Chaine <input type="text" name="chaine0" size="20" id="chaine"/> </label>
<br />
<LABEL>Codage : </LABEL>
MPG4 <input type="radio" name="codage0" value="mpg4" class="OPTION" />
MPEG2 <input type="radio" name="codage0" value="mpeg2" class="OPTION" >
<br />
<LABEL>Définition : </LABEL>
SD <input type="radio" name="def0" value="SD" class="OPTION" />
HD <input type="radio" name="def0" value="HD" class="OPTION" >
<br />
<LABEL>Systeme : </LABEL>
PAL <input type="radio" name="syst0" value="PAL" class="OPTION" />
NTSC <input type="radio" name="syst0" value="NTSC" class="OPTION" >
<br>
</div>
<div id="formulaires"></div>
<p>
<input type="button" id="ajt0" name="ajout0" value="ajouter" style="display:none" onclick="javascript:add()" >
</form>
<p>
<input type="submit" id="Soumettre" name="Soumettre" value="Soumettre" />
</body>
forms.php
<script type="text/Javascript">
function auto()
{
document.getElementById('formSelectAuto').style.display = 'block';
document.getElementById('formSelectAuto').style.visibility = 'visible';
document.getElementById('formSelectMan').style.display = 'none';
}
function manuel()
{
document.getElementById('formSelectAuto').style.display = 'none';
document.getElementById('formSelectMan').style.display = 'block';
document.getElementById('formSelectMan').style.visibility = 'visible';
}
function verif()
{
var expr = /^(((22[4-9]|23[0-9])\.)((25[0-4]|2[0-4][0-9]|[1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])\.)((25[0-4]|2[0-4][0-9]|[1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.)((25[0-4]|2[0-4][0-9]|[1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9]))$)/;
var chaine = document.getElementById('adrMan').value ;
if(!expr.exec(chaine))
{
alert('adresse non valide : sélectionnez une adresse entre 224.0.1.0 et 239.254.254.254');
champ.focus();
}
else
{alert('adresse valide')}
}
function MPTS()
{
document.getElementById('ajt0').style.display = 'block';
document.getElementById('ajt0').style.visibility = 'visible';
document.getElementById('formulaires').style.visibility = 'visible';
}
function SPTS()
{
document.getElementById('ajt0').style.display = 'none';
document.getElementById('ajt0').style.visibility = 'hidden';
document.getElementById('formulaires').style.visibility = 'hidden';
}
var numForm = 1;
var contentDivName = "formulaires";
function add()
{
/* Retrieve fieldSet from the page */
var conteneur = document.getElementById(contentDivName);
/* Create elements that we need into the new form to add */
var undiv = document.createElement('div');
var contentForm = document.createElement('input');
var MaChaine = document.createTextNode("Chaine : ");
var chaine = document.createElement('input');
var MonCodage = document.createTextNode("Codage : ");
var MonMpg4 = document.createTextNode("MPG4 ");
var mpg4 = document.createElement('input');
var MonMpeg2 = document.createTextNode("MPEG2 ");
var mpeg2 = document.createElement('input');
var MaDefinition = document.createTextNode("Définition : ");
var MaSd= document.createTextNode("SD ");
var sd = document.createElement('input');
var MaHd = document.createTextNode("HD ");
var hd = document.createElement('input');
var MonSysteme = document.createTextNode("Systeme : ");
var MonPal = document.createTextNode("PAL ");
var pal = document.createElement('input');
var MonNTSC = document.createTextNode("NTSC ");
var ntsc = document.createElement('input');
var but = document.createElement('input');
contentForm.type = 'hidden';
contentForm.name = numForm;
chaine.type = 'text';
mpg4.type = 'radio';
mpg4.name = 'codage'+numForm;
mpg4.value = 'mpg4';
mpeg2.type = 'radio';
mpeg2.name = 'codage'+numForm;
mpeg2.value = 'mpeg2';
sd.type = 'radio';
sd.name = 'def'+numForm;
hd.type = 'radio';
hd.name = 'def'+numForm;
pal.type = 'radio';
pal.name = 'sys'+numForm;
ntsc.type = 'radio';
ntsc.name = 'sys'+numForm;
but.type = 'button';
but.value = 'Supprimer le formulaire';
// Implement delete function on the button
but.onclick = function()
{
// Element to remove
lediv = this.parentNode;
// Element parent
lefieldset = lediv.parentNode;
// Remove the element
lefieldset.removeChild(lediv);
}
/* Append elements (new form) into the page */
undiv.appendChild( document.createElement('br') );
undiv.appendChild(contentForm);
undiv.appendChild(MaChaine);
undiv.appendChild(chaine);
undiv.appendChild( document.createElement('br') );
undiv.appendChild(MonCodage);
undiv.appendChild(MonMpg4);
undiv.appendChild(mpg4);
undiv.appendChild(MonMpeg2);
undiv.appendChild(mpeg2);
undiv.appendChild( document.createElement('br') );
undiv.appendChild(MaDefinition);
undiv.appendChild(MaSd);
undiv.appendChild(sd );
undiv.appendChild(MaHd);
undiv.appendChild(hd);
undiv.appendChild( document.createElement('br') );
undiv.appendChild(MonSysteme);
undiv.appendChild(MonPal);
undiv.appendChild(pal );
undiv.appendChild(MonNTSC);
undiv.appendChild(ntsc);
undiv.appendChild( document.createElement('br') );
undiv.appendChild(but);
conteneur.appendChild(undiv);
numForm++;
}
return numForm;
</script>
et la page final
reg.php
<?php
include "connect.php";
include "Test-Forms.js";
if(Connecter())
{
$select = $_POST['listDerou'];
if($select == 'auto')
{
$ip = $_POST['adrauto'];
$temp = $_POST['selectAuto'];
}
else
{
$ip = $_POST['adrman'];
$temp = " ";
}
$port = $_POST['port'];
$type = $_POST['type'];
$i = 1;
if($type == 'spts')
{
$req = "INSERT INTO information (Multicast, Port, Type, Chaine, Codage, Definition, Systeme, Permanent) VALUES('".$ip."','".$port."','".$type."','".$_POST['chaine0']."','".$_POST['codage0']."','".$_POST['def0']."','".$_POST['syst0']."','".$temp."')";
$result=mysql_query($req);
}
else
{
while($i <=[b] $dernierNumForm[/b])
{
if (isset($_POST[$i]))
{
$req = "INSERT INTO information (Multicast, Port, Type, Chaine, Codage, Definition, Systeme, Permanent) VALUES('".$ip."','".$port."','".$type."','".$_POST['chaine'.$i]."','".$_POST['codage'.$i]."','".$_POST['def'.$i]."','".$_POST['syst'.$i]."','".$temp."')";
$result=mysql_query($req);
}
$i++;
}
}
}
c’est par le dernier numForm que je remplacer $dernierNumForm, on a proposé de faire un return, mais je ne sais pas le récupérer, et s’il est au bon endroit.
Voilà, vous avez toutes les données maintenant, vous pouvez tester chez vous, et voir ce que j’attend en faite.
Merci encore