Septiembre 21, 2017, 02:27:49 pm
Visitante



Autor Tema:  Texto aleatorio al recargar la página  (Leído 1222 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Abril 13, 2016, 05:27:41 pm

zizau




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Me gustan las neveras
  • Actividad

  • 0%
  • Logros

Más información

Hola, tengo una página web bastante simple que hace un tiempo hice: http://slimezizau.esy.es/. Como podeis ver de momento solo hay un gif y debajo pone "Página en progreso...". Me gustaría que cada vez que entras en la página salga un mensaje aleatorio, en vez de poner "Página en progreso...", que ponga "Sigue esperando...", etc. Vendría a ser lo mismo que las cabeceras del foro. Me gustaría poner de momento estos tres textos:
  • Sigue esperando...
  • Página en progreso...
  • Algún día podrás dejar de esperar...
Después yo ya añadiría más por mi cuenta. Si podeis escribir el codigo para la web os lo agredecería mucho. :)
El código lo podeis ver pulsando Ctrl + U si usais Google Chrome o Firefox (si usais otro nevegador no se como se hace  :-\)

Saludos.

Linkback: http://minecraftmin.net/index.php?topic=12710.0
Vota wendingo a lo que acabas de leer o un elfo vendrá mientras estes durmiendo y te hará escafismo.
Twitter: @zizau_





Respuesta #1 Abril 13, 2016, 05:32:19 pm

pepinho668




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    MapMaker
  • Actividad

  • 1%
  • Logros

Más información

Yo no sé de páginas web, pero investigando he encontrado este código.

Código: [Seleccionar]
<html>
<head>
<script>
function getMensaje(){
var aFrases=new Array();
aFrases[0]="frase1";
aFrases[1]="frase2";
aFrases[2]="frase3";
aFrases[3]="frase4";
return(aFrases[Math.floor(Math.random() * aFrases.length)]);
}
</script>
</head>
<body>
<script>
document.write(getMensaje());
</script>
</body>
</html>



~ Salu2 ~


Respuesta #2 Abril 13, 2016, 06:03:08 pm

zizau




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Me gustan las neveras
  • Actividad

  • 0%
  • Logros

Más información

¡Me funciona! ¡¡¡Muchísimas gracias por la ayuda!!! :D


Respuesta #3 Abril 14, 2016, 02:24:43 am

Alfomega




  • Conectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Ingeniero informático
  • Actividad

  • 10%
  • Logros

Más información

Aunque eso funcione, lo mejor y más normal, para evitar que la gente pueda alterarlo, es hacerlo en PHP.
En tu código, en la parte que pongas el texto, imaginemos que es un <p>, pones lo siguiente:
Código: [Seleccionar]
<p><?php echo textoAleatorio(); ?></p>Siendo textoAleatorio() una función que te genera el texto. Aquí un ejemplo:
Código: [Seleccionar]
<?php
function textoAleatorio()
{
//Se usan &xacute; para evitar posibles fallos de codificación.
$textos = array(
'Sigue esperando...',
'P&aacute;gina en progreso...',
'Alg&uacute;n d&iacute;a podr&aacute;s dejar de esperar...'
);
return $textos[rand(0count($textos) - 1)]; //Da un número entre 0 y la longitud - 1, ya que los arrays empiezan en 0 y terminan en el número de elementos - 1
}
?>


Si lo prefieres, en vez del array puedes tener una lectura de fichero, una consulta a una base de datos... etc.

P.D: Acabo de descubrir que la etiqueta code reconoce PHP y pone el código de distintos colores.
Alfomega






Respuesta #4 Abril 16, 2016, 09:48:06 am

zizau




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Me gustan las neveras
  • Actividad

  • 0%
  • Logros

Más información

Aunque eso funcione, lo mejor y más normal, para evitar que la gente pueda alterarlo, es hacerlo en PHP.
En tu código, en la parte que pongas el texto, imaginemos que es un <p>, pones lo siguiente:
Código: [Seleccionar]
<p><?php echo textoAleatorio(); ?></p>Siendo textoAleatorio() una función que te genera el texto. Aquí un ejemplo:
Código: [Seleccionar]
<?php
function textoAleatorio()
{
//Se usan &xacute; para evitar posibles fallos de codificación.
$textos = array(
'Sigue esperando...',
'P&aacute;gina en progreso...',
'Alg&uacute;n d&iacute;a podr&aacute;s dejar de esperar...'
);
return $textos[rand(0count($textos) - 1)]; //Da un número entre 0 y la longitud - 1, ya que los arrays empiezan en 0 y terminan en el número de elementos - 1
}
?>


Si lo prefieres, en vez del array puedes tener una lectura de fichero, una consulta a una base de datos... etc.

P.D: Acabo de descubrir que la etiqueta code reconoce PHP y pone el código de distintos colores.

Estoy aprendiendo y no sé mucho de hacer las cosas en PHP y no sé a que te refieres con lo de "para evitar que la gente pueda alterarlo".
Otra cosa que no entiendo es donde tengo que poner el segundo código, ya que lo he puesto en el <head> y luego no me pone ninguna frase (también he probado de quitar los "&" que había y de ponerlo en el <body> pero seguía sin funcionarme). Puede que suene muy a novato lo que pregunto pero me gustaría que me lo explicases para que pueda aprender c:

P.D:
Spoiler para ocultar:
Por si te interesa para ayudarme, el código HTML que uso en la web es este (lo de las frases aleatorias ya está implementado pero con el sistema que me dijo @pepinho668):
Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<title>Slime Zizau</title>
<link rel="icon" href="archivos/favicon.png" />
<link rel="stylesheet" href="css/main.css">
<meta charset=ascii>
<script>
function getMensaje(){
var aFrases=new Array();
aFrases[0]="Página en progreso...";
aFrases[1]="Sigue esperando...";
aFrases[2]="Algún día podrás dejar de esperar...";
aFrases[3]="Ten paciencia...";
aFrases[4]="Se esta cargando la web...";
aFrases[5]="Vuelve mañana...";
aFrases[6]="Prueba de recargar la página...";
aFrases[7]="Un error ha ocurrido, pulsa F5...";
aFrases[8]="“Perder la paciencia es perder la batalla” Mahatma Ghandi";
aFrases[9]="“Quien tiene paciencia, obtendrá lo que desea” Benjamin Franklin";
aFrases[10]="Científicos calculan que la web terminará de cargar en el año 2469...";
aFrases[11]="Willyrex abrió los ojos en la espera de esta web...";
aFrases[12]="Coge comida, sientate cómodo en la silla, ponte música relajante, fija la vista en la pantalla y mientras la página carga, espera...";
aFrases[13]="No pierdas las esperanza, algún día funcionará la web...";
aFrases[14]="No dejes de mirar...";
aFrases[15]="No cierres la pestaña del nevegador, espera un momento...";
aFrases[16]="Si cierras esta ventana, tendrás mala suerte durante los próximos 10 años...";
aFrases[17]="Sigue aprovechando tu vida mirando esto...";
aFrases[18]="...";
return(aFrases[Math.floor(Math.random() * aFrases.length)]);
}
</script>
</head>
<body bgcolor="#EEDEBA">
<div id="principal">
<img src="archivos/enprogreso.gif">
<h1>
<script>
document.write(getMensaje());
</script>
</h1>
</div>
<div id="pie">
<p>Slime Zizau© <a href="https://twitter.com/SlimeZizau" target="blank">Contacto</a></p>
</div>
</body>
</html>
Y este es el archivo css:
Código: [Seleccionar]
#principal{
text-align: center;
margin-top: 50px;
font-family: monospace;
font: courier;
font-weight: bold;
color: #3A3431
}
#pie{
position: absolute;
bottom: 2px;
right: 5px;
font-family: monospace;
font: courier;
}
En el directorio /archivos solo hay el gif de carga y el favicon con la cara de slime que tiene la web.
Saludos  :)
« Última modificación: Abril 16, 2016, 12:09:03 pm por zizau »


Respuesta #5 Abril 16, 2016, 12:21:13 pm

Alfomega




  • Conectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Ingeniero informático
  • Actividad

  • 10%
  • Logros

Más información

Para usar php tienes que lanzarlo desde un servidor (no vale doble clic en el archivo como con los documentos html) y el archivo ha de ser .php, no .html
Y el código va en el body.

A lo que me refiero a evitar que lo modifiquen es que con JS puedes darle a inspeccionar elemento y modificar lo que quieras desde el navegador, cualquiera puede.


Respuesta #6 Abril 16, 2016, 01:16:33 pm

zizau




  • Desconectado

  • *

    • *
    • *
    • *
  • Mensaje personal
    Me gustan las neveras
  • Actividad

  • 0%
  • Logros

Más información

Para usar php tienes que lanzarlo desde un servidor (no vale doble clic en el archivo como con los documentos html) y el archivo ha de ser .php, no .html
Y el código va en el body.

A lo que me refiero a evitar que lo modifiquen es que con JS puedes darle a inspeccionar elemento y modificar lo que quieras desde el navegador, cualquiera puede.

Aaah ok, gracias, ahora ya lo entiendo mejor lo que decías de alterarlo y ya veo que si pulsas F12, inspeccionas el elemento o pulsas Ctrl + U, solo ves la frase que esta en pantalla y no toda la lista, que es lo que se veía cuando usaba Java Script.
Ya he actualizado la web y lo he puseto en PHP con el código que me dijistes.
¡Gracias por resolver mis dudas y ayudarme!
« Última modificación: Mayo 08, 2016, 04:28:57 pm por zizau »



Share via delicious Share via digg Share via facebook Share via furl Share via linkedin Share via myspace Share via reddit Share via stumble Share via technorati Share via twitter

smiley
¿Qué les parece mi pagina? ElixirsCraft

Iniciado por MiguelMiincc

5 Respuestas
241 Vistas
Último mensaje Agosto 13, 2017, 12:29:00 am
por rickinmbi
xx
Programas para empezar una pagina web?

Iniciado por SkycageDraw

5 Respuestas
1796 Vistas
Último mensaje Abril 14, 2017, 12:54:16 pm
por krlos_
xx
Página con stats, y demás no muy bien montada.

Iniciado por EvilGooD

1 Respuestas
680 Vistas
Último mensaje Abril 06, 2014, 10:24:12 pm
por Doc
xx
[Jquery] Página Coming Soon con cuenta atras

Iniciado por MadeInYourWorld

0 Respuestas
864 Vistas
Último mensaje Julio 03, 2014, 09:36:23 pm
por MadeInYourWorld