Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-03-2018
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Coincido con yusnerqui. Realiza la peticion por ajax y desde PHP le podras retornar la informacion "masticada" como quieras. De otra manera es ir en contra de la corriente...la web es compleja, no lo hagas mas complicado aun
Responder Con Cita
  #2  
Antiguo 26-03-2018
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Gracias yusnerqui. Gracias Agustin.

Sinceramente, agradezco vuestro interés. He usado la combinación anterior (PHP en JS) con buenos resultados hasta ahora. De hecho la última copia de la función, (la que he comentado hasta la saciedad) FUNCIONA PERFECTA.

No sé hacerlo de otro modo. Si vosotros conocéis otra manera de hacerlo, si tenéis ganas y tiempo, os agradecería que le dierais la vuelta a la función y me la hicierais llegar.

Gracias de nuevo.
Saludos cordiales.
__________________
"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
  #3  
Antiguo 26-03-2018
Avatar de yusnerqui
yusnerqui yusnerqui is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuba
Posts: 679
Poder: 21
yusnerqui Va por buen camino
Prueba si esto te funciona,

Código:
<script>
function HazArrayM_txt()
{
var l;
datosM = []; // Vaciamos el array

	<?php        
		if (file_exists('XX/Prueba.txt'))
		{
			$fp = fopen('XX/Prueba.txt', 'r');
			echo "datosM = [";
			while (!feof($fp))
			{
				$linea = fgets($fp);
				$l = strlen($linea);
				if ($l > 17) {
				  $linea = substr($linea, 0, 16);        
				  echo "$linea ,";        
				}
			}
			fclose($fp);
		}// if    
		echo "]";
	?>        
}; // fin HazArrayM

</script>
Básicamente es tu función pero en ves de intentar escribir en la memoria del cliente trato de crear el arreglo literal como en el ejemplo que te puse antes.

saludos
__________________
Lo importante no es llegar primero, sino saber llegar.

Para que puedas llegar mejor lee la Guia de Estilo

Responder Con Cita
  #4  
Antiguo 26-03-2018
Avatar de yusnerqui
yusnerqui yusnerqui is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuba
Posts: 679
Poder: 21
yusnerqui Va por buen camino
Prueba si esto te funciona,

Código:
<script>
function HazArrayM_txt()
{
var l;
datosM = []; // Vaciamos el array

    <?php        
        if (file_exists('XX/Prueba.txt'))
        {
            $fp = fopen('XX/Prueba.txt', 'r');
            echo "datosM = [";
            while (!feof($fp))
            {
                $linea = fgets($fp);
                $l = strlen($linea);
                if ($l > 17) {
                  $linea = substr($linea, 0, 16);        
                  echo "'$linea' ,";        
                }
            }
            fclose($fp);
        }// if    
        echo "]";
    ?>        
}; // fin HazArrayM

</script>
Básicamente es tu función pero en ves de intentar escribir en la memoria del cliente trato de crear el arreglo literal como en el ejemplo que te puse antes.

saludos

Edito: Faltaba encerrar el texto entre comillas.
__________________
Lo importante no es llegar primero, sino saber llegar.

Para que puedas llegar mejor lee la Guia de Estilo

Responder Con Cita
  #5  
Antiguo 26-03-2018
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Gracias, yusnerqui por tu esfuerzo en ayudarme.

Lo voy a probar y te cuento.

Un saludo muy cordial.
__________________
"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
  #6  
Antiguo 26-03-2018
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
¡¡FABULOSO!!, yusnerqui.

¡¡Funcionó a la primera!!

Hice una reseña en tu reputación.

¡Ya eres mi héroe!

¡Un millón de gracias!

Abusando de tu buena voluntad, ¿Podrías comentarme el script, o explicarme cómo funciona?
Lo digo para recibir una clase magistral TUYA que puede servirme para aprender a hacerlo por mí mismo la próxima vez.

Si es posible. Si no, no te preocupes, ya me has ayudado bastante.

Inmensamente agradecido.
__________________
"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
  #7  
Antiguo 27-03-2018
Avatar de yusnerqui
yusnerqui yusnerqui is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuba
Posts: 679
Poder: 21
yusnerqui Va por buen camino
Jajajajaja, me he reido bastante con tu mensaje, el egómetro me explotó al leerlo jajaja.

Lo primero que debes saber es que no estás ejecutando php desde js ni mucho menos, sino que estás usando php para construir tu código js. El efecto de este código es el mismo que si tú te leyeras el fichero de texto, determinaras los trozos de cadena a poner y los teclearas en el arreglo. Si das clic derecho a tu navegador y seleccionas ver codigo fuente notarás que tu arreglo está declarado así

Código:
  datosM = ['Primera cadena', 'Segunda  cadena', 'Tercera cadena'...]
y esa fue la labor del php, que como te hemos explicado se ejecutó en el servidor antes que la web fuera mostrada al usuario final.

Solo te comentaré un par de cosas puesto que la función es practicamente la misma que tú supercomentastes.
Código:
<script>
function HazArrayM_txt()
{
var l;
datosM = []; // Vaciamos el array

    <?php        //inicio php
        if (file_exists('XX/Prueba.txt'))
        {
            $fp = fopen('XX/Prueba.txt', 'r');
            echo "datosM = [";//comienzo a armar el arreglo
            while (!feof($fp))
            {
                $linea = fgets($fp);
                $l = strlen($linea);
                if ($l > 17) {
                  $linea = substr($linea, 0, 16);        
                  echo "'$linea' ,";   //le voy agregando cada elemento, notese la comilla simple para enmarcar la cadena     
                }
            }
            fclose($fp);
        }// if    
        echo "]";//cierro el corchete del arreglo.
    ?>      //termino php  
}; 

</script>
No hay mucho mas que comentar. Solo que debes profundizar más puesto que estos son temas un poco complejos y el enfoque a veces es determinante.

Saludos
__________________
Lo importante no es llegar primero, sino saber llegar.

Para que puedas llegar mejor lee la Guia de Estilo

Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
VALORES FANTASMAS FIREBIRD 2.1 valores Grandes ASAPLTDA Firebird e Interbase 17 02-12-2012 12:09:02
¡Uy!, que se pasa... Casimiro Notevi La Taberna 15 03-07-2012 18:07:36
¿Qué pasa con ClubDelphi? P0werBurn Varios 7 05-08-2010 03:15:29
Que pasa con DBLockupComboBox Luis Castillo Conexión con bases de datos 11 21-12-2005 13:59:32
Que pasa en el servidor ? IVAND Firebird e Interbase 0 22-11-2004 18:48:43


La franja horaria es GMT +2. Ahora son las 23:07:16.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi