kostenloser Webspace werbefrei: lima-city


php Zeitvergleich

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    loric

    loric hat kostenlosen Webspace.

    Also ich schreib grad ein art Newsscript,
    bei der Eingabe wird das datum in TT.MM.JJJJ eingelesen,
    und dann in timestam umgewandelt. Dann werden Tite, dieser timestamp und der Text an eine 2te Datei ?bergeben und diese tr?gt sie dann in die MySql DB ein.

    Bei der Ausgabe wird verglichen ob der heutige timestamp gr??er is und wenn das der Fall is wird diese news gar nicht angezeigt.
    das Problem ist aber das er auch nichtmehr angezeigt wird wenn die News heute sind.

    Eintragen:

    $day = 0;
    $month = 0;
    $year = 0;

    $datumie = $HTTP_POST_VARS["datumie"];
    list($day, $month, $year) = sscanf($datumie,"%d.%d.%d");
    $datum = mktime(0,00,00,$month,$day,$year);
    $title = $HTTP_POST_VARS["title"];
    $text = $HTTP_POST_VARS["text"];
    $name = $HTTP_POST_VARS["name"];
    $date = $HTTP_POST_VARS["date"];
    $eintrag = "INSERT INTO $table (id, date, title, text, name, datum) VALUES ('', '$date', '$title', '$text', '$name', '$datum')";

    $eintragen = mysql_query($eintrag);



    Ausgabe:

    $abfrage = "SELECT * FROM $table ORDER BY datum LIMIT 18";
    $ergebnis = mysql_query($abfrage);
    $tage = array("So","Mo","Di","Mi","Do","Fr","Sa");

    $akttimest = time();

    while($row = mysql_fetch_object($ergebnis))
    {
    $am = 0;
    $bis = 0;

    if ($row-> datum < $akttimest)
    { echo "";
    }
    else {
    $bis = 0;
    $am = 0;
    $am = date("d.m.Y",$row-> date);
    $t = date("w",$row-> datum);
    $bis = $tage[$t];
    $bis .= " ";
    $bis .= date("d.m.Y",$row-> datum);
    echo "
    <table width='70%' border='0' cellspacing='4'>
    <tr>
    <td width='25%'>
    <b> ",$bis,"</b>
    </td>
    <td width='75%'>
    <b> ",$row-> title,"</b>
    </td>
    </tr>
    <tr>
    <td> </td>
    <td align='justify'>
    ",$row-> text,"
    </td>
    </tr>
    <tr>
    <td> </td>
    <td> <font size='-1'> <i> geschrieben am
    ",$am,"
    von:
    ",$row-> name,"
    </i> </font> </td>
    </tr>
    </table>
    <br>
    ";
    }
    }
    mysql_free_result($ergebnis);


    wie kann ichs machen das er mir die noch anzeigt bis der Tag vor?ber ist ?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Statt:
    ...
    if ($row-> datum < $akttimest)
    { echo "";
    }
    ...

    Besser:
    ...
    if ($akttimest > $row->datum)
    { echo "";
    }
    ...
  4. Autor dieses Themas

    loric

    loric hat kostenlosen Webspace.

    Versteh nicht wieso des klappen sollte, is ja nur die inverse operation der vorhandenen oder?

    naja ich pobiers ....

    ?: ohne erfolg.
  5. Hoppla!

    Du hast recht!

    Ich habe mir deinen Post nochmal genau durchgelesen. Das Problem ist, wie du den heutigen Timestamp ermittelst:
    time() gibt einen Timestamp zur?ck, der auch die Stunden, Minuten und Sekunden enth?lt. Beim Timestamp, den du in die Datenbank schreibst, sind diese Werte auf Null gesetzt. Daher wird bei einem Vergleich der aktuelle Timestamp mit time() immer gr??er sein als der Timestamp einer Datei von heute um 0.00 Uhr.

    MfG
    alopex
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!