PHP - PROBLEMA CON VARIABLES

 
Vista:

PROBLEMA CON VARIABLES

Publicado por ANGELICA (1 intervención) el 30/05/2010 03:16:26
HOLAAA

tengo un problema con unas variables, bueno se los voy a resumir a ver quien me puede ayudar se los agradeceria en el almaaaaaaa :).

hagan de cuenta un formulario con 20 cajas de texto la primera con name="n1" la segunda con name="n2" y asi sucesivamente hasta la caja de text # 20 q es name="n20".

y cuando le doy clic en enviar los datos llegan a otra pagina.php, la idea es insertar eso en una base de datos pero el numero de el nombre de cada text se lo agrego con una variable $i de un for le puse lo siguiente:

<?
conexion con la base etc.........

for ($i=0;$i<=20t;$i++) {

$consulta="update mi_tabla set n1='n$i' .....y el where y todo eso ...";

el mysql_query etc..........
}
<?

bueno como pueden ver intento con un for crear las variables de las cajas de texto, para no tener q hacer las 20, pero no se, no me concatena la variable

ahi alguna forma de concatenar o hacer algo para q no me toque las 20 veces!!

muchas graciasssss el q me ayude se merece el cielooooo

un besitoooo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:PROBLEMA CON VARIABLES

Publicado por Andres (52 intervenciones) el 30/05/2010 15:46:59
Hola Angelica,

lo que veo es que no recuperas la variable via POST o GET, eso se soluciona de la siguiente manera:

prestar atencion que cambio $i=0 por $i=1

for ($i=1;$i<=20t;$i++) {
$consulta="update mi_tabla set n1='".$_POST['n' . $i] . "' .....y el where y todo eso ...";
}

esto es en el caso de que utilices method="post" en el formulario, en el caso de utilizar method="get", cambiar $_POST por $_GET en el sql.

también me adelanto a la posible confucion en el nombre del campo "n1" en la BD:
a - si hay 20 campos en la BD con los nombres n1,n2,..,n20, en el sql deben estar todos

sin for
$consulta="update mi_tabla set n1='".$_POST['n1'] . "',n2='".$_POST['n2'] . "' .....y el where y todo eso ...";
para que se ejecute en un solo query.

b - si solo existe 1 campo llamado n, no hace falta crear los 20 ya que son 20 registros distintos.

for ($i=1;$i<=20t;$i++) {
$consulta="update mi_tabla set n='".$_POST['n' . $i] . "' .....y el where y todo eso ...";
}

(se entendió esto?)

Y por ultimo, para insertar se utiliza INSERT en el sql y para modificar el registro existente UPDATE.

Espero que esté claro.
Saludos

Andrés
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PROBLEMA CON VARIABLES

Publicado por Julio (54 intervenciones) el 30/05/2010 16:03:07
Fijate en este script, aqui tenes la solución. Incluso te lo probé y está funcionando Ok

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="recibo_matriz.php">
<label>
<input type="text" name="var[0]" />
</label>
<label>
<input type="text" name="var[1]" />
</label>
<p>
<label>
<input type="text" name="var[2]" />
</label>
<label>
<input type="text" name="var[3]" />
</label>
</p>
<p>
<label>
<input type="text" name="var[4]" />
</label>
<label>
<input type="text" name="var[5]" />
</label>
</p>
<p>
<label>
<input type="text" name="var[6]" />
</label>
<label>
<input type="text" name="var[7]" />
</label>
</p>
<p>
<label>
<input type="submit" name="button" id="button" value="Enviar" />
</label>
</p>
</form>
</body>
</html>

y el segundo script que procesa la matriz, lo bautice recibo_matriz.php. Aquí el código

<?
for ($i=0;$i<=7;$i++)
{
$var_recibida=$_REQUEST['var'];

echo "La variable es :".$var_recibida[$i]".<br>";
}

?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar