Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    testo dinamico in php..come fare il refresh?

    ciao a tutti i forumisti...ho un problema...ho un swf che prende un titolo e un testo di una news da un file in php, che a sua volta li pesca da un db. La parte php l'ho risolta...ogni minuto va a rileggere dal db le notizie nuove e sono a posto. Come posso fare la stessa cosa con AS? Non posso assolutamente fare il refresh manuale della pagina...Help!

  2. #2
    cioè devi ogni minuto aggiornare la pagina?

    come leggi i dati...?

    in genere con loadvars magari potresti inserire la lettura dei dati in una funzione e richiamare la funzione ogni minuto con un setinterval
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  3. #3
    ops...posto il codice, magari è d'aiuto:
    txtNews è l'istanza del testo dinamico.


    nel 1° frame as ho:

    stop();
    Stage.showMenu = false;
    Stage.scaleMode = 'noScale';
    System.useCodepage = true;

    file = 'http://www.pippopluto.it/play/news.php';
    news = new LoadVars();
    news.onLoad = function(success){
    if(success){
    play();
    }
    }
    news.load(file);
    alpha = 100;
    i = 0;
    function time(a){
    fade = setInterval(a, 20);
    }
    function fadeIn(){
    if(alpha == 0){
    clearInterval(fade);
    play();
    }
    else{
    alpha -= 1;
    mask._alpha = alpha;
    }
    }
    function fadeOut(){
    if(alpha == 100){
    clearInterval(fade);
    gotoAndPlay(2);
    }
    else{
    alpha += 1;
    mask._alpha = alpha;
    }
    }


    nel 2° frame:



    stop();
    function News(){
    if(i == news.totNews){
    i = 0;
    }
    txtNews.htmlText = ''+news["data"+i]+'
    ';
    txtNews.htmlText += ''+news["titolo"+i]+'
    ';
    txtNews.htmlText += news["testo"+i];
    i++;
    }
    News();
    setInterval(News, 10000);
    time(fadeIn);

    infine, al 30°:

    stop();
    time(fadeOut);



    Il problema è che il testo dinamico, cioè txtNews, non "tiene il passo" della pagina php e perde tutti gli aggiornamenti, a meno che non faccia un refresh manuale..cosa che non posso permettermi di fare...


  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    intanto eviterei di usare 3 frame, ma anche 2,
    poi ti basta richiamare la funzione load per "rigenerare" le informazioni nella pagina

    un esempio semplice

    Codice PHP:
    var lv = new LoadVars();
    lv.onLoad = function(ok){
    if(
    ok){
    trace("caricato!")
    }
    }
    lv.load("file.php");
    var 
    intv setInterval(function(){lv.load("file.php");}, 10000); 
    con questa funzione, ogni 10 secondi il load verrà richiamato e di conseguenza il codice dell'evento onLoad

  5. #5
    grazie mille per la dritta, ma ora c'è un problema...
    nn visualizza piu le news...mi esce il trace corretto del caricamento file, ma non vedo piu niente..
    questo è il codice modificato:

    1° frame:

    stop();
    Stage.showMenu = false;
    Stage.scaleMode = 'noScale';
    System.useCodepage = true;

    /*file = 'http://www.mezzanotte-srl.it/play/news.php';
    news = new LoadVars();
    news.onLoad = function(success){
    if(success){
    play();
    }
    }
    news.load(file);*/

    var lv = new LoadVars();
    lv.onLoad = function(ok){
    if(ok){
    trace("File caricato")
    }
    }
    lv.load("http://www.pippopluto.it/play/news.php");
    var intv = setInterval(function(){lv.load("http://www.pippopluto.it/play/news.php");}, 60000);

    alpha = 100;
    i = 0;
    function time(a){
    fade = setInterval(a, 20);
    }
    function fadeIn(){
    if(alpha == 0){
    clearInterval(fade);
    play();
    }
    else{
    alpha -= 1;
    mask._alpha = alpha;
    }
    }
    function fadeOut(){
    if(alpha == 100){
    clearInterval(fade);
    gotoAndPlay(2);
    }
    else{
    alpha += 1;
    mask._alpha = alpha;
    }
    }

    questo è il 2° frame:

    stop();
    function News(){
    if(i == lv.totNews){
    i = 0;
    }
    txtNews.htmlText = ''+lv["data"+i]+'
    ';
    txtNews.htmlText += ''+lv["titolo"+i]+'
    ';
    txtNews.htmlText += lv["testo"+i];
    i++;
    }
    News();
    time(fadeIn);

    il 30° lo posso buttare? in che senso?

  6. #6
    up!

  7. #7
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    no, dicevo che per andare bene con il refresh e tutto il resto, sarebbe meglio utilizzare un unico frame, l'esempio che ti ho scritto qualche post indietro è calzante di quel che voglio dire, cioè scrivi le azioni che deve fare il filmato, a ricezione avvenuta, direttamente sull'onLoad, così eviti di incartare il player con quel "play();" nell'onLoad... visto che nel momento in cui lo richiami, se non ho capito male, si trova al 30° frame, andrebbe avanti nella riproduzione

    poi una curiosità del tutto personale... ma perchè fai un salto di 28 frame per l'ultima azione?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.