Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/02/2006, 12:49
Amedio
 
Fecha de Ingreso: febrero-2006
Mensajes: 13
Antigüedad: 18 años, 2 meses
Puntos: 0
Pregunta Es bueno usar short_open_tag

Buenas!, vereis mi duda es la siguiente. Estoy siguiendo un libro de PHP5 pero estoy teniendo problemas con un ejemplo que seguro que es de lo más simple que hay
Código PHP:
<?php 
if ($_POST['user']){
print 
"Hello, ";
print 
$_POST['user'];
print 
"!";
}else{
print<<<_HTML_
<form method="POST" action="$_SERVER[PHP_SELF]">
your name: <input type="text" name="user">
<br/>
<input type="submit" value="Say Hello">
</form>
_HTML_;
}
?>
Pues bien cuando abró la página en internet explorer después del botón "Say Hello" aparece _HTML_;}?>. Después de revisarlo varias veces el código no estaba mal (almenos con lo que respecta a copiarlo del libro). Busco por internet una solucion y hay una que, aunque tampoco me funciona, es la siguiente
Código PHP:
<?php 
if ($_POST['user']){
print 
"Hello, ";
print 
$_POST['user'];
print 
"!";
}else{
?>

<form method="POST" action="<?php $_SERVER['PHP_SELF']?>">
your name: <input type="text" name="user">
<br/>
<input type="submit" value="Say Hello">
</form>

}
?>
`
pero en este caso aparte de que el servidor Apache me da error diciendo que la página "<?php $_SERVER['PHP_SELF']?>" no existe, tengo que habilitar en php.ini short_tag, lo cual he leido que no es muy recomendable, tanto por seguridad como portabilidad, aunque de todos modos me daría igual porque no consigo que el código se ejecute. Usó Apache 2.0 y php 5.0, apache lo uso como servidor virtual, todo en un Windows Xp Home Edition. Si alguien supiera cuál es el fallo agradecería que me ayudara.

Bueno sé que en vez de hacer este código, en vez de llamar a $_SERVER[PHP_SELF] podría realizar action="decirhola.php", siendo ese archivo el que escriba por pantalla lo que está en el principio del condicional, pero claro sería usar un archivo html que llamara a un php, entonces mi pregunta es ¿que metodología de programación es la más idonea?, intentar que el formulario se resuelva directamente en el mismo fichero que lo pide, o realizar la llamada a otro fichero php, usando html. Creo que todo lo que he escrito se resume en, ¿como insertar código html en php no creen?, voy a investigar por aquí haber que encuentro. Gracias de todos modos y espero sus respuestas!!!

Última edición por Amedio; 19/02/2006 a las 13:30