Estoy intentando guardar los datos de un formulario común y corriente, solo que hay 2 datos que vienen de MySql usando Ajax.
formulario.php
Cita:
Al dar clic en "Llenar datos" se ejecuta la función codigoPostal() ubicada en: <input name="txtCodigoPostal" type="text" class="FormsInputs" id="txtCodigoPostal" size="5" />
<a href="javascript:codigoPostal();">Llenar datos</a></td>
</tr>
<tr>
<th colspan="2" valign="middle" bgcolor="#CCCCCC">COLONIA / DELEGACIÓN</th>
<td align="left" valign="middle"><div id="divColonias">
<select name="selColonia" class="FormsInputs" id="selColonia">
<option value="no-save">Escriba el Código postal</option>
</select>
<select name="selDelegacion" class="FormsInputs" id="selDelegacion">
<option value="-1" selected="selected">Escriba el Código postal</option>
</select>
</div></td>
<a href="javascript:codigoPostal();">Llenar datos</a></td>
</tr>
<tr>
<th colspan="2" valign="middle" bgcolor="#CCCCCC">COLONIA / DELEGACIÓN</th>
<td align="left" valign="middle"><div id="divColonias">
<select name="selColonia" class="FormsInputs" id="selColonia">
<option value="no-save">Escriba el Código postal</option>
</select>
<select name="selDelegacion" class="FormsInputs" id="selDelegacion">
<option value="-1" selected="selected">Escriba el Código postal</option>
</select>
</div></td>
GeneraColonias.js
Cita:
En formulario.php hay un div llamado "divColonias", al ejecutar la función, el contenido del mismo se sustituye por el contenido de:function objetoAjax(){
var xmlhttp=false;
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch (e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch (E){
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined'){
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function codigoPostal(){
divResultado = document.getElementById('divColonias');
txtCodigoPostal = document.getElementById('txtCodigoPostal').value; //region
//referencia el objeto ajax, damos el metodo del objeto y el archivo
ajax = objetoAjax();
ajax.open("POST", "GeneraColonias.php", true);
ajax.onreadystatechange = function(){
if (ajax.readyState==4){
divResultado.innerHTML = ajax.responseText
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviamos el valor correspondiente al archivo anteriormente referenciado
ajax.send("txtCodigoPostal="+txtCodigoPostal)
}
var xmlhttp=false;
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch (e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch (E){
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined'){
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function codigoPostal(){
divResultado = document.getElementById('divColonias');
txtCodigoPostal = document.getElementById('txtCodigoPostal').value; //region
//referencia el objeto ajax, damos el metodo del objeto y el archivo
ajax = objetoAjax();
ajax.open("POST", "GeneraColonias.php", true);
ajax.onreadystatechange = function(){
if (ajax.readyState==4){
divResultado.innerHTML = ajax.responseText
}
}
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviamos el valor correspondiente al archivo anteriormente referenciado
ajax.send("txtCodigoPostal="+txtCodigoPostal)
}
GeneraColonias.php
Código PHP:
<?php
include("../cf/Connections/cf_manual_cp.php");
$txtCodigoPostal=$_REQUEST['txtCodigoPostal'];
$sql = mysql_query("SELECT * FROM Asentamiento WHERE codigoPostal LIKE '$txtCodigoPostal%' order by asentamientoNombre",$cn);
$sql2 = mysql_query("SELECT * FROM Asentamiento WHERE codigoPostal LIKE '$txtCodigoPostal%' order by asentamientoNombre",$cn);
?>
<select name="selColonia" id="selColonia" class="FormsInputs">
<?php
while ($damefila=mysql_fetch_array($sql))
{
?>
<option value="<?php echo $damefila['id_asentamiento']; ?>"><?php echo htmlentities (trim($damefila['asentamientoTipo'])); ?> <?php echo htmlentities (trim($damefila['asentamientoNombre'])); ?> no guarda.</option>
<?php }?>
</select>
<select name="selDelegacion" id="selDelegacion" class="FormsInputs" >
<?php
while ($damefila=mysql_fetch_array($sql2))
{
?>
<option value="<?php echo $damefila['id_asentamiento']; ?>"><?php echo htmlentities (trim($damefila['AsentamientoDelegacion'])); ?></option>
<?php }?>
</select>
Gracias por su valiosa ayuda!