Můžete to udělat následujícím způsobem.
Kdykoli vytvoříte textové pole pomocí JavaScriptu nebo jQuery, zachováte počet textových polí, předpokládejme, že máte ve výchozím nastavení v HTML dvě textová pole, takže uložte tento počet do skrytého pole, jako jste to udělali:
<input type"hidden" id="h" name="h" value="0"/>
Pak zkuste toto, čtete hodnotu špatně:
Místo použití $var[z]=$_POST['textbox'][$z];
použijte $var[z]=$_POST['textbox'.$z];
.
Myslím, že místo úpravy každého textového pole id
hodnotu, stačí ji odstranit z HTML a zkontrolovat kód PHP:
<?php
include_once('db.php');
$x=$_POST["h"];
$y=intval($x);
$z=0;
while($z<=$y){
if(isset($_POST['textbox'.$z]) && !empty($_POST['textbox'.$z])){
$var[z]=$_POST['textbox'.$z];
echo "$var[$z]";
$sql="INSERT into the Data values('".$var[z]."');";
$query=mysql_query($sql);
}
}
?>
Další způsob, jak vyřešit oba vaše problémy :)
test.html:
<html>
<title>TEST</title>
<body>
<form action="test.php" method="post">
<input type="text" name="demo[]" value=""/>
<input type="text" name="demo[]" value=""/>
<input type="text" name="demo[]" value=""/>
<input type="text" name="demo[]" value=""/>
<input type="text" name="demo[]" value=""/>
<input type="submit">
</form>
</body>
</html>
test.php:
print_r($_POST);
exit;
výstup:
Array ( [demo] => Array ( [0] => zxc [1] => zxc [2] => ewe [3] => ecc [4] => zzx ) )