Foros del Web » Programando para Internet » PHP »

ayudita con select que se llena de la base de datos

Estas en el tema de ayudita con select que se llena de la base de datos en el foro de PHP en Foros del Web. Hola amigos el dia de hoy vengo por aqui porque estoy teniendo problemas con llenar un select, resulta que tengo un select que se llena ...
  #1 (permalink)  
Antiguo 09/09/2013, 08:22
 
Fecha de Ingreso: diciembre-2012
Mensajes: 249
Antigüedad: 11 años, 4 meses
Puntos: 2
ayudita con select que se llena de la base de datos

Hola amigos el dia de hoy vengo por aqui porque estoy teniendo problemas con llenar un select, resulta que tengo un select que se llena mediante la base de

datos, pero quiero que el primer campo del select sea el que esta actual en la tabla de clientes, es decir que mediante el select se pueda editar en caso de

que sea necesario cambiarle a un cliente especifico la empresa a la que pertenece

tabla opciones mysql
cod Nombre
1___empresa1
2___empresa2
3___empresa3
4___empresa4

ahora tengo la tabla clientes
cod nombres id_opciones
10__jorge____1
20__mario____2
30__carlos____2

para imprimir los clientes
Código HTML:
Ver original
  1. echo '<table class="tablas" id="tblContactos">';
  2. echo '<tr>';
  3. echo '<td>DOCUMENTO</td>';
  4. echo '<td>NOMBRES</td>';
  5. echo '</tr>';
  6.  
  7. while ($fila = mysql_fetch_assoc($resultado))
  8.     {
  9.      echo '<tr>';
  10.      echo '<td>'.$fila['cod'].'</td>';
  11.      echo '<td contenteditable="true">'.$fila['nombres'].'</td>';
  12.  
  13.         $query = "SELECT Nombre
  14.                         FROM clientes,opciones
  15.                         WHERE cod='".$fila['cod']."'
  16.                         AND clientes.id_opciones=opciones.cod;";
  17.  
  18.         $row = mysql_fetch_assoc($sql->query($query));
  19.     echo '<td><select id="selector" onchange="llenar()"><option>'.$row['Nombre'].'</option></select></td>';
  20.     echo '</tr>';
  21.     }

este es mi codigo js

f
Código HTML:
Ver original
  1. unction llenar()
  2. {  
  3.     ajax= Ajax();
  4.     ajax.open("POST", "ejecuta.php", true);
  5.     ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  6.     ajax.onreadystatechange = function()
  7.     {  
  8.     if (ajax.readyState==4){
  9.         document.getElementById('selector').innerHTML = ajax.responseText;
  10.        
  11.             }
  12.     }
  13.    
  14.     ajax.send(null);   
  15. }



y esto va en el codigo de ejecuta.php

Código PHP:
Ver original
  1. $sql=new MySql;
  2.         $query= "SELECT * FROM opciones";
  3.         $resultado=$sql->query($query);
  4.         echo '<select name= "selector" id="selector">';
  5.         echo '<option value= ""></option>';
  6.         while ($fila=mysql_fetch_array($resultado))
  7.         {      
  8.             echo '<option value= "'.$fila["cod"].'">'.$fila["Nombre"].'</option>';
  9.         }  
  10.         echo '</select>';


el problema principal es que toca darle como 3 click para que me muestre las opciones, cuando selecciono una opcion esta desaparece y no se cual es la razon, gracias si alguien me puede ayudar.
  #2 (permalink)  
Antiguo 09/09/2013, 08:25
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: ayudita con select que se llena de la base de datos

primero corrija el error al implementar AJAX, debe evaluar (ajax.status==200) junto con (ajax.readyState==4) para descartar eso

(ajax.readyState==4) && (ajax.status==200)

consulte un manual de AJAX
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 09/09/2013, 08:34
 
Fecha de Ingreso: diciembre-2012
Mensajes: 249
Antigüedad: 11 años, 4 meses
Puntos: 2
Respuesta: ayudita con select que se llena de la base de datos

Error corregido pero es raro que pueda seleccionar pero que al dar click me borre la opcion como si se reiniciara la funcion.. me quivoque al escribir unction llenar(), pero en mi codigo esta bien: function llenar()
  #4 (permalink)  
Antiguo 09/09/2013, 08:45
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: ayudita con select que se llena de la base de datos

no, no es raro, porque en ningún momento cuando construye dicho select, establece al option indicado como selected y para ello, como mínimo debe de pasar al AJAX el valor por defecto si no me equivoco.

consulte la estructura de un <select> en HTML y el atributo selected de los <option>
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #5 (permalink)  
Antiguo 09/09/2013, 08:53
 
Fecha de Ingreso: diciembre-2012
Mensajes: 249
Antigüedad: 11 años, 4 meses
Puntos: 2
Respuesta: ayudita con select que se llena de la base de datos

aaaaah muchisimas gracias voy a probar

Etiquetas: html, mysql, select, sql, tabla
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:11.