[PHP] Fallos en Hola Mundo

oFF-sIDE

Increible pero cierto, me pongo a aprender php y en el primer ejercicio ya tengo problemas sin sentido :S

Tengo el siguiente código:

<html>
<head>
<title>Bob's Auto Parts - Order Results</title>
</head>
<body>
<h1>Bob's Auto Parts</h1>
<h2>Order Results</h2>
<?php
echo '<p>Order processed.</p>';
?>
</body>
</html>

Supuestamente debería escribir esto:

Bob's Auto Parts
Order Results

Order processed.

Pero escribe esto:

Bob's Auto Parts
Order Results
Order processed.

'; ?>

Por qué leches no me coge el cierre de comillas y el cierre del php?

Le he dado mil vueltas y no puede ser que en 40 minutos no haya podido hacer ni siquiera esto tan simple.
Tengo instalado el WAMP 5.2
He programado en Java, C, C++, C#, y muchos más, pero nunca me había pasado algo así con un ejercicio tan básico.
A ver si es que las comillas no son correctas o yo que sé, pero no entiendo nada.

Por favor, a ver si podeis echarme una mano :/

GoTT

prueba comillas dobles xd

LOc0

El código que has puesto hace lo que tiene que hacer (por si acaso lo he probado en mi hosting), así que tiene pinta de ser cosa de las opciones de PHP y las comillas simples. (A lo mejor es algún rollo de codificación de caracteres del fichero de texto donde tienes escrito el código).

Salu2 ;)

oFF-sIDE

Ya he probado y tampoco funciona jaja

Creo que ya sé por donde me vienen los problemas. Sencillamente NO FUNCIONA el php. No llega a ejecutar las instrucciones, tan sólo pasa la linea tal cual está escrita al navegador.

Lo he descubierto porque con este otro ejemplo:

<html>
<head>
<title>Bob's Auto Parts - Order Results</title>
</head>
<body>
<h1>Bob's Auto Parts</h1>
<h2>Order Results</h2>
<?php
echo '<p>Order processed at ';
echo date('H:i, jS F');
echo '</p>';
?>
</body>
</html>

Lo que me escribe es:


Bob's Auto Parts
Order Results
Order processed at '; echo date('H:i, jS F'); echo '

'; ?>

Es decir, escribe todo tal cual lo lee, pero no ejecuta la funcion date ni nada de nada. Por eso se traga las comillas y el punto y coma como si nada, así como el cierre de php.

He de decir que he instalado tan sólo el WAMP 5.2, no sé si debería instalar algo más. El WAMP me aparece en la barra de tareas como: "servidor ACTIVO"

Alguien que me pueda echar una mano please? :( :( :( :( :( :( :(

oFF-sIDE

#3 He creado un txt y le he sobreescrito la extensión a php :/ Hay otro modo de hacerlo?

EDIT: Creándolo desde Dreamweaver como documento php me da el mismo problema

Fyn4r

Creo recordar que alguna vez me pasó algo así, y si no me equivoco era porque el Wamp arrancaba mal (bueno, lo hacía yo mal xD) y no pillaba el código php. Mira a ver si va a ser eso.

oFF-sIDE

Si bueno, pero cómo compruebo si arranca mal o no ? xD

Yo veo que pone: servidor ACTIVO, pero nada más :/
Tras reiniciarlo, detenerlo y volver a iniciarlo... sigue igual :/

Fyn4r

#7 ah, es que a mi no me ponía ni eso xD

Pues npi, debería ir :S

Prueba poniendo

 <? blablabla ?> 
GaN2

<?php
echo "<p>Hola mundo</p>"
?>

A mi me funciona perfectamente.

rarito

ami cuando veo que me imprime en pantalla ';?>
casi siempre lo e resuelto cambiando las comillas (dobles por simples y viceversa)
si eso tampoco te funciona como te dicen arriba ve probando si es el php con cosas faciles (haz algun include, echos etc.)

oFF-sIDE

Coño, más fácil que un programa que tan sólo te muestra algo por pantalla? Es el equivalente de "Hola Mundo" en cualquier lenguaje de programación... esto es surrealista, es como si no tuviera instalado el php o algo, y lo peor es que he probado a desinstalarlo, instalarme php a secas y tampoco hace nada.

¡Qué absurdo! jajajaja

EDIT: No me reconoce ni siquiera los comentarios /* */, //

cabron

Crea una página que solo tenga esto:

<?php

phpinfo();

?>

Si no te sale una tabla con la versión de php y como está configurado, es evidente que el interprete no está ejecutando el código. Los motivos más típicos son:

  • El módulo de php no está bien instalado en el servidor web

  • El intérprete de PHP está configurado para leer archivos con una determinada extensión (por ejemplo .php) y tu estás poniendo el código en un archivo con otras extensiones (por ejemplo .html).

RaymaN

Prueba con xampp, a mi me funciona perfecto.

W

Tambien tienes la opcion de EasyPHP

oFF-sIDE

#12 Con phpinfo me aparece una página en blanco, sin más :/
Error de instalación no creo, el wamp es doble click y ya está.
Error de extensión tampoco lo creo... he probado desde wordpad y desde dreamweaver. Falla en ambos casos :/

Voy a probar a bajarme el xamp que dice #13, pero me da que no resolverá nada.

GaN2

Creo que ya lo has hecho, pero asegurate que el archivo que abres es .php y no .html

erdanblo

Si al correr la página en el servidor web (http://localhost/loquesea.php) no te sale lo que debería, y al darle a ver código fuente (en el navegador) te aparece el código php (en Firefox sale en rosita), es que el servidor web no esta corriendo correctamente el módulo php.

Vamos te hace de servidor de web, pero no te interpreta el código php.

Solución? Volver a configurar, reinstalar, probar con otro entorno... instalar a mano, blabla.

oFF-sIDE

#16 el archivo que abro es un formulario cutre en HTML y al darle a Enviar, me abre otro archivo PHP que es el que os estoy poniendo aquí.

Tras probar el xamp me sigue pasando lo mismo. Seguro que hay algo que se me escapa :(

#17 Todas las páginas esas de localhost y tal, me las abre correctamente.

IAF

ehmm a lo mejor lo q diré es una tontería...
tienes el archivo .php en el directorio htdocs del xampp ? xD

erdanblo

A ver que yo me entere:

creas un fichero llamado: info.php

con el contenido:

<?php phpinfo(); ?>

Y lo colocas en la raiz del sitio web, es decir, lo abres mediante localhost/info.php

¿Te funciona?

Si -> Problema de configuración de apache para que ejecute los PHP en el resto de directorios.

No -> Problema de configuración de apache/php que no te interpreta el PHP

oFF-sIDE

No entiendo... veamos, yo tengo una carpeta creada que se llama:

..\Web\Aprendiendo_php\cap 01\

En esa carpeta tengo 2 archivos, un HTML con el ejercicio, es un formulario que al hacer click llama al otro archivo, un archivo php con el código que os pongo arriba. Así es como está en el ejercicio del libro que he pillado de la biblioteca. No me ha dicho en ningún momento que tenga que ponerlo en un lugar determinado

¿Qué más necesito?

PD: Sí, soy un inutil con php, es la primera vez que lo uso y ni siquiera sé donde tengo que poner cada cosa pero pensaba que yo podía crear mis archivos php donde me diera la gana siempre y cuando estuviesen bien vinculados. Tal vez si alguien me explicase paso a paso cómo hacerlo funcionar, o un link a una guía (si es que lo estoy haciendo mal), yo he instalado wamp y xampp y no he tocado nada, sólo me cercioro de que los servicios están activados y ya está.
PD2: Qué tiene que ver aquí apache o mysql si sólo es un html y un php :S:S:S

r2d2rigo

Apache es el servidor que le envia a tu navegador los datos de una u otra manera para que este los interprete correctamente.

Y postea en www.pastebin.com los dos codigos (HTML y PHP). Me juego a que lo estas llamando como un documento HTML local, sin pasar por el servidor...

cabron

#22: Eso parece.

Copia el archivo html y php aquí:

Archivos de programa\Apache Software Foundation\Apache2.2\htdocs

(o en la ruta que se parezca a esa en tu disco duro)

Abre el navegador que sea, y pon esto en la barra del navegador:

http://localhost/archivo.html

Donde archivo.html es el nombre de tu archivo html.

Si no te sale la página web html , no tienes arrancado el servidor web en local, y tienes que hacerlo primero.

PHP es un modulo/plugin para servidores web (en esta caso apache), y funciona de la situiente mantera:

  1. Un cliente web hace una petición de un archivo al servidor web mediante http.
  2. El servidor web invoca el interprete de php que ejecutá el código.
  3. El servidor web devuelve el documento resultante después de ejecutar código al cliente web.

No te vale con abrir los archivos directamente con el navegador, tienes que pedirselos a un servidor web.

Dod-Evers

#20 -> #15

oFF-sIDE

Veamos, he puesto el archivo HTML y el PHP en la carpeta:

C:\wamp\bin\apache\Apache2.2.11

Si ejecuto http:\localhost\ me aparece la página sin problemas:
WAMP5 Homepage

Si ejecuto http:\localhost\orderform.html me da el siguiente mensaje de error:
The requested URL /orderform.html was not found on this server.

PERO he probado a dejar los archivos en C:\wamp\www y ahora sí funciona.
Me lo dijeron más arriba, lo hice y no funcionó, hoy, tras instalar y borrar xamp y el wamp mil veces, ha funcionado :)

Os doy las gracias a todos, parece mentira que un ingeniero técnico informático no sea capaz de hacer funcionar esto jajaja un poco triste :P

Bueno, mil gracias a todos los que habeis posteado, de verdad :)

GaN2

En el xamp el directorio es: xampp\htdocs

NeB1

SE PONE EN WAMP/WWW/archivoquetuquieres.php y despues entras desde el navegador poniendo http://localhost/archivoquetuquieres.php

Es q me da perro leerme todo el post, pero tiene pinta de ser algo así.

EDIT:

Veo que ya lo has arreglado. No te preocupes, tmb soy ing. técnico y también tuve problemas al principio, más que nada porque no tenía ni idea ni de servidores ni de localhost ni de cosas de esas, me esperaba algún compilador de php o algo xD

erdanblo
Offtopic
LOc0

#28

Eres demasiado duro, en serio. Deberías darte una vueltecilla por mi facultad (previa ingestión de tranquimacín xD).

Salu2 ;)

oFF-sIDE

#28 si, algún problema?

Acaso tu naciste sabiendo php? o sabiendo C#? o java?
Programo en C, C++, C#, Java, Mathematica, Matlab, ensamblador, html+css, actionScript, y ese era el primer dia que tocaba php, sin saber qué se necesitaba para hacerlo funcionar, respeta que no tenga ni idea de cómo cojones funciona.

Me da rabia la gente que va de lista.

A los demás, gracias.

#31 evidentemente html+css no son lenguajes de programación puros, pero son complementos del php que es de lo que aquí se trata. Y con matlab sí se puede programar, otra cosa es que lo desconozcas.

Usuarios habituales

  • soanix
  • oFF-sIDE
  • LOc0
  • erdanblo
  • GaN2
  • cabron
  • Fyn4r