Benötige dringend Hilfe: Datum

Gesperrt
flocki
Beiträge: 34
Registriert: So 19. Jun 2005, 08:25
Kontaktdaten:

Benötige dringend Hilfe: Datum

Beitrag von flocki »

Hallo Zusammen,
ich benötige dringend Hilfe, kann den Fehler bei meiner Seite nicht finden.
Wenn ich einen neuen Artikel online stelle, dann überschreibt er das Datum des vorangegangenen Artikels mit.
Das geht nun schon seit einigen Wochen so.
Doch damit nicht genug:
Jetzt tritt das gleiche Problem auch bei der Bildergalerie auf.
Anzusehen ist das ganze hier.
Speziell der Australienticker ist betroffen, aber auch wie gesagt die Bildergalerie.
Die benutzten Module sind Artiliste und w3concepts.gallery.v1.

Was soll ich tun?
Auf die neuste Version updaten? Wie gehe ich denn da vor?
Was muss ich noch posten zur Fehlersuche?

In der Errorlog steht folgendes

Code: Alles auswählen

[18-Nov-2005 06:19:02] PHP Warning:  Invalid argument supplied for foreach() in /homepages/34/d42070768/htdocs/linda/contenido/includes/include.tplcfg_edit_form.php(399) : eval()'d code on line 21
Vielen Dank schon mal für die Mühen...
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

Wenn ich einen neuen Artikel online stelle, dann überschreibt er das Datum des vorangegangenen Artikels mit.
Das geht nun schon seit einigen Wochen so.
wie ? ich kann das nicht wirklich nachvollziehen was du meinst...

die links zu deiner seite sehen aber normal aus... zumindestens sehe ich dort kein problem...

Code: Alles auswählen

[18-Nov-2005 06:19:02] PHP Warning:  Invalid argument supplied for foreach() in /homepages/34/d42070768/htdocs/linda/contenido/includes/include.tplcfg_edit_form.php(399) : eval()'d code on line 21
dieser teil -> include.tplcfg_edit_form.php bezieht sich nur auf einen input bereich eines moduls... welches das ist müsstest du austesten...
jedenfalls muss sich dort was mit foreach bei zeile 21 finden...

vielleicht hilft dir das den fehler einzugrenzen...
*** make your own tools (wishlist :: thx)
flocki
Beiträge: 34
Registriert: So 19. Jun 2005, 08:25
Kontaktdaten:

Beitrag von flocki »

emergence hat geschrieben:wie ? ich kann das nicht wirklich nachvollziehen was du meinst...
Schau dir bitte mal das Datum bei dem verlinkten Screenshot an.
Da steht überall: erstellt am 19.11., obwohl die Artikel teilweise schon seit Juli da drin stehen...
Screenshot
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Das macht mich noch nicht nervös, was steht denn im Backend als jeweiliges Änderungsdatum?

Ich vermute, dass da mehr eines der Module ein Problem hat - welches gibt denn das Datum aus?

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
flocki
Beiträge: 34
Registriert: So 19. Jun 2005, 08:25
Kontaktdaten:

Beitrag von flocki »

Hallo!
Soll ich daraus schließen, dass ich auch nicht nervös werden soll?
Hmmm, mal sehen ;-)

Also, im Backend haben die einzelnen Artikel noch ihr ursprüngliches Datum!

Das Modul der Australien-Ticker-Übersicht:
Input:

Code: Alles auswählen

/**
* Artikelliste
*
* Liste von Artikeln mit mehreren Daten basierend
* auf 4fb referenz modul
* 1.Gibt die Subheadline eines Artikel mit aus
* 2.Anschnitte nur nach ganzen Wörtern
* 3.Thumnails werden vernünftig berechnet
* 4.Image für Erzeugung von Thumbs kann gewählt werden
* Author : Evert Smit / Dirk Uptmoor / Peter Beauvain
* Copyright : None
* Created : 13-07-03
* Modified : 16-08-02 /20-09-03 upt /02-02-04 Beau
*/

// selected category
$selected = "CMS_VALUE[0]";
$seldir = "CMS_VALUE[9]";
$selimg = "CMS_VALUE[11]";
//funktion für die checkboxen
function d_checked($which) {
  if ($which != "") {
    return "checked";
  }
} // end function



echo "<table cellspacing=\"0\" cellpadding=\"2\" border=\"0\">
         <tr bgcolor=\"#E8E8EE\" valign=\"top\">
            <td></td>
            <td><input type=\"checkbox\" value=\"on\" ".d_checked("CMS_VALUE[14]")." name=\"CMS_VAR[9]\"></td>
            <td width=\"120\">Ausgabe mit Startartikel</td>
            <td></td>
<td>Kategorie wählen:<br>
         
<select name=\"CMS_VAR[0]\">";

if($selected!="0" && $selected!=""){
             echo"<option value=\"0\">--- kein ---</option>";

            }else{
            echo"<option selected=\"selected\" value=\"0\">--- kein ---</option>";
            }

            // fetch all categorys
            $query = "SELECT A.idcat, A.level, C.name FROM ".$cfg["tab"]["cat_tree"]." AS A, ".
                     $cfg["tab"]["cat"]." AS B,  ".$cfg["tab"]["cat_lang"]." AS C WHERE A.idcat=B.idcat ".
                     "AND B.idcat=C.idcat AND C.idlang='$lang' AND B.idclient='$client' ".
                     "AND C.visible=1 ORDER BY A.idtree";
            // execute query
            $db->query($query);

            // loop result and build the options
            while ($db->next_record()) {

              // indent spacer
              $spaces = "|";

              // how many levels
              $levels = $db->f("level");

              for ($i = 0; $i < $levels; $i ++) {
                // add 2 spaces for every level
                $spaces = $spaces . "--";

              } // end for
             
              $spaces .= ">";


              if ($selected == $db->f("idcat")) {
                // selected category
                echo "<option selected=\"selected\" value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";

              } else {
                // category
                echo "<option value=\"". $db->f("idcat") ."\">". $spaces . $db->f("name") ."</option>";

              } // end if

            } // end while

echo "</select>";


       
echo "</td>
<td></td>     
</tr>
      <tr valign=\"top\">
         <td></td>
         <td></td>
         <td width=\"120\"></td>
            <td></td>
            <td>Überschrift: (wenn leer, keine Ausgabe)<br>
               <input type=\"text\" name=\"CMS_VAR[2]\" value=\"CMS_VALUE[2]\" size=\"24\"></td>
         </tr>
         <tr bgcolor=\"#E8E8EE\" valign=\"top\">
            <td></td>
            <td> <input type=\"checkbox\" value=\"on\" ".d_checked("CMS_VALUE[4]")." name=\"CMS_VAR[4]\"> </td>
            <td width=\"120\">Ausgabe der Artikel-Headline</td>
            <td></td>
            <td>Angezeigte Zeichen Artikel-Headline:<br>
               <input type=\"text\" name=\"CMS_VAR[3]\" value=\"CMS_VALUE[3]\" size=\"24\"></td>
         </tr>
         <tr valign=\"top\">
            <td></td>
            <td><input type=\"checkbox\" value=\"on\" ".d_checked("CMS_VALUE[5]")."  name=\"CMS_VAR[5]\"></td>
            <td width=\"120\">Ausgabe der Artikel-Subheadline:</td>
            <td></td>
            <td>Angezeigte Zeichen Artikel-Subheadline:<br>
               <input type=\"text\" name=\"CMS_VAR[6]\" value=\"CMS_VALUE[6]\" size=\"24\"></td>
         </tr>
         <tr bgcolor=\"#E8E8EE\" valign=\"top\">
            <td></td>
           
<tr bgcolor=\"#E8E8EE\" valign=\"top\">
            <td></td>
            <td><input type=\"checkbox\" value=\"on\" ".d_checked("CMS_VALUE[7]")."  name=\"CMS_VAR[7]\" ></td>
            <td width=\"120\">Ausgabe der Thumbnails:</td>
            <td></td>
            <td>Bildcontainer für Thumbnail Quelle:<br>";
               

$db  = new DB_Contenido;
$query = "SELECT output AS out, name AS beschreibung FROM ".$cfg["tab"]["mod"]." ";
$db->query($query);
echo"<select name=\"CMS_VAR[11]\">";
echo"<option value=\"kein\">-- kein --</option> ";
while ($db->next_record()) {
$frontendpath = $db->f("out");
$name = $db->f("beschreibung");

$rest = substr("$frontendpath", 3, 30);

$find = strpos($rest,"CMS_IMG");
if ($find === false) {

}

else {




$ok = substr($rest, $find, 10);

$nummer = substr($ok, 8, 1);


?>
            <option value="<?php echo $nummer ?>"<?php if ($selimg == $nummer) echo " selected" ?>><?php echo $db->f("beschreibung") ?>
 <?

}


}

echo" </option> </select> ";
echo"</td>

</tr>
<td></td><td></td>
 <td width=\"120\">Thumbnail Ordner</td>
 
<td></td><td>Bitte wählen:<br><select name=\"CMS_VAR[9]\" size=\"1\">";
echo"<option value=\"kein\">-- kein --</option>";

$db  = new DB_Contenido;
$query = "SELECT DISTINCT dirname FROM ".$cfg["tab"]["upl"]." ORDER BY dirname ASC";
$db->query($query);
while ($db->next_record()) {
 
?>
            <option value="<?php echo $db->f("dirname") ?>"<?php if ($seldir == $db->f("dirname")) echo " selected" ?>><?php echo $db->f("dirname") ?></option>
<?php
   }
echo "</select></td>


<tr valign=\"top\">
<td></td>
<td></td>
<td></td>
<td></td>

</tr>
</table>
"; //Ende 
Output:

Code: Alles auswählen

<?
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Erweiterte Artikel liste
*
* Liste von Artikeln mit mehreren Daten basierend
* auf 4fb referenz modul
* 1.Gibt die Subheadline eines Artikel mit aus
* 2.Anschnitte nur nach ganzen Wörtern
* 3.Thumnails werden vernünftig berechnet
* 4.Image für Erzeugung von Thumbs kann gewählt werden
* Author : Evert Smit / Dirk Uptmoor / Peter Beauvain
* Copyright : None
* Created : 13-07-03
* Modified : 16-08-02 /20-09-03 upt /02-02-04 Beau
************************************************/
//Frontendpfad ermitteln
$query = "SELECT  frontendpath FROM ".$cfg["tab"]["clients"]." WHERE idclient='".$client."'";
$db->query($query);
$db->next_record();
$frontendpath = $db->f("frontendpath");
 


$startarton = "AND CATART.is_start = '0' AND";

//soll der startartikel mit ausgegeben werden?.
$print_startartikel = "CMS_VALUE[14]";
if($print_startartikel !=""){
$startarton = "AND";

}

//die Überschrift wird ausgegeben wenn sie nicht leer ist.
$print_mainheadline = "CMS_VALUE[2]";

//soll headline ausgegeben werden?
$print_headline = "CMS_VALUE[4]";

//soll subheadline ausgegeben werden?
$print_subheadline = "CMS_VALUE[5]";

//soll ein thumnail ausgegeben werden?
$print_thumbnail = "CMS_VALUE[7]";

//thumbnail breite
$thumbnail_width = "CMS_VALUE[8]";

//wenn thumbnails = 0
$imagetag = "";



// second db class instance
$db2 = new DB_Contenido;

// selected category
$selcat = "CMS_VALUE[0]";

if($selcat!="0" && $selcat!=""){

// select all articles in category widthout start article
$query = "SELECT ARTLANG.idart, ARTLANG.idartlang, ARTLANG.lastmodified FROM ".$cfg["tab"]["cat_art"]." AS CATART, ".
$cfg["tab"]["art_lang"]." AS ARTLANG ".
"WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' "." $startarton " ."ARTLANG.online = '1' ORDER BY ARTLANG.lastmodified DESC";

// execute query
$db->query($query);

unset($articleID);
unset($linkID);

// get id's of sub articles
while ($db->next_record()) {
$articleID[] = $db->f("idartlang");
$linkID[] = $db->f("idart");
} // end while


/****************** start table **************************/
echo '
<table border="0" cellpadding="3" cellspacing="0" width="100%">
';


/**** Überschrift der Artikelliste wird ausgegeben, wenn nicht leer ********/

if($print_mainheadline !=""){
echo '
';
}
if($print_mainheadline ==""){
echo '

';
}



// Loop through articles
if (is_array($articleID)) {
    foreach ($articleID as $key => $value) {
    // select all CMS variables of the article

    if($print_headline!="0" && $print_headline!=""){
    $sql = "SELECT * FROM ".$cfg["tab"]["content"]." WHERE idartlang = '$value' AND idtype = '1' AND typeid = '1'";

    $db->query($sql);
    $db->next_record();
   

  $headline = urldecode($db->f("value"));

 

for ($j=CMS_VALUE[3]; $j < CMS_VALUE[3]+20; $j++)
{
 $headline1 = substr($headline , 0, $j);

$cut = substr($headline, $j);
if ((ord ($cut) == 32)||(ord ($cut) == 44)||(ord ($cut) == 45)) {

$headline= substr($headline , 0, $j);
$headline .= ' .....';
       }
    }
 }




$cfgTab_art_lang = $cfg['tab']['art_lang'];
$cfgTab_content = $cfg['tab']['content'];

$sql = "SELECT A.author AS author, B.lastmodified AS lastmod FROM $cfgTab_art_lang AS A, $cfgTab_content AS B WHERE A.idart='$value' AND B.idartlang=A.idartlang ORDER BY B.lastmodified DESC";
$db->query($sql);$db->next_record();
$modifydate= date("d.m.y",strtotime($db->f("lastmod")));
$modifytime= date("H:i",strtotime($db->f("lastmod")));






    if($print_subheadline!="0" && $print_subheadline!=""){
    $sql_subheadline = "SELECT * FROM ".$cfg["tab"]["content"]." WHERE idartlang = '$value' AND idtype = '1' AND typeid = '2'";

    $db->query($sql_subheadline);
    $db->next_record();

   $subheadline = urldecode($db->f("value"));

 

for ($i=CMS_VALUE[6]; $i < CMS_VALUE[6]+20; $i++)
{
 $subheadline1 = substr($subheadline , 0, $i);

$cut = substr($subheadline, $i);
if ((ord ($cut) == 32)||(ord ($cut) == 44)||(ord ($cut) == 45)) {

$subheadline= substr($subheadline , 0, $i);
$subheadline .= ' .....';
       }
    }
 }





/******************* begin thumbnails **********************************/
if($print_thumbnail !="0" && $print_thumbnail !=""){

    // select and resolve image path
    $imagesql="select value from ".$cfg["tab"]["content"]." where idartlang='$value' and idtype='4' and typeid='CMS_VALUE[11]'";
    $db2->query($imagesql);
    $db2->next_record();
    $image_id= $db2->f("value");


    // get image name and path
    $imagesql="select * from ".$cfg["tab"]["upl"]." where idupl='$image_id'";
    $db2->query($imagesql);
    $db2->next_record();


    $webdir='upload/';
    $thumbdir='CMS_VALUE[9]';
    $filedir=$frontendpath;
    $imagelocation=$filedir.$webdir.$db2->f('dirname').$db2->f('filename');
    $thumblocation=$filedir.$webdir.$thumbdir.$db2->f('filename');
    if (!file_exists($thumblocation)){
    // create thunbnail
    $fileinformation=getimagesize($imagelocation);
    $imagewidth = $fileinformation[0];
    $imageheight = $fileinformation[1];
    $imagetype=$db2->f('filetype');
    $imageattributes = $fileinformation[3];
    //$newfile= $last_id."-image.".$imagetype;
    $target=$thumblocation;

    if ( !(copy($imagelocation,$target)))
    {
    echo "Could not copy file to destintaion., Command returned Error Message. Please check your log files. ".$imagelocation." ".$target;
die;
    }

    //create thumbnails 80xrelational height; neu $thumbnail_width x proportionale Höhe
    // Determine what filetype and set pointer to source image

 
    $original_image=ImageCreateFromJPEG($target);
 
    if (!$original_image){
    echo 'Error getting image from '.$target.'.';
    }



$palette_image =$filedir.$webdir.$thumbdir.'vorlage.jpg';
$thumbsize = getImageSize($palette_image);
$maxdim = $thumbsize[0];
$draw_from = $imagelocation;
$dim = GetImageSize($draw_from);
if($dim[0]>$dim[1])
{
$to_w = $maxdim;
$to_h = round($dim[1]*($maxdim/$dim[0]));
$to_x = 0;
$to_y = round($maxdim-$to_h)/2;
}
else
{
$to_h = $maxdim;
$to_w = round($dim[0]*($maxdim/$dim[1]));
$to_y = 0;
$to_x = round($maxdim-$to_w)/2;
}

if($dim[2]==1) {$from = ImageCreateFromGIF($draw_from);}
elseif($dim[2]==2) {$from = ImageCreateFromJPEG($draw_from);}
elseif($dim[2]==3) {$from = ImageCreateFromPNG($draw_from);}
$thumb = ImageCreateFromJPEG($palette_image);
// $set_bg_colour = ImageColorAllocate($thumb,255,0,0);
// $fill_bg_colour = ImageFill($thumb,0,0,$set_bg_colour);
imagecopyresampled($thumb, $from, $to_x, $to_y, 0, 
0, $to_w, $to_h, $dim[0], $dim[1]);






 //echo $target;
    // set image width and height of thunbnail and put pointer for filesytsem
    $thumbfile= $db2->f('filename');
    $target_thumb=$thumblocation;
    $t_width=$thumbnail_width;
    // calculating height to maintain ratio
    $t_height=($thumbnail_width/$imagewidth)*$imageheight;
    // remove digits to get solid number
    list ($t_height,$notimportand)=explode('.',$t_height);
    // create blank image
 $thumb_image=imagecreatetruecolor($t_width,$t_height);
 //     $thumb_image=imagecreate($t_width,$t_height);
  //   $thumb_image=ImageCreateFromJPEG($palette_image);
    // resize image based on height and width
    imagecopyresampled($thumb_image,$original_image,0,0,0,0,$t_width,$t_height,$imagewidth,$imageheight);
    // store image on file system
    // requires different functionf for either gif or jpeg
   
    imagejpeg($thumb,$target_thumb);
 
    imagedestroy($thumb);
    imagedestroy($original_image);
    }
    $image=$webdir.$thumbdir.$db2->f('filename');
    $imagetag="<img src=\" $image \" border=0>";

} // ende wenn keine thumbs gewünscht
/**************** Ende Thumbnails ***********************/

// link
$link = $sess->url("front_content.php?client=$client&lang=$lang&idcat=$selcat&idart=$linkID[$key]&m=$m&s=$s");



/***********************Anfang Tablezeile für Artikelliste**********************/
echo '
<tr><td bgcolor="#ffffff" colspan="3" style="border-bottom:1px solid #006595;"><IMG SRC="$frontendpath/cms/bilder/fueller.gif" WIDTH="1" HEIGHT="3"
BORDER="0"></td></tr>
<tr>
<td colspan="2" class="trnews1" cellpadding="2" ><img  src="upload/bilder/date.gif" border="0" align="right"><A HREF="'.$link.'">'.$headline.'</a></td>
<td class="trnews2"><A HREF="'.$link.'">'.$modifydate.'</a></td>


</tr>

<tr>
<!--<td width=\"$thumbnail_width\" align="left" bgcolor="#ffffff"><A HREF="'.$link.'">'.$imagetag.'</a></td>-->
<td bgcolor="#ffffff" class="newstext" valign="top">'.$subheadline.'<td valign="bottom" align="right" colspan="2"><a  href="'.$link.'"><img  src="upload/bilder/mehr.gif" border="0" align="right"></a></td></td>

</tr>
<tr><td bgcolor="#ffffff" colspan="3" style="border-bottom:1px solid #006595;"><IMG SRC="$frontendpath/cms/bilder/fueller.gif" WIDTH="1" HEIGHT="3"
BORDER="0"></td></tr>
';


} // end while



unset($headline);
unset($headline1);
unset($subheadline);
unset($subheadline1);

} // end foreach

} // end if (is_array)

echo '</table>';
/***********************ende Table**********************/

?> 
Gruß,
flocki
timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo »

dann ist wohl das modul nicht richtig programmiert ;)
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Tja, ich durchschaue den Code gerade auch nicht. Ein korrektes Einrücken würde helfen.

Ich würde sagen, dass nur einmal das Datum ermittelt und dann jedesmal das gleiche Datum ausgegeben wird.

Bitte optimiere den Code ein wenig im Hinblick auf Schleifen und ifs (Einrückungen), vielleicht sehe ich es dann.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
flocki
Beiträge: 34
Registriert: So 19. Jun 2005, 08:25
Kontaktdaten:

Beitrag von flocki »

werde mich heute abend mal ransetzen und den Text einrücken...
Danke schon einmal...
flocki
Beiträge: 34
Registriert: So 19. Jun 2005, 08:25
Kontaktdaten:

Beitrag von flocki »

Hmmm, das optimieren ist schwieriger als ich dachte.
Ich weiß ja selbst nicht, was da wo und warum im Script gemacht wird.
Ich habe In- und Output nun als Txt-Dateien hochgeladen, in denen zumindestens schon einmal die unnötigen Zeilenumbrüche weg sind.
Hier sind sie: artikelliste.zip
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Was macht man nicht alles. So, mit ordentlicher Einrückung, mit Code-Optimierung und Fehlerbehebung (siehe Anmerkungen, suche nach HerrB).

Bitte vorher alten Code sichern, ich will nicht ausschließen, dass ich mich wo vertippt habe... :wink:

Code: Alles auswählen

<?
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Erweiterte Artikel liste
*
* Liste von Artikeln mit mehreren Daten basierend
* auf 4fb referenz modul
* 1.Gibt die Subheadline eines Artikel mit aus
* 2.Anschnitte nur nach ganzen Wörtern
* 3.Thumnails werden vernünftig berechnet
* 4.Image für Erzeugung von Thumbs kann gewählt werden
* Author : Evert Smit / Dirk Uptmoor / Peter Beauvain
* Copyright : None
* Created : 13-07-03
* Modified : 16-08-02 /20-09-03 upt /02-02-04 Beau
************************************************/
//Frontendpfad ermitteln
$query = "SELECT  frontendpath FROM ".$cfg["tab"]["clients"]." WHERE idclient='".$client."'";
$db->query($query);
$db->next_record();
$frontendpath = $db->f("frontendpath");

$startarton = "AND CATART.is_start = '0' AND";

//soll der startartikel mit ausgegeben werden?.
$print_startartikel = "CMS_VALUE[14]";
if($print_startartikel !=""){
	$startarton = "AND";
}

//die Überschrift wird ausgegeben wenn sie nicht leer ist.
$print_mainheadline = "CMS_VALUE[2]";

//soll headline ausgegeben werden?
$print_headline = "CMS_VALUE[4]";

//soll subheadline ausgegeben werden?
$print_subheadline = "CMS_VALUE[5]";

//soll ein thumnail ausgegeben werden?
$print_thumbnail = "CMS_VALUE[7]";

//thumbnail breite
$thumbnail_width = "CMS_VALUE[8]";

//wenn thumbnails = 0
$imagetag = "";

// second db class instance
$db2 = new DB_Contenido;

// selected category
$selcat = "CMS_VALUE[0]";

if($selcat!="0" && $selcat!="") {
	// select all articles in category widthout start article
	$query = "SELECT ARTLANG.idart, ARTLANG.idartlang, ARTLANG.lastmodified FROM ".
		 $cfg["tab"]["cat_art"]." AS CATART, ".$cfg["tab"]["art_lang"]." AS ARTLANG ".
		 "WHERE CATART.idcat = '$selcat' AND ARTLANG.idart = CATART.idart AND ARTLANG.idlang = '$lang' ".
		 " $startarton " ."ARTLANG.online = '1' ORDER BY ARTLANG.lastmodified DESC";

	// execute query
	$db->query($query);

	unset($articleID);
	unset($linkID);

	// get id's of sub articles
	while ($db->next_record()) {
		$articleID[] = $db->f("idartlang");
		$linkID[] = $db->f("idart");
	} // end while

	/****************** start table **************************/
	echo '<table border="0" cellpadding="3" cellspacing="0" width="100%">';


	/**** Überschrift der Artikelliste wird ausgegeben, wenn nicht leer ********/
	/* HerrB: Dieser Code ist krank ... */
	if ($print_mainheadline !=""){
		echo '';
	}

	if($print_mainheadline ==""){
		echo '';
	}

	/* HerrB: Das gehört hierher, so häufig wird sich der Tabellenname nicht ändern, als dass er ständig in der Schleife definiert werden müsste ... */
	$cfgTab_art_lang = $cfg['tab']['art_lang'];
	$cfgTab_content = $cfg['tab']['content'];


	// Loop through articles
	if (is_array($articleID)) {
		foreach ($articleID as $key => $value) {
			// select all CMS variables of the article

			if($print_headline!="0" && $print_headline!=""){
				$sql = "SELECT * FROM ".$cfg["tab"]["content"]." WHERE idartlang = '$value' AND idtype = '1' AND typeid = '1'";

				$db->query($sql);
				$db->next_record();   

				$headline = urldecode($db->f("value"));

				for ($j=CMS_VALUE[3]; $j < CMS_VALUE[3]+20; $j++) {
					$headline1 = substr($headline , 0, $j);

					$cut = substr($headline, $j);
					if ((ord ($cut) == 32)||(ord ($cut) == 44)||(ord ($cut) == 45)) {
						$headline= substr($headline , 0, $j);
						$headline .= ' .....';
					}
				}
			}

			/* HerrB: Dieser Code ist krank, nee, der kommt weg...
			$cfgTab_art_lang = $cfg['tab']['art_lang'];
			$cfgTab_content = $cfg['tab']['content']; */

			/* HerrB: Das lastmodified in art_lang ist interessant, nicht unbedingt das in content */
			/* Alte Abfrage ...
			$sql = "SELECT A.author AS author, B.lastmodified AS lastmod FROM $cfgTab_art_lang AS A, ".
			       "$cfgTab_content AS B WHERE A.idart='$value' AND B.idartlang=A.idartlang ORDER BY B.lastmodified DESC"; */

			/* Neue Abfrage ... */
			$sql = "SELECT author, lastmodified AS lastmod FROM $cfgTab_art_lang WHERE idart='$value' ORDER BY lastmodified DESC";

			$db->query($sql);
			$db->next_record();
			$modifydate= date("d.m.y",strtotime($db->f("lastmod")));
			$modifytime= date("H:i",strtotime($db->f("lastmod")));

			if($print_subheadline!="0" && $print_subheadline!=""){
				$sql_subheadline = "SELECT * FROM ".$cfg["tab"]["content"]." WHERE idartlang = '$value' AND idtype = '1' AND typeid = '2'";

				$db->query($sql_subheadline);
				$db->next_record();

				$subheadline = urldecode($db->f("value")); 

				for ($i=CMS_VALUE[6]; $i < CMS_VALUE[6]+20; $i++) {
					$subheadline1 = substr($subheadline , 0, $i);

					$cut = substr($subheadline, $i);
					if ((ord ($cut) == 32)||(ord ($cut) == 44)||(ord ($cut) == 45)) {
						$subheadline= substr($subheadline , 0, $i);
						$subheadline .= ' .....';
					}
				}
			}

			/******************* begin thumbnails **********************************/
			if($print_thumbnail !="0" && $print_thumbnail !=""){
				// select and resolve image path
				$imagesql="select value from ".$cfg["tab"]["content"]." where idartlang='$value' and idtype='4' and typeid='CMS_VALUE[11]'";
				$db2->query($imagesql);
				$db2->next_record();
				$image_id= $db2->f("value");

				// get image name and path
				$imagesql="select * from ".$cfg["tab"]["upl"]." where idupl='$image_id'";
				$db2->query($imagesql);
				$db2->next_record();

				$webdir='upload/';
				$thumbdir='CMS_VALUE[9]';
				$filedir=$frontendpath;
				$imagelocation=$filedir.$webdir.$db2->f('dirname').$db2->f('filename');
				$thumblocation=$filedir.$webdir.$thumbdir.$db2->f('filename');

				if (!file_exists($thumblocation)){
					// create thunbnail
					$fileinformation=getimagesize($imagelocation);
					$imagewidth = $fileinformation[0];
					$imageheight = $fileinformation[1];
					$imagetype=$db2->f('filetype');
					$imageattributes = $fileinformation[3];
					//$newfile= $last_id."-image.".$imagetype;
					$target=$thumblocation;

					if ( !(copy($imagelocation,$target))) {
						echo "Could not copy file to destintaion. Command returned error message. ".
						     "Please check your log files. ".$imagelocation." ".$target;
						die;
					}

					//create thumbnails 80xrelational height; neu $thumbnail_width x proportionale Höhe
					// Determine what filetype and set pointer to source image
 
					$original_image=ImageCreateFromJPEG($target);
 
 					if (!$original_image){
						echo 'Error getting image from '.$target.'.';
					}

					$palette_image =$filedir.$webdir.$thumbdir.'vorlage.jpg';
					$thumbsize = getImageSize($palette_image);
					$maxdim = $thumbsize[0];
					$draw_from = $imagelocation;
					$dim = GetImageSize($draw_from);
					if($dim[0]>$dim[1]) {
						$to_w = $maxdim;
						$to_h = round($dim[1]*($maxdim/$dim[0]));
						$to_x = 0;
						$to_y = round($maxdim-$to_h)/2;
					} else {
						$to_h = $maxdim;
						$to_w = round($dim[0]*($maxdim/$dim[1]));
						$to_y = 0;
						$to_x = round($maxdim-$to_w)/2;
					}

					if ($dim[2]==1) {
						$from = ImageCreateFromGIF($draw_from);
					} elseif ($dim[2]==2) {
						$from = ImageCreateFromJPEG($draw_from);
					} elseif ($dim[2]==3) {
						$from = ImageCreateFromPNG($draw_from);
					}
					$thumb = ImageCreateFromJPEG($palette_image);
					// $set_bg_colour = ImageColorAllocate($thumb,255,0,0);
					// $fill_bg_colour = ImageFill($thumb,0,0,$set_bg_colour);
					imagecopyresampled($thumb, $from, $to_x, $to_y, 0, 0, $to_w, $to_h, $dim[0], $dim[1]);
					//echo $target;
					// set image width and height of thunbnail and put pointer for filesytsem
					$thumbfile= $db2->f('filename');
					$target_thumb=$thumblocation;
					$t_width=$thumbnail_width;
					// calculating height to maintain ratio
					$t_height=($thumbnail_width/$imagewidth)*$imageheight;
					// remove digits to get solid number
					list ($t_height,$notimportand)=explode('.',$t_height);
					// create blank image
					$thumb_image=imagecreatetruecolor($t_width,$t_height);
					//$thumb_image=imagecreate($t_width,$t_height);
					//$thumb_image=ImageCreateFromJPEG($palette_image);
					// resize image based on height and width
					imagecopyresampled($thumb_image,$original_image,0,0,0,0,$t_width,$t_height,$imagewidth,$imageheight);
					// store image on file system
					// requires different functionf for either gif or jpeg
   
					imagejpeg($thumb,$target_thumb);
 
					imagedestroy($thumb);
					imagedestroy($original_image);
				}
				$image=$webdir.$thumbdir.$db2->f('filename');
				$imagetag="<img src=\" $image \" border=0>";

			} // ende wenn keine thumbs gewünscht
			/**************** Ende Thumbnails ***********************/

			// link
			$link = $sess->url("front_content.php?client=$client&lang=$lang&idcat=$selcat&idart=$linkID[$key]&m=$m&s=$s");

			/***********************Anfang Tablezeile für Artikelliste**********************/
			echo '<tr><td bgcolor="#ffffff" colspan="3" style="border-bottom:1px solid #006595;">'.
			     '<IMG SRC="$frontendpath/cms/bilder/fueller.gif" WIDTH="1" HEIGHT="3" BORDER="0"></td></tr>'.
			     '<tr><td colspan="2" class="trnews1" cellpadding="2" ><img src="upload/bilder/date.gif" border="0" align="right">'.
			     '<A HREF="'.$link.'">'.$headline.'</a></td><td class="trnews2"><A HREF="'.$link.'">'.$modifydate.'</a></td></tr>';
			echo '<tr><!--<td width=\"$thumbnail_width\" align="left" bgcolor="#ffffff"><A HREF="'.$link.'">'.$imagetag.'</a></td>-->'.		
			     '<td bgcolor="#ffffff" class="newstext" valign="top">'.$subheadline.'<td valign="bottom" align="right" colspan="2">'.
			     '<a  href="'.$link.'"><img src="upload/bilder/mehr.gif" border="0" align="right"></a></td></td></tr>';
			echo '<tr><td bgcolor="#ffffff" colspan="3" style="border-bottom:1px solid #006595;">'.
			     '<IMG SRC="$frontendpath/cms/bilder/fueller.gif" WIDTH="1" HEIGHT="3" BORDER="0"></td></tr>';
		} // end while

		unset($headline);
		unset($headline1);
		unset($subheadline);
		unset($subheadline1);
	} // end foreach
} // end if (is_array)

echo '</table>';
/***********************ende Table**********************/

?> 
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
flocki
Beiträge: 34
Registriert: So 19. Jun 2005, 08:25
Kontaktdaten:

Beitrag von flocki »

Vielen Dank für die Hilfe und Mühe,
leider besteht der Fehler weiterhin.
Was kann das denn sein?
Und vor allen Dingen; Warum trat der Fehler vorher gar nicht auf?
Die Seite gibt es ja schon seit längerem und in den ersten Monaten trat dieser Fehler nicht auf.
Soll ich lieber ein anderes Modul nehmen?
Die News auf der STartseite werden zB mit dem gleichen Modul angezeigt, dort tritt der Fehler auch auf. Wenn ich allerdings in der Navigation auf ews klicke (und damit ein anderes Modul wähle) werden dieselben Beiträge richtig angezeigt...
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Keine Ahnung, um die genaue Fehlersuche musst Du Dich kümmern... :wink:

Du kannst unter:

Code: Alles auswählen

$modifydate= date("d.m.y",strtotime($db->f("lastmod"))); 
         $modifytime= date("H:i",strtotime($db->f("lastmod")));
mal ein

Code: Alles auswählen

echo $modifydate;
ergänzen.

Dann siehst Du, ob das Datum immer das Gleiche ist oder sich ändert. Auch mal den Browser-Cache löschen usw.

Wenn es immer das Gleiche Datum ist, dann verwenden wir wohl immer noch die falsche Tabelle - da müsste ich dann noch mal schauen...

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
flocki
Beiträge: 34
Registriert: So 19. Jun 2005, 08:25
Kontaktdaten:

Beitrag von flocki »

Wenn ich

Code: Alles auswählen

echo $modifydate;
ergänze. dann wird immer das gleiche Datum ausgegeben (3.12.05),
habe gerade mal ein anderes Modul eingebunden, da ist es richtig!
Versuche mal die Unterschiede zu erkennen...
Gesperrt