Blame view

site/accesBase.php 10.3 KB
19ae2416   jnduwamu   MAJ du site
1
2
3
  <?php

  	function connexion()

  	{

bc7fc652   root   Site lie au git
4
  		$machine = 'localhost' ;

19ae2416   jnduwamu   MAJ du site
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
  		$user='grouille' ;

  		$pwd='postgres' ;

  		$db='projetCapteurs' ;

  		$link = pg_connect("host=$machine user=$user password=$pwd dbname=$db") or die('Erreur de Connection !<br />'.pg_last_error()) ;

  		return $link ;

  	}

  

  	function deconnexion($db)

  	{

  		pg_close($db);

  	}

  	

  	function verifPwd($id, $pwd)

  	{

  		$db = connexion();

  		$query = "SELECT pwd FROM membres WHERE identifiant = '$id'";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		$pass = pg_fetch_assoc($result);

  		deconnexion($db);

  		return(password_verify($pwd, $pass['pwd']));

  	}

  	

  	function notAMember($id)

  	{

  		$db = connexion();

  		$query = "SELECT * FROM membres WHERE identifiant = '$id'";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		if (pg_affected_rows($result)!=0){

  			return False;

  		}

  		else{

  			return True;

  		}

  	}

  	

  	function countMember()

  	{

  		$db = connexion();

  		$query = "SELECT * FROM membres";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		return pg_affected_rows($result);

  	}

  	

011cb454   grouille   Ajout compte
48
  	function inscription($id, $pwd, $nom, $prenom, $groupe)

19ae2416   jnduwamu   MAJ du site
49
50
51
52
  	{

  		$db = connexion();

  		$num = countMember() +1;

  		$pwd_hache = password_hash($pwd, PASSWORD_DEFAULT);

011cb454   grouille   Ajout compte
53
  		$query = "INSERT INTO membres VALUES('$num', '$nom', '$prenom', '$pwd_hache', '$id', '$groupe')";

19ae2416   jnduwamu   MAJ du site
54
55
56
57
58
59
60
61
  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		if (pg_affected_rows($result)!=0){

  			return True;

  		}

  		else{

  			return False;

  		}

  	}

011cb454   grouille   Ajout compte
62
  

6bfaf251   grouille   Ajout compte
63
  	function getGroupe($id)

011cb454   grouille   Ajout compte
64
65
  	{

  		$db = connexion();

58f9717f   grouille   Ajout compte
66
  		$query = "SELECT groupe FROM membres where identifiant = '$id'";

011cb454   grouille   Ajout compte
67
68
69
  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		$tab = pg_fetch_assoc($result);

  		deconnexion($db);

011cb454   grouille   Ajout compte
70
71
72
  		return $tab['groupe'];

  	}

  

b250f653   grouille   Test
73
  	function getGroupes()

011cb454   grouille   Ajout compte
74
75
76
77
78
79
80
  	{

  		$db = connexion();

  		$query = "SELECT * FROM groupes";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		$tab = pg_fetch_all($result);

  		deconnexion($db);

  		return $tab;

b250f653   grouille   Test
81
  	}

19ae2416   jnduwamu   MAJ du site
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
  	

  	function getMembreByIdPwd($id, $pwd)

  	{

  		$db = connexion();

  		$query = "SELECT nom, prenom, pwd FROM membres WHERE identifiant = '$id'";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		$tab = pg_fetch_assoc($result);

  		if(password_verify($pwd, $tab['pwd']))

  			return $tab;

  	}

  	

  	function getSensors()

  	{

  		$db = connexion();

  		$query = "SELECT * FROM capteurs";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		$tab = pg_fetch_all($result);

  		return $tab;

  	}

  	

011cb454   grouille   Ajout compte
102
  	/*function upload($index,$maxsize=FALSE,$extensions=FALSE)

19ae2416   jnduwamu   MAJ du site
103
  	{

19ae2416   jnduwamu   MAJ du site
104
105
106
107
108
109
110
  		//Test1: fichier correctement uploadé

  		if (!isset($_FILES[$index]) OR $_FILES[$index]['error'] > 0) return FALSE;

  		//Test2: taille limite

  		if ($maxsize !== FALSE AND $_FILES[$index]['size'] > $maxsize) return FALSE;

  		//Test3: extension

  		$ext = substr(strrchr($_FILES[$index]['name'],'.'),1);

  		if ($extensions !== FALSE AND !in_array($ext,$extensions)) return FALSE;

e8bfaeb8   root   MAJ fonction upload
111
  		$name = "main";

19ae2416   jnduwamu   MAJ du site
112
  		$extension_upload = strtolower(  substr(  strrchr($_FILES['fichier']['name'], '.')  ,1)  );

bc7fc652   root   Site lie au git
113
114
  		$dossier = "upload/";

  		$fichier = $name.".".$extension_upload;

19ae2416   jnduwamu   MAJ du site
115
  		//$fichier = basename($_FILES[$index]['name']);

bc7fc652   root   Site lie au git
116
  		return move_uploaded_file($_FILES['fichier']['tmp_name'],$dossier.$fichier);

011cb454   grouille   Ajout compte
117
  	}*/

19ae2416   jnduwamu   MAJ du site
118
  

705b4085   root   MAJ Site
119
120
  	function load($tmp_name, $name)

  	{

1334aed2   root   Site lie au git
121
  		$dossier = "upload/";

e8bfaeb8   root   MAJ fonction upload
122
  		$fichier = "main.c";

705b4085   root   MAJ Site
123
124
125
126
127
128
129
130
131
132
133
  		$taille_max = 100000;

  		$taille = filesize($tmp_name);

  		$extensions = Array('.c');

  		$extension = strrchr($name, '.');

  		if(in_array($extension, $extensions) && taille <= taille_max)

  		{

  			return move_uploaded_file($tmp_name, $dossier.$fichier);

  		}

  		return False;

  	}

  

19ae2416   jnduwamu   MAJ du site
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
  	function update_values()

  	{

  		$rep = 'data';

  		$fichiers = array_diff(scandir($rep), array('..', '.'));

  		$db = connexion();

  		foreach($fichiers as $fichier) {

  			$parametres = simplexml_load_file('data/'.$fichier);

  			list($ip_address) = $parametres->xpath("parametre[@name='ip_address']");

  			list($numero) = $parametres->xpath("parametre[@name='numero']");

  			list($name) = $parametres->xpath("parametre[@name='name']");

         	        	list($data) = $parametres->xpath("parametre[@name='data']");

  

  			$query = "UPDATE capteurs SET value='$data' WHERE raspberry='$ip_address' and  numero='$numero' and nom='$name'";

  			$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		}

  		deconnexion($db);

  	}

  

bc7fc652   root   Site lie au git
152
  	function update_bdd($ip_address, $numero, $data, $date)

19ae2416   jnduwamu   MAJ du site
153
  	{

bc7fc652   root   Site lie au git
154
  		$name = getSensorName($ip_address, $numero);

19ae2416   jnduwamu   MAJ du site
155
156
157
  		$db = connexion();

  		$ip_address = (string)$ip_address;

  		$numero = (int)$numero;

19ae2416   jnduwamu   MAJ du site
158
  		$data =  (float)$data;

bc7fc652   root   Site lie au git
159
  		$query = "UPDATE capteurs SET value=$data WHERE raspberry='$ip_address' and numero=$numero and nom='$name'";

19ae2416   jnduwamu   MAJ du site
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		$query = "INSERT INTO history VALUES('$name', '$data', '$date')";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		deconnexion($db);

  	}

  

  	function date_min()

  	{

  		$db = connexion();

  		$query = "SELECT MIN(date) FROM history";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		$min = pg_fetch_assoc($result);

  		return $min;

  	}

  

  	function date_max()

          {

                  $db = connexion();

                  $query = "SELECT MAX(date) FROM history";

                  $result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

                  $max = pg_fetch_assoc($result);

                  return $max;

          }

  

  	function getHistory($name, $type, $raspberry, $start, $end, $nombre)

  	{

  		$db = connexion();

  		$query = "SELECT capteurs.nom as name, capteurs.raspberry as raspberry, capteurs.type as type, history.value as value, history.date as date, capteurs.unite as unite ";

  		$query = $query."FROM capteurs, history ";

  		$query = $query."WHERE capteurs.nom = history.sensor ";

  		if($name != "") $query = $query."AND history.sensor = '$name' ";

  		if($type != "")  $query = $query."AND capteurs.type = '$type' ";

  		if($raspberry != "")  $query = $query."AND capteurs.raspberry = '$raspberry' ";

  		$query = $query."AND (history.date BETWEEN '$start' AND '$end') ORDER BY date DESC LIMIT $nombre";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

                  $tab = pg_fetch_all($result);

  		deconnexion($db);

  		return $tab;

  	}

  

  	function get($parametre)

  	{

  		$db = connexion();

  		$query = "SELECT DISTINCT $parametre from capteurs ORDER BY $parametre";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		$tab = pg_fetch_all($result);

  		deconnexion($db);

  		return $tab;

  	}

  

bc7fc652   root   Site lie au git
210
211
212
213
214
215
216
217
218
219
  	function getSensorName($raspberry, $numero)

  	{

  		$db = connexion();

  		$query = "SELECT nom FROM capteurs where raspberry = '$raspberry' AND numero = $numero";

  		$result = pg_query($db, $query) or die("La requ  te a echou   : ".pg_last_error());

  		$tab =  pg_fetch_assoc($result);

  		deconnexion($db);

  		return $tab['nom'];

  	}

  

705b4085   root   MAJ Site
220
  	function getSensorVersion($raspberry, $numero)

bc7fc652   root   Site lie au git
221
222
223
224
225
226
  	{

  		$db = connexion();

  		$query = "SELECT version FROM capteurs where raspberry = '$raspberry' AND numero = $numero";

  		$result = pg_query($db, $query) or die("La requète a echoué : ".pg_last_error());

  		$tab = pg_fetch_assoc($result);

  		deconnexion($db);

705b4085   root   MAJ Site
227
  		return (int)$tab['version'];

bc7fc652   root   Site lie au git
228
229
  	}

  

1c58232e   root   MAJ site en lien ...
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
  	function getRaspberrys()

  	{

  		$db = connexion();

  		$query = "SELECT * FROM raspberry";

  		$result = pg_query($db, $query) or die("La requ  te a echou   : ".pg_last_error());

  		$tab = pg_fetch_all($result);

  		deconnexion($db);

  		return $tab;

  	}

  

  	function getSetup($raspberry)

  	{

  		$db = connexion();

  		$query = "SELECT setup FROM raspberry WHERE ip = '$raspberry'";

  		$result = pg_query($db, $query) or die("La requ  te a echou   : ".pg_last_error());

                  $tab = pg_fetch_assoc($result);

                  deconnexion($db);

                  return $tab['setup'];

  	}

  

  	function setup($raspberry)

  	{

  		$db = connexion();

  		$query = "UPDATE raspberry SET setup = 0 WHERE ip = '$raspberry'";

  		$result = pg_query($db, $query) or die("La requ  te a echou   : ".pg_last_error());

                  deconnexion($db);

  	}

  

fb84723e   Guillaume   MAJ site ajout Rpi
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
  	function addRpi($ip)

  	{

  		$raspberry = "172.26.145.".$ip;

  		$db = connexion();

  		$query = "SELECT * FROM raspberry WHERE ip = '$raspberry'";

  		$result = pg_query($db, $query) or die("La requ  te a echou   : ".pg_last_error());

  		if (pg_affected_rows($result)!=0)

  		{

  			deconnexion($db);

  			return False;

  		}

  		else{

  			$query = "INSERT INTO raspberry VALUES('$raspberry', 1)";

  			$result = pg_query($db, $query) or die("La requ  te a echou   : ".pg_last_error());

  			deconnexion($db);

  			return pg_affected_rows($result)==1;

  		}

  	}

  

36ef1f60   Guillaume   MAJ site
277
  	function add($nom, $type, $raspberry, $numero, $unite, $version)

19ae2416   jnduwamu   MAJ du site
278
279
280
281
282
283
284
285
286
  	{

  		$db = connexion();

  		$query = "SELECT * FROM capteurs WHERE nom = '$nom' OR (raspberry = '$raspberry' AND numero = '$numero')";

  		$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  		if (pg_affected_rows($result)!=0){

  			return False;

  		}

  		else

  		{

36ef1f60   Guillaume   MAJ site
287
  			$query = "INSERT INTO capteurs VALUES($numero, '$nom', '$raspberry', '$type', 0, '$unite', $version)";

19ae2416   jnduwamu   MAJ du site
288
289
290
291
292
293
294
295
  			$result = pg_query($db, $query) or die("La requête a echoué : ".pg_last_error());

  			if (pg_affected_rows($result)!=0){

  			   return True;

  			}

  			else{

  				return False;

  			}

  		}

705b4085   root   MAJ Site
296
  	}

ab15bd74   Guillaume   Test Graphe
297
298
299
300
301
302
303
304
  

  	function makeArray($tab, $column)

  	{

  		foreach($tab as $element)

  		{

  			$array[] = $element[$column];

  		}

  		return $array;

0071f5d7   root   MAJ
305
306
307
308
309
310
311
312
313
314
315
  	}

  

  	function getLegend($nom)

  	{

  		$db = connexion();

  		$query = "SELECT type, unite FROM capteurs WHERE nom = '$nom'";

  		$result = pg_query($db, $query) or die("La requ  te a echou   : ".pg_last_error());

  		$tab = pg_fetch_assoc($result);

  		deconnexion($db);

  		return $tab;

  	}

39579493   root   MAJ Site
316
317
318
319
320
321
322
  

  	function historyExist($sensor)

  	{

  		$db = connexion();

  		$query = "SELECT * FROM history WHERE sensor = '$sensor'";

                  $result = pg_query($db, $query) or die("La requ  te a echou   : ".pg_last_error());

                  deconnexion($db);

28d7a366   root   MAJ
323
  		if(pg_affected_rows($result)>1)

39579493   root   MAJ Site
324
325
326
327
328
329
330
331
  		{

  			return True;

  		}

  		else

  		{

  			return False;

  		}

  	}

19ae2416   jnduwamu   MAJ du site
332
  ?>