Foros del Web » Programando para Internet » PHP »

Pasar variable Por favor es serio y urgente

Estas en el tema de Pasar variable Por favor es serio y urgente en el foro de PHP en Foros del Web. El caso es en un primer paso se me define una variable $nombre = "carlos"; y al ejecutar la pagina ya la variable fue cargada ...
  #1 (permalink)  
Antiguo 22/11/2006, 18:41
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
De acuerdo Pasar variable Por favor es serio y urgente

El caso es
en un primer paso se me define una variable $nombre = "carlos"; y al ejecutar la pagina ya la variable fue cargada y mostrada... pero si yo paso de pagina como hago para mantener el valor de la variable en la pagina siguiente??

espero que me comprendan

la idea seria en la pagina 1 yo tengo un form luego hago action sobre un archivo php donde me carga la variable $nombre en un echo "$nombre"; y luego de ahi me voy a otra pagina donde de nuevo me pide la variable $nombre pero o sea como hago para que me vuelva a tomar el mismo valor?

muchas gracias
  #2 (permalink)  
Antiguo 22/11/2006, 18:53
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Hola,

O pasas la variable de pagina a pagina a traves de la URL y recoges el valor con $_GET... o, utilizas sessiones. En las FAQS seguramente encuentras ejemplos.

Saludos.
Saludos.
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #3 (permalink)  
Antiguo 22/11/2006, 19:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Necesitas usar variables de sesión. (podrías ir propagando esa variable en el sub-siguiente formulario o pasarla por el URl .. pero creo que es mejor que aprendas ya el uso de "sesiones" que bien usadas dan mucho de sí).

El efecto que "notas" sobre las variables y su "ambito" o vida de las mismas es por el funcionamiento de PHP que deberías conocer para que veas como normal situaciones como la que planteas.

PHP ejecuta tu script .. al terminar la ejecución del mismo toda variable, conexión establecida a base de datos, archivos abiertos .. etc: "muere" .. se deshace PHP de todo eso al finalizar la ejecución del mismo.

Para "mantener" un valor de una variable por más tiempo de vida .. en tu caso particular podrías usar Sesiones, ... también cookies y hasta tu própio manejo de archivos de texto plano o base de datos para usarlo como "contenedor" para esas variables (en este caso tu te tendrías que encargar de borrar esas variables cuando no las necesites más).

Para eso .. las sesionse de "PHP" se "inventaron" .. PHP gestiona su tiempo de expiración y la vida de estas en función de la "sesión" así como la privacidad de esas variables que sólo son accesibles por el "cliente" que las crea.

Lamentablemente si vas con "urgencias" .. aprender el uso correcto de sesiones o que se te presenten "fallos inesperados" de los ejemplos que puedas dar va en función de cuanto más aprendas sobre ellas (el 99% de problemas comunes con sesiones es por desconocimeinto de su "teoría" .. conceptos como: el SID (Identificador Único de sesión), como se propaga el SID (URL/cookies) .. y unos pocos más .. sobre todo que es PHP quien en su configuración de PHP (php.ini) así rige como va a funcionar en ese tema.

En las FAQ's de este foro tienes ejemplos de uso de sesiones, pero antes te recomiendo encarecidamente que leas la documentación oficial de sesiones para que veas esos conceptos de que te hablo y pruebes los ejemplos básicos:

www.php.net/session


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 22/11/2006, 19:20
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
De acuerdo

muchisimas gracias por la explicacion cluster sos un master ... ahora una pregunta mas y me pongo a trabajar.... porque o sea todas estas preguntas vienen ya que estoy intentando armar mi propio servicio de fotologs y bueno... por ejemplo si yo realizara todo con mysql y php .. produciria algo raro tener todo con consultas o no pasa nada?
por ejemplo te digo al momento de si la pagina se hace conocida y las visitas y los usos de los fotologs son muchos si tendria influencia en el funcionamiento del server usar mucho las base de datos y las consultas
  #5 (permalink)  
Antiguo 22/11/2006, 19:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por korg1988 Ver Mensaje
muchisimas gracias por la explicacion cluster sos un master ... ahora una pregunta mas y me pongo a trabajar.... porque o sea todas estas preguntas vienen ya que estoy intentando armar mi propio servicio de fotologs y bueno... por ejemplo si yo realizara todo con mysql y php .. produciria algo raro tener todo con consultas o no pasa nada?
por ejemplo te digo al momento de si la pagina se hace conocida y las visitas y los usos de los fotologs son muchos si tendria influencia en el funcionamiento del server usar mucho las base de datos y las consultas
Sólo piensa en base a que funcionan estos foros: PHP y Mysql .. sólo tienes que ver la cantidad de usuarios en línea, la de mensajes que entran al foro por día .. y todo el montón de movimiento que hace con la BBDD de datos cada vez que colocas un mensajes (son decenas de consultas a la BBDD para obtener todos los datos que se muestran ..).

Esto es como todo: más visitas -> más proceso .. más acceso a tus BBDD .. en definitiva más recursos de tu servidor.

No sé en que otra solución estás pensando? ..

Por supuesto, un buen uso de sesiones, de sistemas de "caché" (de páginas) .. etc podrían ahorrarte consultas a tu BBDD innecesarias (pero para otras funcionalidades que quieras ofrecer las vas a necesitar si o si).

Sabes, .. lo malo de todo esto es que tú estás aprendiendo en base a un proyecto dado .. OK, por algo hay que empezar y que más motivante que sobre un proyecto definido y viendo como te van saliendo las cosas .. eso es gratificante, pero .. por lo mismo te vas dejando en el camino "cosas" .. que .. bueno, con el tiempo ya las veras/aprenderas y sacaras tu versión "2.0" de tu sistema.

Te pido de paso que no coloques mensajes como "importante" ni "urgente" .. aquí todo mensaje que entra al foro para quien lo coloca es igual de "urgente" e "importante" resolver su problema, los que "respondemos" lo hacemos de buena voluntad sin más a cambio, así que "no presiones" (lo pongo entre comillas).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 22/11/2006, 20:06
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
De acuerdo

ok perdon cluster... claro o sea lo que yo quiero hacer es que por ejemplo cada vez que alguien entra a un fotolog yo mostraria los datos con consultas sql y todo el manejo de configuraciones seria con consultas tanto como para agregar quitar y modificar ddatos desde el panel de control de cada usuario..
entonces pensemos que hay mil personas en un momento dado entre ellas dividamolas entre las que estan usando su panel y las que estan mirando los fotologs y postenado sus mensajes

los recursos que me consumiria que serian aparte de ancho de banda o sea la pregunta va a si esto produciria seguidas caidas de mi server por algun motivo X...
espero que me entiendas
y prometro no poner mas urgente pero es que el proyectyo lo estamos por inaugurar dentro de un tiempo y no quiero para de trabajar en el o sea ahora lo que mas me esta complicando es el tema de sessiones lo demas esta claro y con la ayuda de las carpetas que me diste hoy mas todavia
pero ahora pienso en el tema de mis recursos

si quieres responder me vendria bien

gracias
  #7 (permalink)  
Antiguo 23/11/2006, 16:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
ok perdon cluster... claro o sea lo que yo quiero hacer es que por ejemplo cada vez que alguien entra a un fotolog yo mostraria los datos con consultas sql y todo el manejo de configuraciones seria con consultas tanto como para agregar quitar y modificar ddatos desde el panel de control de cada usuario..
entonces pensemos que hay mil personas en un momento dado entre ellas dividamolas entre las que estan usando su panel y las que estan mirando los fotologs y postenado sus mensajes
Vas a tener más problemas de consumo de ancho de banda y recursos de proceso de PHP cuando suban tus imagenes que no de "consultas a tu BBDD".

Cita:
los recursos que me consumiria que serian aparte de ancho de banda o sea la pregunta va a si esto produciria seguidas caidas de mi server por algun motivo X...
espero que me entiendas
Tu hablas de "1000 visitas" simultáneas .. creo que ahí debes ser algo más realista y así poder calcular el proceso que va a tener tu servidor y en función de eso ya te regirá que tipo de servidor necesitas. Un servidor no se debe caer por "carga" que tenga este .. y si así te pasa es que tu sitio tiene mucho exito y en consecuencia ameritaría cambiar de servirdor a otro de más prestaciones.

No sé que idea de "servidor" o servicio de hosting tienes en mente .. puedes probar con un servicio de hosting común y ahí evaluas tu indice de visitas simultáneas, tu trasnferencia consumida y demás ...

Coma ya te he comentado .. forma de "optimizar" el código que hagas hay muchas. Por ejemplo .. no se te ocurra gestionar tus imagenes sobre la BBDD en binario (sólo deja referencias de la misma del nombre de la imagen). Tampoco sería recomendable usar "GD" para procesar imagenes "al vuelo" .. Si tines que meter "marcas de agua" .. hacer "thumbnails" .. etc .. hazlo en el momento que suban tus imagnes .. así ahorras bastante proceso vs más espacio en el disco que necesitaras (comprar más espacio en "disco" siempre es más fácil y barato que no cambiarte a un servidor con más "procesador").

Y así hay un grán número de cosas a tener en cuenta. Cosas que ahora como no tienes la "experiencia" suficiente, las implementaras a tu manera, te servirán y funcionaran pero a la hora que tengas esas "1000 visitas" tu sistema a la primera de cambio se caerá o pagaras un exceso de trafico inmenso!.

Cita:
y prometro no poner mas urgente pero es que el proyectyo lo estamos por inaugurar dentro de un tiempo y no quiero para de trabajar en el o sea ahora lo que mas me esta complicando es el tema de sessiones lo demas esta claro y con la ayuda de las carpetas que me diste hoy mas todavia
pero ahora pienso en el tema de mis recursos

si quieres responder me vendria bien

Como te decía antes .. sé que todo el mundo que acude aquí a estos foros viene con un problema que resolver .. son pocos los que se quedan a -participar- tanto ayudando a otros como a realizar aportes "altruistas" (tutoriales, consejos varios .. etc). Por eso mismo, entiende que esto no es un lugar donde a los que "responden" se les dé algún tipo de retribución económica, a lo sumo sólo esperamos un "gracias" y ahí nos sobra y nos satisface. He de ahí que mensajes con títulos como "es urgente", "es importante" .. "lo tengo que entregar mañana" y cosas por el estilo, realmente no corresponden.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #8 (permalink)  
Antiguo 26/11/2006, 12:19
Avatar de nanomartin  
Fecha de Ingreso: mayo-2005
Ubicación: Moron - Bs As (ARG)
Mensajes: 50
Antigüedad: 18 años, 11 meses
Puntos: 0
A ver si te sirve...

Hola gente.. verdaderamente que estoy bastante com,plicado en mi proyecto y no me puse a leer detenidamente los extensos emnsajes que han redactado.

Por mi parte, te copio el código de mis archivos, y una breve explicación:

Para mantener el nombre de quien se logueó en las paginas, lo que tenes que hacer es declarar AL INICIO del sitio (o sea, en el LOGIN) un par de variables de SESION: (esto lo escrive DreamWeaver)

Código PHP:
    //declare two session variables and assign them
    
$_SESSION['MM_Username'] = $loginUsername;
    
$_SESSION['MM_UserGroup'] = $loginStrGroup
Con eso ya creaste la variable que estará disponible en todo el sitio.
((fijate que también crea la del grupo de usuario, o "nivel" de privilegios.. en definitiva son solo datos que vos decidis si te sirve incluírlos o no))

2º paso, decirle A CADA PAGINA que levante esas variables, para mostrar el nombre (o lo que traiga esa variable) PRIMERO HAY QUE VALIDAR EL LOGUEO

Código PHP:
<?php require_once('Connections/n_martinf.php'); ?>
<?php 
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
  
session_start();
}
?><?php
Si existe, va a continuar, y luego simplemente imprimis el valor en pantalla_

Código PHP:
  <td>Usuario:<?php echo $_SESSION['MM_Username']?></td>
Como verás era muy sencillo (aunque para mi tambien era "el cuco" hace un tiempo).

Espero haber podido ayudarte!!

Suerte!
  #9 (permalink)  
Antiguo 26/11/2006, 13:03
Avatar de aldo1982  
Fecha de Ingreso: noviembre-2004
Ubicación: Santa Fe (Argentina) Colon F.C
Mensajes: 1.362
Antigüedad: 19 años, 5 meses
Puntos: 6
TE ARMO UN EJEMPLITO RAPIDO APRA PASAR LA VAR POR FORMULARIO
ACA VA...
CREAS UN ARCHIVO EN EL CUAL SE ARMA EL FORMULARIO (FORM.PHP)

Código PHP:
<form method="POST" action="recibir.php">
<
input name="tuTexto" type="text">
<
input name="tuBoton" type="submit">
</
form
otro archivo ke se llame recibir.php y pones lo siguiente

Código PHP:
echo $_POST[tuTexto]; //con esto muestras la variable del formulario llamada miTextop 

Salu2 y espero haya servido bye
__________________
LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA
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 15:26.