Foros del Web » Programando para Internet » PHP »

Consulta con un condicional

Estas en el tema de Consulta con un condicional en el foro de PHP en Foros del Web. Hola Estoy intentado hacer una pequeña función para introducir en un template de joomla, que consiste en mostrar la fecha en una determinada posición, con ...
  #1 (permalink)  
Antiguo 28/09/2011, 14:05
 
Fecha de Ingreso: noviembre-2010
Ubicación: Almería
Mensajes: 9
Antigüedad: 14 años
Puntos: 1
Consulta con un condicional

Hola

Estoy intentado hacer una pequeña función para introducir en un template de joomla, que consiste en mostrar la fecha en una determinada posición, con la particularidad de que si el día de la semana es martes, muestre la fecha acompañada de un pequeño texto.

El tema es que no estoy muy puesto en programación en php y aunque creo haber encontrado como hacerlo, si introduzco la funcion <?php echo date('l, j F Y');?> funciona sin problema, pero si le meto la función el dreamweaver me dice que hay un error en la última linea de la página ( </body> ), por lo que deduzco que algún error de sintaxis o de estructura estoy cometiendo.

El código es el siguiente:

Código PHP:
 <?php 
                $dia 
date('w');
                if (
$dia == 3)
                {
                    echo 
date('l, j F de Y .Recuerda que hoy martes estamos cerrados');
                }
                else
                {
                    echo 
date('l, j F Y');
                    
?>
Podeis echarme una mano a corregir el/los errores que tengo en el código?

Gracias
  #2 (permalink)  
Antiguo 28/09/2011, 14:13
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 14 años, 1 mes
Puntos: 511
Respuesta: Consulta con un condicional

Hola que tal.

Te falta cerral la } al final del script

Código PHP:
Ver original
  1. <?php
  2. $dia = date('w');
  3. if ($dia == 3){
  4.     echo date('l, j F de Y .Recuerda que hoy martes estamos cerrados');
  5. }else{
  6.     echo date('l, j F Y');
  7. }
  8. ?>

Saludos
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #3 (permalink)  
Antiguo 28/09/2011, 14:17
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: Consulta con un condicional

Le corrijo a ambos

Código PHP:
Ver original
  1. //MAL
  2. echo date('l, j F de Y .Recuerda que hoy martes estamos cerrados');
  3.  
  4. //BIEN
  5. echo date('l, j F \d\e Y') . ' Recuerda que hoy martes estamos cerrados';

aun así el formato de date no es correcto, te recomiendo leer esto:

http://php.net/manual/es/function.date.php

Podés mejorarlo así para que te salga la fecha en español.

Código PHP:
Ver original
  1. <?php
  2. setlocale(LC_ALL,"es_ES@euro","es_ES","esp");
  3.  
  4. $dia = date('w');
  5. if ($dia == 2) {
  6.     echo strftime("%A, %d de %B de %Y", strtotime("now")) . ' Recuerda que hoy martes estamos cerrados';
  7. } else {
  8.     echo strftime("%A, %d de %B de %Y", strtotime("now"));
  9. }

Edit: como dato adicional el formato w de date va de cero a seis. Con lo que el martes sería 2 no 3.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Última edición por andresdzphp; 28/09/2011 a las 14:27
  #4 (permalink)  
Antiguo 28/09/2011, 14:57
 
Fecha de Ingreso: noviembre-2010
Ubicación: Almería
Mensajes: 9
Antigüedad: 14 años
Puntos: 1
Respuesta: Consulta con un condicional

Operativo y funcionando.

Mil gracias

PD: Si, soy consciente de que el martes corresponde con el 2, pero para hacer las pruebas tenía que poner el día de hoy, de ahí el 3.

Etiquetas: condicional
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:41.