Trong hướng dẫn này, bạn sẽ học cách tạo một mảng các danh mục, hiển thị các giá trị bên trong hộp chọn HTML và có các tùy chọn đã chọn được xác định trước bằng PHP và tôi cũng sẽ chỉ cho bạn cách lấy các tùy chọn đã chọn từ cơ sở dữ liệu bằng cách sử dụng ID của
Mã dự án đầy đủ
Select Option Dropdown
Selected From Array
Selected From DB Record
"; foreach[$options as $option]{ if[$selected == $option] { echo ""; } else { echo ""; } } echo ""; ?>
0] { while[$row = mysqli_fetch_array[$result]]{ $dbselected = $row['category']; } // Function frees the memory associated with the result mysqli_free_result[$result]; } else { echo "Something went wrong..."; } } else { echo "ERROR: Could not execute $sql." . mysql_error[$link]; } } $options = array['Comedy', 'Adventure', 'Drama', 'Crime', 'Adult', 'Horror']; echo ""; foreach[$options as $option]{ if[$dbselected == $option] { echo ""; } else { echo ""; } } echo ""; ?>
Cảm ơn bạn đã đọc bài viết này. Vui lòng cân nhắc đăng ký Kênh YouTube của tôi
Dữ liệu có thể được tìm nạp từ các bảng MySQL bằng cách thực thi câu lệnh SQL SELECT thông qua hàm mysql_query của PHP. Bạn có một số tùy chọn để lấy dữ liệu từ MySQL
Tùy chọn được sử dụng thường xuyên nhất là sử dụng hàm mysql_fetch_array[]. Hàm này trả về hàng dưới dạng một mảng kết hợp, một mảng số hoặc cả hai. Hàm này trả về FALSE nếu không còn hàng nào
Dưới đây là một ví dụ đơn giản để tìm nạp các bản ghi từ bảng nhân viên
Thí dụ
Hãy thử ví dụ sau để hiển thị tất cả các bản ghi từ bảng nhân viên
". "EMP NAME : {$row['emp_name']}
". "EMP SALARY : {$row['emp_salary']}
". "--------------------------------
"; } echo "Fetched data successfully\n"; mysql_close[$conn]; ?>
Nội dung của các hàng được gán cho biến $row và các giá trị trong hàng sau đó được in ra
LƯU Ý – Luôn nhớ đặt dấu ngoặc nhọn khi bạn muốn chèn trực tiếp giá trị mảng vào chuỗi
Trong ví dụ trên, hằng số MYSQL_ASSOC được sử dụng làm đối số thứ hai cho mysql_fetch_array[], để nó trả về hàng dưới dạng một mảng kết hợp. Với một mảng kết hợp, bạn có thể truy cập trường bằng cách sử dụng tên của chúng thay vì sử dụng chỉ mục
PHP cung cấp một hàm khác gọi là mysql_fetch_assoc[] cũng trả về hàng dưới dạng một mảng kết hợp
Thí dụ
Hãy thử ví dụ sau để hiển thị tất cả các bản ghi từ bảng nhân viên bằng hàm mysql_fetch_assoc[]
". "EMP NAME : {$row['emp_name']}
". "EMP SALARY : {$row['emp_salary']}
". "--------------------------------
"; } echo "Fetched data successfully\n"; mysql_close[$conn]; ?>
Bạn cũng có thể sử dụng hằng số MYSQL_NUM, làm đối số thứ hai cho mysql_fetch_array[]. Điều này sẽ khiến hàm trả về một mảng có chỉ số là số
Thí dụ
Hãy thử ví dụ sau để hiển thị tất cả các bản ghi từ bảng employee sử dụng đối số MYSQL_NUM
". "EMP NAME : {$row[1]}
". "EMP SALARY : {$row[2]}
". "--------------------------------
"; } echo "Fetched data successfully\n"; mysql_close[$conn]; ?>
Tất cả ba ví dụ trên sẽ tạo ra cùng một kết quả
Giải phóng bộ nhớ
Một cách thực hành tốt là giải phóng bộ nhớ con trỏ ở cuối mỗi câu lệnh CHỌN. Điều này có thể được thực hiện bằng cách sử dụng hàm mysql_free_result[] trong PHP. Dưới đây là ví dụ để cho thấy nó phải được sử dụng như thế nào
Thí dụ
Hãy thử ví dụ sau
". "EMP NAME : {$row[1]}
". "EMP SALARY : {$row[2]}
". "--------------------------------
"; } mysql_free_result[$retval]; echo "Fetched data successfully\n"; mysql_close[$conn]; ?>
Trong khi tìm nạp dữ liệu, bạn có thể viết SQL phức tạp như bạn muốn. Thủ tục sẽ vẫn giống như đã đề cập ở trên
Đến đây bạn đã học cách tạo cơ sở dữ liệu và bảng cũng như chèn dữ liệu. Bây giờ là lúc lấy dữ liệu đã chèn trong hướng dẫn trước. Câu lệnh SQL SELECT
được sử dụng để chọn các bản ghi từ các bảng cơ sở dữ liệu. Cú pháp cơ bản của nó như sau
CHỌN cột1_name, cột2_name, cộtN_name TỪ tên_bảng;
Hãy tạo một truy vấn SQL bằng cách sử dụng câu lệnh SELECT
, sau đó chúng ta sẽ thực hiện truy vấn SQL này thông qua việc chuyển nó tới hàm PHP mysqli_query[]
để lấy dữ liệu bảng
Xem xét bảng cơ sở dữ liệu người của chúng tôi có các bản ghi sau
+----+------------+-----------+----------------------+ | id | first_name | last_name | email | +----+------------+-----------+----------------------+ | 1 | Peter | Parker | peterparker@mail.com | | 2 | John | Rambo | johnrambo@mail.com | | 3 | Clark | Kent | clarkkent@mail.com | | 4 | John | Carter | johncarter@mail.com | | 5 | Harry | Potter | harrypotter@mail.com | +----+------------+-----------+----------------------+
Mã PHP trong ví dụ sau chọn tất cả dữ liệu được lưu trữ trong bảng người [sử dụng ký tự dấu hoa thị [*
] thay cho tên cột sẽ chọn tất cả dữ liệu trong bảng]
Thí dụ
PDO hướng đối tượng thủ tục
Tải xuống 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
connect_error];
}
// Attempt select query execution
$sql = "SELECT * FROM persons";
if[$result = $mysqli->query[$sql]]{
if[$result->num_rows > 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = $result->fetch_array[]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
$result->free[];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
// Close connection
$mysqli->close[];
?>
setAttribute[PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION];
} catch[PDOException $e]{
die["ERROR: Could not connect. " . $e->getMessage[]];
}
// Attempt select query execution
try{
$sql = "SELECT * FROM persons";
$result = $pdo->query[$sql];
if[$result->rowCount[] > 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = $result->fetch[]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
unset[$result];
} else{
echo "No records matching your query were found.";
}
} catch[PDOException $e]{
die["ERROR: Could not able to execute $sql. " . $e->getMessage[]];
}
// Close connection
unset[$pdo];
?>
Giải thích Mã [Kiểu thủ tục]
Trong ví dụ trên, dữ liệu trả về bởi hàm mysqli_query[]
được lưu trữ trong biến $result
. Mỗi khi gọi ___6_______0, nó sẽ trả về hàng tiếp theo từ tập kết quả dưới dạng một mảng. Vòng lặp while được sử dụng để lặp qua tất cả các hàng trong tập kết quả. Cuối cùng, giá trị của trường riêng lẻ có thể được truy cập từ hàng bằng cách chuyển chỉ mục trường hoặc tên trường đến biến
0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
1 như 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
2 hoặc 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
3, 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
4 hoặc 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
5, 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
6 hoặc 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
7 và 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
8 hoặc 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = mysqli_fetch_array[$result]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
mysqli_free_result[$result];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error[$link];
}
// Close connection
mysqli_close[$link];
?>
9Nếu bạn muốn sử dụng vòng lặp
connect_error];
}
// Attempt select query execution
$sql = "SELECT * FROM persons";
if[$result = $mysqli->query[$sql]]{
if[$result->num_rows > 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = $result->fetch_array[]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
$result->free[];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
// Close connection
$mysqli->close[];
?>
0, bạn có thể lấy giá trị bộ đếm vòng lặp hoặc số hàng mà truy vấn trả về bằng cách chuyển biến $result
cho hàm connect_error];
}
// Attempt select query execution
$sql = "SELECT * FROM persons";
if[$result = $mysqli->query[$sql]]{
if[$result->num_rows > 0]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
while[$row = $result->fetch_array[]]{
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
echo "idfirst_namelast_nameemail" . $row['id'] . "" . $row['first_name'] . "" . $row['last_name'] . "" . $row['email'] . "";
// Free result set
$result->free[];
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . $mysqli->error;
}
// Close connection
$mysqli->close[];
?>
2. Giá trị bộ đếm vòng lặp này xác định số lần vòng lặp sẽ chạy