Bonjour, je suis entrain de créer un espace membre en PHP. J'ai déjà du corriger quelques erreurs, du aufaite que l'on doit utiliser PDO.
Mais j'ai quand même encore quelques soucis, au moment où je clique sur le bouton s'inscrire il m'affiche ses erreurs avec wamp :
( ! ) Warning: mysql_select_db() expects parameter 2 to be resource, object given in C:\wamp\www\membre\inscription.php on line 18
Call Stack
# Time Memory Function Location
1 0.0020 145200 {main}( ) ..\inscription.php:0
2 0.0130 152360 mysql_select_db ( ) ..\inscription.php:18
( ! ) Deprecated: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead. in C:\wamp\www\membre\inscription.php on line 21
Call Stack
# Time Memory Function Location
1 0.0020 145200 {main}( ) ..\inscription.php:0
2 0.0160 152640 mysql_escape_string ( ) ..\inscription.php:21
( ! ) Deprecated: mysql_query(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\wamp\www\membre\inscription.php on line 22
Call Stack
# Time Memory Function Location
1 0.0020 145200 {main}( ) ..\inscription.php:0
2 0.0190 152808 mysql_query ( ) ..\inscription.php:22
Il m'affiche tout de même 3 lignes :
Voici le code PHP de la page inscription :Erreur SQL !
SELECT count(*) FROM membre WHERE login="djtagaming"
Aucune base n'a été sélectionnée
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 <?php // on teste si le visiteur a soumis le formulaire if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') { // on teste l'existence de nos variables. On teste également si elles ne sont pas vides if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))) { // on teste les deux mots de passe if ($_POST['pass'] != $_POST['pass_confirm']) { $erreur = 'Les 2 mots de passe sont différents.'; } else { $base= mysqli_connect("localhost", "root", "", "membre"); /* Vérification de la connexion */ if (mysqli_connect_errno()) { printf("Échec de la connexion : %s\n", mysqli_connect_error()); exit(); } mysql_select_db ('membre', $base); // on recherche si ce login est déjà utilisé par un autre membre $sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"'; $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); $data = mysql_fetch_array($req); if ($data[0] == 0) { $sql = 'INSERT INTO membre VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.mysql_escape_string(md5($_POST['pass'])).'")'; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error()); session_start(); $_SESSION['login'] = $_POST['login']; header('Location: membre.php'); exit(); } else { $erreur = 'Un membre possède déjà ce login.'; } } } else { $erreur = 'Au moins un des champs est vide.'; } } ?> <html> <head> <title>Inscription</title> </head> <body> Inscription à l'espace membre :<br /> <form action="inscription.php" method="post"> Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br /> Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br /> Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>"><br /> <input type="submit" name="inscription" value="Inscription"> </form> <?php if (isset($erreur)) echo '<br />',$erreur; ?> </body> </html>
Je ne sais plus où j'en suis avec PDOMerci d'avance
![]()
Partager