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 :

[Système] exécuter fonction php dans la même page ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de AzertyH
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2006
    Messages : 90
    Par défaut [Système] exécuter fonction php dans la même page ?
    Bonjour,

    Je voudrais savoir si il est possible d'exécuter une fonction php en cliquant sur un lien. Mon but étant de rester sur la même page après appuie sur des boutons ou des liens.

    J'ai fait des recherches à ce propos mais je bloque à un endroit.
    J'ai vue qu'on pouvez faire comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <A HREF="<?php print $url."?ref=$semaine_suiv";?>">
    Ce code marche, mais il ne marche pas dans certain cas. Par exemple, j'ai essayé d'associer cette variable à une fonction php comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    {
    $semaine_suiv= semaine();
    }
    ?>
     
     
    <?php
    function semaine()
    {
    $num_semaine=1;
    echo $num_semaine;
    }
    ?>
    Et là mauvaise surprise, j'ai un message d'erreur. J'en déduit que ce n'est pas de cette maniere qu'il faut procéder pour apeler une fonction php.

    Pouvez-vous m'aider s'il vous plait?

    Merci pour votre aide

  2. #2
    Membre éprouvé
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Par défaut
    Php est un langage qui est interprété par le serveur. En clair, ca signifie que quand tu cliques sur un lien, si tu veux exectuer une fonction, il faut "donner la main" au serveur, c'est a dire recharger la page.

    Donc, ce que tu peux faire, c'est quelque chose du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php
    if (isset($_GET['active_function']))
      echo ("J'active ma fonction ici");
    ?>
     
    <a href="mapagecourrante.php?active_function=1">Je vais activer ma fonction</a>
    Si tu veux executer du code sans recharger, c'est du javascript qu'il te faut.

    --
    Rakken

  3. #3
    Membre confirmé Avatar de AzertyH
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2006
    Messages : 90
    Par défaut
    Ok merci d'avoir répondu si vite. Je vais étudier ça.

    Merci

  4. #4
    Membre confirmé Avatar de AzertyH
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2006
    Messages : 90
    Par défaut
    Par ailleurs je ne comprend pas les limites de cette possibilité :

    ci-après un script pour avancer d'une année et inscrire la nouvelle date:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $url= $_SERVER['PHP_SELF']; 
     
    $Asuivant= mktime (0,0,0,$Mois,$Jour,$Annee+1);  // calcul l'annee suivante
    ?>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <A HREF="<?php print $url."?ref=$Asuivant";?>">  //lien vers cette fameuse variable php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
       $D=date("z",$ref)+1;
       print(date("l j F Y :\W\e\e\k=W \D\a\y=$D",$ref)); //affichage de la nouvelle date
      ?>
    Là sa marche, et pourtant mon lien est dirigé vers une variable contenue dans du php, et sans recharger ma page!
    C'est peut être un cas particulier?

    Enfin pouvez vous me dire ce qui ce passe s'il vous plait? Merci

  5. #5
    Membre éprouvé
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Par défaut
    Euh, ton code, tel que tu l'a posté, il ne fait rien...

    --
    Rakken

  6. #6
    Membre confirmé Avatar de AzertyH
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2006
    Messages : 90
    Par défaut
    Oui escuse moi, j'ai pas tout mis. J'ai complété mon code. J'ai édité mon précédant message.

Discussions similaires

  1. formulaire+php dans la méme page
    Par belakhdarbts10 dans le forum Langage
    Réponses: 5
    Dernier message: 02/08/2013, 10h10
  2. [2.x] Exécution plusieurs requêtes dans la même page
    Par fattouch_squall dans le forum Symfony
    Réponses: 1
    Dernier message: 01/12/2011, 11h14
  3. Réponses: 5
    Dernier message: 22/05/2009, 09h48
  4. [Système] traitement de donnée dans la même page
    Par Albat_r dans le forum Langage
    Réponses: 10
    Dernier message: 07/12/2007, 14h02
  5. Réponses: 9
    Dernier message: 04/10/2007, 12h15

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