Foros del Web » Programando para Internet » PHP »

PHP No me recibe la variable

Estas en el tema de PHP No me recibe la variable en el foro de PHP en Foros del Web. Hola amigos de ForosDelWeb. Estoy aquí nuevamente para solicitar su ayuda. Hace días que estoy intentando hacer que funcione esta pequeña parte de código y ...
  #1 (permalink)  
Antiguo 08/08/2008, 09:42
 
Fecha de Ingreso: julio-2008
Ubicación: Entre los 4 Núcleos
Mensajes: 27
Antigüedad: 15 años, 9 meses
Puntos: 0
PHP No me recibe la variable

Hola amigos de ForosDelWeb. Estoy aquí nuevamente para solicitar su ayuda.
Hace días que estoy intentando hacer que funcione esta pequeña parte de código y no doy en el clavo.
Lo que intento hacer es lo siguiente:

Tengo una pagina que genera una tabla se rellena mediante consultas a la BD. Eso todo bien. Tambien genera "inputs" de HTML con el "echo" de PHP.

El problema es el siguiente:

Esos imputs generados con el "echo", son pasados como variables a otra página php que los recibe como tales. Pero aquí esta el problema. Esa pagina php no recibe las variables de los inputs generados con el echo. Tonces, nada funciona.

aquí están los fragmentos de código a ver si me pueden ayudar.

Muchísimas Gracias.

Código PHP:
while($row mysql_fetch_array($query3))
  {
    echo
"<tr>
    <td rowspan='2' bgcolor='#FF99FF' align='center'>"
.$row['cantidad']."</td>
    <td bgcolor='#FF99FF'>
      <input type='text' name='cantidad' id='cantidad' style='width:30; height:18px; font-size:10px;'/>
<input type='button' name='suma_princ' id='suma_princ' value='+' style='width:18px; height:18px; font-size-adjust:inherit;' onclick=\"javascript:parent.location.href='cantidad.php?action=suma&id="
.$row['id']."'\"/></td> 
y el archivo php que quiero que reciba la variable:

cantidad.php


Código PHP:
$cant $_GET['cantidad']; 

Si alguien sabe en qué me estoy equivocando agradecería me oriente. Muchas Gracias a todos.
  #2 (permalink)  
Antiguo 08/08/2008, 09:49
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: PHP No me recibe la variable

onclick=\"javascript:parent.location.href='cantida d.php?action=suma&id=".$row['id']."

En ningún momento pasas la variable cantidad por la URL. Tal vez lo que necesitas es

onclick=\"javascript:parent.location.href='cantida d.php?action=suma&id=".$row['id']."&cantidad=".$row['cantidad']

Saludos,
  #3 (permalink)  
Antiguo 08/08/2008, 09:51
Avatar de quinqui  
Fecha de Ingreso: agosto-2004
Ubicación: Chile!
Mensajes: 776
Antigüedad: 19 años, 8 meses
Puntos: 56
Respuesta: PHP No me recibe la variable

Holas mikenrry

En el fragmento de código de cuando generas los INPUT no nos muestras la etiqueta de Formulario <form>, donde especificas el método con el cual el script que procesa los datos recibe las variables.

Ya que tu script está recibiendo las variables por GET, el form debiera estar así configurado:

Código HTML:
<form action="cantidad.php" method="get"> 
Ahora, si está configurado a método POST, entonces en el script debieras recibir la variable así:

Código PHP:
$cantidad $_POST["cantidad"]; 
__________________
pipus.... vieeeeeji plomius!!!
*quinqui site*
  #4 (permalink)  
Antiguo 08/08/2008, 09:52
 
Fecha de Ingreso: julio-2008
Ubicación: Entre los 4 Núcleos
Mensajes: 27
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: PHP No me recibe la variable

mmmm, pero "cantidad" es el nombre del input, que se debe completar a mano, y no usandolo como dato de la BD.
  #5 (permalink)  
Antiguo 08/08/2008, 09:54
Avatar de quinqui  
Fecha de Ingreso: agosto-2004
Ubicación: Chile!
Mensajes: 776
Antigüedad: 19 años, 8 meses
Puntos: 56
Respuesta: PHP No me recibe la variable

Justo estaba borrando mi respuesta, porque no vi que tenías un javascript que enviaba los datos.
__________________
pipus.... vieeeeeji plomius!!!
*quinqui site*
  #6 (permalink)  
Antiguo 08/08/2008, 09:54
 
Fecha de Ingreso: julio-2008
Ubicación: Entre los 4 Núcleos
Mensajes: 27
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: PHP No me recibe la variable

Cita:
Iniciado por quinqui Ver Mensaje
Holas mikenrry

En el fragmento de código de cuando generas los INPUT no nos muestras la etiqueta de Formulario <form>, donde especificas el método con el cual el script que procesa los datos recibe las variables.

Ya que tu script está recibiendo las variables por GET, el form debiera estar así configurado:

Código HTML:
<form action="cantidad.php" method="get"> 
Ahora, si está configurado a método POST, entonces en el script debieras recibir la variable así:

Código PHP:
$cantidad $_POST["cantidad"]; 
Hola QUINQUI, te comento que no uso un formulario para enviar, tal vez es ese el error, lo que uso solamente es un "button", con la accion "onclick", que podrás ver en el código.
A Ver si ese es el problema. Muchas gracias por preocuparte.
  #7 (permalink)  
Antiguo 08/08/2008, 09:58
Avatar de quinqui  
Fecha de Ingreso: agosto-2004
Ubicación: Chile!
Mensajes: 776
Antigüedad: 19 años, 8 meses
Puntos: 56
Respuesta: PHP No me recibe la variable

Sí, por eso mismo iba a borrar mi mensaje anterior, pero cuando lo fui a hacer, no pude porque tú habías dejado un comentario después que mi post.

En fin, que lo que te respondió okram es lo correcto :)
__________________
pipus.... vieeeeeji plomius!!!
*quinqui site*
  #8 (permalink)  
Antiguo 08/08/2008, 10:01
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: PHP No me recibe la variable

Cita:
Iniciado por mikenrry Ver Mensaje
mmmm, pero "cantidad" es el nombre del input, que se debe completar a mano, y no usandolo como dato de la BD.
Entonces debes incluir el valor del campo del texto en la url destino para enviarlo. Para esto, cada campo de texto deberá tener un id único:

Código PHP:
echo "
<tr> 
    <td rowspan='2' bgcolor='#FF99FF' align='center'>"
.$row['cantidad']."</td> 
    <td bgcolor='#FF99FF'> 
 
<input 
    type='text' 
    name='cantidad' 
    id='cantidad"
.$row['id']."' 
    style='width:30; height:18px; font-size:10px;'
/> 
 
<input 
    type='button' 
    name='suma_princ' 
    id='suma_princ' 
    value='+' 
    style='width:18px; height:18px; font-size-adjust:inherit;' 
    onclick=\"javascript:parent.location.href='cantidad.php?action=suma&id="
.$row['id']."&cantidad='+document.getElementById('cantidad".$row['id']."').value\"
/>
</td> 
Creo creo que así debe funcionar.

Un saludo,

Última edición por okram; 08/08/2008 a las 10:23
  #9 (permalink)  
Antiguo 08/08/2008, 10:02
 
Fecha de Ingreso: julio-2008
Ubicación: Entre los 4 Núcleos
Mensajes: 27
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: PHP No me recibe la variable

si QUINQUI, pero lo que me respondió OKRAM, hace lo siguiente: no pasa la variable cantidad con el valor de input, lo hace con el valor anterior del campo cantidad en la BD., que justamente es el valor que hay que modificar. MMMM. la verdad que no sé por qué no me lee la variable. Si al input no lo genero con un echo de php, todo funciona bien, el problema es cuando lo genero con php. :(
  #10 (permalink)  
Antiguo 08/08/2008, 10:03
 
Fecha de Ingreso: julio-2008
Ubicación: Entre los 4 Núcleos
Mensajes: 27
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: PHP No me recibe la variable

Cita:
Iniciado por okram Ver Mensaje
Entonces debes incluir el valor del campo del texto en la url destino para enviarlo. Para esto, cada campo de texto deberá tener un id único:

<input type='text' name='cantidad' id='cantidad".$row['id']."' style='width:30; height:18px; font-size:10px;'/>

onclick=\"javascript:parent.location.href='cantida d.php?action=suma&id=".$row['id']."&cantidad='+document.getElementById('cantidad".$row['id']."').value'\"

Creo creo que así debe funcionar.

Un saludo,
Voy a probarlo . muchas gracias!
  #11 (permalink)  
Antiguo 08/08/2008, 10:21
 
Fecha de Ingreso: julio-2008
Ubicación: Entre los 4 Núcleos
Mensajes: 27
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: PHP No me recibe la variable

Amigo OKRAM, este fragmento que me pasaste está bien?

onclick=\"javascript:parent.location.href='cantida d.php?action=suma&id=".$row['id']."&cantidad='+document.getElementById('cantidad".$ row['id']."').value'\"

porque me da un error de javascript que dice: Unterminated string constant. :S

y no sé bien como funciona en una javascript en una url.
  #12 (permalink)  
Antiguo 08/08/2008, 10:24
 
Fecha de Ingreso: julio-2008
Ubicación: Entre los 4 Núcleos
Mensajes: 27
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: PHP No me recibe la variable

Listo Amigos problema solucionado :D:D:D:D

era así:

Código PHP:
onclick="javascript:parent.location.href='cantidad.php?action=suma&id=".$row['id']."&cantidad='+document.getElementById('cantidad".$row['id']."').value;''\" 
MUCHISIMAS GRACIAS OKRAM Y QUINQUI. HE APRENDIDO ALGO NUEVO.

GRACIAS A TODOS.

Última edición por mikenrry; 08/08/2008 a las 10:25 Razón: OLVIDÉ EL AGRADECIMIENTO EN PARTICULAR.
  #13 (permalink)  
Antiguo 08/08/2008, 10:24
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: PHP No me recibe la variable

onclick=\"javascript:parent.location.href='cantida d.php?action=suma&id=".$row['id']."&cantidad='+document.getElementById('cantidad ".$ row['id']."').value'\"

Hay una comilla de más. Error mio

El script que pegué en el mensaje 8 de este tema está corregido. Saludos
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 08:58.