Foros del Web » Programando para Internet » Javascript »

Formulario de productos ajax

Estas en el tema de Formulario de productos ajax en el foro de Javascript en Foros del Web. Hola como les va !? Creo este nuevo tema con el proposito de una ayuda suyas... El fin : Un editor simple de productos para ...
  #1 (permalink)  
Antiguo 07/07/2012, 00:47
Avatar de Ex_shadow  
Fecha de Ingreso: febrero-2012
Ubicación: Calera Avellaneda, Buenos Aires, Argentina, Argentina
Mensajes: 95
Antigüedad: 12 años, 2 meses
Puntos: 4
Pregunta Formulario de productos ajax

Hola como les va !?

Creo este nuevo tema con el proposito de una ayuda suyas...

El fin : Un editor simple de productos para una pagina , Elije una seccion, mediante ajax envio el valor de la seccion php trabaja y recoge de la mysql todos los nombres de los productos de dicha seccion y los devuelve en un select... una vez elejido un producto en ese segundo select mediante el mismo metodo de ajax y php recogo un form con la informacion del producto para cambiar...

El Problema : Cuando selecciono la seccion el select de productos me aparece, pero cuando selecciono un producto me salta un error (en la consola de google chrome) no visible : "Uncaught SyntaxError: Unexpected token }"

Les dejo el codigo pero sinceramente no le veo el error



Código HTML:
Ver original
  1.     <!-- Script --->
  2.     <script type="application/javascript" src="javascript.js"></script>
  3. </head>
  4.  
  5.  
  6. <div id="Modificador">
  7.    
  8.     <!-- Seccion --->
  9.     <div id="Seccion">
  10.     <select size="6" onchange="Seccion(this.value);">
  11.         <option value="Libreria_Artesanal">Libreria Artesanal</option>
  12.         <option value="Libreria_Artistica">Libreria Artistica</option>
  13.         <option value="Libreria_Escolar">Libreria Escolar</option>
  14.         <option value="Juguetes">Juguetes</option>
  15.         <option value="Informatica">Informatica</option>
  16.         <option value="Regalos">Bolsos y mochilas</option>
  17.     </select>
  18.     </div>
  19.    
  20.     <!-- Productos --->
  21.     <div id="Productos"></div>
  22.    
  23.     <!-- Modificador --->
  24.     <div id="Modificar"></div>
  25.  
  26. </div>


Código Javascript:
Ver original
  1. // Selector de Seccion
  2. function Seccion(Valor){
  3.    
  4.     // ---  Variable
  5.     var Productos = document.getElementById('Productos');
  6.    
  7.     // --- ajax
  8.     var ajax = new XMLHttpRequest();
  9.    
  10.     // --- Cabezeras
  11.     ajax.open("POST","Producto.php",true);
  12.     ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  13.        
  14.     // --- Estados
  15.     ajax.onreadystatechange = function(){
  16.        
  17.         //--- Cargando
  18.         if(ajax.readyState==1 || ajax.readyState==2 || ajax.readyState==3){
  19.             Productos.innerHTML='<img src="Imagenes/Preload.gif" width="25px" height="25px" />';
  20.         }
  21.        
  22.         //--- Finalizado
  23.         if(ajax.readyState==4 && ajax.status==200){
  24.             Productos.innerHTML=ajax.responseText;
  25.         }
  26.        
  27.         //--- Error
  28.         if(ajax.readyState==4 && ajax.status==404){
  29.             Productos.innerHTML='<img src="Imagenes/Error.png" width="25px" height="25px" /> A surgido un error...';
  30.         }
  31.     }
  32.    
  33.     // --- Envio
  34.     ajax.send('Seccion='+Valor);
  35. }
  36.  
  37.  
  38. // Selector de Seccion
  39. function Productos(Seccion,Valor){
  40.  
  41.     // Variables
  42.     var Contenedor = document.getElementById('Modificar');
  43.     var Parametro = 'Seccion='+Seccion+'&Valor='+Valor;
  44.    
  45.     // Ajax
  46.     ajax = new XMLHttpRequest();
  47.    
  48.     // Abriendo
  49.     ajax.open('POST','Produco.php',true);
  50.     ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  51.    
  52.     // Estados
  53.     ajax.onreadystatechange = function(){
  54.        
  55.         // Cargando...
  56.         if(ajax.readyState==1 || ajax.readyState==2 || ajax.readyState==3){
  57.             Contenedor.innerHTML='Cargando...';
  58.         }
  59.        
  60.         // Finalizado
  61.         if(ajax.readyState==4 && ajax.status==200){
  62.             Contenedor.innerHTML=ajax.responseText;
  63.         }
  64.        
  65.         // Error
  66.         if(ajax.readyState==4 && ajax.status==404){
  67.             Contenedor.innerHTML='Error en pagina';
  68.         }
  69.        
  70.     }
  71.    
  72.     // Envio
  73.     ajax.send(Parametro);
  74. }


Producto.php
Código PHP:
Ver original
  1. <?
  2.  
  3. # --- Conexion
  4. $Conexion = mysql_connect('localhost','root','pass');
  5. mysql_select_db('bd',$Conexion);
  6.  
  7. # --- Variable
  8. $Seccion = $_POST['Seccion'];
  9.  
  10. # --- Consulta
  11. $Consulta = mysql_query("SELECT * FROM ".$Seccion);
  12.  
  13. # --- Select
  14. echo '<select onChange="Productos("'.$Seccion.'",this.value);" id="Producto">';
  15.  
  16. # --- Bucle while
  17. while($Campo = mysql_fetch_assoc($Consulta)){
  18.     echo'
  19.    
  20.         <option value="'.$Campo['id'].'">'.$Campo['Nombre'].'</option>
  21.    
  22.     ';
  23. }
  24.  
  25. # --- Select
  26. echo '</select>';
  27.  
  28. # --- Cerrando
  29. mysql_close($Conexion);
  30.  
  31. ?>


Produco.php
Código PHP:
Ver original
  1. <?
  2.  
  3.     echo 'Hola'
  4.  
  5.  
  6. # --- A este sinceramente le deje ese echo solo para ver si el error era en el php pero no es asi... NI EL ECHO ME DEVUELVE!!!!
  7.  
  8. ?>
  #2 (permalink)  
Antiguo 08/07/2012, 09:41
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Formulario de productos ajax

Revisa bien lo que te indica la consola, como la línea exacta del error, con lo que proporcionas es difícil ayudarte, además tu implementación de AJAX no es crossbrowser
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...

Etiquetas: ajax, formulario, html, mysql, php
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 15:04.