Mateusz Mazurek – programista z pasją

Blog o Pythonie i kilku innych technologiach. Od developera dla wszystkich.

Programowanie webowe

[JS][PHP] Efekt zaznaczania werszy tabeli wygenerowanej przez PHP

Do pobrania danych z bazy danych posłużymy się klasą do obsługi baz danych.

1
2
3
4
5
6
7
8
9
10
11
12
13
<script>

function lala(id){

var a = id.style;//pobieramy styl elementu

if(a.backgroundColor=="white")//jesli tlo jjest biale
a.backgroundColor="#E3E7E6";//to zmieniamy na szary
else//jesli nie jest
a.backgroundColor="white";// to zmieniamy na bialy
}
//taka funkcja daje efekt taki jak zaznaczenie jednego wiersza tabeli.
</script>
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<?php

class db{

private$db_user="root";//user bazy danych
private$db_pass="";//haslo
private$db_host="localhost";//host
private$db_db="testowa";//baza danych do ktorej sie logujemy
private$db_charser="utf-8";//kodowanie znakow
private$res;// #resource

publicfunction __construct(){

$this->res[email protected]mysql_connect($this->db_host,$this->db_user,$this->db_pass);//laczymy sie z baza danych
if($this->res==false)//jesli sie nie udalo
thrownew Exception('Blad polaczenia z baza: '.mysql_error());//rzucamy wyjatek

mysql_select_db($this->db_db,$this->res);//wybieramy baze danych
mysql_set_charset($this->db_charser,$this->res);//ustawiamy kodowanie
}

publicfunction select($what,$from,$others=""){// do wybierania z bazy baych informacji. Zwraca tablice.
/*

$what = co pobieramy z bazy (string)

$from = z jakiej tabeli

$others daje mozliwosc dodania np klauzuli WHERE

*/

$s="SELECT $what from $from$others";//tworzymy
$t=mysql_query($s,$this->res);//wykonujemy zapytanie

if($t==false)// jesli sie nie powiodło
thrownew Exception('Blad zapytania (SELECT) : '.mysql_error());//rzucamy wyjatek
while($r=mysql_fetch_object($t))//przepisujemy cala tablice z bazy danych na jedna tablice
{

$g[]=$r;

}

return$g;// zwracamy utworzona tablicey

}

publicfunction insert($where,$values=""){//dodawanie do bazy danych.
/*

$where - gdzie

$values - wartosci do dodania w formaie stringa w forime '$param1','$param2','$param3','$param4'
*/

$s="INSERT INTO $where VALUES($values)";//zapytanie
$t=mysql_query($s,$this->res);//wywolujemy zapytanie
if($t==false)//jesli sie nie powiodlo
thrownew Exception('Blad zapytania: (INSERT) '.mysql_error());//rzucamy wyjatek
returnmysql_affected_rows($this->res);//zwracany ilosc dodanych rekordow

}

publicfunction del($from,$where){//usuwanie z bazy danych

/*

$from - skad

$where - gdzie

*/


$s="DELETE FROM $from WHERE $where";//zapytanie
$t=mysql_query($s,$this->res);//wywolujemy je
if($t==false)//jesli nie poszlo
thrownew Exception('Blad zapytania: (DELETE) '.mysql_error());//rzucamy wyjatek
returnmysql_affected_rows($this->res);//zwracamy ilosc usunietych

}

publicfunction update($from,$what,$where){//poprawianie danych
/*

$from - skad

$what - co (string lub array)

$where - gdzie

*/

if(is_array($what)){//jesli what to tablica
$s="UPDATE $from SET ";//poczatek zapytania
foreach($whatas$r=>$t){

$s.=" $r='$t',";//sklejamy

}
$s=substr($s,0,strlen($s)-1);//usuwamy ostatni zbedny przecinek
$s.=" WHERE $where";//doklejmy reszte

}//jesli jest stringiem
else
$s="UPDATE $from SET $what WHERE $where";//wklejmy do zapytania
$t=mysql_query($s,$this->res);//wykonjemy zapytanie
if($t==false)//jesli nie dalo rady
thrownew Exception('Blad zapytania: (UPADATE) '.mysql_error());//rzucamy wyjatek
returnmysql_affected_rows($this->res);//ilosc przetworzonych wierszt

}

publicfunction __destruct(){//niszczenie instancji klasy

mysql_close($this->res);//zamykamy polaczenie.

}

}
try
{
$db=new db();
echo'<table><tr>
<td>Imie</td> <td>Nazwisko</td>
</tr>'
;
foreach($db->select("*","dane_testowe")as$r)
{
echo'<tr style="background-color:white;" onclick="javascript:lala(this);">
<td>'
.$r->imie.'</td> <td>'.$r->nazwisko.'</td>
</tr>'
;
}
echo'</table>';
}
catch(Exception $e){
echo$e->getMessage();
}

?>
Dzięki za wizytę,
Mateusz Mazurek

A może wolisz nowości na mail?

Subskrybuj
Powiadom o
guest

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

0 komentarzy
Inline Feedbacks
View all comments