Ver Mensaje Individual
  #3 (permalink)  
Antiguo 23/04/2013, 01:56
Tetide
 
Fecha de Ingreso: octubre-2010
Ubicación: Costa Brava
Mensajes: 58
Antigüedad: 13 años, 6 meses
Puntos: 2
Respuesta: mandar resultado de consulta php a textarea con javascript

Hola David, gracias por responder!

Efectivamente el javascript me estaba apareciendo antes del html...

Perdona por la novatada pero no se por dónde ponerlo... me estoy liando.
He probado a mandarlo des de php, ponerlo dentro de una función javascript que llamo des de onload... pero no lo logro.

La cosa es que montado con el mismo php en el textarea sí funciona, pero se trata de un formulario que me tiene que servir para ver la información de la bd, modificarla si es necesario y volverla a enviar. Por eso estaba montando un php que hiciera la consulta y me lo escribiera en los sitios correspondientes y, en caso que no hubiera nada en la BD, que recogiera los datos introducidos por el método post, no se si me explico bien.

Te lo pongo por si me ves el fallo...

Código PHP:
if (Empty($_POST)) {
        
  include (
'connexio.php');
    
    
$sql_1 "Select platja_cala.pl_id, platja_cala.pl_nm as pl_nm, platja_cala.pl_nm2 as pl_nm2   from platja_cala where platja_cala.pl_id = '".$pl_id."'";
    
    
$sql_gran"Select platja_cala.pl_img1 as pl_img1, platja_cala.pl_img2 as pl_img2, platja_cala.pl_img3 as pl_img3, acces.ac_id, acces.ac_nm as ac_com, acces.ac_desc as ac_desc, acces_tipus.actp_id, acces_tipus.actp_desc as actp_desc, servei.sv_id, servei.sv_nm as sv_nm, sorra.sr_id, sorra.sr_desc as sr_desc, fons.fn_id, fons.fn_desc as fn_desc, entorn.en_id, entorn.en_desc as en_desc, dificultat.dif_id, dificultat.dif_tp as dif_tp, rel_pl_actp.id_rel, rel_pl_actp.pl_id, rel_pl_actp.actp_id, rel_pl_sv.id_rel, rel_pl_sv.pl_id, rel_pl_sv.sv_id 
    from platja_cala, acces, acces_tipus, servei, sorra, fons, entorn, dificultat, rel_pl_actp, rel_pl_sv 
    where platja_cala.fn_id = fons.fn_id and platja_cala.ac_id = acces.ac_id and platja_cala.sr_id = sorra.sr_id and platja_cala.en_id = entorn.en_id and acces.dif_id = dificultat.dif_id and platja_cala.pl_id = rel_pl_actp.pl_id and acces_tipus.actp_id = rel_pl_actp.actp_id and platja_cala.pl_id = rel_pl_sv.pl_id and servei.sv_id = rel_pl_sv.sv_id "
;
  
  
$query_petita pg_exec($dbconn,$sql_1) or die (odbc_errormsg());
  
  while (
$row pg_fetch_array($query_petita))        
                                        {
                                            echo 
"<script type='text/javascript'>
                                                function write(){
                                                document.forms.frmintro.pl_nm.value='"
.addslashes($row['pl_nm'])."';
                                                }</script>"
;
  }
  
  
  
$query_gran pg_exec($dbconn,$sql_gran) or die (odbc_errormsg());
  
  while (
$row pg_fetch_array($query_gran))        
                                        {
                                            echo 
"<script type='text/javascript'>
                                                document.getElementById('ac_com').value="
.addslashes($row['ac_com']).";
                                                document.getElementById('ac_desc').value="
.addslashes($row['ac_desc']).";
                                                //document.getElementById('actp_id').value="
.$row['actp_id'].";
                                                //document.getElementById('sv_id').value="
.$row['sv_nm'].";
                                                document.getElementById('sr').value="
.$row['sr_desc'].";
                                                document.getElementById('fn').value="
.$row['fn_desc'].";
                                                document.getElementById('en').value="
.$row['en_desc'].";
                                                document.getElementById('dif').value="
.$row['dif_tp'].";
                                                document.getElementById('img1').value="
.$row['pl_img1'].";    document.getElementById('img2').value=".$row['pl_img2'].";    document.getElementById('img3').value=".$row['pl_img3'].";    
                                                
                                            </script>"
;    
                                            
                                             
                                        };
                                
$dbconnpg_close();

}
else{
    
//aquí va el código de los $_POST 
mi textarea tal como está ahora:

Código HTML:
<div id="dades" style="position:relative;left:25%;">
	<form id="frmintro">
		<table id="part1" class="cont_frm1" >
			<div id="part1" class="cont_frm1" style="">
				<p><label><span class="forms">Nom:</span></label><textarea id="pl_nm" onload="javascript:write()" name="pl_nm" value="<?php echo (isset($_POST ['pl_nm']))?$_POST ['pl_nm']:'';?>">
						<?php
						
						?>
	</textarea></p> 
Y esto es la función que había preparado en javascript:

Código:
function init() {

	function write(){
				<?php
				if (Empty($_POST)) {
       
				include ('connexio.php');
		
				$sql_1 = "Select platja_cala.pl_id, platja_cala.pl_nm as pl_nm, platja_cala.pl_nm2 as pl_nm2   from platja_cala where platja_cala.pl_id = '".$pl_id."'";
				$query_petita = pg_exec($dbconn,$sql_1) or die (odbc_errormsg());
  
				while ($row = pg_fetch_array($query_petita))		
										{
											echo "									
												document.getElementById('pl_nm').value='".addslashes($row['pl_nm'])."';
												";
										}
				}
				
				?>
				};
	};

A ver si entre todo este jaleo consigo hacer algo, me llevo peleando con ello ya muuuuchos días

Muchas gracias por tu ayuda!