Bonjour,
Un groupe d'amis et moi sommes en charge de la création d'un service de notifications push via Google Cloud Messaging pour notre projet tuteuré au cours de notre formation en DUT Informatique.
Etant d'un niveau très moyen en PHP, nous avons rechercher pas mal de tutos sur le net pour nous aider, et sommes tombés sur un tuto vraiment très bien qui avait l'air de bien marcher.
Cependant, cette version n'est plus prise en charge car ce n'est pas en PDO (ou Mysqli) et rends donc le tout obsolète maintenant que le php 5.5 existe.
Voici le code que nous avons repris qui est obsolète : http://www.androidhive.info/2012/10/...php-and-mysql/
J'ai donc procédé à quelques changements pour essayer d'établir une connexion via PDO, mais cela ne marche pas comme nous le voudrions.
Si j'ai bien compris, les seuls choses qu'il faut changer se trouvent dans le db_connect.php et db_function.php.
Voici donc les changements que nous avons effectués dans ces deux fichiers (gardez en tête que nous sommes débutant en php, donc il se peut que vous trouviez des choses vraiment absurdes dans notre code que nous n'aurions pas remarqué)
db_connect.php (modifié)db_function.php (modifié)
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 <?php class DB_Connect { // constructor function __construct() { } // destructor function __destruct() { // $this->close(); } // Connecting to database // Connecting to database public function connect() { require_once 'config.php'; try { $bdd = new PDO('mysql:host='.DB_HOST.';dbname='. DB_DATABASE, DB_USER, DB_PASSWORD); } catch (Exception $e) { echo 'Une erreur est survenue !'; echo 'Erreur : '.$e->getMessage().'<br />'; echo 'N° : '.$e->getCode(); die('Erreur : ' . $e->getMessage()); } return $db; } function getDb() { if ($this->db instanceof PDO) { return $this->db; } } // Closing database connection function close() { mysql_close(); } } ?>
Merci d'avance pour ceux qui auront prit le temps de tout lire, en espérant que vous pourrez nous aider
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79 <?php class DB_Functions { private $db; //put your code here // constructor function __construct() { include_once './db_connect.php'; // connecting to database $this->db = new DB_Connect(); $this->db->connect(); } // destructor function __destruct() { } /** * Storing new user * returns user details */ public function storeUser($name, $email, $gcm_regid) { // insert user into database $result = mysql_query("INSERT INTO gcm_users(name, email, gcm_regid, created_at) VALUES('$name', '$email', '$gcm_regid', NOW())"); // check for successful store if ($result) { // get user details $id = mysql_insert_id(); // last inserted id $result = mysql_query("SELECT * FROM gcm_users WHERE id = $id") or die(mysql_error()); // return user details if (mysql_num_rows($result) > 0) { return mysql_fetch_array($result); } else { return false; } } else { return false; } } /** * Get user by email and password */ public function getUserByEmail($email) { $result = mysql_query("SELECT * FROM gcm_users WHERE email = '$email' LIMIT 1"); return $result; } /** * Getting all users */ public function getAllUsers() { // $result = mysql_query("select * FROM gcm_users"); $result = $this->db->getDb()->query("select * FROM gcm_users"); $result->closeCursor(); return $result; } /** * Check user is existed or not */ public function isUserExisted($email) { $result = mysql_query("SELECT email from gcm_users WHERE email = '$email'"); $no_of_rows = mysql_num_rows($result); if ($no_of_rows > 0) { // user existed return true; } else { // user not existed return false; } } }![]()
Partager