Foros del Web » Programando para Internet » PHP »

operadores aritmeticos

Estas en el tema de operadores aritmeticos en el foro de PHP en Foros del Web. tengo una un registro de una tabla de mi base de datos en la que quiero que el usuario pueda incremenar y dismunir la cantidad ...
  #1 (permalink)  
Antiguo 18/11/2004, 13:01
 
Fecha de Ingreso: noviembre-2004
Mensajes: 15
Antigüedad: 19 años, 5 meses
Puntos: 0
operadores aritmeticos

tengo una un registro de una tabla de mi base de datos en la que quiero que el usuario pueda incremenar y dismunir la cantidad ya existente en esa tabla

quiero que el usuario selecione el registro y me mustre la cantidad existente y luego el usuario sume o reste la cantidad que quiera y se vuelva a almacenar en mi base de datoss

gracias por su ayuda...

saludos o toda la flota...
  #2 (permalink)  
Antiguo 18/11/2004, 14:49
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Deberías indicar que BD estás usando (Mysql?) ...

Y de ahí explica si conoces ya como hacer tu listado de registros (SELECT) o buscar ese registro en concreto (un SELECT pero condiconal con un WHERE ...) y si conoces más SQL sobre UPDATE (actualizar) .. Para que no te expliquen lo que tal vez ya conoces .. Si tienes código ya hecho sería idel que lo pusieras.

Un saludo,
  #3 (permalink)  
Antiguo 18/11/2004, 20:01
 
Fecha de Ingreso: noviembre-2004
Mensajes: 15
Antigüedad: 19 años, 5 meses
Puntos: 0
confirmacion para manejo de operadores aritmeticos

ok si mi base de datos es mysql...

y acontinuacion estees el codigo que utilizo esta algo feo y gacho pero es lo unico que puedo hace...

<?
//Conexion con la base
mysql_connect("localhost","","");
echo '<FORM METHOD="POST" ACTION="modificar_cantidad_producto1.php">';
?>

</select>
<table align="center" width="500" cellspacing="10" cellpadding="2" border="0">
<tr>
<td align="left"><FONT COLOR="ffffff">Nombre y existencia del producto:</FONT></td>
<td>

<?
//Creamos la sentencia SQL y la ejecutamos
$sSQL="Select nombre_producto From inventario Order By nombre_producto";
$result=mysql_db_query("lavanderia",$sSQL);
echo '<select name="nombre_producto">';

//Generamos el menu desplegable
while ($row=mysql_fetch_array($result))
{echo '<option>'.$row["nombre_producto"];}
?>

</td>
</tr>
<tr>
<td align="left"><FONT COLOR="ffffff">Cantidad del producto:</FONT></td>
<td><input type="Text" name="cantidad" size="20" maxlength="50" ></td>
</tr>
</table>
<INPUT TYPE="button" value="INCREMENTAR" onClick="validar2(this.form)" style="width:135px;">
<INPUT TYPE="button" value="DISMINUIR" onClick="validar2(this.form)" style="width:135px;">

</FORM>
</div>

este archivo se llama modificar_cantidad_producto.php

y este otro que acontinuacion muestro se llama modificar_cantidad_producto1.php

<?
//Conexion con la base
mysql_connect("localhost","","");

//Creamos la sentencia SQL y la ejecutamos
$sSQL="Update inventario Set cantidad='$cantidad' Where nombre_producto='$nombre_producto'";
mysql_db_query("lavanderia",$sSQL);
?>

esperoque lo puedas implementar y puedas ayudarme..

repito lo que quiero es seleccionar un registro de mi tabla llamada inventario de my base de datos en mysql llamada lavanderia y visualizar la cantidad que tenga el producto luego introducir la cantidad en un cuadro de texto y al darle el boton de incrementar le sume a la cantidad ya existente o al reves que le de el boton eliminar y le descuente...

gracias por su comperacion...


saludos a todos
  #4 (permalink)  
Antiguo 18/11/2004, 20:31
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bueno .. en principio .. si lo vas hacer así en PHP .. Primero tendras que seleccionar el producto para que puedas consultar por su cantidad bajo una consulta SQL condicional para ese registro (como haces para tu UPDATE pero un SELECT). Esto va a ocasionar una recarga de página .. tenlo presente.

De esta forma .. verificas en ese instante el valor actual de ese item de tu BD.

Podrìa ser algo tipo:

Código PHP:
// Evento de javascript .. si cambia un valor .. se hace un "submit" del formulario automàtico ..
// El action del formulario debe apuntar a este mismo script 
echo "<select name=\"nombre_producto\" onChange=\"this.form.submit()\">";

//Generamos el menu desplegable
while ($row=mysql_fetch_array($result)){
  // predefinir el estado inicial de tu lista (opcion seleccionada) al recargar la página
  if ($_POST['nombre_producto'] == $row['nombre_producto']){
     echo "<option value=\".$row["nombre_producto"].\" selected>".$row["nombre_producto"]."</option>";
  } else {
     echo "<option value=\".$row["nombre_producto"].\">".$row["nombre_producto"]."</option>";
  }
}
// hay que respetar la sintax (x)HTML .. cierra todo tag abierto y recuerda que los option tienen "value" y su tag de cierre .. usalos. Respeta las comillas dobles donde tengan que estar.
echo "</select>";

if (!empty($_POST['nombre_producto'])){
// consulta SQL para obtener esa cantidad de ese producto
$sql="SELECT cantidad FROM inventario WHERE nombre_producto='".$_POST['nombre_producto']."'";
$resultado=mysql_query($sql) or die (mysql_error());
   // comprobar si existe la cantidad para ese producto ...
   if (mysql_num_rows($resultado) == 1){
     // acceder directamente al resultado .. se espera un sòlo registro 
      $cantidad=mysql_result($resultado,0,"cantidad");
   } else {
       $cantidad ="seleccione un item";
   }
}
?>
<input type="Text" name="cantidad" size="20" maxlength="50" value="<? echo $cantidad ?>">
A todo esto .. tus botones de "aumentar y disminuir" .. ademàs de lo que puedan hacer a nivel de javascript (tomar ese "input" y modificar su valor si así tenías pensado hacerlo .. ) tendrán que hacer el "submit" a su vez del formulario o meter un botón de "submit" ademàs de lo que puedan hacer tus botones.

Pero .. En realidad lo que tendrías que hacer es tan sólo presentar ese valor de "cantidad" NO editables (no bajo el input .. ) a no ser que ese valor pueda ser modificado con cualquier otro valor (no +1 ó -1) .. si sólo se va a incrementar o decrementar .. hazlo en PHP mejor ese cálculo.

Otras técnicas que podrías usar:

* Cargar en Arrays de javascript todos los valores de esos registros que presentas (productos y sus stocks) para .. vía javascrip .. al cambiar un valor de tu <select> en el "input" que indica el stock se muestre ese valor para ser editado.

* Remote scripting (usa el buscador del foro o busca en google .. sale variada informaciòn al respecto) .. De esta forma no hay una recarga de página "aparente" y digamos que se "trae" el resultado de tu consulta SQL al campo en cuestión de tu formulario.

Un saludo,

Última edición por Cluster; 18/11/2004 a las 20:33
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 20:20.