Comunidad de diseño web y desarrollo en internet online

php no pasa variable

Citar            
MensajeEscrito el 30 May 2011 07:49 am
Hola a tod@s,

Tengo una aplicación que realiza un control de llamadas a Alumnos y funciona bien en local, pero al subirla al

servidor da error y no pasa la variable (id_alumno) a la segunda página php.
La conexión a la bd la hace bien en la primera página, en la segunda tengo sesion start y el include, pero no pasa

la variable idllamada (el mensaje de error sale dentro de cada caja de texto: Unable to jump to row 0 on MySQL

result index 4 in <b>/homez.429/gestbook/www/mugenmk/panel/__llamadasptes/editar.php</b> on line <b>XXX</b><br />

)


1) En la primera página (index.php):

session_start();

include('../../funciones.php');
include('../../conectar.php');

(...)

?>editar.php?id_alumno=<?php echo $columna['id_alumno']; ?>" target="_self"><img src="../icons/editar.png"

alt="Editar registro" width="16" height="16" align="absmiddle">Editar</a>&nbsp;&nbsp;&nbsp;<a href="<?php

if($GLOBALS["LINKER_FIELD"]=="")

2) En la segunda página (editar.php):
(...)
$consulta_d1=("SELECT alumnos.* FROM alumnos WHERE id_alumno ='$id_alumno'");

$res=mysql_query($consulta_d1);

Podéis ver una versión de prueba en http://www.gestbooking.es/mugenmk/index.htm
user: jaume / password: 1234

Muchas gracias por anticipado.
Jaime

Por jrj2011

3 de clabLevel



 

chrome
Citar            
MensajeEscrito el 30 May 2011 12:01 pm
En editar.php en ningún momento estás asignándole algún valor a $id_alumno.
Sospecho que en tu máquina de desarrollo estás trabajando con register_globals = on y en el remoto, está en off (que es lo correcto).

Lo que debes hacer es:

Código PHP :

$id_alumno = $_GET['id_alumno'];

Al inicio del script editar.php

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 30 May 2011 12:17 pm

DriverOp escribió:

En editar.php en ningún momento estás asignándole algún valor a $id_alumno.
Sospecho que en tu máquina de desarrollo estás trabajando con register_globals = on y en el remoto, está en off (que es lo correcto).

Lo que debes hacer es:

Código PHP :

$id_alumno = $_GET['id_alumno'];

Al inicio del script editar.php



¡Efectivamente! ¡muchísimas gracias por tu ayuda! Ahora ya me funciona en otro servidor... pero me falla en el del Cliente... Aunque estoy convencido de que es un problema de su plataforma.
Lo dicho, muchísimas gracias por tu tiempo ;-)

Por jrj2011

3 de clabLevel



 

chrome
Citar            
MensajeEscrito el 30 May 2011 03:18 pm
El "problema" es la configuración de tu copia de PHP en tu máquina de desarrollo.

Busca el archivo "php.ini" y en él busca la entrada "register_globals", cámbiala a como lo pongo aquí:

Código :

register_globals = Off


Esto probablemente causará que algunos de tus scripts PHP dejen de funcionar como hasta ahora pero es mejor así porque todos los servidores en hosting de pago están configurados de esta manera.

Lee este artículo para saber por qué es mejor trabajar con register_globals en "Off":

http://www.desarrolloweb.com/faq/200.php

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 30 May 2011 03:34 pm
Ya me estoy leyendo el artículo, cambiaré mi php.ini y comprobaré en local si falla algo.

De nuevo, te agradezco tu atención.

Saludos,

Jaime

Por jrj2011

3 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.