Weer-script
Met dit script kun je gemakkelijk bijhouden wat voor weer het is. Natuurlijk is er ook een mogelijkheid om de Actuele temperatuur bij te houden (Tact, T = Temperatuur, act = actueel), maar dan moet je wel zo'n termogeval hebben die buiten staat of hangt, die zijn soms goedkoop te krijgen bij van die winkelketens. Het script maakt gebruik van een database, en telkens roept hij de laatste record op. Ook heb ik gedacht aan het feit dag/nacht, dit moet je even instellen wanneer het licht/donker is. Want in de zomer is er een behoorlijk verschil vergeleken met de winter ;-) De Icons De icons kun je hier downloaden. Maak in de map waar weer.php staat een mapje 'weer' aan, met daarin de icons. Mirror Transparante icons, wel in Firefox, niet in IE In Internet Explorer zijn de png's niet transparant en zul je een grijze achtergrond zien bij icons, deze kun je weghalen met dit scriptje: png.js. Deze moet je in dezelfde map zetten waarin ook weer.php staat! Voorbeeld adminpanel:
De sql table:
[code]
CREATE TABLE `weer` (
`id` int(4) NOT NULL auto_increment,
`weertype` char(1) NOT NULL default '',
`beschrijving` text NOT NULL,
`datum` varchar(16) NOT NULL default '',
`Tact` varchar(5) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
[/code]
Weer.php
[code]<script src="png.js" language="javascript"></script>
<?php
// Connecten!
mysql_connect("localhost", "jegebruikersnaam", "wachtwoord") or die("Connectie met Database mislukt");
mysql_select_db("jedatabase") or die("Fout bij het selecteren van de database");
// Instellingen?
$opgang = "7"; // zo laat gaat de zon op
$ondergang = "20"; // zo laat is de zon weer onder
// Even die vreselijke times new roman weg stylen ^^
echo "<style>\n\tbody{\n\t\tfont-family:trebuchet ms,verdana,arial,tahoma;\n\t}\n</style>\n\n";
// Eerst even de titel van de pagina laten zien dan maar..
echo '<span style="font-size:20px; font-weight:bold;">Het Weer Vandaag!</span><br />';
// Natuurlijk willen we de broncode ook een beetje overzichtelijk laten, vandaar allemaal \n en \t!
echo "\n\n";
// Selecteer de laatste rij uit de database
$select = "SELECT * FROM weer ORDER BY datum DESC, id DESC LIMIT 1";
$query = mysql_query($select);
// Alles in een array zetten
$array = mysql_fetch_array($query);
// Kleine *kuch* case waarin weertype's in de database worden gekoppeld aan een plaatje.
switch($array['weertype']){
case 'a':
$img = "bewolkt.png";
$bes = "Bewolkt";
break;
case 'b':
// Hier kijken we of er een zon of een maan in het plaatje moet komen (overdag/nacht)!
// Er staat ingesteld (standaart) dat vanaf 7 uur 's ochtends tot 20 uur 's avonds de zon op is.
// Dit kun je bovenin instellen!
if((date('H') < $opgang) || (date('H') > $ondergang)){
$img = "bewolktmaan.png";
}else{
$img = "bewolktzon.png";
}
$bes = "Hier en daar wat bewolking";
break;
case 'c':
if((date('H') < $opgang) || (date('H') > $ondergang)){
$img = "buien_maan.png";
}else{
$img = "buien.png";
}
$bes = "Regenbuien gehad";
break;
case 'd':
$img = "hagel.png";
$bes = "Buien met hagel";
break;
case 'e':
if((date('H') < $opgang) || (date('H') > $ondergang)){
$img = "onweersbuien_maan.png";
}else{
$img = "onweersbuien.png";
}
$bes = "Onweersbuien";
break;
case 'f':
$img = "regen.png";
$bes = "Langdurige regen";
break;
case 'g':
$img = "regenonweer.png";
$bes = "Veel regen met onweer";
break;
case 'h':
$img = "regensneeuw.png";
$bes = "Regen met natte sneeuw";
break;
case 'i':
$img = "sneeuw.png";
$bes = "Sneeuw(buien)";
break;
case 'j':
if((date('H') < $opgang) || (date('H') > $ondergang)){
$img = "maan.png";
}else{
$img = "zon.png";
}
$bes = "Onbewolkt";
break;
case 'k':
$img = "mist.png";
$bes = "Mist";
break;
case 'm':
if((date('H') < $opgang) || (date('H') > $ondergang)){
$img = "sluierbewolking_maan.png";
}else{
$img = "sluierbewolking.png";
}
$bes = "Sluierbewolking";
break;
}
echo '<img src="weer/' . $img . '">';
echo "<br />\n<table>\n\t<tr>\n\t\t<td><b>Temperatuur Actueel:</b></td>\n\t\t<td>" . $array['Tact'] . "°C</td>\n\t</tr>";
echo "\n\t<tr>\n\t\t<td><b>Beschrijving:</b></td>\n\t\t<td>";
if(strlen($array['beschrijving']) < 1){
echo $bes;
}else{
echo $array['beschrijving'];
}
echo "</td>\n\t</tr>";
$datumtijd = explode(".", $array['datum']);
echo "\n\t<tr>\n\t\t<td><b>Laatste update:</b></td>\n\t\t<td>" . $datumtijd[2] . "-" . $datumtijd[1] . "-" . $datumtijd[0] . " om " . $datumtijd[3] . ":" . $datumtijd[4] . "</td>\n\t</tr>\n\t<tr>\n\t\t<td><b>Actuele tijd:</b></td>\n\t\t<td>" . date('H:i') . "</td>\n\t</tr>\n</table>";
?>
[/code]
Admin.php:
[code]
<?php
// Connecten!
mysql_connect("localhost", "jegebruikersnaam", "wachtwoord") or die("Connectie met Database mislukt");
mysql_select_db("jedatabase") or die("Fout bij het selecteren van de database");
if($_GET['actie'] == 'toevoegen'){
if($_SERVER['REQUEST_METHOD'] == "POST"){
$insert = "INSERT INTO weer (weertype, beschrijving, tact, datum) VALUES ('" . $_POST['weertype'] . "', '" . $_POST['beschrijving'] . "', '" . $_POST['tact'] . "', '" . date('Y.m.d.H.i') . "')";
$res = mysql_query($insert);
if($res){
echo 'Toegevoegd!';
}else{
echo 'Toevoegen mislukt.. probeer het opnieuw!';
}
}else{
?>
<a href="javascript:history.back(-1)">« Terug</a><br /><br />
<form action="<?php echo $_SERVER['PHP_SELF'] . '?actie=toevoegen'; ?>" method="post">
<table>
<tr>
<td>Weertype:</td>
<td><select name="weertype">
<option value="a">Bewolkt</option>
<option value="b">Hier en daar wat bewolking</option>
<option value="c">Buien</option>
<option value="d">Buien met hagel</option>
<option value="e">Onweersbuien</option>
<option value="f">Langdurige regen</option>
<option value="g">Veel regen met onweer</option>
<option value="h">Regen met natte sneeuw</option>
<option value="i">Sneeuw(buien)</option>
<option value="j">Onbewolkt</option>
<option value="k">Mist</option>
<option value="m">Sluierbewolking</option>
</select>
</td>
</tr>
<tr>
<td>T<sub>act</sub>:</td>
<td><input type="text" size="5" name="tact" /></td>
</tr>
<tr>
<td>Beschrijving weertype:</td>
<td><textarea name="beschrijving" cols="40" rows="10"></textarea></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Toevoegen" /></td>
</tr>
</table>
<?php
}
}else{
echo '<b>Acties:</b><br />';
echo "\n";
echo '<a href="?actie=toevoegen">Toevoegen</a><br />';
echo "\n";
}
?>
[/code]
Reacties
0