Questo script non fà altro che prendere tutte le news e rispettive date dal database metterli in un array e creare una dissolvenza nel passaggio da una news all'altra!
Funziona benissimo! E' uno script che ho trovato su internet!
Il mio problema è che nel momento in cui nel testo della news(quindi nel campo text nel database) c'è un
sfancula tutto, potete vedere vuoi stessi al sito http://www.omceoch.it/
Aiutatemi per favore, come si potrebbe modificare lo script per farlo funzionare?
Grazie
Codice PHP:
<?
$elements = array();
$query = "SELECT * FROM scadenze WHERE data > now()";
$result = mysql_query($query, $db);
while($row = mysql_fetch_array($result)){
$data=$row['data'];
$mir=substr($row["testo"],0,65);
$mir=$mir."...";
$dayOLD = substr($data, 8, 2);
$monthOLD = substr($data, 5, 2);
$yearOLD = substr($data, 0, 4);
$elements[] = "<a href=\"./php/link_scad.php?id=$row[id]\">$mir</a>
"."Scade il: [b] $dayOLD/$monthOLD/$yearOLD [/b]
";
}
# Script news con dissolvenza
# Le variabili che regolano altezza, larghezza, colori e tempo di pausa
# sono le prime 5 qui sotto:
echo
'<script type="text/javascript" language="JavaScript">
<!--
// larghezza
var scroller_width=\'179px\';
// altezza
var scroller_height=\'80px\';
// colore dello sfondo
var bgcolor=\'white\';
// colore del riquadro
var border_color=\'#FFFFFF\';
// pausa in millisecondi
var pause=4000;
var scrollercontent=new Array(\''.implode("','", $elements).'\');
var ie4=document.all
var dom=document.getElementById&&navigator.userAgent.indexOf("Opera")==-1
if (ie4||dom){
document.write(\'<div align="left" style="position:relative;width:\'+scroller_width+\';height:\'+scroller_height+\';overflow:hidden; border: 1px \'+border_color+\'; border-style: solid;"><div class="tabella" id="canvas0" style="position:absolute;background-color:\'+bgcolor+\';width:\'+scroller_width+\';height:\'+scroller_height+\';top:\'+scroller_height+\';filter:alpha(opacity=20);-moz-opacity:0.2;"></div><div class="tabella" id="canvas1" style="position:absolute;background-color:\'+bgcolor+\';width:\'+scroller_width+\';height:\'+scroller_height+\';top:\'+scroller_height+\';filter:alpha(opacity=20);-moz-opacity:0.2;"></div></div>\')
} else if(document.layers){
document.write(\'<ilayer id=tickernsmain visibility=hide width=\'+scroller_width+\' height=\'+scroller_height+\' bgColor=\'+bgcolor+\'><layer id=tickernssub width=\'+scroller_width+\' height=\'+scroller_height+\' left=0 top=0>\'+scrollercontent[0]+\'</layer></ilayer>\')
}
var curpos=scroller_height*(1)
var degree=10
var curcanvas="canvas0"
var curindex=0
var nextindex=1
function moveslide(){
if (curpos>0){
curpos=Math.max(curpos-degree,0)
tempobj.style.top=curpos+"px"
}
else{
clearInterval(dropslide)
if (crossobj.filters)
crossobj.filters.alpha.opacity=100
else if (crossobj.style.MozOpacity)
crossobj.style.MozOpacity=1
nextcanvas=(curcanvas=="canvas0")? "canvas0" : "canvas1"
tempobj=ie4? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas)
tempobj.innerHTML=scrollercontent[curindex]
nextindex=(nextindex<scrollercontent.length-1)? nextindex+1 : 0
setTimeout("rotateslide()",pause)
}
}
function rotateslide(){
if (ie4||dom){
resetit(curcanvas)
crossobj=tempobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
crossobj.style.zIndex++
if (crossobj.filters)
document.all.canvas0.filters.alpha.opacity=document.all.canvas1.filters.alpha.opacity=20
else if (crossobj.style.MozOpacity)
document.getElementById("canvas0").style.MozOpacity=document.getElementById("canvas1").style.MozOpacity=0.2
var temp=\'setInterval("moveslide()",50)\'
dropslide=eval(temp)
curcanvas=(curcanvas=="canvas0")? "canvas1" : "canvas0"
}
else if (document.layers){
crossobj.document.write(scrollercontent[curindex])
crossobj.document.close()
}
curindex=(curindex<scrollercontent.length-1)? curindex+1 : 0
}
function resetit(what){
curpos=parseInt(scroller_height)*(1)
var crossobj=ie4? eval("document.all."+what) : document.getElementById(what)
crossobj.style.top=curpos+"px"
}
function startit(){
crossobj=ie4? eval("document.all."+curcanvas) : dom? document.getElementById(curcanvas) : document.tickernsmain.document.tickernssub
if (ie4||dom){
crossobj.innerHTML=scrollercontent[curindex]
rotateslide()
}
else{
document.tickernsmain.visibility=\'show\'
curindex++
setInterval("rotateslide()",pause)
}
}
if (ie4||dom||document.layers)
window.onload=startit
//-->
</script>';
?>