terminscript erweitern
john18
- php
0 Marcus Hammel0 john18
0 Marian0 john18
0 Marian
Hallo, ich habe folgende dateien:
termine.txt
inhalt:
g#Montag, #21#02#2005#, #15#30# Uhr,#1#Bezeichnung der veranstalltung
...
script.php
inhalt:
<?php
$daten = file('termine.txt'); \ liest datei in array ein
$daten1= array_values($daten); \ ändert assoziatives array in
numerisch indiziertes array
$anzahl = array_keys($daten1); \ gibt die schlüssel des array
inhaltes zurück ( 012345 ...)
$zahlen = implode (",",$anzahl); \ fügt trennzeichens zwischen die
schlüssel (0,1,2,2,4,5...)
$treffer1 = strrchr($zahlen,","); \ sucht nach der stelle wo ","
das letztemal vorkommt und
gibt sie zurück
$treffer = substr($treffer1, 1); \ gibt zeichen nach dem
letzten "," zurück, in dem fall
eine zahl. nummer des letzten
arrays von $daten.
while ($treffer > -1) {
$anzeige = explode("#", $daten[$treffer--]);
$time = mktime($anzeige[6],$anzeige[7],00,$anzeige[3],$anzeige[2],$anzeige[4]);
$timeaktuell = time();
if ($time >$timeaktuell){include ("../ausgabe.php");}
} ?>
in der while schleife wird jedes element des arrays ($daten) in ein neues array getan, wobei # als
trennzeichen dient und alles was nach # kommt wird in das nächste element getan.
bei $time wird die unix zeit der aus der textdatei einnommen zeit errechnet.
$timeaktuell =aktuelle zeit
bei if wird geschaut ob der termin schon vorbei ist, wenn nein dann wird er ausgegeben.
nun soll aber noch der text "Keine bekannten Termine" erscheinen wenn die textdatei (termine.txt) leer ist , bzw. wenn alle termine vorbei sind
kann mir bitte jemand helfen und zeigen wie ich den schript erweitern muss damit das geht!?!
Habe dein Skript testweise angeworfen, Fehler:
Warning: Unexpected character in input: '' (ASCII=92) state=1 in /www/htdocs/v029452/test/termine.php on line 2
Warning: Unexpected character in input: '' (ASCII=92) state=1 in /www/htdocs/v029452/test/termine.php on line 2
Parse error: parse error, unexpected T_STRING in /www/htdocs/v029452/test/termine.php on line 2
MfG
Habe dein Skript testweise angeworfen, Fehler:
Warning: Unexpected character in input: '' (ASCII=92) state=1 in /www/htdocs/v029452/test/termine.php on line 2Warning: Unexpected character in input: '' (ASCII=92) state=1 in /www/htdocs/v029452/test/termine.php on line 2
Parse error: parse error, unexpected T_STRING in /www/htdocs/v029452/test/termine.php on line 2
MfG
bei mir geht es ohne probleme.
eigentlich dürfte das script bei dir nicht laufen, da dir die ausgabe datei fehlt.
haste nicht vielleicht doch eine idee die mir helfen könnte?
nun soll aber noch der text "Keine bekannten Termine" erscheinen wenn die textdatei (termine.txt) leer ist , bzw. wenn alle termine vorbei sind
Ich hab sowas noch nie gemachtm, aber mit file_get_contents($filename) kann man den inhalt einer Datei einlesen und dann mit empty() überprüfen, ob es leer ist.
$termine_txt = file_get_contents('termine,.txt');
if(empty($termine_txt))
{
echo 'Gibs nix';
}
else
{
//dein script mit dem auslesen und so
}
nun soll aber noch der text "Keine bekannten Termine" erscheinen wenn die textdatei (termine.txt) leer ist , bzw. wenn alle termine vorbei sind
Ich hab sowas noch nie gemachtm, aber mit file_get_contents($filename) kann man den inhalt einer Datei einlesen und dann mit empty() überprüfen, ob es leer ist.
$termine_txt = file_get_contents('termine,.txt');
if(empty($termine_txt))
{
echo 'Gibs nix';
}
else
{
//dein script mit dem auslesen und so
}
ist eine gute idee. aber was mache ich wenn die daten noch in der datei stehen, aber die termine schon vorbei sind?
ich kann keine datenbank benutzen, da mir keine zu verfügung steht.
termine.txt
inhalt:
g#Montag, #21#02#2005#, #15#30# Uhr,#1#Bezeichnung der veranstalltung
Warum machst du es eigentlich nicht mit MySQL (oder einer anderen Datenbank)?
Ich mach grad auch sowas ähnliches (mit veranstaltungen und so) und mit MySQL, geht bisher ganz gut. Über keine Veranstaltung hab ich mir noch keine Gedanken gemacht (kommt eigentlich auch nicht vor), aber das mach ich jetzt bald. Danke für die Idee!