Créer un espace membre en PHP #1 - Base de données

Maxence ES

Guizou
Premium
Inscription
23 Janvier 2013
Messages
4 842
Réactions
3 146
Points
17 331
34368.png

CREER UN ESPACE MEMBRES EN PHP
#1 - La base de données
Salut tout le monde, c'est Maxence, nouvelle série en zone premium qui vous expliquera comment créer un espace membres en PHP. Il est simple, mais temps qu'on a pas l'algorithme ça sera plus compliqué.

Le tutoriel est destiné aux débutants et sera composé d'environ 5 épisodes (liens en bas).
Dans cet épisode nous allons créer notre base de données (et notre table :p).

1059.png


Pour commencer, vous devrez aller dans phpmyadmin (ou similaire), et créez une nouvelle base de données. Je vais l'appeller "membresRG".

14ec92a4c3b3e0c9717724b22d7ea321.png

Une fois dans la base de données, créez une table "membres" de 5 champs.

ca2b1eee9aacdb97d4038a6dd9050873.png

Vous allez nommer et "typer" les colonnes, comme ceci:

777991fa0fa8c5276a381a73f3a8cc3c.png

  • id, int 11, A_I
  • pseudo, varchar 255
  • pass, varchar 255
  • mail, varchar 255
  • ip, varchar 255
Vous cliquez sur "Sauvegarder" en bas à droite, et voilà, la table est crée ! Génial !

1230.png

CONNEXION A LA BASE DE DONNEES EN PHP
Maintenant, avant de nous quitter (enfin pas exactement), nous allons nous connecter en PHP à la base de données. Tout d'abord, créez le fichier bdd.php.

Nous allons utiliser PDO pour nous connecter. Cela va être simple, croyez-moi.
Vous allez noter ceci:

PHP:
<?php
$hote = "localhost";
$nom = "membresRG"; // Nom de la base de données
$pseudo = "root";
$pass = NULL; // Pour la base de données localhost, pas de mot de passe par défaut !
try
{
   $bdd = new PDO('mysql:host='.$hote.';dbname='.$nom, $pseudo, $pass);
}
catch (Exception $e)
{
  die('Erreur : ' . $e->getMessage());
}
?>

Ce code veut dire quoi ?
Tout d'abord, nous déclarons nos variables (on pourrait directement les mettre après).
Ensuite, nous testons la connexion avec les informations données.
Puis le catch() signifie "Si connexion échouée alors" (ici on dit "Erreur: xxxxxxxxxxxxxx").

Par défaut, si vous êtes sur wampserver, les informations sont les suivantes:

  • Hôte: localhost
  • Nom de la base de données: membresRG
  • Pseudo: root
  • Mot de passe: aucun (mettre NULL à la variable)
43179.png

COMPRENDRE LA BASE DE DONNEES
Une base de données, de son nom magique et qui explique tout contient des données. Elle peut contenir des chiffres, une chaîne de caractères, n'importe quoi.

Une base de données contient des tables. On peut en créer en illimité. Les tables sont différentes les unes des autres.

  • Une peut contenir les informations des membres (comme nous ici)
  • Une autre peut contenir des informations d'un site
  • Une autre les news
Dans une table, nous avons des colonnes. Chaque information rentrera dans une colonne :
  • Le pseudo du membre dans la colonne "pseudo"
  • Le mot de passe du membre crypté dans la colonne "pass"
  • Etc.
Et dans une table il y a des lignes. Une ligne contient par exemple un membre.
Pas compris ? Vous allez tout comprendre:

ba678d10b29cf0a86915e7186b48a111.png

Voilà !
En espérant que le tutoriel vous plaira.

Maxence :)
 

AMO ♥ Docteur House

Directeur du service de diagniostique
Premium
Inscription
15 Avril 2012
Messages
996
Réactions
619
Points
11 926
  1. 1.1 Présentation :

    Le Langage PHP est le langage le plus répandu sur le net mais aussi le plus puissant car il prend controle de la quasi-totalité du serveur.L'include() est l’une des fonctions php les plus utilisées sur la toile , elle permet l’appel de pages depuis une autre . Exemple : Admettons que toutes vos pages utilisent la page sql.php dans laquelle sont contenus vos informations SQL, il convient de l’inclure dans chacune de vos pages plutôt que de retaper l’équivalent de sql.php dans toutes vos pages. Voici donc un exemple pour mieux eclaircir : L’url du site : La page index.php ici aurait la structure suivante :

    <?
    include("sql.php");
    include($page);
    include("footer.php");
    ?>

    Ainsi toutes les pages appelées par index.php de l’url (comme l’exemple ci-dessus ) incluraient automatiquement le fichier sql.php
    1.2 Exploitation :

    Il y a deux manières d’exploiter la faille Include :
    Exploitation Interne :

    Reprenons notre Exemple : . Ici la page index.php recevait comme paramètre la page contact.php pour ensuite l’inclure, donc si on remplace contact.php par un fichier sensible existant sur le serveur, index.php l’inclurait, ce qui nous permettrait de le lire. Voici quelques exemples :




    Ici le site afficherais le contenu du repertoire /etc/passwd ,ou se trouvent les comptes administrateurs,ce qui vous permettrais d’avoir un accès root sur le serveur.
    Exploitation Externe :

    Reprenons encore une fois notre Exemple : . Ce genre d’exploitation est la plus courante, ici c’est un script php hebergé sur notre propre serveur qu’on pourrait inclure a l’aide d’un appel extérieur de la sorte :< br /> Comme vous l’avez surement compris votre « script-malfaisant » s’occupera du reste, il y a plusieurs possibilités, des connaissances en php s’imposent, ce qui n’est pas l’objet de notre tutoriel.
    1.3 Conclusion :

    La Faille Include est une faille très répandue sur le net, ce qui fait d’elle une faille dangereuse pour les webmasters, qui vise l’index de leur site et aussi leur statut « root ».
Source : Hack-Modz
 

Maxence ES

Guizou
Premium
Inscription
23 Janvier 2013
Messages
4 842
Réactions
3 146
Points
17 331



    • 1.1 Présentation :

      Le Langage PHP est le langage le plus répandu sur le net mais aussi le plus puissant car il prend controle de la quasi-totalité du serveur.L'include() est l’une des fonctions php les plus utilisées sur la toile , elle permet l’appel de pages depuis une autre . Exemple : Admettons que toutes vos pages utilisent la page sql.php dans laquelle sont contenus vos informations SQL, il convient de l’inclure dans chacune de vos pages plutôt que de retaper l’équivalent de sql.php dans toutes vos pages. Voici donc un exemple pour mieux eclaircir : L’url du site : La page index.php ici aurait la structure suivante :

      <?
      include("sql.php");
      include($page);
      include("footer.php");
      ?>

      Ainsi toutes les pages appelées par index.php de l’url (comme l’exemple ci-dessus ) incluraient automatiquement le fichier sql.php
      1.2 Exploitation :

      Il y a deux manières d’exploiter la faille Include :
      Exploitation Interne :

      Reprenons notre Exemple : . Ici la page index.php recevait comme paramètre la page contact.php pour ensuite l’inclure, donc si on remplace contact.php par un fichier sensible existant sur le serveur, index.php l’inclurait, ce qui nous permettrait de le lire. Voici quelques exemples :




      Ici le site afficherais le contenu du repertoire /etc/passwd ,ou se trouvent les comptes administrateurs,ce qui vous permettrais d’avoir un accès root sur le serveur.
      Exploitation Externe :

      Reprenons encore une fois notre Exemple : . Ce genre d’exploitation est la plus courante, ici c’est un script php hebergé sur notre propre serveur qu’on pourrait inclure a l’aide d’un appel extérieur de la sorte :< br /> Comme vous l’avez surement compris votre « script-malfaisant » s’occupera du reste, il y a plusieurs possibilités, des connaissances en php s’imposent, ce qui n’est pas l’objet de notre tutoriel.
      1.3 Conclusion :

      La Faille Include est une faille très répandue sur le net, ce qui fait d’elle une faille dangereuse pour les webmasters, qui vise l’index de leur site et aussi leur statut « root ».
Source : Hack-Modz

Hum je vois ... :mmh:
Ca marche avec require_once ? :trollface:
Je rigole, je vais voir comment on pourra régler ça ! :)
 

AMO ♥ Docteur House

Directeur du service de diagniostique
Premium
Inscription
15 Avril 2012
Messages
996
Réactions
619
Points
11 926
Hum je vois ... :mmh:
Ca marche avec require_once ? :trollface:
Je rigole, je vais voir comment on pourra régler ça ! :)
J'ai aussi ceci :
  1. Il suffit simplement de modifier l'URL.
    Bon, grace à notre ami, Mister Google, on va taper ce dorks: intext:"micro login system v 1.0"
    Si on prends le premier site qui vient, on atterit ici:

    Donc pour récupérer les passwords, on modifie:

    par


    Ensuite on décrypte le mot de passe grace à ! ;)
    Voici un exemple sur quoi vous aurez :p
Source: Hack-Modz :p
 

Maxence ES

Guizou
Premium
Inscription
23 Janvier 2013
Messages
4 842
Réactions
3 146
Points
17 331
J'ai aussi ceci :



    • Il suffit simplement de modifier l'URL.
      Bon, grace à notre ami, Mister Google, on va taper ce dorks: intext:"micro login system v 1.0"
      Si on prends le premier site qui vient, on atterit ici:

      Donc pour récupérer les passwords, on modifie:

      par


      Ensuite on décrypte le mot de passe grace à ! ;)
      Voici un exemple sur quoi vous aurez :p
Source: Hack-Modz :p

Y'a rien à voir au système que je vais faire :)
 
D

deleted226438

34368.png

CREER UN ESPACE MEMBRES EN PHP
#1 - La base de données
Salut tout le monde, c'est Maxence, nouvelle série en zone premium qui vous expliquera comment créer un espace membres en PHP. Il est simple, mais temps qu'on a pas l'algorithme ça sera plus compliqué.

Le tutoriel est destiné aux débutants et sera composé d'environ 5 épisodes (liens en bas).
Dans cet épisode nous allons créer notre base de données (et notre table :p).

1059.png


Pour commencer, vous devrez aller dans phpmyadmin (ou similaire), et créez une nouvelle base de données. Je vais l'appeller "membresRG".

14ec92a4c3b3e0c9717724b22d7ea321.png

Une fois dans la base de données, créez une table "membres" de 5 champs.

ca2b1eee9aacdb97d4038a6dd9050873.png

Vous allez nommer et "typer" les colonnes, comme ceci:

777991fa0fa8c5276a381a73f3a8cc3c.png

  • id, int 11, A_I
  • pseudo, varchar 255
  • pass, varchar 255
  • mail, varchar 255
  • ip, varchar 255
Vous cliquez sur "Sauvegarder" en bas à droite, et voilà, la table est crée ! Génial !

1230.png

CONNEXION A LA BASE DE DONNEES EN PHP
Maintenant, avant de nous quitter (enfin pas exactement), nous allons nous connecter en PHP à la base de données. Tout d'abord, créez le fichier bdd.php.

Nous allons utiliser PDO pour nous connecter. Cela va être simple, croyez-moi.
Vous allez noter ceci:

PHP:
<?php
$hote = "localhost";
$nom = "membresRG"; // Nom de la base de données
$pseudo = "root";
$pass = NULL; // Pour la base de données localhost, pas de mot de passe par défaut !
try
{
   $bdd = new PDO('mysql:host='.$hote.';dbname='.$nom, $pseudo, $pass);
}
catch (Exception $e)
{
  die('Erreur : ' . $e->getMessage());
}
?>

Ce code veut dire quoi ?
Tout d'abord, nous déclarons nos variables (on pourrait directement les mettre après).
Ensuite, nous testons la connexion avec les informations données.
Puis le catch() signifie "Si connexion échouée alors" (ici on dit "Erreur: xxxxxxxxxxxxxx").

Par défaut, si vous êtes sur wampserver, les informations sont les suivantes:

  • Hôte: localhost
  • Nom de la base de données: membresRG
  • Pseudo: root
  • Mot de passe: aucun (mettre NULL à la variable)
43179.png

COMPRENDRE LA BASE DE DONNEES
Une base de données, de son nom magique et qui explique tout contient des données. Elle peut contenir des chiffres, une chaîne de caractères, n'importe quoi.

Une base de données contient des tables. On peut en créer en illimité. Les tables sont différentes les unes des autres.

  • Une peut contenir les informations des membres (comme nous ici)
  • Une autre peut contenir des informations d'un site
  • Une autre les news
Dans une table, nous avons des colonnes. Chaque information rentrera dans une colonne :
  • Le pseudo du membre dans la colonne "pseudo"
  • Le mot de passe du membre crypté dans la colonne "pass"
  • Etc.
Et dans une table il y a des lignes. Une ligne contient par exemple un membre.
Pas compris ? Vous allez tout comprendre:

ba678d10b29cf0a86915e7186b48a111.png

Voilà !
En espérant que le tutoriel vous plaira.

Maxence :)
Merci du tutoriel :D
 
Haut