• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

abstracto

Painel de Noticias

7 mensagens neste tópico

Ola,

Penso que será a caixa com o Scroll Vertical que pretendes fazer, deixo aqui um código que pode fazer isso:

<script language="javascript">
//ENTER CONTENT TO SCROLL BELOW.
var content=' -- aqui fica o conteudo que vai ficar a rolar, possibilidade de utilizar <b>codigo HTML</b>, experimenta! -- ';

var boxheight=150;        // BACKGROUND BOX HEIGHT IN PIXELS.
var boxwidth=158;         // BACKGROUND BOX WIDTH IN PIXELS.
var boxcolor="#FFFFFF";   // BACKGROUND BOX COLOR.
var speed=50;             // SPEED OF SCROLL IN MILLISECONDS (1 SECOND=1000 MILLISECONDS)..
var pixelstep=1;          // PIXELS "STEPS" PER REPITITION.
var godown=false;         // TOP TO BOTTOM=TRUE , BOTTOM TO TOP=FALSE
var pauseOnmouseover=true; //SET TO "true" TO ENABLE PAUSE WHEN MOUSEOVER, "false" TO DISABLE IT.

// DO NOT EDIT BEYOND THIS POINT

var outer,inner,elementheight,ref,refX,refY;
var w3c=(document.getElementById)?true:false;
var ns4=(document.layers)?true:false;
var ie4=(document.all && !w3c)?true:false;
var ie5=(document.all && w3c)?true:false;
var ns6=(w3c && navigator.appName.indexOf("Netscape")>=0)?true:false;
var txt='';
var goscroll=true;
if(ns4){
txt+='<table cellpadding=0 cellspacing=0 border=0 height='+boxheight+' width='+boxwidth+'><tr><td>';
txt+='<ilayer name="ref" bgcolor="'+boxcolor+'" width='+boxwidth+' height='+boxheight+'></ilayer>';
txt+='</td></tr></table>'
txt+='<layer name="outer" bgcolor="'+boxcolor+'" visibility="hidden" width='+boxwidth+' height='+boxheight+' '+((pauseOnmouseover)? 'onmouseover="goscroll=false" onmouseout="goscroll=true"':'')+'>';
txt+='<layer  name="inner"  width='+(boxwidth-4)+' height='+(boxheight-4)+' visibility="hidden" left="2" top="2" >'+content+'</layer>';
txt+='</layer>';
}else{
txt+='<div id="ref" style="position:relative; width:'+boxwidth+'; height:'+boxheight+'; background-color:'+boxcolor+';"></div>';
txt+='<div id="outer" style="position:absolute; width:'+boxwidth+'; height:'+boxheight+'; visibility:hidden; background-color:'+boxcolor+'; overflow:hidden"  '+((pauseOnmouseover)? 'onmouseover="goscroll=false" onmouseout="goscroll=true"':'')+'>';
txt+='<div id="inner"  style="position:absolute; visibility:hidden; left:2px; top:2px; width:'+(boxwidth-4)+'; overflow:hidden; cursor:default;" '+((pauseOnmouseover)? 'onmouseover="goscroll=false" onmouseout="goscroll=true"':'')+'>'+content+'</div>';
txt+='</div>';
}
document.write(txt);
txt='';

function getElHeight(el){
if(ns4)return (el.document.height)? el.document.height : el.clip.bottom-el.clip.top;
else if(ie4||ie5)return (el.style.height)? el.style.height : el.clientHeight;
else return (el.style.height)? parseInt(el.style.height):parseInt(el.offsetHeight);
}

function getPageLeft(el){
var x;
if(ns4)return el.pageX;
if(ie4||w3c){
x = 0;
while(el.offsetParent!=null){
x+=el.offsetLeft;
el=el.offsetParent;
}
x+=el.offsetLeft;
return x;
}}

function getPageTop(el){
var y;
if(ns4)return el.pageY;
if(ie4||w3c){
y=0;
while(el.offsetParent!=null){
y+=el.offsetTop;
el=el.offsetParent;
}
y+=el.offsetTop;
return y;
}}

function scrollbox(){
if(goscroll){
if(ns4){
inner.top+=(godown)? pixelstep: -pixelstep;
if(godown){
if(inner.top>boxheight)inner.top=-elementheight;
}else{
if(inner.top<2-elementheight)inner.top=boxheight+2;
}}else{
inner.style.top=parseInt(inner.style.top)+((godown)? pixelstep: -pixelstep)+'px';
if(godown){
if(parseInt(inner.style.top)>boxheight)inner.style.top=-elementheight+'px';
}else{
if(parseInt(inner.style.top)<2-elementheight)inner.style.top=boxheight+2+'px';
}}}}

window.onresize=function(){
if(ns4)setTimeout('history.go(0)', 400);
else{
outer.style.left=getPageLeft(ref)+'px';
outer.style.top=getPageTop(ref)+'px';
}}

window.onload=function(){
outer=(ns4)?document.layers['outer']:(ie4)?document.all['outer']:document.getElementById('outer');
inner=(ns4)?outer.document.layers['inner']:(ie4)?document.all['inner']:document.getElementById('inner');
ref=(ns4)?document.layers['ref']:(ie4)?document.all['ref']:document.getElementById('ref');
elementheight=getElHeight(inner);
if(ns4){
outer.moveTo(getPageLeft(ref),getPageTop(ref));
outer.clip.width=boxwidth;
outer.clip.height=boxheight;
inner.top=(godown)? -elementheight : boxheight-2;
inner.clip.width=boxwidth-4;
inner.clip.height=elementheight;
outer.visibility="show";
inner.visibility="show";
}else{
outer.style.left=getPageLeft(ref)+'px';
outer.style.top=getPageTop(ref)+'px';
inner.style.top=((godown)? -elementheight : boxheight)+'px';
inner.style.clip='rect(0px, '+(boxwidth-4)+'px, '+(elementheight)+'px, 0px)';
outer.style.visibility="visible";
inner.style.visibility="visible";
}
setInterval('scrollbox()',speed);
}

</script>

Basta editar a zona do //ENTER CONTENT TO SCROLL BELOW., e fica pronto para funcionar. O código colocas na zona da página onde desejas que apareça o Scroll.

Outra coisa, se queres que isso fique dinâmico dentro do PHP, bastará teres: var content='$variavel_php' de modo a que quando seja alterada a variável $variavel_php o scroll também fique com essa informação.

Cumprimentos,

LuBoc

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

olha na parte de inserir o texto posso incluir um file php k selecciona as noticias da base de dados?

Thanks

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Olá,

Se as notícias estão num ficheiro, não sei que formato ou estrutura, terás que ter uma forma de ler esse ficheiro e colocá-lo em formato HTML, e depois atribuir esse texto (conteúdo do ficheiro lido) na variável content.

Por exemplo:

ficheiro_ler_dados.php

<?php
function Ler_Noticias_BaseDados() {
  $texto_da_base_de_dados = "";
  
  //... ciclo para ler texto da base de dados... //
   (...)
    $texto_da_base_de_dados = "xpto....";
  //... fim do ciclo ... //

  return $texto_da_base_de_dados;

} 
?>

ficheiro_do_scroll.php

<?php
include("ficheiro_ler_dados.php");
$variavel_php = Ler_Noticias_BaseDados();

(... outras coisa a fazer ou mostrar ...)

//... inicio do Script do Scroll ... //
echo " <script language=\"javascript\">
  // ENTER CONTENT TO SCROLL BELOW.
  var content='$variavel_php';
(... resto do script ...)
";

?>

Parto do princípio que deves saber formatar a string na instrução echo e que tens conhecimentos de PHP. Se necessitares de mais indicações em pormenor, diz algo.

Cumprimentos,

LuBoc

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não foi preciso isso do php mas vou precisar pa outro projecto e o meu ficheiro é este k selecciona as noticias da base de dados.

<?php

include("data.inc.php");

//Abrir Conecção

$conn=mysql_connect($host,$user,$pass) or die ("Não conseguiu conectar-se!");

//Seleccionar a base de dados

mysql_select_db($db) or die ("Não conseguiu seleccionar a base de dados!");

//Criar a consulta

$query="SELECT * FROM eventos WHERE tema='Festas'";

//Executar a consulta

$resultado=mysql_query($query) or die ("Erro na query:$query.".mysql_error());

//Ver se algumas linhas foram retornadas

if (mysql_num_rows($resultado) > 0) {

//Sim

//Imprimir uma a seguir à outra

echo "<p>";

}

else

echo"Nenhuma linha encontrada!";

?>

<html>

<STYLE type=text/css>

body {

margin: 0;

padding: 0;

color: #666666; font-style:normal; font-variant:normal; font-weight:normal; font-size:11px; font-family:Tahoma, Arial, Helvetica, sans-serif

}

</style>

<body  topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0" link="#000000" vlink="#000000" alink="#000000">

<?php

while ($row=mysql_fetch_row($resultado)) {

echo "<p>".$row[1]."    ".$row[2]."    ".$row[4]."</p>";

}

  echo "</table>";

mysql_free_result($resultado);

//Fechar conecção

mysql_close($conn);

?>

<hr color="#F49500" size="1"></p>

          <p> </td>

        </tr>

        <tr>

          <td  height="18" valign="top" width="398"></td>

        </tr>

      </table>

</body>

</html>

Basta incluir no outro e imprimir não é??

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora