Rellenar TextArea desde una tabla segun lista

DiosUniverso

Vamos a ver, tengo una lista y varios text area. La lista la relleno con uno de los campos de la tabla. LO que quiero hacer es que cuando seleccione uno, los textarea muestren los datos de los otros campos. A lo maximo que he llegado es que muestren lo mismo que he seleccionado en la lista. El codigo que uso es este:

spoiler
Riu

#1 cuando selecciones un objeto de tu lista, haz una consulta del modo select * from tabla where columna='objeto seleccionadop'; y luego lo metes en un datarow en php no se como se llama, pero creo que tu si al menos eso parece ke estas usando para meter los datos de la consulta, pues lo dicho lo metes y luego vas cojiendo de cada columna(row) el dato que vayas a meter en el text area..

DiosUniverso

EL problemas es como meto el select dentro del javascript.

<SCRIPT language="javascript">
<!--
function cambia(val){

var dep = document.getElementById('departamento');  //el text area que quiero rellenar
alert(val); //compruebo que el valor seleccionado es corecto, y LO ES.

<?
$consulta = 'SELECT * FROM centros'; //aqui hago la consulta
$matriz_db = mysql_query($consulta, $conexion) or die(mysql_error());
while ($row = mysql_fetch_array($matriz_db))
	if ($row['centro'] ==  val) //Como "val" es JS el PHP no lo entiende, no hace bien el if. 
		$dep = $row['departamento'];
	
?> 
alert('<?php echo $dep;?>');
dep.value = '<?php echo $dep;?>';// y por lo tanto $dep no tiene nada.

} 
//-->
</script>
LOc0

Ahora mismo me tengo que pirar a comer. Luego si tengo un ratillo me paso, pero básicamente o te metes toda la información que necesitas dentro del código javascript o tiras de AJAX.

Salu2 ;)

Khanser

Si no te ves con ánimos de tirar de AJAX, usa javascript y con "onChange" te haces una función que redirija a la misma web pero pasandole cierto parámetro que cargue en los textarea mediante php y consultas a la base de datos lo que necesites :)

PD:

Debes tener claro que JS está incomunicado con PHP a no ser que hagas submit de algun formulario.

PHP es un lenguaje de scripting que se ejecuta en el servidor y JS es un lenguaje de scripting que se ejecuta en el navegador por lo que las variables o las pasas por POST o por GET o usas AJAX, aparte de eso te tienes k comer los mocos :)

PD2: Tambien puedes hacer lo que dice #4 y meterte todo en funciones JS que se ejecuten cuando se seleccione cierto elemento de esa lista XD pero esto puede recargar mucho la web... yo usaria AJAX :)

DiosUniverso
<SCRIPT language="javascript">
<!--
function cambia(val,i){
	var dep = document.getElementById('departamento'+i);
	var dir =document.getElementById('direccion'+i);
	var ciu =document.getElementById('ciudad'+i);
	var pais =document.getElementById('pais'+i);

if (val == ""){
dep.value = null;
dir.value = null;
ciu.value = null;
pais.value = null;
}

<?
$consulta = 'SELECT * FROM centros ';
$matriz_db = mysql_query($consulta, $conexion) or die(mysql_error());
while ($row = mysql_fetch_array($matriz_db)) {
?>

if (val == '<?php echo $row['centro'];?>'){
dep.value = '<?php echo $row['departamento'];?>';
dir.value = '<?php echo $row['direccion'];?>';
ciu.value = '<?php echo $row['ciudad'];?>';
pais.value = '<?php echo $row['pais'];?>';

}
<?
}
?> 


} 
-->
</script>

Usuarios habituales

  • DiosUniverso
  • Khanser
  • LOc0
  • Riu