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

Langage PHP Discussion :

[PHP-JS] appel d'une fonction javascript en php


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 11
    Points : 14
    Points
    14
    Par défaut [PHP-JS] appel d'une fonction javascript en php
    Bonjour j'aimerai réaliser un décompte Dynamique
    j'ai été renvoyer vers le javasrcipt ou j'ai trouver un script , et jaimerai savoir si il est possible d'appeler une fonction javascript en php :
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    echo"<script  type='text/javascript'>
     
    function t() {
      window.setTimeout('t();', 1000);
    }
    </script>";
     
    if($con['const'] == '0')
    {
    	if($row['nourriture']>='$prodaresno' & $row['resor']>='$prodaresor')
    	{
    	echo"<a href='index2.php?page=construction&action=1&batiment=proda'>Construire</a>";
    	}
    	else
    	{
    	echo"<font color='red'>Manque <br> de ressource</font>";
    	}
    }
    else
    {
      if($con['proda']=='0')
      {
      echo"---------";
      }
      else
      {
     
      $prodac=$con['proda']+($prodatps*60);
      $tProd=($prodac-$timestamp);
      $tsec =($tProd %60);
     
    	if($tProd>0)
    	{
    	$tmin=intval($tProd/60);
    	$the=intval($tProd/3600);
    	t(); //renvoyer vers la fonction javascript t();
    	}
    	else
    	{
    	echo"<a href='index2.php?page=construction&action=2&batiment=proda'>fin</a>";
    	}
     
      }
    }
    si se n 'est pas possible existe t il un equivalent en php de "window.setTimeout();"

    merci

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    386
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 386
    Points : 275
    Points
    275
    Par défaut
    Ici tu ne l'appelle pas tu la déclare juste (tu peux aussi la déclarer entre les balises <head></head> c'est ce qui se fait souvent) Tu peu l'appeller en php sur un évènement, par exemple sur le click d'un bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type='button' value='Click' onclick='t()'>

  3. #3
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2007
    Messages : 215
    Points : 151
    Points
    151
    Par défaut
    Salut
    Sa devrait marcher comme sa:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    //renvoyer vers la fonction javascript t();
    echo"<script  type='text/javascript'>	
        t(); 
    </script>";

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 11
    Points : 14
    Points
    14
    Par défaut
    j'ai modifier mon code :

    <head></head>
    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
    <script  type='text/javascript'>
      var h=0;
      var m=0;
      var s=0;
    function t(tdebut) {
      var temps = getTime();
      tdebut=tdebut*1000;
      construction=tdebut-temps;
     
      if(construction>0)
      {
      s=parseInt(construction/1000);
      m=parseInt(s/60);
      h=parseInt(m/60);
      document.getElementById('tempsdiv').innerHTML=''+h+'h'+m+'min'+s+'s';
      }
    }
    </script>
    <body></body>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    echo "<script type='text/javascript'>
    go=setInterval('t(".$prodac.")',1000);
    </script>";
     echo"<div id='tempsdiv'></div>";
    ma page fonctionne sa ne me signal aucune érreur mais cela ne m'affiche rien

    help plz

  5. #5
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    215
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2007
    Messages : 215
    Points : 151
    Points
    151
    Par défaut
    tu utilise firebug? sa peut servir^^

    quand j'affiche construction sa me fait du negatif donc sa passe pas dans le if

  6. #6
    Membre confirmé Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Points : 627
    Points
    627
    Par défaut
    Salut
    Pourquoi mets-tu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    go=setInterval('t(".$prodac.")',1000);
    est-ce que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setInterval('t(".$prodac.")',1000);
    ne suffirait pas?

    Autrement, je crois qu'il y a un problème avec getTime().

    En effet, il s'agit d'un objet Date() qui n'est pas défini.

    Donc il faut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function t(tdebut) {
      var madate = new Date();
      var temps = madate.getTime();
      tdebut=tdebut*1000;
      construction=tdebut-temps;
    Et ça devrait fonctionner un peu mieux
    GAMIN !!!!
    _______________________________________________
    PHP 5.2 | Apache 2 | MySQL 5 | WinXP Pro | Mac OSX

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 11
    Points : 14
    Points
    14
    Par défaut
    merci ça marche

  8. #8
    Membre confirmé Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Points : 627
    Points
    627
    Par défaut
    Tant mieux !
    Content de t'avoir aidé.

    Pense à pour ceux qui auront le même problème que toi

    Bon dev'
    GAMIN !!!!
    _______________________________________________
    PHP 5.2 | Apache 2 | MySQL 5 | WinXP Pro | Mac OSX

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] appel d'une fonction javascript en php
    Par mdh12 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 24/05/2010, 08h41
  2. [PHP-JS] Appel d'une fonction javascript
    Par philippef dans le forum Langage
    Réponses: 3
    Dernier message: 29/10/2007, 13h19
  3. Réponses: 4
    Dernier message: 30/05/2007, 18h05
  4. Réponses: 13
    Dernier message: 17/01/2007, 13h18
  5. Réponses: 2
    Dernier message: 03/04/2006, 18h38

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