Jump to content

[TUT|PHP|Script] Welkoms-script (Tijds-gestuurd)


Recommended Posts

Geplaatst:

Dag dag iedereen. Mijn eerste script nu ik moderator hier in de Computer Talk fora ben.

Een simpel Welkoms-script die kijkt hoelaat het is en laat bijv. 'Goedenmiddag' zien.

Pagina waar je PHP script wilt hebben (Extensie: '*.php').

<?php
$Uur = date("G", time()) + 1;
if($Uur >= "18" || $Uur < "6")
{
echo "Goeden nacht (Snurk...)";  // Tussen 18 en 6 uur
}
elseif($Uur >= "6" && $Uur < "12")
{
echo "Goeden morgen";  // Tussen 6 en 12 uur
}
elseif($Uur >= "12" && $Uur < "18")
{
echo "Goeden middag ";  // Tussen 12 en 18 uur
}
?>

Succes.

  • 3 years later...
Geplaatst: (bewerkt)

Jarno is dan we geblokkeerd maar bij mij werkt het script niet, hij geeft altijd 'Goedemiddag' weer, ik heb het script ietsjes bewerkt (nog een tijd erbij):

<?php
				$Uur = date("G", time()) + 1;
				if($Uur >= "23" || $Uur < "6")
				{
						echo "Goedennacht en welkom op de site van Hillway! ";  // Tussen 18 en 6 uur
				}
				elseif($Uur >= "6" && $Uur < "12")
				{
						echo "Goedenmorgen en welkom op de site van Hillway! ";  // Tussen 6 en 12 uur
				}
				elseif($Uur >= "12" && $Uur < "18")
				{
						echo "Goedenmiddag en welkom op de site van Hillway! ";  // Tussen 12 en 18 uur
				}
									elseif($Uur >= "18" && $Uur < "23")
				{
						echo "Goedenavond en welkom op de site van Hillway! ";  // Tussen 12 en 18 uur
				}
?>

Iemand die misschien een oplossing weer? :)

Bewerkt: door Zamg0d1
Geplaatst:

Misschien moet je in eerste instantie eens $Uur printen, om te kijken of het overeenkomt met je lokale tijd. Aan de hand daarvan kun je misschien al het een en ander aanpassen.

Verder moet je in die vergelijkingen getallen zetten, geen letterreeksen:

<?php
// laat date() dat extra uurtje maar uitvogelen, krijg je ook geen problemen met getallen hoger dan 24...
$Uur = date("G", time()+(1*3600));

// even kijken wat $Uur precies geeft, alleen om te testen dus kan later weg
echo('het uur is nu: '.$Uur);

if($Uur >= 23 || $Uur < 6) {
   echo "Goedenacht en welkom op de site van Hillway! ";  // Tussen 23 en 6 uur
}
elseif($Uur >= 6 && $Uur < 12) {
   echo "Goedemorgen en welkom op de site van Hillway! ";  // Tussen 6 en 12 uur
}
elseif($Uur >= 12 && $Uur < 18) {
   echo "Goedemiddag en welkom op de site van Hillway! ";  // Tussen 12 en 18 uur
}
elseif($Uur >= 18 && $Uur < 23) {
   // alleen goedenavond is met een tussen-n, de rest is zonder
   echo "Goedenavond en welkom op de site van Hillway! ";  // Tussen 18 en 23 uur
}
?>

Geplaatst:

...

Jeej, het werkt :D Alleen geeft ie nu aan dat het 14 uur is ipv 13... Dus heb ik '+(1*3600)' weg gehaald en nu werkt het wel :)
Geplaatst: (bewerkt)

Als dat extra uur niet nodig is, is de hele 2e parameter in principe ook niet nodig.

$Uur = date("G");

Als 2e parameter wordt dan automatisch de waarde van time() genomen.

Op deze manier is het waarschijnlijk sneller, omdat je een functie-aanroep minder hebt. (niet veel, maar toch)

Bewerkt: door marcootje

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...