PHP - variables globales

 
Vista:

variables globales

Publicado por switch (55 intervenciones) el 26/07/2007 00:50:16
Hola a tod@s: necesito pasar el valor de una variable que esta en la pagina A.php y la pagina B.php, el problema es que no se como se hace eso, e esta averiguando y hay un opción para configurar que todas las variables queden globales (register_globals), pero eso ne es muy bueno, me gustaría saber como lo puedo hacer para declarar una variable en A.php y que pueda mostrar el valor que tiende dentro desde B.php

De ante mano muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:variables globales

Publicado por Hernan (1 intervención) el 26/07/2007 04:29:33
En mi hosting, que es www.sitioshispanos.com, me indicaron como activar las register_globals. Tuve que modifcar el archivo .htacces y agregar la siguient e linea php_value register_globals "1". En resumen, hay dos formas de tomar las variables

$_GET['nombreparametro] o $_POST['nombreparametro'] dependiendo que metodo usas para pasar los valores.

Pero si tenes las register_globals activada solo tenes que hacer referencia con $nombredelparametro

Tambien podes simular las register_globals con el siguiente codigo

$types_to_register = array('GET','POST','COOKIE','SESSION','SERVER');
foreach ($types_to_register as $type)
{

if (@count(${'HTTP_' . $type . '_VARS'}) > 0)
{

extract(${'HTTP_' . $type . '_VARS'}, EXTR_OVERWRITE);

}

}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:variables globales

Publicado por switch (55 intervenciones) el 26/07/2007 15:03:55
Pero tengo una duda, esta declaración de variables "$_GET['nombreparametro] o $_POST['nombreparametro'] ", es la que envía las variables con datos, o es la que recibe los datos, en puesto la declaración en las 2 paginas pero no me resulta y la verdad es que estoy un poco perdido, te envió el código por si te sirve de algo

PRIMERA PAGINA
--------------------------------------------------------------------------
<?php
$_POST['actionqty']=actionqty;
$_POST['photoqty']=photoqty ;
$_POST['flashqty']=flashqty;
?>
<form action="procesarorden.php" method=post>

<font face="Arial, Helvetica, sans-serif">
ActionScript
<input type="text" name="actionqty" size=3 maxlength=3>
</font>
<p><font face="Arial, Helvetica, sans-serif">Photoshop
<input type="text" name="photoqty" size=3 maxlength=3>
</font></p>
<p><font face="Arial, Helvetica, sans-serif">Flash MX
<input type="text" name="flashqty" size=3 maxlength=3>
<input name="submit" type=submit value="Enviar Pedido">
</font></p>
</form>

SEGUNDA PAGINA (procesarorden.php)
------------------------------------------------------------------------------------
<html>
<head>
<title>Formulario de pedido de libros</title>
</head>
<body>
<h1>Librería Online </h1>
<h2>Resumen del Pedido </h2>

<?

$_POST['actionqty']=actionqty;
$_POST['photoqty']=photoqty ;
$_POST['flashqty']=flashqty;

echo "<p>Pedido procesado el "; // Start printing order

echo date("jS F,H:i ");
echo "<br>";
echo "<p>Su pedido es el siguiente:";
echo "<br>";
echo $actionqty." ActionScript<br>";
echo $photoqty." Photoshop<br>";
echo $flashqty." Flash MX<br>";

$totalqty = 0;
$totalamount = 0.00;

define("ACTIONPRICE", 100);
define("PHOTOPRICE", 10);
define("FLASHPRICE", 4);

$totalqty = $actionqty + $photoqty + $flashqty;
$totalamount = $actionqty * ACTIONPRICE
+ $photoqty * PHOTOPRICE
+ $flashqty * FLASHPRICE;

echo "<br>\n";
echo "Artículos Pedidos: ".$totalqty."<br>\n";
echo "Subtotal: €";
echo number_format($totalamount, 2);
echo "<br>\n";

$taxrate = 0.10; // local sales tax is 10%
$totalamount = $totalamount * (1 + $taxrate);
$totalamount = number_format($totalamount, 2);
echo "Total incluyendo impuestos: €".$totalamount."<br>\n";

?>
</body>
</html>

de ante mano, MUCHAS GRACIAS!!!!!!!!!!!!!!!
salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:variables globales

Publicado por Diego Romero (1450 intervenciones) el 26/07/2007 19:52:37
A ver. Tango $_GET como $_POST son Arrays que se generan a partir del tipo de petición que le llega al script y tienen como índices los nombres de las variables que se arman para hacer la petición.

En tu caso debes LEER el array $_POST en el segundo script. No sirve de nada asignar valores al array $_POST.

En el formulario has visto que los elementos del mismo tienen un parámetro "name". Usa el valor de ese parámetro para leer el array $_POST en el segundo script. O sea, en procesarorden.php debes hacer muy al principio del script algo como esto:

$actionqty = $_POST['actionqty'];
$photoqty =$_POST['photoqty'];
$flashqty = $_POST['flashqty'];

Claro que esto es muy simple, no hay ningún control de errores. La petición podría no ser POST, podrían faltar alguna de las variables, las variables podrían existir en $_POST pero estar vacías, etc...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:variables globales

Publicado por switch (55 intervenciones) el 26/07/2007 20:51:44
MUCHAS GRACIAS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

problema resuelto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar