Foros del Web » Programando para Internet » PHP »

pasar parametros grandes de PHP a PHP

Estas en el tema de pasar parametros grandes de PHP a PHP en el foro de PHP en Foros del Web. Hola, necesito hacer un grafico en PHP. Para ello utilizo las funciones de crear imagenes imagecreatefrompng .. etc. El problema surge porque todo se hace ...
  #1 (permalink)  
Antiguo 25/04/2014, 03:05
 
Fecha de Ingreso: diciembre-2010
Mensajes: 26
Antigüedad: 14 años
Puntos: 1
pasar parametros grandes de PHP a PHP

Hola,

necesito hacer un grafico en PHP.
Para ello utilizo las funciones de crear imagenes imagecreatefrompng .. etc.
El problema surge porque todo se hace en el servidor. Es decir, un php accede a la base de datos, recupera la información y luego desde allí tengo que generar varios graficos.
Lo que hago es llamar a otro PHP desde la etiqueta img para generar la imagen, pasandole los parametros para hacer el grafico.
Pues bien, resulta que estos parametros en algún caso son demasiado largos. Los tengo en un array , que serializo antes de pasarlo, pero es demasiado grande.

Que yo sepa la imagen solo la puedo crear desde un PHP puro, por lo tanto necesito poder pasarle estos datos. Como lo puedo hacer?

No puedo utilizar un formulario pues estoy en el servidor. He visto por ahí algo de utilizar sesiones, pero lo veo un poco cutre... nose.. creo que tiene que haber una forma mas elegante de hacerlo.

Gracias,
  #2 (permalink)  
Antiguo 25/04/2014, 04:02
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años, 8 meses
Puntos: 326
Respuesta: pasar parametros grandes de PHP a PHP

Siempre puedes usar POST en vez de GET....


Mira las librerías de cURL, creo q podrían ayudarte ;)

Saludos!
__________________
>> Eleazan's Source
>> @Eleazan
  #3 (permalink)  
Antiguo 25/04/2014, 04:35
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 9 meses
Puntos: 574
Respuesta: pasar parametros grandes de PHP a PHP

Cita:
He visto por ahí algo de utilizar sesiones, pero lo veo un poco cutre...
Cutre???!!! Sin sesiones deberiamos crear las aplicaciones en un único script, algo un poco superado hoy en dia, gracias a que los scripts son capaces de comunicarse entre ellos gracias al reconocimiento de...... SESSIONES!!!!!!!!

Cita:
El problema surge porque todo se hace en el servidor. Es decir, un php accede a la base de datos, recupera la información y luego desde allí tengo que generar varios graficos.
Crealos y los guardas en una imagen cada uno con un nombre distinto. (Lado servidor)

Cita:
Lo que hago es llamar a otro PHP desde la etiqueta img para generar la imagen
La etiqueta img le pones en el src el nombre de la imagen y listos....

Muestra algo de como lo estas haciendo quizas lo que necesitas es cambiar la estrategia de programación.....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 25/04/2014 a las 05:12
  #4 (permalink)  
Antiguo 25/04/2014, 05:13
 
Fecha de Ingreso: diciembre-2010
Mensajes: 26
Antigüedad: 14 años
Puntos: 1
Respuesta: pasar parametros grandes de PHP a PHP

Hola,

lo de cURL lo veo un poco liado.. nose...
Lo que comenta quimfv pues sí, ya lo habia pensado. Lo he probado y funciona bien, pero claro... me quedan las imagenes en el servidor, pues no puedo borrarlas ya que entonces no viajarian al cliente.

He probado lo de las sesiones, y bueno.. no es tan cutre.. disculpad, pero me pasa algo muy raro...

resulta que solo me recupera los valores que se han asignado de forma fija.
Me explico con un ejemplo:

si hago :

session_start();
$cad = '0123456789';
$_SESSION['tabla']=$cad;

y en el otro PHP :
session_start();
$dato = $_SESSION['tabla'];
echo "$dato";

funciona bien, el echo muestra 0123456789

pero si la variable $cad la obtengo a partir de datos que he leido de una BD por ejemplo, no funciona.

Es decir, leo BD... asigno por ejemplo la variable $nombre a partir de esos datos.
hago un echo de $nombre y obtengo 'pepe'

pero si hago
$_SESSION['tabla']=$nombre;

al recuperar en el orto PHP no muestra nada.


si hago
$nombre = $nombre . $cad ($cad es 0123456789)

y hago un echo muestra 'pepe0123456789'

y $_SESSION['tabla']=$nombre;

en el otro PHP solo recupera 0123456789, es decir, lo que tiene la variable $nombre asignado dinamicamente en el proceso no llega.

Alguna idea?
  #5 (permalink)  
Antiguo 25/04/2014, 06:01
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 9 meses
Puntos: 574
Respuesta: pasar parametros grandes de PHP a PHP

Cita:
Lo que comenta quimfv pues sí, ya lo habia pensado. Lo he probado y funciona bien, pero claro... me quedan las imagenes en el servidor, pues no puedo borrarlas ya que entonces no viajarian al cliente.
Otra vez las sessiones.... cuando se cierra una sessión se puede eliminar las imagenes o qualquier otro tipo de ficheros que se hayan creado...

Si asignas bien el valor de la variable no tiene porque haber ninguna diferencia entre un dato que proviene de un string $cad = '0123456789' con algo que antes se haya leido de una bbdd....

No muestras como lo estas leyendo....????
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #6 (permalink)  
Antiguo 25/04/2014, 07:06
 
Fecha de Ingreso: diciembre-2010
Mensajes: 26
Antigüedad: 14 años
Puntos: 1
Respuesta: pasar parametros grandes de PHP a PHP

Sorry, tienes razón quimfv , no debería ninguna diferencia entre string y creada dinamicamente. Y no la hay. Ya me extrañaba a mi... pero ante lo inexplicable buscamos razones que la razón no entiende.

Resulta que estaba llamando varias veces a la función pero la variable de sesión que guardaba siempre era la misma, con lo que se machacaba con la ultima llamada. Yo basando mis razonamientos en una situación cuando esta ya habia cambiado. Error mío....

Gracias por las respuestas....

Etiquetas: formulario, grandes, parametros
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 01:19.