Foros del Web » Programando para Internet » PHP »

como manipular variables de formularios

Estas en el tema de como manipular variables de formularios en el foro de PHP en Foros del Web. Hola.. estoy desarrollando en php y trato de manipular variable obtenidas de un formulario... para insertar en un query funciona bien $_POST['email'], pero si quiero ...
  #1 (permalink)  
Antiguo 04/08/2004, 16:38
Avatar de hipopo  
Fecha de Ingreso: marzo-2004
Ubicación: Lima
Mensajes: 163
Antigüedad: 13 años, 8 meses
Puntos: 0
como manipular variables de formularios

Hola.. estoy desarrollando en php y trato de manipular variable obtenidas de un formulario...
para insertar en un query funciona bien $_POST['email'], pero si quiero igualar una de estas para una consulta, por ejemplo

if ($_POST['grabar']==1) {
.....
}

me sale error:Notice: Undefined index: grabar

ya me esta desesperando PHP ... pienso que ASP hace mas faciles las cosas..

me pueden ayudar por favor?????????. hehehehe..
__________________
Artek Digital
Desarrollo Web, Gráfica y Multimedia
Si quieres que las cosas te salgan bien entonces... HAZLAS TU MISMO!!!
  #2 (permalink)  
Antiguo 04/08/2004, 17:09
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Para bien o para mal PHP es altamente configurable. Si bien este hecho a tí en lo personal te "desespera" deberías agradecerlo .. por qué ahí te está diciendo que "grabar" no existe en POST.

Si quieres ir "a ciegas" programando configura PHP parq que no te reporte ese tipo de avisos:

php.ini
error_reporting (ahí tienes diferentes valores para ver que niveles de errores).

Si pones el formulario que usas veríamos cual es el problema concreto. PHP con sus arrays superglobales "discrimina" por donde vienen sus variables .. ya se por POST, GET u otro médio.

Un saludo,

Cita:
ya me esta desesperando PHP ... pienso que ASP hace mas faciles las cosas..
No hay nada peor que programar en un lenguaje "por obligación" ... Eso te hace "cerrarte" y no ver el problema que tienes ademas de no aprender desde la base PHP.
  #3 (permalink)  
Antiguo 04/08/2004, 17:43
Avatar de hipopo  
Fecha de Ingreso: marzo-2004
Ubicación: Lima
Mensajes: 163
Antigüedad: 13 años, 8 meses
Puntos: 0
Exclamación aun no envio el form

no he enviado NINGUN formulario aun recien cargo la pagina y esa linea me produce error.

enel formulario grabar es un hidden y como repito AUN no lo envio
<input name="grabar" type="hidden" id="grabar" value="1">

<?
if ($_POST['grabar']==1) {

$ale_a=iif($_POST['checkA']=1,1,0);
$ale_b=iif($_POST['checkB']=1,1,0);
$ale_c=iif($_POST['checkC']=1,1,0);

$sql="insert into clientes(nombre,email,sexo,alergiaa,alergiab,alerg iac,idpais,detalles) values('" . $_POST['nombre'] ."','" . $_POST['email'] . "','" . $_POST['radios'] . "'," . $ale_a . "," . $ale_b . "," . $ale_c . "," . $_POST['pais'] . ",'" . $_POST['detalles'] . "')";

$upt=mysql_query($sql) or die(mysql_error());

}
?>
__________________
Artek Digital
Desarrollo Web, Gráfica y Multimedia
Si quieres que las cosas te salgan bien entonces... HAZLAS TU MISMO!!!
  #4 (permalink)  
Antiguo 04/08/2004, 17:50
Avatar de fermar21  
Fecha de Ingreso: marzo-2004
Ubicación: San Nicolas - Bs. As.
Mensajes: 294
Antigüedad: 13 años, 8 meses
Puntos: 0
A lo mejor no es por esto, pero por las dudas proba poner $_POST["grabar"]; (con comillas dobles en lugar de $_POST[' grabar' ]; ami el tema de comillas simples o dobles me trajo mas de un dolor de cabeza, jeje. Pero sin embargo apoyo a muerte a PHP, no solo porque sea software libre sino porque la sintaxis es muy simple.

Saludos
__________________
Fernando Marinzulich
Programador Web (PHP/MySQL/Jquery)
  #5 (permalink)  
Antiguo 04/08/2004, 17:57
Avatar de hipopo  
Fecha de Ingreso: marzo-2004
Ubicación: Lima
Mensajes: 163
Antigüedad: 13 años, 8 meses
Puntos: 0
Pregunta ya pues.. alguien

nop.. ocurre lo mismo...
__________________
Artek Digital
Desarrollo Web, Gráfica y Multimedia
Si quieres que las cosas te salgan bien entonces... HAZLAS TU MISMO!!!
  #6 (permalink)  
Antiguo 04/08/2004, 18:10
Avatar de hipopo  
Fecha de Ingreso: marzo-2004
Ubicación: Lima
Mensajes: 163
Antigüedad: 13 años, 8 meses
Puntos: 0
Pregunta ejemplos

mire si escribo la sentencia asi si me deja mostrar la pagina

if (!empty($_POST['grabar'])) {
...
}

por que?????

y porque asi no????

if ($_POST['grabar']==1) {
...
}

o asi tampoco: if ($_POST["grabar"]==1)

ni asi: if ($_POST['grabar']=1)

naaaaaaaaaaaaa... diganme que pasa?????
__________________
Artek Digital
Desarrollo Web, Gráfica y Multimedia
Si quieres que las cosas te salgan bien entonces... HAZLAS TU MISMO!!!
  #7 (permalink)  
Antiguo 05/08/2004, 07:25
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Esta es la estructura correcta que debes emplear:

if (!empty($_POST['grabar'])) {
...
}

El porqué .. es por qué en la primera carga de tu página todavía (como bien dices) no has enviado tu formulario .. así que el array $_POST no contiene esa variable (ese "indice") ..

Por eso se debe "preguntar" antes de usar una variable si está declarada.

Ya te comenté que PHP es altamente configurable .. ya te dije también que tienes la directiva:

error_reporting que controla ese tema.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:36.