A l'aide SVP [Résolu]

Signaler
Messages postés
15
Date d'inscription
mercredi 4 mars 2009
Statut
Membre
Dernière intervention
17 août 2009
-
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
-
Bonjour, j'ai un problème avec le code qui fait un texte défilant sur une page.
Le problème c'est que en chargeant la page je vois le texte s'afficher et défiler lentement et en même temps le navigateur plante. voici le code:

//PAGE DEFILANT.PHP
<?php //code php qui permet de récuperer le texte de la base mysql pour l'afficher
mysql_connect("localhost", "root"); // Connexion à MySQL
mysql_select_db("projet"); // Sélection de la base projet

$reponse = mysql_query("SELECT texte FROM texte_defilant WHERE id=1") or die(mysql_error());
            mysql_close(); // Déconnexion de MySQL
            if(mysql_num_rows($reponse)>0){
                while ($donnees = mysql_fetch_array($reponse))
                {
                $texteDefilantSaisi =$donnees['texte'];
                }
                }
?>

//la zone de texte ou le texte va défiler
        <form name= "message">
            <center>
               

            </center>
        </form>

<SCRIPT>
var Message=" <?php echo($texteDefilantSaisi)."        "?> ";

var speed =210;
var scrollingRegion=170;

var startPosition=10;
function mainTextScroller() {
        var info=Message;
        var tempLoc=(scrollingRegion*3/info.length)+1;
        if (tempLoc<1) {tempLoc=1}
        var compteur;
        for(compteur=0;compteur<=tempLoc;compteur++)
           info+=info;
document.message.mainTextScroller.value=info.substring(startPosition,startPosition+scrollingRegion);
        startPosition++;
        if(startPosition>scrollingRegion) startPosition=0;
        setTimeout("mainTextScroller()",speed); }
       
</SCRIPT>

//PAGE D'APPEL
onLoad="mainTextScroller()">//qd j'enlève onLoad le texte ne s'affiche plus et le navigateur ne plante plus
   
        <?php
        session_start();
        ?>
       
       

        <?php
        // On inclut le haut de la page
        include("en_tete.php");
        ?>   
       

       

        <?php
        // On inclut le texte défilant
        include("defilant.php");
        ?>
       

5 réponses

Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
Bonjour,

loin d'avoir tout regardé ( surtout que tu nous donnes du php,
      donc comment devine-t-on le contenu de la base ? des $variables...
      et qu'il y a des choses, disons.... "bizarres" ! )
mais déjà :  for(compteur=0;compteur<=tempLoc;compteur++)   info+=info;
      imagine tempLoc = 128, et info="du texte par exemple"....
      fais un alert(info) ... et tu verras.
       for (compteur=0; compteur<=tempLoc; compteur++)   { info+=info; alert(info); }

met au point, déjà, ton php, et sans donner de conseils,
coté html, utilise donc la balise marquee, elle est faite pour ça.

Cordialement [mon Site] [M'écrire] Bul
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
gentil n'a qu'un œil, moi j'en ai deux


si c'est ironique : relis, fais, et donne nous
    ce qu'il faut pour qu'on puisse t'aider,
si c'est résolu : nickel.
Messages postés
15
Date d'inscription
mercredi 4 mars 2009
Statut
Membre
Dernière intervention
17 août 2009

Merci c'est gentil
Messages postés
15
Date d'inscription
mercredi 4 mars 2009
Statut
Membre
Dernière intervention
17 août 2009

haha çe n'est pas du tt ironique, c'est juste que j'ai viré le code JS(faute de temps) et j'ai utilisé la balise <marquee>

Merci Quand même
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
9
nickel alors. une simple balise c'est toujours mieux que tout script js.