Ver Mensaje Individual
  #3  
Antiguo 18-02-2018
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 545
Reputación: 17
jhonalone Va por buen camino
Muchas gracias, Dec por responder y...¡tan pronto! y...¡en domingo!

Nunca he usado Ajax. (Aunque he oído hablar mucho de él) A lo mejor es más sencillo de lo que me imagino. ¿Tengo entendido que hay que subir algunos scripts a la web? ¿o me confundo con otra cosa?

Bueno, que php se ejecuta en el servidor y JS en el lado del cliente, ya lo sé. Y "combinarlos" no es tarea fácil (y en algunas circunstancias, IMPOSIBLE)

No obstante, hay algunas combinaciones posibles, quizá no recomendables, pero posibles.

Te copio una función, que estoy usando y que funciona correctamente. Y que lo que pretendo hacer es prácticamente lo mismo. Es la función a la que me refería en mi hilo anterior en este foro. Quizá no sea muy elegante, pero funciona.

Código PHP:
<script> 

// creamos la matriz 
function HazArray() 

 datos = new Array ();  

<?php         
php 
  define 
('ARCHIVO_DATOS''fichero.txt'); 

  if (!
file_exists(ARCHIVO_DATOS)) // Aviso si no encuentra el fichero 
    
die ('<pre>no encuentro el fichero "'.ARCHIVO_DATOS.'".</pre>'); 
  
$fa2 file(ARCHIVO_DATOS); // leemos todo el fichero en un array php 
  
if ($fa2 === FALSE// Aviso si no recibió los datos del fichero 
    
die ('<pre>No pude leer el fichero "'.ARCHIVO_DATOS.'".</pre>'); 

    
$size count($fa2);     
     
for(
$i=0$i<$size$i++)  
    {         
    
$fa2[$i] = utf8_encode($fa2[$i]); 
    
$text explode("|",rtrim($fa2[$i]));     
    
?> 
     
    datos.push(<?php echo json_encode($text);?>); 
     
    <?php     
    

?>                         


//El select queda así 
 <select name="Nombres" size="50" id="Nombres" onChange="Rellenar()" > </select> 

// Actualizamos los datos del formulario 
function Rellenar() 
{     
indice = (document.getElementById('Nombres')).selectedIndex; 

document.encuesta.item01.value = datos[indice][0]; 
document.encuesta.item02.value = datos[indice][1]; 
document.encuesta.item03.value = datos[indice][2]; 
document.encuesta.item04.value = datos[indice][3]; 
document.encuesta.item05.value = datos[indice][4]; 
document.encuesta.item06.value = datos[indice][5]; 
document.encuesta.item07.value = datos[indice][6]; 
document.encuesta.item08.value = datos[indice][7]; 
document.encuesta.item09.value = datos[indice][8]; 
document.encuesta.MultiText1.value = datos[indice][9]; 
document.encuesta.MultiText2.value = datos[indice][10]; 
document.encuesta.MultiText3.value = datos[indice][11]; 
document.encuesta.email.value = datos[indice][13]; 
     


</script>
La función a que me refiero es "HazArray()"

Lo que pretendo hacer es usarla con otro nombre de archivo. El problema está en que, no sé por qué no me permite usarla en esta parte del código, para rellenar un array parecido.

Gracias, por tu interés.
Un saludo.
__________________
"Pedid y se os dará; buscad y hallaréis ..." (Lc 11,9-10)
"...si no tengo caridad, nada soy..." (1 Cor 13,1-13)
Responder Con Cita