seizoen naar het scherm schrijven
chth - 14/09/2009 19:20 (laatste wijziging 14/09/2009 19:22)
Lid
hallo
ik ben nog maar net begonnen met php, maar ik heb een probleempje met het seizoen naar het scherm te schrijven
hier is mij code:
<?php
$maand = date("d-m");
if ($maand <= date("21-3"))
{
$seizoen = "lente";
}
elseif ($maand <= date("21-6"))
{
$seizoen = "zomer";
}
elseif ($maand <= date ("21-9"))
{
$seizoen = "herfst";
}
elseif ($maand <= date("21-12"))
{
$seizoen = "winter";
}
echo("<h3>Dat betekent dat het $seizoen is!</h3><br>\n");
?>
<?php
if ( $maand <= date ( "21-3" ) ) {
$seizoen = "lente" ;
}
elseif ( $maand <= date ( "21-6" ) ) {
$seizoen = "zomer" ;
}
elseif ( $maand <= date ( "21-9" ) ) {
$seizoen = "herfst" ;
}
elseif ( $maand <= date ( "21-12" ) ) {
$seizoen = "winter" ;
}
echo ( "<h3>Dat betekent dat het $seizoen is!</h3><br>\n " ) ; ?>
kan iemand mij helpen?
Marten schreef:
In het vervolg even de code tags gebruiken voor je code oke?
25 antwoorden
Gesponsorde links
marten - 14/09/2009 19:23
Beheerder
Wat verwacht je op je scherm en wat krijg je op je scherm? Je stelt namelijk niet echt een probleemstelling
chth - 14/09/2009 19:25
Lid
ik wil da het seizoen naar het scherm wordt geschreven, maar met deze code wordt er getoont dat het lente is
chth - 14/09/2009 19:32
Lid
ok
bedankt maar ik zal wel nog een beetje moeten zoeken hoe deze functie werkt.
chth - 14/09/2009 19:38 (laatste wijziging 15/09/2009 17:56)
Lid
ik heb nu ook nog even snel dit geprobeerd:
<?php
if(date("d-m") <= date("21-3"))
{echo("winter");}
elseif (date("d-m") <= date("21-6"))
{echo ("lente");}
elseif (date("d-m") <= date ("21-9"))
{echo("zomer");}
elseif (date ("d-m") <= date("21-12"))
{echo("herfst");}
?>
maar dan komt er op mijn scherm dat het WINTER is
marten - 14/09/2009 19:41 (laatste wijziging 14/09/2009 19:41)
Beheerder
Heb je me melding gelezen in je start post? Even aan de regels houden oke?
<?php
if(date("d-m") <= strtotime("21-3"))
{echo("winter");}
elseif (date("d-m") <= strtotime("21-6"))
{echo ("lente");}
elseif (date("d-m") <= strtotime("21-9"))
{echo("zomer");}
elseif (date ("d-m") <= strtotime("21-12"))
{echo("herfst");}
?>
en zo?
chth - 14/09/2009 19:44 (laatste wijziging 14/09/2009 20:13)
Lid
nee, er wordt nog steeds getoont dat het winter is, maar als ik de onderstaande code probeer dan wordt er getoont dat het herfst is :zoals het moet maar dan kloppen de data niet meer
<?php
$da = date("d-m");
switch ($da)
{
case $da <= "21-3":
$te = "herfst";
break;
case $da <= "21-6":
$te = "winter";
break;
case $da <= "21-9":
$te = "lente";
break;
case $da <= "21-12":
$te = "zomer";
default:
$te = "momenteel niet beschikbaar";
}
echo(" het huidige seizoen is: $te<br>\n");
<?
<?php
switch ( $da )
{
case $da <= "21-3" :
$te = "herfst" ;
break ;
case $da <= "21-6" :
$te = "winter" ;
break ;
case $da <= "21-9" :
$te = "lente" ;
break ;
case $da <= "21-12" :
$te = "zomer" ;
default :
$te = "momenteel niet beschikbaar" ;
}
echo ( " het huidige seizoen is: $te <br>\n " ) ; <?
Martijn - 14/09/2009 20:14
Crew PHP
en als je het andersom doen, eerst maand en dan jaar? dus
3-21,6-21,9-21,12-21
Amerikaanse tijden houden vaak dit format aan: yyyy mm dd
chth - 14/09/2009 20:18
Lid
zo werkt het ook zoals in de code die ik gegeven heb maar als de datum kleiner is of gelijk aan de 21ste van de derde maand dan zou het winter moeten zijn i.p.v. herfst
Martijn - 14/09/2009 20:22
Crew PHP
zet is boven je ifjes
echo date("21-3");
chth - 14/09/2009 20:31 (laatste wijziging 14/09/2009 20:32)
Lid
heb ik zonet gedaan en er werdt getoond dat het lente is, maar hoe kan ik dan het huidige seizoen naar het scherm schrijven?
StyxLabs - 15/09/2009 17:50
Nieuw lid
$maand = date(date("d-n", time()));
Beetje omslachtig, maar zo misschien?
chth - 15/09/2009 18:00
Lid
nee, als ik dit
$maand = date(date("d-n", time()));
erbij plaats dan wordt er getoond dat het nu winter is en dat klopt niet.
Abbas - 15/09/2009 20:09
Crew .NET
Volgende code die ik heb gemaakt werkt volledig:
<?php
//Zelf een datum maken om mee te testen
$date = mktime(0, 0, 0, 12, 20, 2009);
//Dag van het jaar ophalen
$day = date("z", $date);
//Kijken of het een schrikkeljaar is
//Ja? $x = 1, anders $x = 0
$x = date("L", $date);
//Controleren met if-statement en kijken welke dag het is
//En het juiste wegsvhrijven.. :)
if($day > 78 && $day < (171 + $x))
echo "Lente";
elseif($day > 170 && $day < (263 + $x))
echo "Zomer";
elseif($day > 262 && $day < (354 + $x))
echo "Herfst";
else
echo "Winter";
?>
<?php
//Zelf een datum maken om mee te testen
$date = mktime ( 0 , 0 , 0 , 12 , 20 , 2009 ) ; //Dag van het jaar ophalen
//Kijken of het een schrikkeljaar is
//Ja? $x = 1, anders $x = 0
//Controleren met if-statement en kijken welke dag het is
//En het juiste wegsvhrijven.. :)
if ( $day > 78 && $day < ( 171 + $x ) )
elseif ( $day > 170 && $day < ( 263 + $x ) )
elseif ( $day > 262 && $day < ( 354 + $x ) )
else
?>
chth - 15/09/2009 20:24
Lid
beste
bedankt voor reactie, nu wordt er inderdaad getoond dat het herfst is.
maar moet ik eigenlijk nog iets wijzigen zodat de huidige datum wordt gekozen en niet de zelf aangemaakte datum?
Raze - 15/09/2009 20:40
PHP beginner
of gewoon via date("z") op dag v/h jaar kijken
Abbas - 15/09/2009 20:53
Crew .NET
@chth: maak dan van de eerste regel in m'n script het volgende:
$date = mktime(0, 0, 0, date("n"), date("j"), date("Y"));
@Raze: kijk eens naar m'n script...
Koen - 15/09/2009 20:58
PHP expert
titjes schreef:
@chth: maak dan van de eerste regel in m'n script het volgende:
[..code..]
@Raze: kijk eens naar m'n script...
Of gewoon PHP.net: time ?
Raze - 15/09/2009 22:34
PHP beginner
@titjes: enkel z is voldoende
<?php
// Season of year script
// Copyright Kyle Stewart 2006
$season = date("z");
if ($season <= 164 and $season >= 70) {
$m_season = "Spring";
} else {
if ($season <= 295 and $season >= 165) {
$m_season = "Summer";
} else {
if ($season <= 327 and $season >= 296) {
$m_season = "Autumn";
} else {
$m_season = "Winter";
}
}
}
// End of season of year
?>
<?php
// Season of year script
// Copyright Kyle Stewart 2006
if ( $season <= 164 and $season >= 70 ) {
$m_season = "Spring" ;
} else {
if ( $season <= 295 and $season >= 165 ) {
$m_season = "Summer" ;
} else {
if ( $season <= 327 and $season >= 296 ) {
$m_season = "Autumn" ;
} else {
$m_season = "Winter" ;
}
}
}
// End of season of year
?>
http://kylste.coolinc.info /
Koen - 15/09/2009 22:39
PHP expert
Wat is dat voor een belabberd script...
<?php
$season = date("z");
if ($season <= 164 && $season >= 70)
{
$m_season = "Spring";
} elseif ($season <= 295 && $season >= 165)
{
$m_season = "Summer";
} elseif ($season <= 327 && $season >= 296)
{
$m_season = "Autumn";
} else
{
$m_season = "Winter";
}
?>
<?php
if ( $season <= 164 && $season >= 70 )
{
$m_season = "Spring" ;
} elseif ( $season <= 295 && $season >= 165 )
{
$m_season = "Summer" ;
} elseif ( $season <= 327 && $season >= 296 )
{
$m_season = "Autumn" ;
} else
{
$m_season = "Winter" ;
}
?>
Raze - 15/09/2009 22:47
PHP beginner
belabberd script, dat wel, maar het toont wel aan dat enkel date("z") voldoende is.
marten - 16/09/2009 10:58
Beheerder
function GetSeason() {
$SeasonDates = array('/12/21'=>'Winter','/09/21'=>'Autumn','/06/21'=>'Summer','/03/21'=>'Spring','/12/31'=>'Winter');
foreach ($SeasonDates AS $key => $value) {
$SeasonDate = date("Y").$key;
if (strtotime("now") > strtotime($SeasonDate)) {
return $value;
}
}
}
echo GetSeason();
function GetSeason( ) {
$SeasonDates = array ( '/12/21' => 'Winter' , '/09/21' => 'Autumn' , '/06/21' => 'Summer' , '/03/21' => 'Spring' , '/12/31' => 'Winter' ) ; foreach ( $SeasonDates AS $key => $value ) {
$SeasonDate = date ( "Y" ) . $key ; return $value ;
}
}
}
@http://www.geekpedia.com/code152_Get-The-Current-Season.html
Gesponsorde links
Dit onderwerp is gesloten .