Hi,
ich habe das Newsticker-Modul, welches hier schon öfters vorgestellt wurde, etwas verändert und erweitert und will das hier mal posten. Allerdings habe ich ein kleines Problem. Beim Laden der Seite (Besonders wenn Sie etwas mehr Bilder hat) bildet sich eine Liste mit den ganzen Einträgen, welche dann zwar wieder ausgeblendet werden, aber von mir nicht erwünscht ist.
Wie kann man erreichen, dass PHP Code erst ausgeführt wird, wenn eine Seite beim User vollständig geladen wurde. Geht das überhaupt? Wie könnte man das Problem noch lösen??
[code]
<?PHP
$cat = array(42,43); //Idcats eintragen
$lang = count ($cat) - 1;
?>
<div>
<?php
for ($j=0;$j<=$lang;$j++)
{
$articleListOptions = array("idcat" => $cat[$j], // Idcat (Muss angegeben werden)
"lang" => $lang, // Sprach id (optional), standard ist die aktive Sprache
"client"=> $client, // Mandant id (optional), standard ist der aktive Mandant
"start" => false, // Startartikel
"order" => "created", // Feldname nach dem sortier wird, siehe tabelle 'con_art_lang'
"direction" => "asc"); // Ab- oder Aufsteigende sortierung ('asc', oder 'desc')
$articleList = new ArticleCollection($articleListOptions);
$num = count($articleList);
$stop = false;
$article = $articleList->nextArticle();
// Artikelliste mit Head1, Head2 und HTML1 ausgeben
while (! $stop)
{
$head1 = $article->getContent('htmlhead', 1);
$head2 = $article->getContent('htmlhead', 2);
$html1 = $article->getContent('html', 1);
$idart = $article->get("idart");
$link = "front_content.php?idcat=$cat[$j]&idart=".$idart;
$head1 = trim(strip_tags($head1));
if ($article = $articleList->nextArticle()) { $l[$i] ="<a href=".$link.">".urldecode($head1)."</a><br>";}
else {
$l[$i]= "<a href=".$link.">".urldecode($head1)."</a><br>";
$stop = true;
};
$i++;
};
};
shuffle($l);
?>
<TABLE width="190px" cellspacing=0 cellsadding=0>
<TR>
<TD><center>
<img src="files/pfeilr.gif" alt="Pfeil-rechts" align="top"><b>NEWS - TICKER</b><img src="files/pfeill.gif" alt="Pfeil-links" align="top">
</center><br></TD>
</TR>
<TR>
<TD><center><MARQUEE onmouseover=this.stop() onmouseout=this.start() scrollAmount=1 direction=up width="170" height=100>
<?php
for ($z=0;$z<=$i;$z++)
{
echo "<center>".$l[$z]."</center><br>";
};?></MARQUEE>
</center></TD>
</TR>
</TABLE>
</div>
[/code]
Alex
Weiterentwicklung Newsticker
Weiterentwicklung Newsticker
Zuletzt geändert von alexd am Do 3. Mär 2005, 14:36, insgesamt 1-mal geändert.
Re: Weiterentwicklung Newsticker
das geht nicht... php ist eine server seitige script sprache und keine client seitige wie javascript...alexd hat geschrieben:Wie kann man erreichen, dass PHP Code erst ausgeführt wird, wenn eine Seite beim User vollständig geladen wurde. Geht das überhaupt?
lösen könntest du das eventuell mittels javascript....
*** make your own tools (wishlist :: thx)