Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 30 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
30
Dung lượng
262,68 KB
Nội dung
PHP The Fourth DayPHP The Fourth Day ðào Quang Minhðào Quang Minh Trung tâm Tính toán Hiệu năng cao Trung tâm Tính toán Hiệu năng cao –– ðHBK Hà NộiðHBK Hà Nội minh0302@gmail.com minh0302@gmail.com http://hpcc.hut.edu.vn/~minhdqhttp://hpcc.hut.edu.vn/~minhdq Chương 3: PHP và MySQLChương 3: PHP và MySQL 1. Các bước truy cập CSDL 2. SQL Injection Các bước truy cập cơ sở dữ liệuCác bước truy cập cơ sở dữ liệu Tạo kết nối ñến Database ServerTạo kết nối ñến Database Server $biến_kết_nối = mysql_connect(“máy_chủ”,“tên”,“mật_khẩu”) or die(“Không kết nối ñược”); Hàm die(“Chuỗi”): ðưa ra thông báo và kết thúc. thúc. Với cách viết trên, die chỉ thực hiện khi lệnh trước nó không thành công $cnn = mysql_connect(“localhost”,”coursek50”,”123 456”); Lựa chọn cơ sở dữ liệuLựa chọn cơ sở dữ liệu mysql_select_db(“Tên CSDL”) or die (“Chưa có CSDL”); mysql_select_db(“coursek50”); mysql_select_db(“coursek50”); Viết truy vấnViết truy vấn $biến = mysql_query(“Lệnh SQL”) or die(“Không thực hiện ñược SQL”); $sql = mysql_query(“Select * From $sql = mysql_query(“Select * From account Where username = ‘coursek50’ ”); Các hàm hỗ trợCác hàm hỗ trợ mysql_affected_rows(): Số bản ghi bị tác ñộng bởi lệnh mysql_query liền trước mysql_num_rows(): Kết quả số bản ghi của câu lệnh mysql_query mysql_error(): Thông báo lỗi (nếu có) mysql_errno(): Mã lỗi Các hàm xử lý kết quảCác hàm xử lý kết quả mysql_fetch_array($sql): trả về một dòng bản ghi dưới dạng một mảng với chỉ mục dạng số hoặc tên của trường. mysql_fetch_row($sql): trả về kết quả là một mảng có thứ tự (bắt ñầu từ 0) mysql_fetch_assoc($sql): trả về kết quả là một mảng ñược ñánh chỉ số bằng tên Tham khảo tại: http://vn2.php.net/mysql SQL InjuctionSQL Injuction Thế nào là SQL InjectionThế nào là SQL Injection Là một kỹ thuật cho phép những kẻ tấn công thi hành các câu lệnh truy vấn SQL bất hợp pháp Bằng cách lợi dụng lỗ hổng trong việc kiểm tra dữ liệu nhập trong các ứng dụng web [...]... c a web browser ð c l p v i web server S d ng JavaScript ñ g i và nh n d gi a client và server AJAX d a trên: – JavaScript – XML – HTML – CSS AJAX s d ng XML và HTTP Request li u So sánh Click –Wait-And-Refresh Ajax based Truy xu t d V i IE6: s li u t server trong JavaScript d ng Msxml2.XMLHTTP: XMLHttp = new ActiveXObject("Msxml2.XMLHTTP") V i IE5.6: s d ng Microsoft.XMLHTTP XMLHttp = new ActiveXObject("Microsoft.XMLHTTP")... (ti p) responseXML Response tr v t server dư i d ng XML ð i tư ng này có th ñư c phân tách và kh o sát như m t ñ i tư ng tài li u DOM status Mã tr ng thái HTTP t server (ch ng h n 200 n u không có l i, 40 4 cho l i Not Found, …) statusText Thông ñi p c a mã tr ng thái HTTP (ch ng h n OK hay Not Found, …) Thu c tính readyState readyState=0: Chưa kh i t o: sau khi t o ñ i tư ng XMLHttpRequest nhưng chưa... chưa g i send() readyState=2: V a g i ñi: ngay sau khi g i send() readyState=3: ðang x lý: sau khi k t n i ñ n server nhưng server chưa tr l i readyState =4: Xong: sau khi server tính toán xong, d li u ñã g i v xong Quá trình tương tác 1 M t event client-side gây ra 1 s ki n – Ajax event B t kỳ m t tác ñ ng nào cũng có th gây ra Ajax event ... validateEmail() { var email = document.getElementById("email"); var url = "validate?email=" + escape(email.value); if (window.ActiveXObject) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } else if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } xmlHttp.open("GET", url); xmlHttp.onreadystatechange = callback; xmlHttp.send(null); } (ti p) 3 M t request ñư c t o và g i ñ n server 4 Server x lý yêu... Server x lý yêu c u (truy c p cơ s d li u, tác v h th ng ) 5 Response ñư c tr v cho trình duy t (x lý d ng text/xml) header('Content-Type: text/xml'); (ti p) 6 C u hình XMLHttpRequest ñ g i hàm callback() khi k t qu x lý ñư c tr v function callback() { if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { //do something interesting here } } } ... replace($input) { $output = str_replace("'","''",$input); return $output; } (ti p) Hàm lo i b các kí t không mong mu n function killchar($input) { $len = strlen($input); $char = array("select","drop",";", "-" ,"insert","delete","xp_"); $output = str_replace($char,"",$input); return $output; } L p trình AJAX Gi i thi u AJAX = Asynchronous JavaScript And XML AJAX không ph i là ngôn ng m i mà là m t cách m i . minh0302@gmail.com http://hpcc.hut.edu.vn/~minhdqhttp://hpcc.hut.edu.vn/~minhdq Chương 3: PHP và MySQLChương 3: PHP và MySQL 1. Các bước truy cập CSDL 2. SQL Injection Các bước truy cập cơ sở. PHP The Fourth DayPHP The Fourth Day ðào Quang Minhðào Quang Minh Trung tâm Tính toán Hiệu năng cao Trung. trên: – JavaScript – XML – HTML – CSS AJAX sử dụng XML và HTTP Request So sánhSo sánh Click –Wait-And-Refresh Ajax based