IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

une fonction peut elle etre répétée indefiniment ?


Sujet :

JavaScript

  1. #1
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut une fonction peut elle etre répétée indefiniment ?
    Je voulais savoir si une fonction pouvait etre répétée indéfiniment ... car j'ai l'impression que j'ai un soucis de ce coté la !
    Merci pour votre réponse.

  2. #2
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 60
    Points : 65
    Points
    65
    Par défaut
    Oui, mais le navigateur peut prévenir qu'un script ralenti l'exécution de la page.
    Quel est ton problème ?

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    avec un setInterval ... ou un setTimeout en fin de fonction ...
    masi se méfier alors des conflits entre les différentes instances de la fonction, voir new ...

  4. #4
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    En fait j'ai cerné le soucis ... je fais appel plusieurs fois avec une fonction qui permet de faire un "refresh" de la page php ...

    Voici la facon dont j'en appele ...

    Je fais appel a 2 fonctions ... via un onclick="[nom_fct]();[nom_fct]();"

    Ca marche correctement sur certaines zones ... mais arrivés aprés 5-6 appels ... la fonction ne fait plus effet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="lan" value="">&nbsp&nbsp <a href="#" onclick="fonction7(); refresh()"><IMG src="image/valid.jpg" style="border:"0""></a>
    ??????

  5. #5
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    faudrait voir les fonctions ...
    Sinon, au passage faut enlever les "" autour du 0 :A+

  6. #6
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Si vous voulez je vous donne le code complet + de 600 lignes ...

    Ok ?

  7. #7
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par bilou95
    Si vous voulez je vous donne le code complet + de 600 lignes ...
    refresh() devrait suffire ...

  8. #8
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    voici ma fonction refresh()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function refresh()
    {
        location.reload();
    }
    Merci pour votre aide

  9. #9
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Heu ... oui bon ben ça vient pas de là

    Tu as activé la "notification des erreurs de scripts" (ou équivalent) ?
    Et logiquement : tu as une erreur quand "ça marche plus" ?

    ... parce qu'il y a effectivement pas de raison sinon ...

  10. #10
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    notification d'erreur de script ?

    Comment les active t-on ?

    Merci.

  11. #11
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par bilou95
    notification d'erreur de script ?

    Comment les active t-on ?
    Dans les options du nav ...

  12. #12
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Non ok je vois ... je les ai bien sur !! je croyais que c'etait autres choses !

    Non aucune erreur ... n'apparait !

    Je penses que je suis dans la merdAs !!!! grgrgrgr ...

  13. #13
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Observe les changements dans le code source de la page, jusqu'à ce que ça merdouille ...
    Ca peut pas s'arrêter sans raison ...

    A+

  14. #14
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Je sais exactement d'ou provient le soucis ...

    En fait, Pourquoi ? j'ai rajouté une fonction "refresh()" pour permettre dés validation sur un champ INPUT TEXT de rafraichir automatiquement la page concernée ...

    Dés que je retire la fonction 'refresh()' l'UPGRADE fonctionne parfaitement en réactualisant la page manuellement (vois tu ?)

    Ce qui est bizarre c'est que j'ai au moins 4-5 fois ces fonctions répétées précedemment et l'actualisation et validation (UPGRADE sur table SQL) fonctionne parfaitement !

    C'est pour ca que je demandais si des fonctions pouvait etre répétées indéfinimment !

    ...

  15. #15
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Code qui permet de modifier une valeur dans une table SQL ...

    En fait 1 fonction permet d'afficher le champ INPUT TEXT (qui est caché), ensuite une autre qui permet de faire un refresh, une autre qui permet d'exécuter le formulaire ...

    CE QUI EST BIZARRE c'est que ce code fonctionne parfaitement précédemment.

    Mes fonctions JAVASCRIPT

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <script type="text/javascript">
     
    function refresh()
    {
        location.reload();
    } 
     
    function afficher9()
         {
         document.getElementById("iddelinput9").style.visibility="visible";
    	 document.getElementById("iddelinput9").value="'.$data['lan'].'"
    	 document.getElementById("iddelimgvalid9").style.visibility="visible";
    	 document.getElementById("iddelimgannul9").style.visibility="visible";
         }
     
    function valider9()
    {
    document.forms.maj_rj45.submit();
    }
     
     
         function annuler9()
         {
         document.getElementById("iddelimgannul9").style.visibility="hidden";
         }
         </script>
    Mon code PHP / JAVASCRIPT

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    if($data['lan'] == '')
    	{
    	echo '<tr>';
    	echo '<td style="border-color:#000000;border-width:1;border-style:dotted"><strong><font size="1">Carte réseau [LAN]</td>';
    	echo '<td style="border-color:#000000;border-width:1;border-style:dotted">';
     
    	if (isset($_POST["lan"])) {
    	$sql_lan="UPDATE spare SET lan='".$_POST["lan"]."' WHERE id_spare='$id'";
    	$exe_sqllan = mysql_query($sql_lan) or die('Erreur SQL !');
    							 }
     
    	echo '<form name="maj_lan" method="POST" Action="index.php?numlien=fich_spare&id='.$id.'">';
    	echo '<input type="text" name="lan" value="">&nbsp&nbsp <a href="#" onclick="fonction7(); refresh()"><IMG src="image/valid.jpg" style="border:"0"></a>';
    	echo'</form></td>';
    	}					
    		else
    	{
    	echo '<tr>';
    	echo '<td style="border-color:#000000;border-width:1;border-style:dotted"><strong><font size="1">Carte réseau [LAN]</td>';
     
    	if(isset($_POST["rj45"])) {
    	$sql_rj="UPDATE spare SET lan='".$_POST["rj45"]."' WHERE id_spare='$id'";
    	$exe_sqlrj = mysql_query($sql_rj) or die('Erreur SQL !');
    								}
    	echo'<form name="maj_rj45" method="POST" Action="index.php?numlien=fich_spare&id='.$id.'">';
     
    	echo '<td style="border-color:#000000;border-width:1;border-style:dotted">'.$data['lan'].'&nbsp<IMG src="image/edit.png" id="iddelimage9" onclick="afficher9()">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="rj45" id="iddelinput9" style="visibility: hidden" value=""><a href="#" onclick="valider9();refresh();"><IMG src="image/valid.jpg" id="iddelimgvalid9" style="visibility: hidden" style="border:"0"></a>&nbsp&nbsp<a href="#" onclick="annuler9();refresh();"><IMG src="image/annuler.jpg" id="iddelimgannul9" style="visibility: hidden" style="border:"0"></a></form></td>';
    	echo'</tr>';
    	}

  16. #16
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Pas de réponse ?


  17. #17
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    index.php c'est la page qui contient le code que tu as donné ?

  18. #18
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    c'est une page PHP ... de mon intranet ...

    Ce n'est pas la page INDEX.PHP non.

    Pourquoi ?

  19. #19
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par bilou95
    c'est une page PHP ... de mon intranet ...

    Ce n'est pas la page INDEX.PHP non.

    Pourquoi ?
    Parce que c'est celle qui est appelée par le form (au submit).
    Dans cette page, une fois la maj de la bdd effectuée, tu n'as qu'à faire une redirection sur la page qui contient le <form> soumis.
    Le résultat sera équivalent au refresh, sauf que tu n'auras plus à faire de reload(), puisque c'est ça qui semble poser pb ...

    A+

  20. #20
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Je sais mais c'est ce que je veux eviter ... créer un formulaire a part ...

    J'integre des formulaires dans la page elle meme ... et via des fcts je les executent !

    mais es tu surpris que cela plante ?

Discussions similaires

  1. edmx une fonction peut-elle retourner un boolean ?
    Par Golzinne dans le forum Silverlight
    Réponses: 1
    Dernier message: 10/11/2010, 14h19
  2. [Débutant] Une fonction peut-elle prendre des caractères en argument ?
    Par mdelvaux89 dans le forum MATLAB
    Réponses: 7
    Dernier message: 07/04/2009, 21h31
  3. une Dll peut elle utiliser les fonctions d'une autre dll?
    Par kantelise dans le forum Windows
    Réponses: 7
    Dernier message: 18/05/2006, 03h45
  4. Une fonction peut-elle retourner plusieurs résultats ?
    Par aragorns dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 26/03/2005, 22h18
  5. Réponses: 5
    Dernier message: 25/11/2003, 10h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo