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 Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-06-2004
HombreSigma HombreSigma is offline
Miembro
 
Registrado: jun 2003
Ubicación: World
Posts: 114
Poder: 21
HombreSigma Va por buen camino
Problemas con script php incluido en HTML

Instalé Apache y PHP en mi PC. Ambas parecieran estar funcionando ya que la instrucción de prueba "info.php" para actuar como debiera.

Como estoy iniciando mi aprendizaje en PHP, mi primer ejercicio fue realizar este conocido ejemplo que llamé "ejemplo1.htm":

<html>
<head>
<title>Ejemplo PHP</title>
</head>
<body>
<?php echo "Hola, este es un ejemplo con PHP!"; ?>
</body>
</html>

Lo invoco con la siguiente dirección puesta en Internet Explorer:

C:\Archivos de programa\Apache Group\Apache\htdocs\Ejemplo1.htm

Sin embargo me saca una página en blanco.

Que puede estar ocurriendo???
__________________
SigmaMan
Responder Con Cita
  #2  
Antiguo 30-06-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Al especificar la dirección de esa forma la petición nunca llega a Apache y por tanto no la procesa PHP. Si ves el código fuente de esa página "en blanco" verás el código PHP.

Para poder verla en tu navegador debes poner la dirección:

http://localhost/Ejemplo1.htm

// Saludos
Responder Con Cita
  #3  
Antiguo 30-06-2004
HombreSigma HombreSigma is offline
Miembro
 
Registrado: jun 2003
Ubicación: World
Posts: 114
Poder: 21
HombreSigma Va por buen camino
Script tampoco funciona ...

En realidad no funciona ni:
http://127.0.0.1/ejemplo1.htm
http://localhost/ejemplo1.htm

ni la anterior.

Las tres páginas no ejecutan el script php.

Si utilizo una página html normal si funciona con las tres especificaciones.
Lo que no funciona es el script embebido o incluido dentro de la página html !

Gracias de antemano.
__________________
SigmaMan
Responder Con Cita
  #4  
Antiguo 30-06-2004
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 22
__hector Va por buen camino
Si estas en windows, es posible que la extension .html no este asociada al parser o interprete de php, de hecho seguro que no lo tiene. Cambiale la extension al archivo a .php

Dinos que tal...
__________________
Héctor Geraldino
Software Engineer
Responder Con Cita
  #5  
Antiguo 30-06-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Aunque me parece que lo aclaras vamos a descartar la posibilidad de que Apache no haya sido correctamente instalado:

Si navegas simplemente a http://localhost, ¿ves la página de bienvenida de Apache?

De ser así, cuando dices

Cita:
Empezado por HombreSigma
ya que la instrucción de prueba "info.php" para actuar como debiera.
¿a qué te refieres? ¿info.php es un script con phpinfo()? ¿Muestra el listado de la información de PHP?.

Si también es cierto esto, dime, después de la instalación, en caso de haber reiniciado la PC, ¿te aseguraste de que esté corriendo el servidor Apache?

// Saludos
Responder Con Cita
  #6  
Antiguo 30-06-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¡Ah caramba!

Se me adelantó Héctor. Hay veces que no vemos lo más obvio. Seguro debe ser lo que él dice de la extensión.



// Saludos
Responder Con Cita
  #7  
Antiguo 30-06-2004
HombreSigma HombreSigma is offline
Miembro
 
Registrado: jun 2003
Ubicación: World
Posts: 114
Poder: 21
HombreSigma Va por buen camino
Siguio igual ?

Perdón corrijo lo anterior. En realidad lo que arreglo el problema fue el cambio de extensión del archivo a ejemplo1.php, como me había sugerido Héctor.

Sin embargo, esto no me parece muy conveniente, porque que ocurririría si tuviese un script php y un script java incluidos dentro de una misma página HTML. Debo en este caso crear un archivo html con que tipo de extensión: para php o para java?

Mejor no sería configurar el php.ini de alguna manera para que reconozca la extensión html? Como se haría ?

Gracias por cualquier información adicional.
__________________
SigmaMan

Última edición por HombreSigma fecha: 01-07-2004 a las 18:26:38. Razón: Corrección de mi opinión.
Responder Con Cita
  #8  
Antiguo 01-07-2004
HombreSigma HombreSigma is offline
Miembro
 
Registrado: jun 2003
Ubicación: World
Posts: 114
Poder: 21
HombreSigma Va por buen camino
-

-----------
__________________
SigmaMan
Responder Con Cita
  #9  
Antiguo 01-07-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
+++++++++++
Responder Con Cita
  #10  
Antiguo 01-07-2004
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 22
__hector Va por buen camino
************

Java no maneja scripts, salvo que hables de JSP (java servlets pages), y eso trae un problema de fondo. Sucede que para que el servidor pueda interpretar el codigo de una pagina, y ejecutar las acciones especificadas en el Script, necesita por obligacion un interprete. Asi hay interpretes para asp clasico (asp.dll), para asp.net, para php (php.exe), java, coldfusion, y cualquier otro lenguaje de webscripting.

El servidor (iis en este caso) necesita saber, para cada extension de pagina, cual interprete llamar, por lo que usa el mapeo de las extensiones del archivo para llamar uno u otro, pero nunca... nunca dos a la vez. Eso es logico en el hecho de que, php no podra interpretar asp y viceversa, incluso cuando usen tags iguales para indicar el inicio/fin del codigo a ser interpretado ( <% %> o <? ?> o cualquier otro).

Ahora, si te refieres a java como javascript, como corre en el cliente, no hay problemas con eso. Con una etiqueta <script> funciona sin problemas.

Para que el webserver te reconozca la extension html para ser interpretada por el motor de php, en iis realiza los siguientes pasos:

Click derecho sobre el website/properties/Home Directory/Configuration/Mappings

Busca la extension .html en la lista, y si no esta, creala con las mismas propiedades que tiene la de la extension .php
__________________
Héctor Geraldino
Software Engineer

Última edición por __hector fecha: 01-07-2004 a las 21:21:11.
Responder Con Cita
  #11  
Antiguo 03-07-2004
HombreSigma HombreSigma is offline
Miembro
 
Registrado: jun 2003
Ubicación: World
Posts: 114
Poder: 21
HombreSigma Va por buen camino
Configuración APACHE

Gracias por la información.

Como explicas se configuraría el IIS. Pero como se configuraría el APACHE?

Gracias de nuevo...
__________________
SigmaMan
Responder Con Cita
  #12  
Antiguo 03-07-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Busca las entradas AddType en el archivo %APACHE%\Conf\httpd.conf

Encontrarás una como

AddType application/x-httpd-php .php

Agrega la línea

AddType application/x-httpd-php .html

y reinicia Apache.

Ahora Apache mandará las páginas con extensión html a PHP.

// Saludos
Responder Con Cita
  #13  
Antiguo 07-07-2004
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 21
kayetano Va por buen camino
Hola a todos

Lo que comenta Roman tiene el problema de que todoas las páginas tanto php com html pasarían por el interprete de PHP con el consiguiente consumo de recursos de la máquina, si solo es para hacer pruebas en casa no pasa nada, pero en un servidor como Dios manda esto sería un gran desperdicio de recursos.
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
  #14  
Antiguo 07-07-2004
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 22
__hector Va por buen camino
Solucion: al cesar lo que es del cesar

Si vas a ejecutar codigo php, la extension del archivo debe ser php. Si es asp, debe ser asp, si es asp.net: aspx, si es coldfusion: cfm, etc etc etc

No veo el inconveniente de hacerlo como dios manda, aunque me queda tambien la duda de que tan lento puede ser el proceso de parsing de una pagina html con php, sin que esta incluya codigo php en si misma. Sera cuestion de probar
__________________
Héctor Geraldino
Software Engineer
Responder Con Cita
  #15  
Antiguo 08-07-2004
HombreSigma HombreSigma is offline
Miembro
 
Registrado: jun 2003
Ubicación: World
Posts: 114
Poder: 21
HombreSigma Va por buen camino
Continuando con otro problema similar.

La verdad hice el cambio el archivo de configuración y tampoco me funcionó. Por esta razón deje esta página con extensión php lo que me permite que el interpretador la ejecute correctamente.

Pero ahora el problema con esta misma página es que no debo invocarla de forma simple, lo cual ya me funciona, sino dentro de un conjunto de marcos.

Tengo un marco superior, un marco izquierdo y un marco derecho. La página ahora debe mostrar sus resultados en el marco derecho siendo invocada por un enlace desde el marco superior o cuando se inicializa la apertura del conjunto de marcos.

Pero en vez de mostrar los resultados como lo haría cuando se ejecuta sola, parece que el interpretador php no ejecuta el código php de la página sino que lo toma como texto, a pesar de que ya tiene extensión .php. Por tanto, el resultado en pantalla no es la ejecución del script sino parte del texto del código php !!.

Gracias por cualquier sugerencia.
__________________
SigmaMan

Última edición por HombreSigma fecha: 08-07-2004 a las 18:36:20.
Responder Con Cita
  #16  
Antiguo 08-07-2004
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 21
kayetano Va por buen camino
Hola

Como haces la llamada a esa página ??

Recuerda que para que una página sea interpretada por el PHP debe pasar por el servidor Apacha, o con un ejemplo:

Si llamas desde el navegador a una página de la siguiente forma
http://localhost/mi_pagina.php
será una interpretada por PHP

Si lo haces de esta otra forma
c:\mi_pagina.php
No será interpretada por PHP y el navegador intentará interpretarla como buenamente pueda.
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
  #17  
Antiguo 08-07-2004
HombreSigma HombreSigma is offline
Miembro
 
Registrado: jun 2003
Ubicación: World
Posts: 114
Poder: 21
HombreSigma Va por buen camino
Acercándonos a la solución

Kayetano parece que tiene la razón.

Cuando utilizo la ruta absoluta al servidor como por ejemplo http://localhost/mipagina.php e incluso http://localhost/mipagina.htm

me funciona en ambos casos. No ocurre así con las direcciones relativas con páginas html que incluyen php ni con los marcos que llaman archivos con extensión php.

Entonces como haría para colocar esta pagína en un servidor diferente del local mío sino en otro? Debo cambiar todas las rutas absolutas como la anterior a las rutas del nuevo servidor? Esto me parecería demasiado impractico.

Gracias por la información.
__________________
SigmaMan
Responder Con Cita
  #18  
Antiguo 09-07-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Cool

Cita:
Empezado por HombreSigma
me funciona en ambos casos. No ocurre así con las direcciones relativas con páginas html que incluyen php ni con los marcos que llaman archivos con extensión php.
Estoy seguro que tu problema está aqui en que estas cargando la página que tiene la definición de los marcos de la forma:

c:\pagina\marcos.html

y no como

http://localhost/marcos.html.

y como verás... la ruta "relativa" también es relativa a la forma en que se ha cargado la página con frames.

En un servidor definitivo, claro está, no vas a tener ningun problema usando rutas relativas.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #19  
Antiguo 09-07-2004
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 21
kayetano Va por buen camino
Hola

No tiens que poner las direcciones completas de las páginas que quieres que se visualicen, me explico con un ejemplo

Si estas visualizando la página
http://localhost/mi_pagina.php
la estas viendo desde el servidor Apache, ahora si desde esta pagina tienes un enlacel del tipo <a href="mi_otra_pagina.php">hola verano</a> tabién la estaras viendo desde el servidor.

Como puedes comprobar en el enlace no he puesto ninguna ruta, el Apache ya sabe que debe buscar esa pagina dentru del directorio donde estaba "mi_pagina.php"

En pocas palabras no tienes que poner simpre "http://localhost" el Apache es muy listo y sabe donde buscar :-)
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
  #20  
Antiguo 09-07-2004
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
A parte de la segunda duda del hombresigma .... yo para páginas html con código php embebido utilizo la extensión .phtml.

Saludos, Tony
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 08:18:32.


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