Foros del Web » Programando para Internet » PHP »

problemas con buenos dias, tardes y noche

Estas en el tema de problemas con buenos dias, tardes y noche en el foro de PHP en Foros del Web. Saludo a todos tengo el siguiente problema. Tengo un escrip en php en donde según la hora te dice buenos dias, tardes y noches pero ...
  #1 (permalink)  
Antiguo 02/02/2012, 18:09
 
Fecha de Ingreso: octubre-2006
Ubicación: Ciudad Ojeda, Venezuela
Mensajes: 123
Antigüedad: 18 años, 1 mes
Puntos: 0
problemas con buenos dias, tardes y noche

Saludo a todos tengo el siguiente problema.

Tengo un escrip en php en donde según la hora te dice buenos dias, tardes y noches pero resulta que aveces me sale el siguiente error y no se porque:

Notice: Undefined variable: mensaje in C:\xampp\htdocs\comiczulia\tiendas\user.php on line 117

este es el scrip:

Código PHP:
<?
if (Date("H") > && Date("H")< 11$mensaje "buenos dias";
elseif (
Date("H") > 14 && Date("H") < 18$mensaje "buenas tardes";
elseif (
Date("H") > 19 && Date("H") <= 23$mensaje "buenas noches";
elseif (
Date("H") >= && Date("H") < 6$mensaje "buenas noches";
echo 
$mensaje;?>
según el error esta en la linea 117 y la linea 117 es:

echo $mensaje;?

gracias por la ayuda que me puedan dar
  #2 (permalink)  
Antiguo 02/02/2012, 18:25
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 13 años, 4 meses
Puntos: 181
Respuesta: problemas con buenos dias, tardes y noche

Pues supongo que el error es porque no se esta definiendo la variable tal y como lo dice el error.

Leyendo la documentación de php con respecto a else if ellos colocan este ejemplo:

Código PHP:
if ($a $b) {
    echo 
"a is bigger than b";
} elseif (
$a == $b) {
    echo 
"a is equal to b";
} else {
    echo 
"a is smaller than b";
}

y este otro

if($a $b):
    echo 
$a." is greater than ".$b;
elseif(
$a == $b): // Note the combination of the words.
    
echo $a." equals ".$b;
else:
    echo 
$a." is neither greater than or equal to ".$b;
endif; 
Como tu no estas usando llaves ni puntos como en el ejemplo creo que no entiende donde esta comenzando y terminando el condicional.

Por cierto, ¿que pasa entre las 12 y las 14? no estan definidos.
__________________
Blog de humor http://elcuasatar.net63.net/
  #3 (permalink)  
Antiguo 02/02/2012, 19:08
Avatar de mcun  
Fecha de Ingreso: octubre-2010
Ubicación: tras la pantalla
Mensajes: 466
Antigüedad: 14 años, 1 mes
Puntos: 55
Respuesta: problemas con buenos dias, tardes y noche

otro detalle es qeu usas los trag abreviados <? ?> deberías usar los trags que corresponden <?php ?>
  #4 (permalink)  
Antiguo 02/02/2012, 22:15
 
Fecha de Ingreso: septiembre-2011
Mensajes: 480
Antigüedad: 13 años, 2 meses
Puntos: 18
Respuesta: problemas con buenos dias, tardes y noche

Disculpen que me meta por aqui..pero compañero mcun que tiene que ver si se usa <?PHP o <?, ??? no entiendo cual es el problema de eso!...si de todas formas igual el host lo reconoce como php
  #5 (permalink)  
Antiguo 03/02/2012, 04:09
 
Fecha de Ingreso: octubre-2004
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 20 años, 1 mes
Puntos: 7
Respuesta: problemas con buenos dias, tardes y noche

Cita:
Iniciado por cuasatar Ver Mensaje
(...)

Por cierto, ¿que pasa entre las 12 y las 14? no estan definidos.
Me parece que va a ser eso.

Lo más prudente expecimen es que siempre inicies la variable con un valor por defecto, para no tener este tipo de errores de variables no definidas.
Código PHP:
Ver original
  1. <?php
  2. $mensaje = "buenos días";
  3. if (Date("H") > 5 && Date("H")< 12) $mensaje = "buenos dias";
  4. elseif (Date("H") > 13 && Date("H") < 18) $mensaje = "buenas tardes";
  5. elseif (Date("H") > 19 && Date("H") <= 23) $mensaje = "buenas noches";
  6. elseif (Date("H") >= 0 && Date("H") < 6) $mensaje = "buenas noches";
  7. echo $mensaje;?>
  #6 (permalink)  
Antiguo 03/02/2012, 06:14
Avatar de mcun  
Fecha de Ingreso: octubre-2010
Ubicación: tras la pantalla
Mensajes: 466
Antigüedad: 14 años, 1 mes
Puntos: 55
Respuesta: problemas con buenos dias, tardes y noche

Cita:
Iniciado por edward18_1 Ver Mensaje
Disculpen que me meta por aqui..pero compañero mcun que tiene que ver si se usa <?PHP o <?, ??? no entiendo cual es el problema de eso!...si de todas formas igual el host lo reconoce como php
tiene varios inconvenientes, una que el echo de que el host lo soporte hoy no significa que lo haga a futuro, debido a las eventuales actualizaciones, dos que provoca incompatibilidad con xml, y tercero tú código se vuelve menos potable
  #7 (permalink)  
Antiguo 03/02/2012, 06:37
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Respuesta: problemas con buenos dias, tardes y noche

Aunado a lo que dice @mcun, los short tag (que es su nombre) no siempre te vas a encontrar con servidores con los short tag activados hoy en día, aparte, PHP desaconseja su uso, puede verificarse en el manual de PHP
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #8 (permalink)  
Antiguo 03/02/2012, 08:27
 
Fecha de Ingreso: septiembre-2011
Mensajes: 480
Antigüedad: 13 años, 2 meses
Puntos: 18
Respuesta: problemas con buenos dias, tardes y noche

mmmm ok ok! bueno desde ya empiezo a programar con <?PHP porq de verdad todos mis codigos estan hechos es <? Muchas gracias colegas por el dato!
  #9 (permalink)  
Antiguo 03/02/2012, 12:27
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: problemas con buenos dias, tardes y noche

Desviacion de tema MODE ON.. porque no se crean sus propios post para hacer consultas? con buena onda amigos foreros
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...

Etiquetas: buenos, dias, noche, tardes, variables
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 11:25.