Datensatz älter als 30 Tage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Datensatz älter als 30 Tage

    Ich möchte gerne feststellen ob ein Datensatz älter ist als 30 Tage und endsprechend durch Grafiken darstellen.

    Das Problem ist die ausgabe der richtigen Grafiken.
    Wenn der Datensatz älter ist als 30 Tage dann soll oldtopic.gif angezeigt werden wenn nicht dann newtopic.gif

    $date2 wird später durch $row['date'] das Datum aus dem Datensatz ersetzt.


    PHP-Code:
     $alter         "30";             // Legt das Alter des Eintrages fest
        
    $date1         date("d.m.Y");     // liefert das Aktuelle Datum
        
    $date2         "1.01.2004";         // wann der Datensatz angelegt wurde 
        
        
    list($day1,$month1,$year1)=explode(".",$date1);
        list(
    $day2,$month2,$year2)=explode(".",$date2);
        
    $tdate1=mktime(0,0,0,$month1,$day1,$year1);
        
    $tdate2=mktime(0,0,0,$month2,$day2,$year2);
        
        
    $diffdate     round(($tdate1-$tdate2)/86400);
        
        echo 
    "Zwischen dem  $date2 und dem $date1 liegen $diffdate Tage <br>";
        
        if (
    $diffdate<$alter)
        {
        echo 
    "<img src='images/oldtopic.gif' width='16' height='16'>";
        }
        else
        {
        echo 
    "<img src='images/newtopic.gif' width='16' height='16'>";
        } 
    in der ruhe liegt die kraft

  • #2
    warum postest du in sql?
    ich sehe nicht eine query in deinem code!

    *VERSCHIEB* nach php
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Re: Datensatz älter als 30 Tage

      Original geschrieben von maffy
      Das Problem ist die ausgabe der richtigen Grafiken.
      Wenn der Datensatz älter ist als 30 Tage dann soll oldtopic.gif angezeigt werden wenn nicht dann newtopic.gif
      vielleicht sagst du uns jetzt auch noch, wo das problem genau liegt?
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        außer dass du alt und neu vertauschst.

        Kommentar


        • #5
          Das Problem ist das er mir die Grafik für Neuen oder Älteren Beitrag nicht richtig anzeigt wenn ich ein Datum angebe das älter ist als 30 Tage.
          in der ruhe liegt die kraft

          Kommentar


          • #6
            Ok, so geht es.

            Code:
             $alter 		= "30"; 			// Legt das Alter des Eintrages fest
            	$date1 		= date("d.m.Y"); 	// liefert das Aktuelle Datum
            	$date2 		= "5.12.2003"; 		// wann der Datensatz angelegt wurde 
            	
            	list($day1,$month1,$year1)=explode(".",$date1);
            	list($day2,$month2,$year2)=explode(".",$date2);
            	$tdate1=mktime(0,0,0,$month1,$day1,$year1);
            	$tdate2=mktime(0,0,0,$month2,$day2,$year2);
            	
            	$diffdate 	= round(($tdate1-$tdate2)/86400);
            	
            	echo "Zwischen dem  $date2 und dem $date1 liegen $diffdate Tage <br>";
            	
            	if ($diffdate<$alter)
            	{
            	echo "<img src='images/on.gif' width='16' height='16'>";
            	}
            	if ($diffdate>$alter)
            	{
            	echo "<img src='images/oldtopic.gif' width='16' height='16'>";
            	}
            in der ruhe liegt die kraft

            Kommentar


            • #7
              Sorry, aber ich komme einfach nicht weiter.

              Ich habe das obige Script jetzt ein wenig geändert.

              Das Problem ist jetzt noch die ausgabe der Templates für die alten und neuen Dokumente in der Datenbank.

              Er gibt mir zweimal die Template für neue Dokumente aus mit Inhalt und einmal die Template für alte Dokumente ohne Inhalt.

              Eigendlich müsste er mir einmal alt und einmal neu anzeigen.

              Hier ist mal ein Link zu der Testseite


              PHP-Code:
              function PrintAllTopics() 
              {
                  
                  global 
              $db;
                  
              // ######## Tage zwischen Heute und dem Datum an dem der Datensatz angelegt worden ist  ###########

                  
              $sqltage $db->query(" SELECT *, TO_DAYS(NOW()) - TO_DAYS(datum) AS anztage FROM tut_dokument a ");
                  
                  
              $alter           "30";                              // Legt das Alter des Eintrages fest 
                  
              $diffdate         = ($sqltage[anztage]-$alter);        // Berechnet den Unterschied                  
                  
              // ######## Tutorials auslesen ###########    

                           
                  
              $db->query ("SELECT a.id,a.catid,a.userid,a.topic,a.visits,a.datum,
                                                 b.name,b.userid, 
                                                 c.catid,c.beschreibung
                                          FROM   tut_dokument a INNER JOIN tut_autoren b, tut_kategorie c
                                          WHERE  a.catid=c.catid "
              );
                  
                  
              $alt="X";

                  while(
              $row =  $db->data())
                          {
                           if (
              $diffdate!=$alt)
                          {
                          include(
              "vartutnew.php");
                          echo (
              $template);
                          }
                          
              $alt="X";    
                          }
                             include(
              "vartutold.php");    
                          echo (
              $template);    

              MFG Maffy
              in der ruhe liegt die kraft

              Kommentar

              Lädt...
              X