dynamischer haken
lima-city → Forum → Die eigene Homepage → Homepage Allgemein
auf
auftritt
auge
befehl
beitrag
date
fehler
geschweiften klammer
haken
jahr
klappe
logischen fehler
meinung
monat
operator
schick mal
variable
vergleich
versuchen
verzweigung
-
hi leute ich versuche schon vergeblich eine winzig kleines php script zu schreiben aber bei mir will es nicht klappen...
ich m?chte bei auftritten, wenn der termin vorbei ist ein keinen haken davor setzten wie es jetzt schon da ist (aber leider nicht dynamisch)
wie kann ich das am besten machen???
ich habe damit es immer versucht und bin der meinung es sei richtig
<?
if ($datum<"20.10.2005")
{
$haken = "<img src="img/hakchen_rot.gif>";
}
echo $haken;
?>
was ist daran jetzt falsch???
gru?
chris -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
hi leute ich versuche schon vergeblich eine winzig kleines php script zu schreiben aber bei mir will es nicht klappen...
ich m?chte bei auftritten, wenn der termin vorbei ist ein keinen haken davor setzten wie es jetzt schon da ist (aber leider nicht dynamisch)
wie kann ich das am besten machen???
ich habe damit es immer versucht und bin der meinung es sei richtig
<?
if ($datum<"20.10.2005")
{
$haken = "<img src="img/hakchen_rot.gif>";
}
echo $haken;
?>
was ist daran jetzt falsch???
gru?
chris
Schick mal das komplette Skript, du hast die Variable $datum doch auch definiert oder? Und ich bin mir nicht sicher ob man das einfach mit 20.10.2005 vergleichen kann, zudem fehlt doch auch der else Teil oder?
EDIT: Das geht ?brigens nicht mit dem "<img... wegen den anf?hrungszeichen! Also benutz die einfachen anf?hrungszeichen...
Beitrag ge?ndert am 12.11.2005 21:21 von ******* -
hi leute ich versuche schon vergeblich eine winzig kleines php script zu schreiben aber bei mir will es nicht klappen...
ich m?chte bei auftritten, wenn der termin vorbei ist ein keinen haken davor setzten wie es jetzt schon da ist (aber leider nicht dynamisch)
wie kann ich das am besten machen???
ich habe damit es immer versucht und bin der meinung es sei richtig
<?
if ($datum<"20.10.2005")
{
$haken = "<img src="img/hakchen_rot.gif>";
}
echo $haken;
?>
was ist daran jetzt falsch???
gru?
chris
$haken = "<img src="img/hakchen_rot.gif>"; das ist falsch!
so: $haken = "<img src=\"img/hakchen_rot.gif\">"; -
Du kannst keine zwei Strings mit Operatoren vergleichen, und da diese in Anf?hrungsstrichen definiert sind, kannste die Variable Datum nicht als Integer verwenden.
Am Besten du deffinierst den Tag, den Monat und das Jahr einzelnd und kannst diese dann per IF-Verzweigung ?berpr?fen.
Oder du zerlegst $darum in drei Teile und ?berpr?fst sie jeweils einzelnd.
Beitrag ge?ndert am 13.11.2005 00:03 von trueweb -
schon mal was von PHP geh?rt?
$haken = "<img src="img/hakchen_rot.gif>"; --> FEHLER!
$haken = '<img src="img/hakchen_rot.gif">'; --> KEIN FEHLER!
Der Parser w?rde sonst bis zum schlusszeichen lesen und dann das dahinter (img/hakchen_rot.gif>) als n?chster befehl suchen.
if ($datum<"20.10.2005")
So lange du in $datum auch dieses Format hast, dann sollte dies funktionieren, aber ich w?rde doch lieber den Tag, der Monat und das Jahr einzeln oder in verbingung mit AND ?berpr?fen...
mfg HP -
$haken = '<img src="img/hakchen_rot.gif">';
habe ich gemacht, funktioniert auch
aber
es wird bei allen terminen ein haken gesetzt...
ist ein bischen doof so
$datum habe ich so deklariert:
<?
$timestamp = time();
$datum = date("d.m.Y",$timestamp);
?>
wie sollte ich es eurer meinung nach besser machen (ich bin erst dabei php zu lernen)
gru? chris -
nur mal rein von der Logik her hat das Script in meinen Augen zwei Fehler.
1.) (wurde bereits erw?hnt):
Du kannst keinen kleiner-als-Operator auf einen String anwenden!
du k?nntest h?chstens sagen: $datum < 10
aber nicht: $datum < "string"
Da du oben im Script das Datum in Anf?hrungszeichen gesetzt hast, ist es ein Strng geworden!
Du m?sstest also in der Tat darauf zur?ckgreifen, alle Teile des Datums einzeln zu verwenden.
Es gibt aber noch eine m?glichkeit.
Du m?sstest vom Termindatum einen timestamp anlegen und nun per PHP diesen timestamp mit der aktuellen Zeit vergleichen!
Bei entsprechender Differenz (<0) wird dann der Haken gesetzt.
[?dit: je l?nger ich dr?ber nachdenke, desto unwahrscheinlicher erscheint mir mein L?sungsvorschlag. Probier es einfach mal aus....]
2.) In meinen Augen handelt es sich um einen logischen fehler: der echo-Befehl steht nach der geschweiften Klammer, geh?rt also schon nicht mehr zur if-struktur. Demnach wird die Variable $haken immer ausgegeben, egal ob das Datum so aussieht oder nicht.
Nur der Inhalt der Vaiable ist nun abh?ngig von der if-struktur. in meinen Augen ist das logisch falsch.
die Verkn?pfung zum bild geh?rt nicht unbedingt in die if-struktur, da sie sich ja nicht ?ndert; statt dessen sollte dort der echo-befehl rein, damit der haken nur in Abh?ngigkeit vom Datum gesetzt wird, und nicht immer.
Viel Erfolg noch...
Gru?
Sven
Beitrag ge?ndert am 15.11.2005 14:56 von ssd_bonn -
auf diese umst?ndliche^^ art sollte es gehen:
<?
$timestamp = time();
$datum_d = date("d",$timestamp);
$datum_m = date("m",$timestamp);
$datum_y = date("Y",$timestamp);
$datum = $datum_d + $datum_m + $datum_y;
$datum2_d = 20
$datum2_m = 10
$datum2_y = 2005
$datum2 = $datum2_d + $datum2_m + $datum2_y;
if($datum<$datum2)
{
$haken = "<img src=\\"img/hakchen_rot.gif\\">";
}
echo $haken;
?>
2.) In meinen Augen handelt es sich um einen logischen fehler: der echo-Befehl steht nach der geschweiften Klammer, geh?rt also schon nicht mehr zur if-struktur. Demnach wird die Variable $haken immer ausgegeben, egal ob das Datum so aussieht oder nicht.
die variable wird zwar ausgegeben, aber sie hat keinen inhalt, da dieser ja nur im if-block definiert wird. somit kommt es aufs gleiche raus
Aber du hast recht.. es w?re besser wenn nur das echo im if-block stehen w?rde ;)
Beitrag ge?ndert am 15.11.2005 15:02 von shandris -
$haken = "<img src=\\"bla.gif\\">";
\\"
und nicht
$haken = "<img src="bla.gif">";
"
!!!!!!
Beitrag ge?ndert am 15.11.2005 15:01 von pervamon -
wieso denn so umst?ndlich mit $haken...
Ich w?rde einfach nur:
echo "<img ...>";
in die IF Bedingung reinschreiben...
Also so in etwa:
<?
if ($datum<"20.10.2005")
{
echo "<img src="img/hakchen_rot.gif>";
}
?>
Beitrag ge?ndert am 15.11.2005 15:04 von portalofhell -
<?
if ($datum<"20.10.2005")
{
echo "<img src="img/hakchen_rot.gif>";
}
?>
w?rde auch gehen...
noch besser w?re es wenn man es so machen w?rde
<?
$haken = "<img src=\\"img/hakchen_rot.gif\\">";
//...
if(x<y)
{
echo $haken
}
?>
da man es dann einfacher hat, wenn man den haken noch andernorts br?uchte ;)
Beitrag ge?ndert am 15.11.2005 15:12 von shandris -
hey leute es geht jetzt
ich danke euch allen f?r die m?he und besonders shandris!!! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage