Foros del Web » Programando para Internet » Javascript »

cargando datos de BD Mysql a Formulario

Estas en el tema de cargando datos de BD Mysql a Formulario en el foro de Javascript en Foros del Web. Hola a todos y buen dia , alguien quien me guíe porfavor, tengo un formulario donde el usuario inserta datos a una bd en mysql. ...
  #1 (permalink)  
Antiguo 17/04/2013, 11:38
 
Fecha de Ingreso: diciembre-2012
Mensajes: 249
Antigüedad: 11 años, 4 meses
Puntos: 2
cargando datos de BD Mysql a Formulario

Hola a todos y buen dia , alguien quien me guíe porfavor, tengo un formulario donde el usuario inserta datos a una bd en mysql. pero tengo problemas es cuando tengo que mostrar esos datos de la bd al formulario para luego poder modificarlo, la idea es que luego de realizar la consulta, me traiga todos los datos en los textbox del mismo formulario,

la consulta ya la tengo, pero no se como mediante javascript puedo agegarle a cada textbbox el campo que le corresponde ejemplo;

index.html tiene formulario frmsoporte
Código HTML:
Ver original
  1. <label for="idClientes">Codigo Cliente: </label>
  2. <input name="idClientes" type="text" id="idClientes" /> </br>

en el mismo index.html
se me habilita un div que tiene un mini formulario buscar (frmbusqueda)
Código HTML:
Ver original
  1. <label for="idClientes">Codigo Cliente: </label>
  2. <input name="idClientes" type="text" id="idClientes" /> </br>


en javascript tengo algo como

Código Javascript:
Ver original
  1. function consultar(){
  2.  accion = document.getElementsById('accion').value; //donde accion es consultar
  3.   idClientes1=document.frmsoporte.idClientes.value;
  4.  idClientes2=document.frmconsulta.idClientes.value;
  5.  ajax=Ajax();
  6.  url="funciones.php?accion="+accion+"&idClientes2="+idClientes;
  7. ajax.open("GET", url, true);
  8.  ajax.onreadystatechange=function() {
  9.   if (ajax.readyState==4 && ajax.status == 200) {
  10.       idClientes1.innerHTML= ajax.responseText;
  11.  
  12.   }
  13.  }
  14.  ajax.send(null);
  15. }


y la consulta es algo como:

Código HTML:
Ver original
  1. function consultar($idClientes,$fecha,$estado){
  2. $sql = new Mysql;
  3. $sql->connect();
  4.     if($idClientes !=""){ //busca por id cliente
  5.         $where .=" idClientes=".$idClientes." AND ";      
  6.     }
  7.  $query = 'SELECT * FROM tabla'.$where;  
  8.     echo query;
  9. $result = $sql->query($query);
  10. $sql->close();


ademas tengo otro archivo que es funciones.php

alli recibo todas las variables por el metodo get y hago un switch y por medio de este switch llamo la funcion de consultar.

le agradeceria a quien me guiara un poco porque no se cmo asignarle a cada campo del frmsoporte los datos que le corresponden consultados de la BD, hay alguna forma evitando ir imprimiendo el formulario tal como:


Código PHP:
Ver original
  1. while($row = mysqli_fetch_array($lista)){    
  2.   echo '<textarea><?=$row['columna'] ?></textarea>';
  3. }

y usando el formulario que tengo hecho.

Espero haberme hecho entender, y muchas gracias a quien me pueda colaborar pq ya me estrese

Última edición por summerblack; 17/04/2013 a las 11:48
  #2 (permalink)  
Antiguo 17/04/2013, 12:59
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: cargando datos de BD Mysql a Formulario

tu problema es muy común, y la solución lógica es: enviar los datos de forma estructurada.

Por ejemplo en PHP puedes devolver un JSON con todos los valores (puedes hacer uso de array y json_encode )

luego en AJAX, el responseText le aplicas un eval para reconvertir el JSON (aunque existen FW que además validan que el JSON sea Válido), así puedes recorrerlo con un for en JS y aplicar el valor a cada input correspondiente
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 17/04/2013, 13:44
 
Fecha de Ingreso: diciembre-2012
Mensajes: 249
Antigüedad: 11 años, 4 meses
Puntos: 2
Respuesta: cargando datos de BD Mysql a Formulario

no se mucho de json y ps estaba intentando con xml pero no se si me estoy complicando la vida. Muchas gracias maycolalvarez

en xml tengo algo como..
Código XML:
Ver original
  1. case "buscar":
  2.         $buscarDatos=new Soporte;
  3.         $lista = $buscarDatos->consultar($idClientes,$fechaActual,$exitoso,$pendiente);    
  4.         $registro = mysqli_fetch_row($lista);
  5.         $xml="<?xml version='1.0' encoding='ISO-8859-1'?>";
  6.         $xml.="<datos>";
  7.         $xml.="<idClientes><![CDATA[$registro[0]]]></idClientes>";
  8.         //$xml.="<Responsable><![CDATA[$registro[1]]]></Responsable>";
  9.         $xml.="</datos>";
  10.         header("Content-type: text/xml");
  11.         echo $xml;


y en el ajax tengo algo como

Código Javascript:
Ver original
  1. residClientes.value=respuesta.getElementsByTagName("idClientes")[0].childNodes[0].data;

pero no se si voy por buen camino o mejor empiezo desde ya aprender sobre json porque ya me estoy cansando de este errorsito!!!

This page contains the following errors:

error on line 5 at column 1: Extra content at the end of the document
Below is a rendering of the page up to the first error.
  #4 (permalink)  
Antiguo 17/04/2013, 13:56
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: cargando datos de BD Mysql a Formulario

¡¡¡pero si XML te sirve hombre!!! y mejor, no tienes que parsear porque puedes usar responseXML
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...

Etiquetas: ajax, bd, cargando, formulario, funcion, html, input, mysql, php, select
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:25.