Xin hướng dẫn code PHP tạo trang web có 1 checkbox tên chk_delete, khi người dùng check vào nó và nhấn nút Cập nhật thì sẽ thực hiện xoá nội dung 1 field của record tương ứng trong database.
 

" />
  • Thứ Hai, 05/04/2010 16:18 (GMT+7)

    Code xóa record trong lập trình PHP

    Câu hỏi :

    Xin hướng dẫn code PHP tạo trang web có 1 checkbox tên chk_delete, khi người dùng check vào nó và nhấn nút Cập nhật thì sẽ thực hiện xoá nội dung 1 field của record tương ứng trong database.
     



    Trả lời :

    Thường 1 database bao gồm nhiều table dữ liệu có mối quan hệ lẫn nhau. Mỗi table lúc mới tạo ra chưa có dữ liệu, theo thời gian người ta sẽ add/remove vào/ra khỏi table từng record dữ liệu. Mỗi record dữ liệu gồm nhiều field dữ liệu, mỗi khi 1 record được thêm vào table, các field dữ liệu của nó sẽ có giá trị xác định: hoặc do ta xác định tường minh rõ ràng, hoặc mặc định do máy. Trong trường hợp field không được xác định tường minh thì máy sẽ gán giá trị mặc định theo qui định nào đó, thí dụ nếu field là chuỗi thì sẽ nhận chuỗi rỗng, nếu field là số thì sẽ nhận giá trị 0...

     Tóm lại việc xóa nội dung 1 field trong 1 record của 1 table dữ liệu nào đó là không cần thiết vì field gắn liền với record chứa nó, ta xóa record thì các field dữ liệu của record sẽ biến mất.

     Khi viết trang PHP truy xuất database, bạn có thể gọi các hàm API sẵn có trong môi trường runtime của PHP với tiếp đầu ngữ là "odbc_" như odbc_connect, odbc_close, odbc_exec,...

     Giả sử bạn có 1 database chứa nhiều table, trong đó có table tên là Categories chứa nhiều record, mỗi record chứa các field CategoryID, CategoryName, Description... Bạn có thể tạo 1 website gồm 2 file DeleteRecord.htm và DeleteRecord.php để cho phép người dùng nhập mã số CategoryID của record cần xóa, rồi xóa record này theo yêu cầu người dùng như sau:

     1. Tạo 1 thư mục DeleteRec ở vị trí xác định trên đĩa;
     2. Dùng trình soạn thảo văn bản quen dùng (như NotePad, WordPad...) viết file DeleteRecord.htm với nội dung sau đây và chứa file vào thư mục vừa tạo:
     
     <html>
     <head> </head>
     <title>Trang Web chứa form nhập liệu</title>
     <body>
     <FORM action="DeleteRecord.php" method=post>
     Nhập mã CategoryID cần xóa:
     <INPUT name=txtCatID style="width: 269px; height: 22px">
     <P><INPUT type=submit value="Xóa record"></P>
     </FORM>
     </body>
     </html>
     
     3. Dùng trình soạn thảo văn bản quen dùng (như NotePad, WordPad...) viết file DeleteRecord.php xóa record theo yêu cầu với nội dung sau đây và chứa file vào thư mục vừa tạo:
     
     <html>
     <head>
     <title>Xóa record theo CategoryID</title>
     </head>
     <body>
     <?php
     # xác định mã CategoryID được user nhập từ form
     $catID = $_POST["txtCatID"];
     # tạo cầu nối tới database được nhận dạng bằng tên DSN "Northwind"
     $connect = odbc_connect("NorthWind", "", "");
     # tạo lệnh truy vấn
     $query = "Delete From Categories WHERE CategoryID=$catID";
     echo "<p>Câu truy vấn cần thực hiện là : $query</p>";
     # thực hiện lệnh truy vấn
     $result = odbc_exec($connect, $query);
     echo "<p>Kết quả thực hiện truy vấn là : $result</p>";
     # đóng cầu nối tới database
     odbc_close($connect);
     ?>
     <p>
     <a href="DeleteRecord.htm">Quay về trang chủ</a>
     </body>
     </html>
     
     4. "public" website DeleteRec lên web server có khả năng xử lý PHP. Trên server này, bạn tạo tên DSN Northwind nhận dạng database của bạn. Để định nghĩa 1 DSN trên môi trường Windows, bạn vào Control Panel.Administrative Tools, nhấn đúp chuột vào mục Data Source (ODBC) để mở cửa sổ của tiện ích tương ứng. Chọn tab “System DSN” để định nghĩa DSN có tầm vực truy xuất cấp hệ thống (bất kỳ ứng dụng nào cũng truy xuất được). Chọn button Add để thêm 1 DSN mới rồi nhập các thông tin liên quan đến database của bạn.
     5. Chạy ứng dụng web browser trên máy người dùng, nhập URL của trang chứa form nhập liệu, nhập thử mã số CategoryID của record cần xóa rồi nhấn button xóa record.

     Lưu ý rằng để chạy thử website chứa các trang PHP trên máy cục bộ, bạn hãy thực hiện các thao tác sau:

     1. Cài IIS vào Windows: chạy Start.Control Panel.Add or Remove Programs.Add/Remove Windows Components, duyệt và chọn mục "Internet Information Services (IIS)".
     2. Tạo DSN miêu tả database cần truy xuất trên máy bạn y như bước 4 trên đây.
     3. Download và cài module xử lý file PHP vào máy (từ địa chỉ http://www.php.net/download). Lưu ý là module xử lý file PHP nằm trong đường dẫn mà tên từng thư mục không chứa ký tự trống (space), đơn giản nhất là cài vào thư mục c:\php. Cấu hình các thông số hoạt động của module xử lý PHP vừa cài đặt.
     4. Copy thư mục DeleteRec chứa website vừa tạo được ở phần trên vào thư mục gốc của web server (c:\Inetpub\wwwroot).
     5. Chạy ứng dụng web browser, nhập URL của trang chứa form nhập liệu (http://localhost/DeleteRec/DeleteRecord.htm), nhập thử mã số CategoryID của record cần xóa rồi nhấn button xóa record.

    Chuyên mục: Lập trình