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 :

Créer un fichier de connection Global & relation entre fiche


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de Jcpan
    Inscrit en
    Août 2008
    Messages
    542
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 542
    Par défaut Créer un fichier de connection Global & relation entre fiche
    bonjour

    j'ai debute en Php ainsi j'ai créer une unité dont je stocke mes fonctions,
    le brobleme c'est que je ne sais faire le lien entre cette unité et les nouvelle unité que je créé.dans cette exemple je veux faire une seule connection a une base Mysql et l'utiliser dans tout le autre fichier PHP.

    voici le fichier globale de la connection ainsi qu'une fonction qui ajoute un utilisateur

    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
     
    <?php
    $connection = mysql_connect("localhost","root","");
    if ( ! $connection ) die ("connection impossible");
    $mabasededonnee="bdtest";
    mysql_select_db($mabasededonnee) or die ("pas de connection"); 
    ?> 
     
     
    <?php  
    function user_register($user_name, $password1, $password2, $email)
        {
            global $feedback, $hidden_hash_var;
     
            if ($user_name && $password1 && ($password1==$password2)) {
                // Le nom existe déjà ?
                $sql="SELECT * FROM personnel WHERE LoginPers ='$user_name'";
                $result=mysql_query($sql);
                echo "tata";
    			if ($result && mysql_num_rows($result) > 0) {
                    $feedback .= "ERREUR - Le Login existe déjà.\n";
                    return false;
                } else {
                    $sql = "INSERT INTO Personnel (LoginPers, PassPers, EmailPers) ".
                            "VALUES ('$user_name', password('$password1'), '$email')";
                    $result = mysql_query($sql);
                    if (!result) {
                        $feedback .= "ERREUR - (DB) : ".mysql_error() .".\n";
                        return false;
                    } else {
                        $feedback .= "Vous êtes enregistré.\n<br>";
                        return true;
                    }
                }
            } else {
                $feedback .= "ERREUR - Vous devez entrer votre nick et deux fois votre password.\n";
                return false;
            }
        }
    ainsi dans une autre fiche je fais appel a cette fonction, mais cette fonction me retourne toujours True sans afficher les erreurs.
    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
    <?php
    require_once ("Connect.php");
     
    ?>
     
    <form name="form1" method="post" action="">
      Login
      <input type="text" name="Login" id="Login">
     
    Password
      <input type="text" name="Password" id="Password">
     
      Re-password
      <input type="text" name="Repassword" id="Repassword">
      Email
      <input type="text" name="Email" id="Email">
      <input type="submit" name="OK" id="OK" value="OK">
     
    </form>
    <?php
    if (isset($_POST['Login']) && isset($_POST['Password']) && isset($_POST['Repassword']) && isset($_POST['Email']) ){
    if (user_register($_POST['Login'],$_POST['Password'],$_POST['Repassword'],$_POST['Email']) );{
    echo "ok";
    }
    }
    ?>
    code de la base

    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
     
    -
    -- Base de données: `bdtest`
    --
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `personne`
    --
     
    CREATE TABLE IF NOT EXISTS `personne` (
      `NumPers` int(11) NOT NULL AUTO_INCREMENT,
      `Nom_pers` varchar(20) NOT NULL,
      `PrenomPers` varchar(25) NOT NULL,
      `DnsPers` date NOT NULL,
      `TypePers` varchar(20) NOT NULL,
      `EmailPers` varchar(100) NOT NULL,
      `TelPers` varchar(20) NOT NULL,
      `StatutPers` varchar(20) NOT NULL,
      `LoginPers` varchar(30) NOT NULL,
      `PassPers` varchar(15) NOT NULL,
      PRIMARY KEY (`NumPers`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=25 ;
     
    --
    -- Contenu de la table `personne`
    --

  2. #2
    FoxLeRenard
    Invité(e)
    Par défaut
    Bonjour,

    Je peux te l'écrire, mais cet exemple est assez simple pour te permettre de le faire toi-même. aprés cela tu saura tout faire

    Utilises UN SEUL PHP magestion.php
    en premier pour simplifier je supposes que ta table MYSQL existe (vide ou pas peut importe)

    Voila ce qu 'il faut faire, tu ne mets aucune fonctions, simplement le FORM a dans sa valeur "action" le nom du PHP

    Le PHP commence par lire les POST comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    if (isset($_POST["Password"])) $Password=trim($_POST["Password"]);
        else $Password="";
     
    // ====et ça pour toutes tes saisies
     
    // ====Puis tu fais tes contrôles genre 
     
    if ($Password=="") echo ("il manque le password");
    En suivant avec une valeur $flag par exemple, si les saisies sont OK tu enregistre

    Si non ru réaffiches la zone de saisie !
    Dernière modification par Thes32 ; 29/01/2009 à 19h25.

  3. #3
    Membre éclairé
    Avatar de Jcpan
    Inscrit en
    Août 2008
    Messages
    542
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 542
    Par défaut
    Merci
    mes parametres de connection sont-il correcte ? ma demarche est ellle bonne ?

  4. #4
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par Jcpan Voir le message
    Merci
    mes parametres de connection sont-il correcte ? ma demarche est ellle bonne ?
    Coté MYSQL il est plus simple de faire ceci,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     $Flag1=mysql_connect($Serveur,$User,$Mdp) OR die('Erreur connexion 1');
       $Flag2=mysql_select_db($MaBase) OR die('Erreur connexion 2');
       $result=mysql_query( "select * from ta_table
             WHERE  UserMail = '$emailX'  ") OR die('Erreur connexion 3 ');
          while ($row=mysql_fetch_array($result)) 
             {
              $UserMail= stripslashes($row['UserMail']);
             }
       mysql_close();
    bien sur tu le fait que si les POST recus sont OK !!
    Dernière modification par Thes32 ; 29/01/2009 à 19h24. Motif: Balise CODE

  5. #5
    Membre éclairé
    Avatar de Jcpan
    Inscrit en
    Août 2008
    Messages
    542
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 542
    Par défaut
    OK Merci une derniere question

    dans mon fichier de connexion j'ai déclarer des var globales
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    global $feedback, $hidden_hash_var;
    est ce que je peux les récupérer dans une autre fiche en appelant ma fonction?

  6. #6
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par Jcpan Voir le message
    OK Merci une derniere question

    dans mon fichier de connexion j'ai déclarer des var globales
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    global $feedback, $hidden_hash_var;
    est ce que je peux les récupérer dans une autre fiche en appelant ma fonction?
    Désolé je ne te suis pas ...

    Je croyais que tu avais viré toute fonction et ne travaillait qu'en linéaire,
    car si tu lit ton PHP ligne par ligne, si a un endroit tu fais un include d'un autre fichier PHP, tout se passera comme s'il sagissait d'un même PHP, donc toutes variable est visible par toute la page

Discussions similaires

  1. Créer un fichier d'enregistrements
    Par Oregor dans le forum Langage
    Réponses: 19
    Dernier message: 02/06/2012, 20h02
  2. Créer un fichier global sous latex
    Par oumay dans le forum Débuter
    Réponses: 5
    Dernier message: 05/11/2009, 13h25
  3. [] [Stratégie] Comment créer un fichier log
    Par Skeezo dans le forum Installation, Déploiement et Sécurité
    Réponses: 4
    Dernier message: 16/09/2002, 18h30
  4. Instruction pour créer un fichier text ???
    Par Soulsurfer dans le forum Langage
    Réponses: 2
    Dernier message: 06/08/2002, 11h17
  5. Fichier de fonctions globales
    Par PEM dans le forum C++Builder
    Réponses: 5
    Dernier message: 10/07/2002, 21h35

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