Latest web development tutorials

Base de datos AJAX

AJAX se puede utilizar para comunicarse con la base de datos de forma dinámica.


instancia de base de AJAX

El siguiente ejemplo demostrará cómo una página web a través de AJAX para leer la información de la base de datos: Por favor, seleccione un cliente en la lista desplegable siguiente:

ejemplo


Customer info will be listed here...

Trate »


Ejemplos explican - showCustomer función ()

Cuando un usuario en la lista desplegable de arriba, seleccione un cliente, se ejecuta llama "showCustomer) (" función. Esta función por el evento "onchange" se dispara:

function showCustomer(str)
{
var xmlhttp;
if (str=="")
{
document.getElementById("txtHint").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getcustomer.html?q="+str,true);
xmlhttp.send();
}

showCustomer función () realiza las siguientes tareas:

  • Compruebe que ha seleccionado un cliente
  • Crear objeto XMLHttpRequest
  • Crear función ejecutada cuando la respuesta del servidor está listo
  • Enviar la solicitud a un archivo en el servidor
  • Tenga en cuenta que hemos añadido un parámetro q (con el contenido del campo de entrada) a la URL

página del servidor AJAX

La página de servidor llamado por el código JavaScript de arriba es un archivo PHP llamado "getcustomer.php".

Escrito en los archivos del servidor PHP con facilidad, u otro lenguaje servidor. Véase el ejemplo correspondiente escrito en PHP .

"Getcustomer.php" código fuente responsable de la consulta de base de datos, a continuación, devuelve los resultados en forma de HTML:

<%
response.expires=-1
sql="SELECT * FROM CUSTOMERS WHERE CUSTOMERID="
sql=sql & "'" & request.querystring("q") & "'"

set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open(Server.Mappath("/db/northwind.mdb"))
set rs=Server.CreateObject("ADODB.recordset")
rs.Open sql,conn

response.write("<table>")
do until rs.EOF
for each x in rs.Fields
response.write("<tr><td><b>" & x.name & "</b></td>")
response.write("<td>" & x.value & "</td></tr>")
next
rs.MoveNext
loop
response.write("</table>")
%>