Foros del Web » Programando para Internet » PHP »

Como armar variable para tomar otro dato

Estas en el tema de Como armar variable para tomar otro dato en el foro de PHP en Foros del Web. lo siento me tengo que ir , leete bien todo lo que te e dixo fijate en todos los cambios y prueba haber si no ...

  #31 (permalink)  
Antiguo 25/01/2012, 17:19
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

lo siento me tengo que ir , leete bien todo lo que te e dixo fijate en todos los cambios y prueba haber si no mañana seguimos ,
lo que intentas es facil pero en algo no caemos si no mañana con mas tiempo damos con ello seguro

un saludo
  #32 (permalink)  
Antiguo 25/01/2012, 17:23
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 3
Respuesta: Como armar variable para tomar otro dato

Cita:
Iniciado por webankenovi Ver Mensaje
lo siento me tengo que ir , leete bien todo lo que te e dixo fijate en todos los cambios y prueba haber si no mañana seguimos ,
lo que intentas es facil pero en algo no caemos si no mañana con mas tiempo damos con ello seguro

un saludo
Muchas gracias, aquí le voy a seguir intentando y mañana te cuento como va todo.
Y nuevamente muchas gracias
  #33 (permalink)  
Antiguo 26/01/2012, 10:55
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

como vas amiguete lo tienes ya??
  #34 (permalink)  
Antiguo 26/01/2012, 18:07
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 3
Respuesta: Como armar variable para tomar otro dato

Cita:
Iniciado por webankenovi Ver Mensaje
como vas amiguete lo tienes ya??
Una disculpa tuve que salir todo el día y voy llegando.
Pues aún no le hallo, le intente de mil formas y siempre sale error, tengo los archivos de cuando todo salia bien en productos2.php y carro2.php:

En productos2.php están los 2 carritos, el primero no manda nada y el segundo manda todo menos el color, o sea tengo que empezar a ver que el primero mande todo, le voy a intentar con los consejos que me has dado a ver si logro algo.

Muchas gracias por estar al pendiente, espero sigas por aquí si no mañana te estaré molestando.
Saludos
  #35 (permalink)  
Antiguo 27/01/2012, 10:58
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

hazlo todo como lo tenias , con el carrito en un link y el color que no llegaba cuando te funcione bien todo menos el color ya añdes la parte que hicimos metiendo el carrito y el color en un form

ves por partes
  #36 (permalink)  
Antiguo 27/01/2012, 13:28
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 3
Respuesta: Como armar variable para tomar otro dato

Hola buen día

Ya lo tengo así: funciona bien pero si le agrego el form sólo me jala el color
__________________
---- Diseño Gráfico en General ----
www.creapublicidadydiseno.com.mx
  #37 (permalink)  
Antiguo 27/01/2012, 13:32
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

Una pregunta xq tienes 2 carritos??

una cosa tu tienes puesto session_start(); en la pagina del carro y en todas las demas???

Última edición por webankenovi; 27/01/2012 a las 13:38
  #38 (permalink)  
Antiguo 27/01/2012, 13:38
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 3
Respuesta: Como armar variable para tomar otro dato

El primero es el que queremos hacer que funcione y sólo jala el color, el segundo es el que funciona bien pero no jala el color, no lo he borrado por si aún nos llega a servir, quieres que lo /*comente*/ para olvidarnos de el??

Si, en todas tiene el session_start();
__________________
---- Diseño Gráfico en General ----
www.creapublicidadydiseno.com.mx

Última edición por Crea; 27/01/2012 a las 13:40 Razón: Ampliar la respuesta
  #39 (permalink)  
Antiguo 27/01/2012, 13:44
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

no borres nada x si puede servir

haber la primera vez que entre vi el carro con todos los datos que mostraba todo menos el color que no salia nada , ese carro es el que hace falta si puedes pon el codigo pero completo

supongo que sera carro.php no productos2.php

voy a revisar todo y haber si doy con el problema xq no es normal
  #40 (permalink)  
Antiguo 27/01/2012, 13:49
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 3
Respuesta: Como armar variable para tomar otro dato

Este es el botón que manda todo menos el color:

Código PHP:
echo "<td style='text-align:right'>
            <a href='carro2.php?id=" 
$productos['id'] . "&action=";
                                
            if (isset(
$_SESSION['carro'][$productos['id']])){
                                    
            echo 
"removeProd' alt='Eliminar del carro'><img src='img/remove_carro.png' width='48' height='48' alt='Eliminar del carro' title='Añadir producto al carrito'>";
            }
            else
            echo 
"add' alt='Añadir al carro'><img src='img/add_carro.png' width='48' height='48' alt='Añadir al carrito' title='Añadir producto al carrito'>";        
                                
                echo 
"</a></td>"
Antes de el botón estaba esto:

Código PHP:
while ($productos mysql_fetch_array($resultado)) { 
                echo 
"<tr class='borde_tabla'><td style='display:none'>" $productos['id'] . "</td>";    
                echo 
"<td>" $productos['producto'] . "</td>";
                echo 
"<td style='text-align:right'>$" $productos['precio'] . "  </td>"

Y entre estos 2 metimos el form
__________________
---- Diseño Gráfico en General ----
www.creapublicidadydiseno.com.mx
  #41 (permalink)  
Antiguo 27/01/2012, 14:07
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

haber , esto es lo que pienso antes de que tu pidieras yuda te funcionaba todo pero en el carro no reibia el color y el color estaba en un form sin boton y la imagen del carro en un link

hasta aqui todo bien , ahora entnces como estaba funcionaba bien el carro y lo mjeor sera no tocarlo , por lo tanto solo habria que juntar el color y la imagen del carro con el link en un form y en carro.php solo modificar la linea donde lo vAllas a mostrar con $_POST , eso seria la solucion

pero viendo todo el codigo me planteo que lo tienes mal estructurado desde el pricnipio y lo que debes hacer es crear una session por cada producto con sus arrays de id producto color etc... para luego mostrar todas los productos y esten guardados en una session ya que no los guardas en la bd , tambien lo puedes guardar en la bd ,

es tan solo mi opinion , arreglando el codigo acabaras mostrando el color pero a la larga tendras mas problemas

no digo que tu codigo este mal ni sea imposible añadir el color (me imagino que sera por alguna tonteria que no hayamos visto y haya pasado de largo)

Última edición por webankenovi; 27/01/2012 a las 14:15
  #42 (permalink)  
Antiguo 27/01/2012, 14:28
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 3
Respuesta: Como armar variable para tomar otro dato

mmm ok, creo que te entiendo y te aseguro que te creo, ahorita me gustaría resolver lo del color porque el cliente ya está pidiendo avances.

Yo lo que veo es que el primer botón sólo toma lo que hay en el form. Este botón lo añadimos aquí:

Código PHP:
<?php 
if(isset($_SESSION['carro']) && isset($productos['id'])){ ?>
<input name="" type="image" src="img/add_carro.png" width="50" height="50">
<?php }else{?>
<input name="" type="image" src="img/remove_carro.png" width="50" height="50">
<?php }?>
y el segundo botón (el que muestra todo menos el color) no hace caso a lo que hay en el form porque no se le ha dado ninguna indicación para que haga eso.
__________________
---- Diseño Gráfico en General ----
www.creapublicidadydiseno.com.mx
  #43 (permalink)  
Antiguo 27/01/2012, 14:33
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

vamos a simplificar todo y a partir de ay ya avanzas ok

esto te lo e simplificado dejalo subido al servidor para verlo

añade los includes y el session_start

Código PHP:
Ver original
  1. <?php
  2.  
  3. if(isset($_GET['id'])){
  4.  
  5. $SqlProductos = mysql_query("SELECT id, producto, precio FROM productos WHERE id='1'");
  6. $SqlColores = mysql_query("SELECT id, color FROM color");
  7.  
  8.  
  9. if($SqlColores != NULL) {
  10.    
  11.     echo 'error al seleccionar el producto';
  12.      
  13. }else{
  14.  
  15.     echo 'el id del producto '.$producto['id'].'<br>';
  16.     echo 'el nombre del producto '.$producto['producto'].'<br>';
  17.     echo 'el precio del producto '.$producto['precio'].'<br>';
  18.  
  19. }
  20.  
  21.  
  22.  
  23. if($_SESSION['carro'] == $producto['id']){ ?>
  24.     <form method="post" action="carro.php?id=<?php $producto['id']; ?>&action=removeProd">
  25.     <?php }else{?>
  26.     <form method="post" action="carro.php?id=<?php $producto['id']; ?>&action=add">
  27.     <?php }?>
  28.      
  29.      
  30.     <select name="color">
  31.     <option value="">seleccionar</option>
  32.      
  33.     <?php
  34.     while($fila = mysql_fetch_row($SqlColores)){
  35.     echo "<option value='".$fila['1']."'>".$fila['1']."</option>";
  36.     }
  37.     ?>
  38.      
  39.     </select>
  40.      
  41.     <?php
  42.     if($_SESSION['carro'] == $producto['id']){ ?>
  43.     <input name="" type="image" src="/img/remove_carro.png" width="50" height="50">
  44.     <?php }else{?>
  45.     <input name="" type="image" src="/img/add_carro.png" width="50" height="50">
  46.     <?php }?>
  47.      
  48.     </form>
  49.  
  50.  
  51. <?php
  52.  
  53. }else{
  54.    
  55.     echo 'error';
  56.    
  57.     }?>

y ahorita el carro wait a moment
  #44 (permalink)  
Antiguo 27/01/2012, 14:44
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 3
Respuesta: Como armar variable para tomar otro dato

Me arroja error en la línea 24:

Parse error: syntax error, unexpected T_IF in /home/mbcorpor/public_html/dejavu/productos2.php on line 24

la línea 24 es esto:

if(isset($_GET['id'])){
__________________
---- Diseño Gráfico en General ----
www.creapublicidadydiseno.com.mx
  #45 (permalink)  
Antiguo 27/01/2012, 14:54
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

ok

haber te lo e echo simplificado para solamente conseguir mostrar todo a partir de ay ya entre este codigo si te funciona y los que tu tienes ya formas todo como tu lo quieras yo solo me centro en que se muestre todo ok

producto (el fallo era xq te puse una verificacion de producto xq suponia que pasaras en el futuro los articulos por id para mostrarlos ok lo e obviado)


producto2.php
Código PHP:
Ver original
  1. <?php
  2.  
  3.  
  4.  
  5. $SqlProductos = mysql_query("SELECT id, producto, precio FROM productos WHERE id='1'");
  6. $SqlColores = mysql_query("SELECT id, color FROM color");
  7. $producto = mysql_fetch_array($SqlProductos);
  8.  
  9.  
  10. if($SqlColores != NULL) {
  11.    
  12.     echo 'error al seleccionar el producto';
  13.      
  14. }else{
  15.  
  16.     echo 'el id del producto '.$producto['id'].'<br>';
  17.     echo 'el nombre del producto '.$producto['producto'].'<br>';
  18.     echo 'el precio del producto '.$producto['precio'].'<br>';
  19.  
  20. }
  21.  
  22.  
  23.  
  24. if($_SESSION['carro'] == $producto['id']){ ?>
  25.     <form method="post" action="carro.php?id=<?php $producto['id']; ?>&action=removeProd">
  26.     <?php }else{?>
  27.     <form method="post" action="carro.php?id=<?php $producto['id']; ?>&action=add">
  28.     <?php }?>
  29.      
  30.      
  31.     <select name="color">
  32.     <option value="">seleccionar</option>
  33.      
  34.     <?php
  35.     while($fila = mysql_fetch_row($SqlColores)){
  36.     echo "<option value='".$fila['1']."'>".$fila['1']."</option>";
  37.     }
  38.     ?>
  39.      
  40.     </select>
  41.      
  42.     <?php
  43.     if($_SESSION['carro'] == $producto['id']){ ?>
  44.     <input name="" type="image" src="/img/remove_carro.png" width="50" height="50">
  45.     <?php }else{?>
  46.     <input name="" type="image" src="/img/add_carro.png" width="50" height="50">
  47.     <?php }?>
  48.      
  49.     </form>

carro2.php igual añade los include y el session_start()

Código PHP:
Ver original
  1. <?php
  2.            
  3.             if (isset($_GET['id'])){
  4.                 $id = $_GET['id'];
  5.             }else{
  6.                 $id = 1;}
  7.            
  8.             if (isset($_GET['action'])){
  9.                 $action = $_GET['action'];
  10.             }else{
  11.             $action = "empty";}
  12.    
  13.    
  14.             switch($action){
  15.            
  16.                 case "add":
  17.                     if(isset($_GET['id'])){
  18.                         $_SESSION['carro'] = $_GET['id'];
  19.                     }
  20.                 break;
  21.                
  22.                
  23.                 case "removeProd":
  24.                     if(isset($_SESSION['carro'])){
  25.                         unset($_SESSION['carro']);
  26.                     }
  27.                 break;
  28.                
  29.                        
  30.                
  31.             }
  32.  
  33.      
  34.            
  35.             if(isset($_SESSION['carro'])){
  36.                
  37.                
  38.                     $resultado = mysql_query("SELECT id, producto, precio FROM productos WHERE id='$id'");
  39.                     $mifila = mysql_fetch_array($resultado);
  40.      
  41.                  
  42.                     $str = $mifila['producto'];
  43.                     $producto = substr($str,0,40);
  44.                     $precio = $mifila['precio'];
  45.  
  46.                    
  47.  
  48. echo 'ha elelgido el producto '.$producto.' con el color '.$_POST['color'].' que tiene un valor de '.$precio.'<br><br>';
  49. echo "<a href='carro.php?id=". $id ."&action=add'><img src='img/aumentar.png' style='padding:0 0px 0 5px;' alt='Aumentar cantidad' /></a>";
  50. echo "<a href='carro.php?id=". $id ."&action=removeProd'><img src='img/eliminar.png' alt='Reducir cantidad' /></a></td>";
  51.                    
  52.                     echo 'Total = '.$precio;
  53.                
  54.                        echo' <a href="comprar.php"><input type="button" value="finalizar compra" /></a>';
  55.                
  56.                
  57.             }
  58.             else
  59.             {
  60.                 echo "El carro está vacío";
  61.    
  62.        
  63.             }?>

Última edición por webankenovi; 27/01/2012 a las 14:59
  #46 (permalink)  
Antiguo 27/01/2012, 15:00
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

lo acabo de modificar los codigos si lo as subido vuelvelo a cambiar lo siento

Código PHP:
Ver original
  1. <?php
  2.      
  3.      
  4.      
  5.     $SqlProductos = mysql_query("SELECT id, producto, precio FROM productos WHERE id='1'");
  6.     $SqlColores = mysql_query("SELECT id, color FROM color");
  7.     $producto = mysql_fetch_array($SqlProductos);
  8.      
  9.      
  10.     if($productos != NULL) {
  11.        
  12.         echo 'error al seleccionar el producto';
  13.          
  14.     }else{
  15.      
  16.         echo 'el id del producto '.$producto['id'].'<br>';
  17.         echo 'el nombre del producto '.$producto['producto'].'<br>';
  18.         echo 'el precio del producto '.$producto['precio'].'<br>';
  19.      
  20.     }
  21.      
  22.      
  23.      
  24.     if($_SESSION['carro'] == $producto['id']){ ?>
  25.         <form method="post" action="carro.php?id=<?php $producto['id']; ?>&action=removeProd">
  26.         <?php }else{?>
  27.         <form method="post" action="carro.php?id=<?php $producto['id']; ?>&action=add">
  28.         <?php }?>
  29.          
  30.          
  31.         <select name="color">
  32.         <option value="">seleccionar</option>
  33.          
  34.         <?php
  35.         while($fila = mysql_fetch_row($SqlColores)){
  36.         echo "<option value='".$fila['1']."'>".$fila['1']."</option>";
  37.         }
  38.         ?>
  39.          
  40.         </select>
  41.          
  42.         <?php
  43.         if($_SESSION['carro'] == $producto['id']){ ?>
  44.         <input name="" type="image" src="/img/remove_carro.png" width="50" height="50">
  45.         <?php }else{?>
  46.         <input name="" type="image" src="/img/add_carro.png" width="50" height="50">
  47.         <?php }?>
  48.          
  49.         </form>


lo siento por estar todo el rato con un codigo con otro pidiendote codigos pero es que no se que puede ser y me estoy volviendo locoooo jajaja ay que dar ya con la solucion
  #47 (permalink)  
Antiguo 27/01/2012, 15:10
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 3
Respuesta: Como armar variable para tomar otro dato

jaja No te preocupes, de hecho yo ya me perdí y sólo te estoy siguiendo, no se si algo no te entendí pero me da error, te pongo todo el código de productos2.php:

Código PHP:
<?php
session_start
();

$titulo "Prueba";
include(
"estructura/conecta.php");
include(
"estructura/meta_tags.php");
include(
"estructura/cabecera.php");

include(
"estructura/izquierda.php");
?>



    <div id="derecha">
    
    
    
    
    <h1>Detalle de Productos</h1>
    
        <div class='text-border'>
        <?php
* * *
* * *
* * *
* * 
$SqlProductos mysql_query("SELECT id, producto, precio FROM productos WHERE id='1'");
* * 
$SqlColores mysql_query("SELECT id, color FROM color");
* * 
$producto mysql_fetch_array($SqlProductos);
* * *
* * *
* * if(
$productos != NULL) {
* * * *
* * * * echo 
'error al seleccionar el producto';
* * * * *
* * }else{
* * *
* * * * echo 
'el id del producto '.$producto['id'].'<br>';
* * * * echo 
'el nombre del producto '.$producto['producto'].'<br>';
* * * * echo 
'el precio del producto '.$producto['precio'].'<br>';
* * *
* * }
* * *
* * *
* * *
* * if(
$_SESSION['carro'] == $producto['id']){ ?>
* * * * <form method="post" action="carro.php?id=<?php $producto['id']; ?>&action=removeProd">
* * * * <?php }else{?>
* * * * <form method="post" action="carro.php?id=<?php $producto['id']; ?>&action=add">
* * * * <?php }?>
* * * * *
* * * * *
* * * * <select name="color">
* * * * <option value="">seleccionar</option>
* * * * *
* * * * <?php
* * * * while($fila mysql_fetch_row($SqlColores)){
* * * * echo 
"<option value='".$fila['1']."'>".$fila['1']."</option>";
* * * * }
* * * * 
?>
* * * * *
* * * * </select>
* * * * *
* * * * <?php
* * * * if($_SESSION['carro'] == $producto['id']){ ?>
* * * * <input name="" type="image" src="/img/remove_carro.png" width="50" height="50">
* * * * <?php }else{?>
* * * * <input name="" type="image" src="/img/add_carro.png" width="50" height="50">
* * * * <?php }?>
* * * * *
* * * * </form>
*
*
<?php
*
}else{
* * 
* * echo 
'error';
* * 
* * }
?>
        </div> <!-- Cierro text-border -->
    </div> <!-- Cierro derecha -->

<?php
include("estructura/pie.php");
include(
"estructura/cerrar_etiquetas.php");
?>
El error que me es este:

Parse error: syntax error, unexpected T_STRING in /home/mbcorpor/public_html/dejavu/productos2.php on line 23

y en la línea 23 no hay nada
__________________
---- Diseño Gráfico en General ----
www.creapublicidadydiseno.com.mx
  #48 (permalink)  
Antiguo 27/01/2012, 15:17
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

ostias un error sin nada?? ya esto si que me vuelve loco

te recomiendo dejarlo todo como estaba y haber si te puede ayudar otra persona que de con la clave

aunque la clave es esa dejarlo todo como estaba añadir el form con el color y el link para mandar el color por $_POST y el id por el action y luego en el carro para mostrar el color na mas

echo $_POST['color'];

asi te deberia de funcionar pero luego me dices que el carro no muestra bien cuando si muestra el color y eso es si te fijas xq en la url el valor de id llega vacio

http://www.dejavu.com.mx/carro.php?id=&action=add

y si añades un numero a id

http://www.dejavu.com.mx/carro.php?id=5&action=add

muestra todo bien logicamente el color no xq ya desaparecio la variable $_POST al aztualizar digo si pruebas añadiendo un numero al link

como ves ese es el planteamiento y lo que debes de resolver na mas

yo por hoy te dejo que mañana madrugo espero que con estas indicaciones lo soluciones

y si no ya me vas comentando pero hay que obviar ya todo los intentos y no volvernos locos que ya no sabemos ni donde estamos ejjee

parte del codigo que tenias antes de crear el tema y sigue los pasos que te he dicho

un saludò
  #49 (permalink)  
Antiguo 27/01/2012, 15:46
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 3
Respuesta: Como armar variable para tomar otro dato

Ok, le seguiré intentando y buscando respuesta, como dices parece sencillo lo que requiero pero no se en donde está el problema, ya he buscado ayuda por otros foros y no llegamos a nada. De cualquier manera te agradezco el tiempo y la ayuda, que aunque no creas en este tiempo aprendí un poco más de PHP pues partí de cero, si llego a un buen resultado ya te estaré informando.

Saludos y gracias nuevamente
__________________
---- Diseño Gráfico en General ----
www.creapublicidadydiseno.com.mx
  #50 (permalink)  
Antiguo 27/01/2012, 15:52
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como armar variable para tomar otro dato

el carro como lo tenias esta bien solo añade donde desees mostrar el color $_POST['color']

y el problema esta en la pagina del producto que algo no hicimos bien

pero si al poner un numero en id= en la url todo se ve bien y el color x otro lado eso quiere decir que si llegara bien la url a carro con la id=1 se veria todo correctamente

ese es el camino......... de todas maneras aqui estoy puedes ir comentando cosas y seguire ayudandote

Etiquetas: php+bd+mysql
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:11.