Ver Mensaje Individual
  #3 (permalink)  
Antiguo 10/11/2011, 15:40
luqueagm
 
Fecha de Ingreso: junio-2009
Mensajes: 101
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Variable dentro de variable

si.

Tengo un carro de compra con 'n' cantidad de productos y 'x' cantidad variable de posibilidades que la persona lo puede asignar a la compra.

Basicamente el tema se reduce en esto:

Tengo una pagina de 'estado' y una pagina de 'formulario'.
Estas variables de estado y formulario al enviarse al correo electronico, llegan todas, pero sin un formato claro. Por ello busco generar una tabla en el php, para poder enviarlos mediante ese orden. Hasta ahi ningun problema, puedo hacerlo todo. Pero lo que quiero es poder separar las variables del formulario de las variables de estado del carrito. Las variables de estado son:

- tipo de producto
- cantidad de producto
- precio de producto

y ademas hay una suma general.


Las variables de 'formulario' son aquellas de 'nombre', 'fecha', 'direccion', etc.

Eso es lo que quiero separar: estos dos grupos. El objetivo es poder aplicarle por separado las celdas, de manera que se ordenen acorde al criterio que yo escoja.

Pero, eso es lo que no he podido lograr.

Si lo hago como constantes sería asi:


Cita:
$Message .= "Producto1 = " . $HTTP_POST_VARS['Producto1']."<br>";
$Message .= "Producto2 = " . $HTTP_POST_VARS['Producto2']."<br>";
$Message .= "Producto3 = " . $HTTP_POST_VARS['Producto3']."<br>";
$Message .= "Cantidad1 = " . $HTTP_POST_VARS['Cantidad1']."<br>";
$Message .= "Cantidad2 = " . $HTTP_POST_VARS['Cantidad2']."<br>";
$Message .= "Cantidad3 = " . $HTTP_POST_VARS['Cantidad3']."<br>";
$Message .= "ProductoTotal1 = " . $HTTP_POST_VARS['ProductoTotal1']."<br>";
$Message .= "ProductoTotal2 = " . $HTTP_POST_VARS['ProductoTotal2']."<br>";
$Message .= "ProductoTotal3 = " . $HTTP_POST_VARS['ProductoTotal3']."<br>";
pero te imaginaras que si lo hago asi, tendria que hacer centenas de lineas, por lo que quiero llevar esto a un while o a un foreach o lo que sea, pero ahi me encuentro con el problema de variable dentro del $HTTP_POST_VARS. Le he asignado la variable $i pero no lo reconoce. He probado hasta el cansancio, pero solo lagrimas...

Ese es el qué del asunto... como separar las variables de formulario de las de estado, para poder programar el envio de email con celdas de tablas...

las tablas las logro con esto:

Código PHP:
  $Message .= "<table><td>" ;      
    
$Message .= "$key = $val"
    
$Message .= "</td></table>" 

y este es el codigo expuesto mas arriba con el que comnce el hilo:


Cita:
if (!is_array($HTTP_POST_VARS))
return;
reset($HTTP_POST_VARS);
$i=1;
///////while(list($key, $val) = each($HTTP_POST_VARS)) {
while($HTTP_POST_VARS['ProductoTotal']{$i} = each($HTTP_POST_VARS)) {
$Message .= "Producto$i =" . $HTTP_POST_VARS['Producto']{$i}."<br>";
$Message .= "Cantidad$i =" . $HTTP_POST_VARS['Cantidad']{$i}."<br>";
$Message .= "ProductoTotal$i =" . $HTTP_POST_VARS['ProductoTotal']{$i}."<br>";
$i++;
}