
Problema con While
Publicado por Emi (3 intervenciones) el 28/10/2016 12:25:25
Hola a todos!!! Intentaré explicar mi problema de la manera más sencilla posible. Mi idea inicial, es hacer un while dentro de otro while con el siguiente objetivo: Tengo un campo, en el cual introduzco un número. En base a ese número me imprime x campos de formulario (dónde X es el número que introduzco). Así que, si introduzco un 3, me imprime 3 campos, asta ahí todo correcto. Ahora, cada uno de esos 3 campos, puede tener subcampos, es decir, adicionalmente, cada campo imprimido, va a tener otro apartado para insertar un número, y en base a ese número, me imprimirá subcampos dentro del campo principal, siendo así que tengo 3 campos, y cada campo puede tener su propia cantidad de subcampos.... El problema empieza al inprimir los subcampos, algo falla que no lo hace. Aquí adjunto el código:
¿Alguna idea?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<form action="" method="POST">
Añadir Descripciones:<input type="text" name="des" size="2" placeholder="" value="<?=isset($_POST['des']) ? $_POST['des'] : ''?>"/> <input type="submit" name="val" value="Aceptar"/><br/><br/>
<?php
if(isset($_POST['val'])){
$contador=1;
while ($contador<= $_POST['des']) {
$descri = "descr".$contador;
$valid = "vali".$contador;
$tar = "tar".$contador;
//Estas variables son, para insertar los datos en la bbdd sin que se repita el nombre en el form.
?>
Descripción<?=$contador?>:<input type="text" name="<?=$descri?>" size="20" placeholder="" value="<?=isset($_POST[$descri]) ? $_POST[$descri] : ''?>"/>
Añadir Tareas:<input type="text" name="<?=$tar?>" size="2" placeholder="" value=""/> <input type="submit" name="<?=$valid?>" value="Aceptar"/><br/><br/>
<?php
//Aquí es donde empieza a fallar, porque al darle un número en añadir tareas me limpia el form
if(isset($_POST[$valid])){
$cont=1;
while ($cont<= $_POST[$tar]) {
$tarea = "tare".$cont;
?>
Tarea<?=$cont?>:<input type="text" name="<?=$tarea?>" size="20" placeholder="" value=""/><br/>
<?php
$cont++;
}
}
$contador++;
}
}
?>
<input type="submit" name="save" value="Guardar"/>
<input type="reset" name="erase" value="Borrar"><br/><br/>
</form>
Valora esta pregunta


0