No ejecuta PHP en javascript
Hola tengo un problema, soy nuevo en esto de la programacion web...
tengo un archivo en PHP y tengo unos select's dependientes (Pais,Estado y Municipio) y utilizo un
archivo de javascript (.js) y en el onchange del select (PHP) mando llamar la funcion de cambiarestados (JS)
y ya estando en la funcion hago consultas en mysql con PHP para buscar los estados del paos seleccionado,
el problema es que no me pasa ningun valor a las variables de javascript ("")
con esto me deberia de pasar el nombre de los estados, pero me imprime la instruccion que puse entre parentesis
en lugar de ejecutar el codigo de PHP, aqui paso el codigo del archivo .js para que identifiquen el error o
como lo puedo solucionar...=)
function cambiarestados(formulario)
{
with (document.forms[formulario]) // Establecemos por defecto el nombre formulario pasado para toda la función.
{
var idpais = cmbpais[cmbpais.selectedIndex].value; // Valor seleccionado en el primer combo.
window.alert(idpais);
var n = cmbestados.length; // Numero de lÃneas del segundo combo.
cmbestados.disabled = false; // Activamos el segundo combo.
for (var i=0; i < n; ++i){
cmbestados.remove(i); // Eliminamos todas las lÃneas del segundo combo.
}
cmbestados[0] = new Option("Seleccione Estado", 'null'); // Creamos la primera lÃnea del segundo combo.
if (idpais != 0) // Si el valor del primer combo es distinto de 'null'.
{
// CODIGO PHP
$db =& JFactory::getDBO();
$query("SELECT * FROM #__directorio_estados ORDER BY estado");
$db->setQuery($query);
$result = $db->loadObjectList();
$num_rows = mysql_num_rows($result);
while ($row = @mysql_fetch_array($result)){
?>
if (idpais == '')//no compara bien {
cmbciudad.length=1;
$db =& JFactory::getDBO();
//$query2 = "SELECT * FROM #__directorio_estados WHERE idpais= ". $row['idpais'] . " ORDER BY estado";
$query2 = "SELECT * FROM #__directorio_estados WHERE idpais=156 ORDER BY estado";
$db->setQuery($query2);
$result2 = $db->loadObjectList();
while ($row2 = mysql_fetch_array($result2)){
?>
cmbestados[cmbestados.length] = new Option("",'');
?php
}//fin del while
?>
}// fin de if(estado=='')
}//fin del while
?>
cmbciudad.focus();
}//fin if (idpais != 0)
else // el valor del combo es null
{
cmbciudad.disabled=true;
cmbestado.focus();
}// fin de else
}//fin with (document.
return (true);
}//fin funcion
nose si la sintaxis de pasar de PHP a javascript este mal-....
si no me explique bien avisenme...espero alguna respuesta..hasta luego.
tengo un archivo en PHP y tengo unos select's dependientes (Pais,Estado y Municipio) y utilizo un
archivo de javascript (.js) y en el onchange del select (PHP) mando llamar la funcion de cambiarestados (JS)
y ya estando en la funcion hago consultas en mysql con PHP para buscar los estados del paos seleccionado,
el problema es que no me pasa ningun valor a las variables de javascript ("")
con esto me deberia de pasar el nombre de los estados, pero me imprime la instruccion que puse entre parentesis
en lugar de ejecutar el codigo de PHP, aqui paso el codigo del archivo .js para que identifiquen el error o
como lo puedo solucionar...=)
function cambiarestados(formulario)
{
with (document.forms[formulario]) // Establecemos por defecto el nombre formulario pasado para toda la función.
{
var idpais = cmbpais[cmbpais.selectedIndex].value; // Valor seleccionado en el primer combo.
window.alert(idpais);
var n = cmbestados.length; // Numero de lÃneas del segundo combo.
cmbestados.disabled = false; // Activamos el segundo combo.
for (var i=0; i < n; ++i){
cmbestados.remove(i); // Eliminamos todas las lÃneas del segundo combo.
}
cmbestados[0] = new Option("Seleccione Estado", 'null'); // Creamos la primera lÃnea del segundo combo.
if (idpais != 0) // Si el valor del primer combo es distinto de 'null'.
{
// CODIGO PHP
$db =& JFactory::getDBO();
$query("SELECT * FROM #__directorio_estados ORDER BY estado");
$db->setQuery($query);
$result = $db->loadObjectList();
$num_rows = mysql_num_rows($result);
while ($row = @mysql_fetch_array($result)){
?>
if (idpais == '')//no compara bien {
cmbciudad.length=1;
$db =& JFactory::getDBO();
//$query2 = "SELECT * FROM #__directorio_estados WHERE idpais= ". $row['idpais'] . " ORDER BY estado";
$query2 = "SELECT * FROM #__directorio_estados WHERE idpais=156 ORDER BY estado";
$db->setQuery($query2);
$result2 = $db->loadObjectList();
while ($row2 = mysql_fetch_array($result2)){
?>
cmbestados[cmbestados.length] = new Option("",'');
?php
}//fin del while
?>
}// fin de if(estado=='')
}//fin del while
?>
cmbciudad.focus();
}//fin if (idpais != 0)
else // el valor del combo es null
{
cmbciudad.disabled=true;
cmbestado.focus();
}// fin de else
}//fin with (document.
return (true);
}//fin funcion
nose si la sintaxis de pasar de PHP a javascript este mal-....
si no me explique bien avisenme...espero alguna respuesta..hasta luego.