• 26.08.2025, 17:28
  • Register
  • Login
  • You are not logged in.

 

RedHead

Senior Member

Centerfunktion in PHP

Tuesday, January 25th 2005, 3:50pm

Malhlzeit Leute,

ich hab mir mit PHPKit ne Seite zusammen gezimmert. Dort hab ich ein fertiges Countdownscript reingebastelt, das soweit auch funktioniert. Leider wird der Text vom Countdown linksbündig angezeigt. Wie kann ich das Zentriert ausgeben? Hab von HTML kein Ahnung und von PHP noch viel weniger :-/

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?
    $today = date("w");
    if($today == 0) $today = 7;
    $wa = 1;
    $wa -= $today;
    $wa_day = dateadd("w", $wa, time());
    $we = dateadd("w", 4, $wa_day); //Freitag
    $tag = "01";
    $monat = "03";
    $jahr = "2005";

$stunde = 0; //Stunde
$minute = 00; //Minute
$sekunde = 00; //Sekunden
$target = mktime($stunde,$minute,$Sekunden,$monat,$tag,$jahr);
$diff = $target - time();
$days = ($diff - ($diff % 86400)) / 86400;
$diff = $diff - ($days * 86400);
$hours = ($diff - ($diff % 3600)) / 3600;
$diff = $diff - ($hours * 3600);
$minutes = ($diff - ($diff % 60)) / 60;
$diff = $diff - ($minutes * 60);
$seconds = ($diff - ($diff % 1)) / 1;
$countdown = "Es sind noch <b>$days</b> Tage, <b>$hours</b> Stunden, <b>$minutes</b> Minuten bis zum grossem Anlassen";
eval ("\$boxlinks[]= \"".$countdown."\";");
function DateAdd ($interval,  $number, $date) {

    $date_time_array  = getdate($date);

$hours =  $date_time_array["hours"];
$minutes =  $date_time_array["minutes"];
$seconds =  $date_time_array["seconds"];
$month =  $date_time_array["mon"];
$day =  $date_time_array["mday"];
$year =  $date_time_array["year"];

    switch ($interval) {
        case "w":
             $day+=$number;
            break;
    }
$timestamp =  mktime($hours ,$minutes, $seconds,$month ,$day, $year);
    return $timestamp;
}
?>


Hab schon einige Seiten durchgeforstet, aber werd einfach nicht schlau draus. Geht das überhaupt in dem Script selbst, oder muß das irgendwo im PHPKit geändert werden? Kann mir da einer von euch auf die Sprünge helfen?

Thx 4 Help

-RedHead

Shoggy

Sven - Admin

Re: Centerfunktion in PHP

Tuesday, January 25th 2005, 4:06pm

Änder die Zeile bei der Ausgabe ein wenig:

Source code

1
$countdown = "<div align=\"center\">Es sind noch <b>$days</b> Tage, <b>$hours</b> Stunden, <b>$minutes</b> Minuten bis zum grossem Anlassen</div>";

RedHead

Senior Member

Re: Centerfunktion in PHP

Tuesday, January 25th 2005, 4:25pm

Kommt nach dem Ändern leider eine Fehlermeldung:

Parse error: parse error, unexpected T_STRING in /www/htdocs/v093793/navigation/navbox.countdown.php(25) : eval()'d code on line 1

KDT-Slazer

Senior Member

Re: Centerfunktion in PHP

Tuesday, January 25th 2005, 4:28pm

Es gibt zusätzliche Quotes, die zur neuen Query kopiert werden.....

darum solltest du dich kümmern dann geht es ...

;)

WoW Status Magier / Mensch lvl 60 Berufe Schneidern 300 und Verzaubern 291 Erste Hilfe 300 server : Alextrasza(PVE) Charname : Portanius

RedHead

Senior Member

Re: Centerfunktion in PHP

Tuesday, January 25th 2005, 5:17pm

Quoted from "Slazer"

Es gibt zusätzliche Quotes, die zur neuen Query kopiert werden.....

darum solltest du dich kümmern dann geht es ...

;)



Da ich leider absolut keinen Plan davon hab, sagt mir das nicht wirklich etwas :'(

Rotring

Full Member

Re: Centerfunktion in PHP

Tuesday, January 25th 2005, 5:30pm

$countdown = "Es sind noch <b>$days</b> Tage, <b>$hours</b> Stunden, <b>$minutes</b> Minuten bis zum grossem Anlassen";
eval ("\$boxlinks[]= \"".$countdown."\";");


mit:
$countdown = "Es sind noch <b>" . $days . "</b> Tage, <b>" . $hours . "</b> Stunden, <b>" . $minutes . "</b> Minuten bis zum grossem Anlassen";

ersetzen...solte auf jeden gehen.
das aktuelle irgendwie umschreiben kann man auch , aber ka wie...

Y0Gi

God

Re: Centerfunktion in PHP

Tuesday, January 25th 2005, 7:06pm

- sowas kommt dabei raus, wenn man keine ahnung von single quotes hat
- zeitgemäß zum zentrieren ist <div style="text-align: center">...</div>. zudem gilt der erste punkt.
- das eval ist der reinste blödsinn, dass kann man auch ganz einfach ohne ausführen. zudem würde auch hier der erste punkt helfen.
- sprintf() ist auch toll.

versuch doch einfach mal:

Source code

1
$boxlinks[] = sprintf('<div style="text-align: center">Es sind noch <b>%d</b> Tage, <b>%d</b> Stunden, <b>%d</b> Minuten bis zum grossem Anlassen</div>', $days, $hours, $minutes);

Y0Gi

God

Re: Centerfunktion in PHP

Tuesday, January 25th 2005, 7:23pm

an dieser stelle ein verweis:
http://forum.aqua-computer.de/index.php?…&threadID=73472

Quoted from "Hayes"

[...]
Ich hab mir vor einiger Zeit mal ein kleines Countdown PHP Script gegoogelt, das "noch soundsoviel Tage bis..." anzeigt.
[...]

Source code

1
2
3
<?php
   print ("Noch " . (int) ((mktime (0,0,0,12,10,2004) - time(void))/86400) . " Tage");
?>

ich denke, das könnte so etwa für dich funktionieren:

Source code

1
2
3
4
5
6
7
8
9
10
// target
$day = 23;
$month = 3;
$year = 2005;

// time to go
$seconds = mktime(0, 0, 0, $month, $day, $year) - time();
$days = (int) ($timeleft / ($seconds * 60 * 60 * 24));
$hours = (int) ($timeleft / ($seconds * 60 * 60));
$minutes = (int) ($timeleft / ($seconds * 60));

hab dabei versucht, das verständlich zu schreiben und nicht zu optimieren. auf die performance kommt's wohl nich so an :)
den anderen sche*³ kannste dann man dezent wegwerfen.