Foros del Web » Programando para Internet » Javascript » Frameworks JS »

formulario: levantar pedido online

Estas en el tema de formulario: levantar pedido online en el foro de Frameworks JS en Foros del Web. hola... kisiera ayuda para hacer esto (esta imagen es una aplicacion en un soft local de esta empresa y tengo que hacer que funsione via ...
  #1 (permalink)  
Antiguo 11/08/2008, 10:31
 
Fecha de Ingreso: agosto-2008
Mensajes: 272
Antigüedad: 16 años, 4 meses
Puntos: 4
formulario: levantar pedido online

hola... kisiera ayuda para hacer esto (esta imagen es una aplicacion en un soft local de esta empresa y tengo que hacer que funsione via web)

es un sitema de pedido por internet... lo k me interesa es la parte de abajo
en "Lineas De Pedido" k al teclear el producto me arroje los demas datos... igual puedo con eso... lo k no se es esto: el "precio" y "cantidad" yo los tengo que poner para luego estos 2 se multipliken y me arrijen el "importe" ok? luego al darle agregar linea estos datos se escriban a la base de datos, agrego que estoy usando html en el formulario, un php para las relaciones, y un script en ajax para que no recargue la web... dificil verdad? estoy pensando en hacer todo desde 0.. pero da pereza.. si alguien me tira un cable... le estare agradecido...

Última edición por art33; 11/08/2008 a las 10:32 Razón: colgue otra imagen k no era...
  #2 (permalink)  
Antiguo 11/08/2008, 10:51
Avatar de Mort20  
Fecha de Ingreso: junio-2008
Ubicación: Roca Casterly
Mensajes: 141
Antigüedad: 16 años, 6 meses
Puntos: 2
Respuesta: formulario: levantar pedido online

Entiendo que lo que quieres es hacer operaciones con esas líneas en tiempo de usuario, antes de que lo envíe, ¿no? Si es así te digo que en PHP eso no es posible. Es un lenguaje que sólo ejecuta y visualiza el resultado del script PHP una vez por solicitud. Para hacer eso deberías mezclar otros lenguajes, como por ejemplo Javascript. Podrías hacer en JS que una vez perdido el foco del campo en cuestión, se ejecute una función, compruebe si ese campo tiene algún valor y si es así calculas los otros campos y les pones el resultado. El código exacto no te lo sabría decir pues aunque sé como funciona JS apenas lo uso.

Y si lo que quieres es calcular una vez enviado, entonces no tiene perdida, en el script al que dirige el "submit" no tienes mas que recoger los parámetros por POST y tratarlos (GET lo descartaría porque veo que hay muchos cambios y te verías limitado por la capacidad de caracteres imprimibles en las direcciones URL de los navegadores).
__________________
Un Lannister siempre cumple sus promesas
  #3 (permalink)  
Antiguo 11/08/2008, 10:55
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: formulario: levantar pedido online

Hola art33,

Eso lo puedes hacer con AJAX, para traer los datos sin cambiar la pagina, y puedes usar Javascript para ir agregando las lineas.

Saludos.
  #4 (permalink)  
Antiguo 11/08/2008, 10:57
 
Fecha de Ingreso: agosto-2008
Mensajes: 272
Antigüedad: 16 años, 4 meses
Puntos: 4
Respuesta: formulario: levantar pedido online

entiendo... Mort20 por eso digo k estoy usando ajax.... si se puede... la parte de arriba lo eh conseguido... pero lo importante es levantar el pedido.. y me estoy liando... bastante hice para llevar una semana con ajax combinados con php y sql.. gracias!! ojala alguien tenga mas ideas...

Edito: GatorV ya se la teoria, me falta aplicarlo.. pero gracias...
  #5 (permalink)  
Antiguo 11/08/2008, 12:25
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: formulario: levantar pedido online

Hola art33,

Si ya tienes los datos desde AJAX lo ideal es que vayas separando por capas tu diseño, aun en Javascript, es siempre importante programar en una estructura de capas para que puedas hacer operaciones con tu modelo.

En javascript esto es sencillo, el modelo guarda los datos nativamente (un Hash, un arreglo, un objeto etc), luego otra función se encarga de transformar estos datos en una tabla (esto ya es la capa visual), con esto puedes hacer operaciones en tu modelo, y solo refrescar lo que es la "vista".

Saludos.
  #6 (permalink)  
Antiguo 11/08/2008, 12:46
agd
 
Fecha de Ingreso: mayo-2008
Mensajes: 98
Antigüedad: 16 años, 7 meses
Puntos: 2
Respuesta: formulario: levantar pedido online

creo que esto se tiene que transladar a la seccion de ajax :P
__________________
http://clanofhaunted.com
  #7 (permalink)  
Antiguo 11/08/2008, 15:04
 
Fecha de Ingreso: agosto-2008
Mensajes: 272
Antigüedad: 16 años, 4 meses
Puntos: 4
Respuesta: formulario: levantar pedido online

de nuevo GatorV gracias en teoria, ya se... pero un ejemplo ayudaria... esta todo listo falta que funcione, no se si se da a entender...
  #8 (permalink)  
Antiguo 11/08/2008, 15:32
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: formulario: levantar pedido online

Mmm lo que pasa es para un ejemplo es muy grande, pero por ejemplo, algo basico, traer un texto y guardarlo en el "backend" (ojo voy a usar prototype):
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
	<head>
		<title>Ejemplo</title>
		<script type="text/javascript" src="prototype.js"></script>
	</head>
	<body>
<script type="text/javascript">
var TextoPersistente = Class.create({
	initialize: function(txt) {
		this.texto = txt;
	},
	getTexto: function() {
		return this.texto;
	},
	setTexto: function( txt ) {
		this.texto = txt;
	}
});

var Textos;

function modificaTexto() {
	Textos.setTexto("Pedro");
	$('texto_pers').innerHTML = Textos.getTexto();
}

Event.observe(window, 'load', function() {
	Textos = new TextoPersistente('Juan');
	$('texto_pers').innerHTML = Textos.getTexto();
	$('modbtn').disabled = false;
	$('verbtn').disabled = false;
});
</script>

Aqui vemos que tiene Texto: <span id="texto_pers"></span>, ahora hay que modificar el texto de Juan, por Pedro:
<input id="modbtn" type="button" name="boton" value="Modificar" onclick="modificaTexto();" disabled="disabled" />
<input id="verbtn" type="button" name="boton" value="Ver Contenido de Texto" onclick="alert(Textos.getTexto());" disabled="disabled" />
	</body>
</html>
Como puedes ver estoy guardando en un atributo de la clase el verdadero valor, así puedo manipularlo, tu debes de hacer lo mismo, crear una clase mas grande que se llame Pedido donde guardes los atributos, luego un metodo draw() que solo se encargue de dibujar los datos de Pedido.

Saludos.

Tema trasladado a AJAX.
  #9 (permalink)  
Antiguo 11/08/2008, 15:48
 
Fecha de Ingreso: agosto-2008
Mensajes: 272
Antigüedad: 16 años, 4 meses
Puntos: 4
Respuesta: formulario: levantar pedido online

bueno no es exacto lo k kiero, tienes razon seria mucho codigo, pero me ah dado una idea gracias... enverdad esta dificil... es muy dinamico aun k no lo parezca... pero gracias.. chao
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 16:00.