Puoi farlo nel modo seguente.
Ogni volta che crei una casella di testo utilizzando JavaScript o jQuery, mantieni il conteggio della casella di testo, supponiamo che tu abbia due caselle di testo per impostazione predefinita sull'HTML, quindi memorizza quel conteggio nel campo nascosto come hai fatto in questo modo:
<input type"hidden" id="h" name="h" value="0"/>
Quindi prova questo, stai leggendo il valore in modo errato:
Invece di usare $var[z]=$_POST['textbox'][$z];
usa $var[z]=$_POST['textbox'.$z];
.
Penso invece di modificare ogni casella di testo id
value, basta rimuoverlo dall'HTML e controllare il codice 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);
}
}
?>
Un altro modo, per risolvere entrambi i tuoi problemi :)
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;
uscita:
Array ( [demo] => Array ( [0] => zxc [1] => zxc [2] => ewe [3] => ecc [4] => zzx ) )