Trainings script
viodf2 - 13/06/2007 09:04
|
Nieuw lid |
|
Hallo iedereen,
Ik ben net begonnen met scripten maar ik had een vraagje, waarom werkt deze code niet... wat moet ik veranderen.
<?php
/**
* @author Mark Verhoef
* @copyright 2007
*/
$wedstrijden = "zomerstop"
$datum = date("l d F Y");
// Vertaald de naam van de maand naar Nederlands.
$datum = str_replace("January", "Januari", $datum);
$datum = str_replace("February", "Februari", $datum);
$datum = str_replace("March", "Maart", $datum);
$datum = str_replace("April", "April", $datum);
$datum = str_replace("May", "Mei", $datum);
$datum = str_replace("June", "Juni", $datum);
$datum = str_replace("July", "Juli", $datum);
$datum = str_replace("August", "Augustus", $datum);
$datum = str_replace("September", "September", $datum);
$datum = str_replace("October", "Oktober", $datum);
$datum = str_replace("November", "November", $datum);
$datum = str_replace("December", "December", $datum);
// Vertaald de naam van de dag naar Nederlands.
$datum = str_replace("Monday", "Maandag", $datum);
$datum = str_replace("Tuesday", "Dinsdag", $datum);
$datum = str_replace("Wednesday", "Woensdag", $datum);
$datum = str_replace("Thursday", "Donderdag", $datum);
$datum = str_replace("Friday", "Vrijdag", $datum);
$datum = str_replace("Saturday", "Zaterdag", $datum);
$datum = str_replace("Sunday", "Zondag", $datum);
if ($datum == "Maandag")
{
$message = "Trainen VIOD 1";
}
elseif ($datum == "Dinsdag")
{
$message = "Trainen VIOD 2";
}
elseif ($datum == "Woensdag")
{
$message = "Trainen VIOD 3";
}
elseif ($datum == "Donderdag")
{
$message = "Trainen VIOD 4";
}
elseif ($datum == "Vrijdag")
{
$message = "Niks te doen"
}
elseif ($datum == "Zaterdag")
{
$message = "$wedstrijden"
}
else
{
$message = "Niks te doen"
}
echo $datum;
echo $message;
<?php /** * @author Mark Verhoef * @copyright 2007 */ $wedstrijden = "zomerstop" $datum = date("l d F Y"); // Vertaald de naam van de maand naar Nederlands. $datum = str_replace("September", "September", $datum); // Vertaald de naam van de dag naar Nederlands. if ($datum == "Maandag") { $message = "Trainen VIOD 1"; } elseif ($datum == "Dinsdag") { $message = "Trainen VIOD 2"; } elseif ($datum == "Woensdag") { $message = "Trainen VIOD 3"; } elseif ($datum == "Donderdag") { $message = "Trainen VIOD 4"; } elseif ($datum == "Vrijdag") { $message = "Niks te doen" } elseif ($datum == "Zaterdag") { $message = "$wedstrijden" } else { $message = "Niks te doen" }
|
6 antwoorden
Gesponsorde links |
|
marten - 13/06/2007 09:06 (laatste wijziging 13/06/2007 09:08)
|
Beheerder |
|
Krijg je foutmeldingen ? Krijg je een leeg scherm? Wat verwacht je? Wat komt er?
<?php
elseif ($datum == "Vrijdag")
{
$message = "Niks te doen"
}
?>
<?php elseif ($datum == "Vrijdag") { $message = "Niks te doen" } ?>
Hier mis je een ; na niks te doen. Dit soort probleempjes kan je makkelijk oplossen door een goede php editor te gebruiken. |
Wijnand - 13/06/2007 09:07
|
Moderator |
|
wat werkt er niet dan? |
marten - 13/06/2007 09:10
|
Beheerder |
|
Alles is goed dus maar vanaf vrijdag moet je even vervangen door het volgende:
<?php
elseif ($datum == "Vrijdag")
{
$message = "Niks te doen";
// ; vergeten
}
elseif ($datum == "Zaterdag")
{
$message = $wedstrijden;
// ; vergeten en variabelen hoeven geen quotes om.
}
else
{
$message = "Niks te doen";
// ; vergeten
}
?>
<?php elseif ($datum == "Vrijdag") { $message = "Niks te doen"; // ; vergeten } elseif ($datum == "Zaterdag") { $message = $wedstrijden; // ; vergeten en variabelen hoeven geen quotes om. } else { $message = "Niks te doen"; // ; vergeten } ?>
|
Rens - 13/06/2007 09:49 (laatste wijziging 13/06/2007 09:49)
|
Crew algemeen |
|
Dit komt omdat er in $datum meerdere dingen staan, en niet alleen de dag.
Je hebt zoiets:
$datum = "Wednesday 13 June 2007";
$datum = "Wednesday 13 June 2007";
Je functie maakt er dan van:
$datum = "Woensdag 13 Juni 2007";
$datum = "Woensdag 13 Juni 2007";
Dus vergelijk je het zo:
"Woensdag 13 Jun 2007" == "Zaterdag"
"Woensdag 13 Jun 2007" == "Zaterdag"
Snap je wat ik bedoel? |
Koen - 13/06/2007 16:25
|
PHP expert |
|
Probeer het zo dan eens..
http://plaatscode.be/5634/
Ik heb
<?
if ($datum == "Maandag")
// veranderd in
if(preg_match("Maandag", $datum))
?>
<? if ($datum == "Maandag") // veranderd in ?>
Dit kan lukken denk ik.
|
Grayen - 13/06/2007 17:23
|
PHP ver gevorderde |
|
Ik zou het als volgt doen:
<?php
$sMatches = 'zomertop';
$iDate = time();
$aDays = array('maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag', 'zondag');
$aMonths = array('januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december');
$aDate = array();
$aDate[] = $aDays[(date('N', $iDate) - 1)]; # De -1 vanwege dat een array bij 0 begint en niet bij 1.
$aDate[] = date('j', $iDate); # De dag van de maand (vandaag dus 13).
$aDate[] = $aMonths[(date('n', $iDate) - 1)]; # De maand.
$aDate[] = date('Y', $iDate); # Het jaar.
switch($aDate[0]) # eerste key van de array is de dag.
{
case 'maandag':
$sMessage = 'Trainen VIOD 1';
break;
case 'dinsdag':
$sMessage = 'Trainen VIOD 2';
break;
case 'woensdag':
$sMessage = 'Trainen VIOD 3';
break;
case 'donderdag':
$sMessage = 'Trainen VIOD 4';
break;
# Vrijdag is gewoon de default, namelijk niks te doen.
case 'zaterdag':
$sMessage = $sWedstrijden;
break;
default:
$sMessage = 'Niks te doen';
break;
}
$sDate = implode(' ', $aDate);
echo $sDate;
echo $sMessage;
?>
<?php $sMatches = 'zomertop'; $aDays = array('maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag', 'zondag'); $aMonths = array('januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'); $aDate[] = $aDays[(date('N', $iDate) - 1)]; # De -1 vanwege dat een array bij 0 begint en niet bij 1. $aDate[] = date('j', $iDate); # De dag van de maand (vandaag dus 13). $aDate[] = $aMonths[(date('n', $iDate) - 1)]; # De maand. $aDate[] = date('Y', $iDate); # Het jaar. switch($aDate[0]) # eerste key van de array is de dag. { case 'maandag': $sMessage = 'Trainen VIOD 1'; break; case 'dinsdag': $sMessage = 'Trainen VIOD 2'; break; case 'woensdag': $sMessage = 'Trainen VIOD 3'; break; case 'donderdag': $sMessage = 'Trainen VIOD 4'; break; # Vrijdag is gewoon de default, namelijk niks te doen. case 'zaterdag': $sMessage = $sWedstrijden; break; default: $sMessage = 'Niks te doen'; break; } ?>
|
Gesponsorde links |
|
Dit onderwerp is gesloten. |
|