Você pode fazer isso da seguinte maneira.
Sempre que você cria uma caixa de texto usando JavaScript ou jQuery, para manter a contagem da caixa de texto, suponha que você tenha duas caixas de texto por padrão no HTML, então armazene essa contagem no campo oculto como você fez:
<input type"hidden" id="h" name="h" value="0"/>
Então tente isso, você está lendo o valor de forma errada:
Em vez de usar
$var[z]=$_POST['textbox'][$z];
use $var[z]=$_POST['textbox'.$z];
. Acho que em vez de editar cada caixa de texto
id
valor, apenas remova-o do HTML e verifique o código 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);
}
}
?>
Outra maneira, para resolver seus dois problemas :)
teste.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>
teste.php:
print_r($_POST);
exit;
resultado:
Array ( [demo] => Array ( [0] => zxc [1] => zxc [2] => ewe [3] => ecc [4] => zzx ) )