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 :

Exécuter une action aléatoirement


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2006
    Messages
    314
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 314
    Points : 98
    Points
    98
    Par défaut Exécuter une action aléatoirement
    Bonjour,

    j'ai besoin de votre aide pour faire une focntion, je ne sais pas trop comment m'y prendre, par ou commencer.

    Voila j'ai deux actions différentes par exemple A et B, je voudrais fixé l'exécution des 2 fonctions par rapport à un pourcentage, si je donne 30 % je voudrais que A s'éxécute à 30 % et B 70%

    J'ai une base de donnée, pour logguer le tout et je peux m'appuyer dessus pour faire mes calculs .. par contre je voudrais que se soit alléatoire .... c'est possible ou trop compliqué ?

    Merci de me donner un coup de pouce pour me lancer ...
    La vie à le gout qu'on lui donne

  2. #2
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonjour,

    Voila j'ai deux actions différentes par exemple A et B, je voudrais fixé l'exécution des 2 fonctions par rapport à un pourcentage, si je donne 30 % je voudrais que A s'éxécute à 30 % et B 70%
    Comme ceci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $obj;
    if($percent == 30){
        $obj = function1();
    }
    elseif($percent == 70){
        $obj = function2();
    }
    J'ai une base de donnée, pour logguer le tout et je peux m'appuyer dessus pour faire mes calculs .. par contre je voudrais que se soit alléatoire .... c'est possible ou trop compliqué ?
    Rien compris. Quels calculs ? Qu'est ce qui est censé être aléatoire ? Le calcul ? Un nombre entre 1 et 100 ?

  3. #3
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    Un rand entre 1 et 100 pour le pourcentage de A et ensuite un 100-résultat pour B ?
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2006
    Messages
    314
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 314
    Points : 98
    Points
    98
    Par défaut
    oui je me suis mal expliqué !

    Un exemple plus précis...

    je voudrais définir un pourcentage, par exemple 30 %

    et donc que 30 % des visiteurs soientt renvoyer vers le lien A et donc du coup 70 pourcent vers le lien B.

    Est ce plus clair ?
    La vie à le gout qu'on lui donne

  5. #5
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 453
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 453
    Points : 4 605
    Points
    4 605
    Par défaut
    Comme l'a dit Deallyra, un rand peu etre la solution.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(rand()<=30)
    {
    redirection A
    }
    else
    {
    redirection B
    }
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Février 2006
    Messages
    314
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 314
    Points : 98
    Points
    98
    Par défaut
    Ha oui excellent je vais pouvoir faire des tests et des stats voir si ca peut etre fiable en tout cas merci beaucoup pour cette solution plutot simple !!!

    Jérémie
    La vie à le gout qu'on lui donne

  7. #7
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Pour que l'exemple de Demmotte soit exact, il faut un rand entre 0 et 100.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(rand(0, 100)<=30)
    {
    redirection A
    }
    else
    {
    redirection B
    }
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  8. #8
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 453
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 453
    Points : 4 605
    Points
    4 605
    Par défaut
    oui c'est vrai Celira, j'ai un peu trop generalise... mais en meme temps, trouver une explication sur la toile pour la fonction php rand() ne me paraissait pas sorcier :/
    j'essayerais de ne plus etre trop general par la suite
    encore desole.
    GL & HF
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 23/02/2006, 14h24
  2. Exécuter une action à une heure précise
    Par Rhadamanthe59 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 09/02/2006, 23h12
  3. Exécuter une action quand on ferme le navigateur
    Par Leobaillard dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 08/01/2006, 12h41
  4. Réponses: 1
    Dernier message: 25/10/2005, 13h25
  5. Exécuter une action à la fermeture d'une fenêtre
    Par wwave dans le forum Servlets/JSP
    Réponses: 12
    Dernier message: 28/07/2005, 15h15

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