Select di tipo number

  • Creatore Discussione Creatore Discussione adfadf
  • Data di inizio Data di inizio

adfadf

Utente Attivo
18 Apr 2009
83
0
0
Salve a tutti, ho il seguente problema:
Scopo: Chiedere in input il numero di form di "input" che si vogliono visualizzare
Problema: il php non mi riconosce come numero la selezione che effettuo nella pagina html che vi posto
PHP:
<form action="inseriscirisposte.php" onSubmit="return controllo();" method="post" enctype="multipart/form-data" name="form1" id="form1">
<table align="center" border="0">
		<thead>
          <tr>
                 <th width="10%">quante risposte multiple vuoi inserire?<select name="numrisposte">
											<option value=""></option>
											<option value="1">1</option>
											<option value="2">2</option>
											<option value="3">3</option>
											<option value="4">4</option>
											<option value="5">5</option>
											<option value="6">6</option>
											<option value="7">7</option>
											<option value="8">8</option>
											<option value="9">9</option>
											<option value="10">10</option>											
											</select></th>
</table>
<br>
<br>
<br>
<input name="Submit" type="submit" value="Inserisci">
</form>
ecco il php che mi dovrebbe creare dinamicamente le risposte da inserire
PHP:
<?php

$conta=0;
$numrisposte= $_POST['numrisposte'];
echo"$numrisposte";
while($conta<$numrisposte)
		{
echo"<table align=\"center\"  border=\"0\" width=\"95%\">";
			echo"<tr>";
                  echo"<th width=\"33%\">risposta:<input name=\"cognome[]\"\" type=\"text\" size=\"35\"/></th>";
				  echo"<th width=\"33%\">: <input name=\"nome[]\"\" type=\"text\" size=\"35\" /></th>";
				  echo"<th width=\"33%\">eseguita per: <select name=\"professione[]\"\">";
											echo"<option value=\"1\">Maschi e femmine</option>";
											echo"<option value=\"2\">Maschi</option>";
											echo"<option value=\"3\">Femmine</option>";
											echo"</select></th>";
				 
			echo"</tr>";
echo"</table>";
}
?>
in output mi và in loop e mi crea continuamente tabelle... non rispettando così il numero che ho inserito nell'html
sapete dirmi qualcosa?
 
Il motivo è molto semplice: a parte il fatto che usi un ciclo while, quando per uno scopo del genere sarebbe molto più utile un for, devi incrementare la variabile ad ogni iterazione. In questo modo:
PHP:
<?php
$conta = 0;
$numrisposte = $_POST['numrisposte'];

while($conta < $numrisposte)
{
  // qui il resto del codice
  $conta++;
}
?>

Ovviamente se conta è pari a 0 sarà sempre minore di $numrisposte. Per questo ti creava infinite tabelle! ;)
 
he stupido hai perfettamente ragione.....ho dimenticato di incrementare il contatore....GRAZIE:beer:
 

Discussioni simili