Primero quiero agracer a quienes me han ayudado como no tienen idea en este foro
cachusan, turfeano, thezzin y en especial a este último quien me dio toda la base, se que no me quedo a la primero pero pues desconozco el tema, pero gracias a ese código pude investigar como funciona el código y asi adaptarlo a mis necesidades y espero que al igual que a mi les ayude a muchos.
Francamente no se Ajax pero les daré una breve explicación en base a lo que aprendi y espero le sirva a quien no sabe del tema igual que yo, es muy importante seguir complementando la investigación para que lo adaptemos a nuestras necesidades (lean mucho esa es la clave).
Aqui inicia el primer archivo php, por ejemplo ponerle de nombre index.php
Código HTML:
Ver original<?php
//Aqui haces tu conexión
mysql_connect("localhost","usuario","contraseña");
mysql_select_db("nombre de la bd");
?>
<!DOCTYPE HTML>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> //Este es el código de Ajax (por lo que entendí es combinar el uso de java con php) aclaro no conozco mucho del tema pero quiero ayudar a otros que como yo desconocen el tema, este código me permite enviar variables a otro archivo php, la clave esta en la función que se llama getMarca y en el XMLHttpRequest.
<script type="text/javascript"> function getMarca(int){
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("divShow").innerHTML=xmlhttp.responseText;
}
}
//Aqui es donde debes colocar tu archivo php y se manda por el metodo get
xmlhttp.open("GET","onChange.php"+int,true);
xmlhttp.send();
}
<table width="800" align="center" color: #FFF; font-family: Verdana, Geneva, sans-serif; font-size: 13px;"> //Si recuerdas la function get marca se manda llamar aqui en el evento onChange, lo que esta entre paréntesis es otra de las claves, ?pc es el nombre de la variable, recomiendo cambiarla a tus necesidades y this.value es el valor de la lista desplegable que en mi caso tiene su origen en mi bd.
//Nota: También se pueden utilizar otros eventos como onClic en botones, etc.
<select onChange="getMarca('?pc=' + this.value);"> //Aqui lo que hice es mediante una consulta cargar unas categorías que en mi bd les puse el nombre de linea
<?php
//Esta es la consulta
$query=mysql_query("select distinct linea from catalogo order by linea asc");
//Este es un arreglo que me sirve para recuperar la información de mi bd
while ($fila=mysql_fetch_array($query)){
?>
//En mi caso mi consulta toma un solo campo por esa razón esta repetido, pero si piensas trabajar con más de un campo te recomiendo colocar en el primero el id, en el value.
<OPTION VALUE=<?php echo $fila['linea'].'>'.$fila['linea']?>
</OPTION> <?php }
?>
<div id="divShow" align="center"></div>