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

PHP & Base de données Discussion :

Création de fonction pour affichage numéro de téléphones [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 27
    Points : 19
    Points
    19
    Par défaut Création de fonction pour affichage numéro de téléphones
    Bonjour et bonne Année à tous

    Pour commencer l'année je veut créer une fonction toute bête qui me permettrais de "découper" les numéros de téléphones nationaux qui sont stockés en varchar(10) dans ma base données.

    Il n'en ait rien cette fonction me retourne un chiffre qui n'a rien à voir avec ce que je lui demande.

    Quelqu'un peut-il m'éclairer s'il vous plaît ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function miseEnformeTels($num){
     
     
    $d1 = substr($num, 0, 2);
    $d2 = substr($num, 2, 2);
    $d3 = substr($num, 4, 2);
    $d4 = substr($num, 6, 2);
    $d5 = substr($num, 8, 2);
     
    $numspaced = $d1.' '.$d2.' '.$d3.' '.$d4.' '.$d5;
     
    echo $numspaced;
     
    }

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 99
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    dans l'entrée de ta fonction, t'as essayé de faire un echo de ta variable $num avant le découpage pour voir ce que tu essaies de découper ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 27
    Points : 19
    Points
    19
    Par défaut
    avant la fonction j'ai bien un numéro du type 0630341759 issu de ma base de données, pas de souci de ce point de vue.

    par contre j'ai essayé de faire pour voir...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function miseEnformeTels($num){
     
        echo $num;
     
    }
     
    $test = 0630341759;
     
    miseEnformeTels($test);
    et j'obtient

    13383805

    je comprend rien là

    je pense que la suite de la fonction est ok mais que c'est dès le part comme on le voit qu'il y à un un gag.

  4. #4
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Sinon tu peux faire SUBSTRING via MySQL directement, ce sera plus optimisé

  5. #5
    Membre confirmé Avatar de rikemSen
    Homme Profil pro
    Analyste Développeur Web - Fizzup.com
    Inscrit en
    Décembre 2007
    Messages
    387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste Développeur Web - Fizzup.com
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 387
    Points : 540
    Points
    540
    Par défaut
    Citation Envoyé par ripout Voir le message
    avant la fonction j'ai bien un numéro du type 0630341759 issu de ma base de données, pas de souci de ce point de vue.

    par contre j'ai essayé de faire pour voir...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function miseEnformeTels($num){
     
        echo $num;
     
    }
     
    $test = 0630341759;
     
    miseEnformeTels($test);
    et j'obtient

    13383805

    je comprend rien là

    je pense que la suite de la fonction est ok mais que c'est dès le part comme on le voit qu'il y à un un gag.

    Ton $test doit etre:

    Car on fait un substring sur un STRING et non in INT

    Si ce n'est pas ça, c'est la honte d'avoir été aussi sur de moi

  6. #6
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    Salut

    Attention au 1er 0, faut mettre ce chiffre en tant que string (chaine) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $test = '0630341759';
    Sinon, on peu aussi exploiter du Javascript pour mettre en forme, comme ici mettre des espaces entre des chiffres.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 27
    Points : 19
    Points
    19
    Par défaut
    j'avais pensé mettre ma variable comme vous le suggérez entre des simples ou des doubles quotes.

    si passe comme argument à ma fonction une chaine string comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    miseEnformeTels('0630341759')
    je n'ai bien sûr aucun souci.
    mais si je passe comme argument à ma fonction une variable issue de ma reqête comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    miseEnformeTels($row_machine['tel_mobile'])
    alors là j'ai ce fameux souci



    Je ne sait pas comment faire pour forcer le type de ma variable en string. C'est peut être ça la solution non ?

  8. #8
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Points : 1 101
    Points
    1 101
    Par défaut
    Est ce que le champs tel_mobile dans la base est varchar??

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 99
    Points : 127
    Points
    127
    Par défaut
    essaie ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    miseEnformeTels("$row_machine['tel_mobile']");

  10. #10
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 27
    Points : 19
    Points
    19
    Par défaut
    je suis confu mon champ n'était pas défini en varchar mais en int.


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

Discussions similaires

  1. [XL-2010] Problème avec fonction VBA pour extraire un numéro de téléphone
    Par Kanigui dans le forum Macros et VBA Excel
    Réponses: 33
    Dernier message: 15/11/2014, 16h38
  2. Réponses: 4
    Dernier message: 18/08/2010, 16h59
  3. API pour récupérer numéro de téléphone entrant
    Par farid91 dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 08/02/2010, 17h19
  4. fonctions pour affichage correct dans textarea
    Par brudao dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 25/02/2009, 12h17
  5. regex pour recupérer numéro de téléphone
    Par Jérémy Lefevre dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 03/09/2008, 12h46

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