Bonjour à tous,

Je cherche à faire une classe PHP qui gère les accès concurrents.



Fatal error: Call to a member function commit() on a non-object on line 27

Voilà une des variantes que j'ai testé sans succès :


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
 
class UneClasse{
	// Paramètres de connexion
	const hostname = "127.0.0.1"; 
	const username = "root"; 
	const password = "unMotDePasse";
	const database = "uneBDD";
 
	// A L instanciation on se connecte
	function __construct(){
		// Connexion à MySQL
		$mysqli = new mysqli(UneClasse::hostname, UneClasse::username, UneClasse::password, UneClasse::database) or trigger_error(mysql_error(),E_USER_ERROR); 
		if (mysqli_connect_errno()) {
    		printf("Échec de la connexion : %s\n", mysqli_connect_error());
    		exit();
		}
	}
 
	function getMachin($parametre){
		if ($result = mysql_query("select machin from table where parametre='$parametre'")) {
            $row = mysql_fetch_array($result);
			return $row[0];
            $result->close();
	    }
		$mysqli->commit();                       // $mysqli   ERREUR
	}
 
	function updateBidule($parametre, $bidule){
		if ($result = mysql_query("update table set bidule='$bidule' where parametre='$parametre'")) {
            $row = mysql_fetch_array($result);
			return $row[0];
            $result->close();
	    }
		$mysqli->commit();
	}
 
	function close(){$mysqli->close();}
}
 
$o = new UneClasse();
$o->getMachin("toto");
Je sais pas trop comment écrire ça proprement, je me suis dit qu'il y avait surement quelqu'un qui a déjà fait ça parmi les développeurs chevronnés du club des développeurs