Foros del Web » Programando para Internet » PHP »

Necesito individualizar los artículos!!!

Estas en el tema de Necesito individualizar los artículos!!! en el foro de PHP en Foros del Web. Hola, este tema me está sacando un poco dado que hace aproximadamente una hora estoy con esto y no logro que funcione correctamente. Tengo los ...
  #1 (permalink)  
Antiguo 09/12/2009, 20:18
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Exclamación Necesito individualizar los artículos!!!

Hola, este tema me está sacando un poco dado que hace aproximadamente una hora estoy con esto y no logro que funcione correctamente.
Tengo los artículos y su precio almacenados en una base de datos.
el código es el siguiente

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
// Un while para listar los artículos segun el siguiente fetch.

$Listar = mysql_query("SELECT * FROM inventario");
while ($Article=mysql_fetch_assoc($Listar ))
{
?>
<form action="" method="post" name="Comercio">
<?php
echo $Article[nombre]."<br/>";
echo $Article[precio]."pesos";
<input name="Ejecutar" type="submit" value="Comprar artículo"/>
?>
</form>
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

Este while me devuelve algo así al agregar estilo css para acomodarlo:

Artículo1
10 pesos
COMPRAR

Artículo2
20 pesos
COMPRAR

Artículo3
30 pesos
COMPRAR

Artículo4
40 pesos
COMPRAR

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
<?php
if(isset($_POST['Ejecutar']))
{
$Usuario_data = mysql_query("SELECT saldo FROM usuarios WHERE usuario='Perez'");
$Usuario_info = mysql_fetch_Assoc($Usuario_data);

// Defino que el nuevo valor del saldo es el valor actual menos el costo del artículo
$Costo = $Usuario_info['saldo'] - $Article[precio];

// Finalmente actualizo el saldo del usuario
mysql_query("UPDATE usuarios SET saldo = $Costo WHERE usuario='Perez'");
}

} // TERMINA EL WHILE
?>
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

Bueno, el problema yace en que debo hacer que al clickear en el botón comprar, descuente el valor del artículo del saldo de la cuenta del usuario.
Pero no logro individualizar el precio de cada artículo, es decir, me toma el mismo precio para todos dado que (según muestra el valor de la variable $Article[precio] lo muestra como un array asi que posiblemente se limite al primer resultado)
Si pongo la consulta fuera del wihle pues no hace nada.

Realmente no me manejo bien con for y foreach, creo que algo de eso necesito pero no logro comprender su aplicación, si alguien se quiere tomar unos minutos y hacer énfasis en esos temas se lo agradecería mucho.

Bueno, expuse mi problema, ojalá tenga la suerte de que alguien se pase por acá y justo se haya tomado un curso de como solucionar esto xdd

Gracias

PD: si a alguien le llamó la atención mi problema y quisiera ayudarme por msn pídanmelo y se los paso por privado.
__________________
Abre tu mente: Index no signigica index, significa índice

Última edición por iLeaz; 10/12/2009 a las 09:26
  #2 (permalink)  
Antiguo 09/12/2009, 21:57
 
Fecha de Ingreso: diciembre-2008
Mensajes: 102
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: Necesito individualizar los artículos!!!

arma un archivo donde se procese la info de un articulo individual, es decir usas el mismo codigo que usas para mostrar todos los articulos solo que que le colocas un where al codigo del articulo bueno de esa forma lo haria yo no se los demas
__________________
█ Luis Toscano - CodeMaster
Codigolandia.com
Foros Del Hosting
  #3 (permalink)  
Antiguo 09/12/2009, 22:03
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Necesito individualizar los artículos!!!

e? no comprendí tu idea
__________________
Abre tu mente: Index no signigica index, significa índice
  #4 (permalink)  
Antiguo 10/12/2009, 07:51
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 8 meses
Puntos: 25
Respuesta: Necesito individualizar los artículos!!!

cambia mysql_fetch_assoc en todas tus consultas por mysql_fetch_array

Espero sirva, saludos.
__________________
Hospedaje Web al mejor costo!
  #5 (permalink)  
Antiguo 10/12/2009, 08:02
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Necesito individualizar los artículos!!!

Cita:
Iniciado por urgido Ver Mensaje
cambia mysql_fetch_assoc en todas tus consultas por mysql_fetch_array

Espero sirva, saludos.
Sigue igual :(

pero estoy seguro que necesito un for o foreach (me inclino pmás por este ultimo)

pero no se como aplicarlo...
__________________
Abre tu mente: Index no signigica index, significa índice
  #6 (permalink)  
Antiguo 10/12/2009, 08:04
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 8 meses
Puntos: 25
Respuesta: Necesito individualizar los artículos!!!

puedes poner aquí como cambiaste los valores? no veo problemas en el mysql_fetch_array
__________________
Hospedaje Web al mejor costo!
  #7 (permalink)  
Antiguo 10/12/2009, 08:12
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Necesito individualizar los artículos!!!

simulaste mi código y te funcionó??
hice lo que me dijsite y cambie los mysql_fetch_assoc por mysql_fetch_Array... osea lo mismo ero con ese cambio.
__________________
Abre tu mente: Index no signigica index, significa índice
  #8 (permalink)  
Antiguo 10/12/2009, 08:26
 
Fecha de Ingreso: diciembre-2009
Mensajes: 612
Antigüedad: 14 años, 11 meses
Puntos: 16
Respuesta: Necesito individualizar los artículos!!!

Una pregunta, usas Internet Explorer o Firefox?
  #9 (permalink)  
Antiguo 10/12/2009, 08:35
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Necesito individualizar los artículos!!!

Firefox....
pero en q influye eso en php?

funciona igual de mal en ambos xdd
__________________
Abre tu mente: Index no signigica index, significa índice
  #10 (permalink)  
Antiguo 10/12/2009, 08:42
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 8 meses
Puntos: 25
Respuesta: Necesito individualizar los artículos!!!

apoco tienes tu consulta asi?

$Listar = mysql_query("SELECT * FROM inventario); le falta una comilla
__________________
Hospedaje Web al mejor costo!
  #11 (permalink)  
Antiguo 10/12/2009, 08:45
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Necesito individualizar los artículos!!!

la pase mal espera que corrijo xd

pero no es eso jeje
es que cambie el nombre de la tabla y me comi la comilla acá xd
__________________
Abre tu mente: Index no signigica index, significa índice
  #12 (permalink)  
Antiguo 10/12/2009, 08:48
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 8 meses
Puntos: 25
Respuesta: Necesito individualizar los artículos!!!

<?
$Listar = mysql_query("SELECT * FROM inventario");
while ($Article=mysql_fetch_array($Listar ))
{
?>
<form action="" method="post" name="Comercio">
<? echo $Article['nombre']."<br/>"; ?>
<? echo $Article['precio']."pesos"; ?>
<input type="text" value="<? echo $Article['precio']; ?>" name="precio1" style="display:none" />
<input type="text" value="<? echo $Article['nombre']; ?>" name="user" style="display:none" />
<input name="Ejecutar" type="submit" value="Comprar artículo"/>
</form>
<?
}

if(isset($_POST['Ejecutar']))
{
$Usuario_data = mysql_query("SELECT * FROM usuarios WHERE usuario='".$_POST['user']."'");
$Usuario_info = mysql_fetch_array($Usuario_data);

$precio=$_POST['precio'];
// Defino que el nuevo valor del saldo es el valor actual menos el costo del artículo
$Costo = $Usuario_info['saldo']-$precio;

// Finalmente actualizo el saldo del usuario
mysql_query("UPDATE usuarios SET saldo='".$Costo."' WHERE usuario='".$_POST['user']."'");
}


?>
__________________
Hospedaje Web al mejor costo!

Última edición por urgido; 10/12/2009 a las 08:55
  #13 (permalink)  
Antiguo 10/12/2009, 08:53
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Necesito individualizar los artículos!!!

no lo aseguré por cuestió nde practiicidad pero es lo mismo...

En ningun la do se creo $_POST['user'] eso lo saco de otra consulta pero no quería complicar el código de muestra.
__________________
Abre tu mente: Index no signigica index, significa índice
  #14 (permalink)  
Antiguo 10/12/2009, 08:55
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 8 meses
Puntos: 25
Respuesta: Necesito individualizar los artículos!!!

pfff, que forma de cuestionar hehehe, bueno saludos y suerte =)
__________________
Hospedaje Web al mejor costo!
  #15 (permalink)  
Antiguo 10/12/2009, 08:58
 
Fecha de Ingreso: diciembre-2009
Mensajes: 612
Antigüedad: 14 años, 11 meses
Puntos: 16
Respuesta: Necesito individualizar los artículos!!!

Creo que me estaba confundiendo. No será porque al darle al 'ejecutar', el programa no sabe que le estás mandando? Todos tienen el mismo valor...

Podrias probar a hacer un valor distinto para cada uno :S.

De forma
<?php x=0;
$Listar = mysql_query("SELECT * FROM inventario");
while ($Article=mysql_fetch_assoc($Listar ))
{
?>
<form action="" method="post" name="Comercio">
echo $Article[nombre]."<br/>";
echo $Article[precio]."pesos";
<input name="<?php echo $x; ?>" type="submit" value="Comprar artículo"/>
</form>

<?php $x++; ?>
}

Luego en comprobar si ha comprado alguno, le haces un for

<?php
for($y=0;$y<$count($x);$y++)
{
if(isset($_POST[$x])
(y lo que siga)
}
?>
Lo de si es firefox, o internet explorer, porque por lo que lei el otro dia no leen igual la funcion isset ;)

Por otro lado, ahí no veo que pongas como le mete el precio a la BBDD o a alguna variable.

Pero para saber el valor de la variable(lo que pasa que no he trabajado nunca con arrays compuestos)

sería $precio[$x]

Última edición por millan2525; 10/12/2009 a las 09:04 Razón: Me dejé una cosa
  #16 (permalink)  
Antiguo 10/12/2009, 09:02
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Necesito individualizar los artículos!!!

Esque por eso mismo.

al verificar que se envio la variable ejecutar se confirma el envio de un formulario, se toman los valores de la consulta, pero nose como hacer que cada formulario confirme un articulo diferente.

PD: nunca me funciono poner variables dentro del $_POST con o sin comillas nunca me devolvio resultado...


PD2: EL PRECIO DE CADA ARTICULO ESTA EN LA VARIABLE $Article[precio]
__________________
Abre tu mente: Index no signigica index, significa índice

Última edición por iLeaz; 10/12/2009 a las 09:10
  #17 (permalink)  
Antiguo 10/12/2009, 09:36
 
Fecha de Ingreso: agosto-2009
Ubicación: Al fondo a la derecha
Mensajes: 308
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Necesito individualizar los artículos!!!

Bueno quiero anunciar que era una sencilles xdd

gracias a jackson666

me hizo recordar que tenía que pasar a inputs las variables de cada atributo xd

sin for ni foreach xd


muchas graciasa todos los que se tomaron la molestia de ayudarme !
__________________
Abre tu mente: Index no signigica index, significa índice

Última edición por iLeaz; 10/12/2009 a las 09:41
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 22:30.