Trường ẩn tương tự như trường văn bản. Trường ẩn trong biểu mẫu được nhúng trong mã nguồn HTML của biểu mẫu. Sự khác biệt là người dùng không thể xem trường ẩn và nội dung của nó. Trường ẩn cho phép nhà phát triển web chuyển các biến có giá trị từ biểu mẫu này sang biểu mẫu khác mà không yêu cầu nhập lại thông tin
Cú pháp để xác định một trường ẩn như sau
< INPUT TYPE = “HIDDEN” NAME=”hidden1” VALUE=”TIN NHẮN PHP” >
Ở đâu,
LOẠI - chỉ định rằng trường bị ẩn
NAME — chỉ định tên của trường ẩn
GIÁ TRỊ – chỉ định giá trị khi nó xuất hiện trên biểu mẫu
Để sử dụng các trường ẩn và chuyển tên của các lục địa trong tập lệnh PHP
Các bước như sau
Tiêu đề trang trường ẩn
Chỉ định nội dung
CHÂU Á
Úc
CHÂU ÂU
Chia sẻ
Bình luận đã đóng
Một trường ẩn không được hiển thị trên trang
Nó chỉ lưu trữ giá trị văn bản được chỉ định trong thuộc tính giá trị
Các trường ẩn rất tốt để chuyển thông tin bổ sung từ biểu mẫu đến máy chủ
A hidden field
Thí dụ
Biểu mẫu sau sử dụng trường ẩn để lưu trữ số lần thử
$num_to_guess] {
$message = $_POST ['guess'] . " is too big!";
} else if [$_POST ['guess'] < $num_to_guess] {
$message = $_POST ['guess'] . " is too small!";
} else {
$message = "Well done!";
}
$guess = [ int ] $_POST ['guess'];
$num_tries = [ int ] $_POST ['num_tries'];
$num_tries ++;
?>
Guess number:
Type your guess here:
R
ronalcuadrado
- nhà thám hiểm
- 0 câu trả lời
Chúng tôi không nhận được biểu mẫu để gửi khi chúng tôi thêm biến php vào trường ẩn
data-tf-hidden="name=
Bạn có biết điều gì có thể xảy ra không?
Tôi đính kèm ảnh chụp màn hình để bạn xem
cảm ơn
- Tích hợp kiểu chữ
- Trường ẩn kiểu chữ
- nhúng kiểu chữ
- Giống
- Trích dẫn
Đăng lại
Người dùng cấp 7
Liz
- Bênh vực cộng đồng công nghệ
- 8363 trả lời
2 tháng trước đây
16 tháng chín 2022
Xin chào@romanalcuadrado Bạn thấy thông báo lỗi này ở đâu?
Cuộc sống là một chuỗi những khoảnh khắc khó xử được ngăn cách bởi những món ăn vặt
- Giống
- Trích dẫn
Người dùng cấp 7
Gabi Amaral
- Máy đánh chữ cũ
- 1779 câu trả lời
2 tháng trước đây
4 tháng 10 năm 2022
Chào @romanalcuadrado. Đảm bảo gửi URL nơi bạn đã nhúng biểu mẫu của mình để chúng tôi có thể xem qua. 😉
Các phần tử thuộc loại
hidden
cho phép các nhà phát triển web bao gồm dữ liệu mà người dùng không thể nhìn thấy hoặc sửa đổi khi một biểu mẫu được gửi. Ví dụ: ID của nội dung hiện đang được đặt hàng hoặc chỉnh sửa hoặc mã thông báo bảo mật duy nhất. Đầu vào ẩn hoàn toàn ẩn trong trang được hiển thị và không có cách nào để hiển thị trong nội dung của trang
$num_to_guess] {
$message = $_POST ['guess'] . " is too big!";
} else if [$_POST ['guess'] < $num_to_guess] {
$message = $_POST ['guess'] . " is too small!";
} else {
$message = "Well done!";
}
$guess = [ int ] $_POST ['guess'];
$num_tries = [ int ] $_POST ['num_tries'];
$num_tries ++;
?>
Guess number:
Type your guess here:
0Thuộc tính IDL
$num_to_guess] {
$message = $_POST ['guess'] . " is too big!";
} else if [$_POST ['guess'] < $num_to_guess] {
$message = $_POST ['guess'] . " is too small!";
} else {
$message = "Well done!";
}
$guess = [ int ] $_POST ['guess'];
$num_tries = [ int ] $_POST ['num_tries'];
$num_tries ++;
?>
Guess number:
Type your guess here:
1Giao diện DOM
$num_to_guess] {
$message = $_POST ['guess'] . " is too big!";
} else if [$_POST ['guess'] < $num_to_guess] {
$message = $_POST ['guess'] . " is too small!";
} else {
$message = "Well done!";
}
$guess = [ int ] $_POST ['guess'];
$num_tries = [ int ] $_POST ['num_tries'];
$num_tries ++;
?>
Guess number:
Type your guess here:
2Phương phápKhông cóGhi chú. Các sự kiện
$num_to_guess] {
$message = $_POST ['guess'] . " is too big!";
} else if [$_POST ['guess'] < $num_to_guess] {
$message = $_POST ['guess'] . " is too small!";
} else {
$message = "Well done!";
}
$guess = [ int ] $_POST ['guess'];
$num_tries = [ int ] $_POST ['num_tries'];
$num_tries ++;
?>
Guess number:
Type your guess here:
3 và
$num_to_guess] {
$message = $_POST ['guess'] . " is too big!";
} else if [$_POST ['guess'] < $num_to_guess] {
$message = $_POST ['guess'] . " is too small!";
} else {
$message = "Well done!";
}
$guess = [ int ] $_POST ['guess'];
$num_tries = [ int ] $_POST ['num_tries'];
$num_tries ++;
?>
Guess number:
Type your guess here:
4 không áp dụng cho loại đầu vào này. Đầu vào ẩn không thể được tập trung ngay cả khi sử dụng JavaScript [e. g.
$num_to_guess] {
$message = $_POST ['guess'] . " is too big!";
} else if [$_POST ['guess'] < $num_to_guess] {
$message = $_POST ['guess'] . " is too small!";
} else {
$message = "Well done!";
}
$guess = [ int ] $_POST ['guess'];
$num_tries = [ int ] $_POST ['num_tries'];
$num_tries ++;
?>
Guess number:
Type your guess here:
5]Giá trị
Thuộc tính
$num_to_guess] {
$message = $_POST ['guess'] . " is too big!";
} else if [$_POST ['guess'] < $num_to_guess] {
$message = $_POST ['guess'] . " is too small!";
} else {
$message = "Well done!";
}
$guess = [ int ] $_POST ['guess'];
$num_tries = [ int ] $_POST ['num_tries'];
$num_tries ++;
?>
Guess number:
Type your guess here:
1 của phần tử
chứa một chuỗi chứa dữ liệu ẩn mà bạn muốn đưa vào khi biểu mẫu được gửi tới máy chủ. Điều này cụ thể là người dùng không thể chỉnh sửa hoặc nhìn thấy thông qua giao diện người dùng, mặc dù bạn có thể chỉnh sửa giá trị thông qua các công cụ dành cho nhà phát triển trình duyệtCảnh báo. Mặc dù giá trị không được hiển thị cho người dùng trong nội dung của trang, nhưng nó vẫn hiển thị—và có thể được chỉnh sửa—bằng cách sử dụng bất kỳ công cụ dành cho nhà phát triển của trình duyệt nào hoặc chức năng "Xem nguồn". Không dựa vào đầu vào hidden
như một hình thức bảo mật
thuộc tính bổ sung
Ngoài các thuộc tính chung cho tất cả các phần tử , đầu vào
hidden
cung cấp các thuộc tính sau
Tên
Đây thực sự là một trong những thuộc tính phổ biến, nhưng nó có một ý nghĩa đặc biệt dành cho các đầu vào ẩn. Thông thường, thuộc tính
html {
font-family: sans-serif;
}
form {
width: 500px;
}
div {
display: flex;
margin-bottom: 10px;
}
label {
flex: 2;
line-height: 2;
text-align: right;
padding-right: 20px;
}
input,
textarea {
flex: 7;
font-family: sans-serif;
font-size: 1.1rem;
padding: 5px;
}
textarea {
height: 60px;
}
5 hoạt động trên các đầu vào ẩn giống như trên bất kỳ đầu vào nào khác. Tuy nhiên, khi biểu mẫu được gửi, một đầu vào ẩn có html {
font-family: sans-serif;
}
form {
width: 500px;
}
div {
display: flex;
margin-bottom: 10px;
}
label {
flex: 2;
line-height: 2;
text-align: right;
padding-right: 20px;
}
input,
textarea {
flex: 7;
font-family: sans-serif;
font-size: 1.1rem;
padding: 5px;
}
textarea {
height: 60px;
}
5 được đặt thành html {
font-family: sans-serif;
}
form {
width: 500px;
}
div {
display: flex;
margin-bottom: 10px;
}
label {
flex: 2;
line-height: 2;
text-align: right;
padding-right: 20px;
}
input,
textarea {
flex: 7;
font-family: sans-serif;
font-size: 1.1rem;
padding: 5px;
}
textarea {
height: 60px;
}
7 sẽ tự động được báo cáo với giá trị được đặt thành mã hóa ký tự được sử dụng để gửi biểu mẫuSử dụng đầu vào ẩn
Như đã đề cập ở trên, đầu vào ẩn có thể được sử dụng ở bất kỳ đâu mà bạn muốn bao gồm dữ liệu mà người dùng không thể xem hoặc chỉnh sửa cùng với biểu mẫu khi nó được gửi tới máy chủ. Hãy xem xét một số ví dụ minh họa việc sử dụng nó
Theo dõi nội dung đã chỉnh sửa
Một trong những cách sử dụng phổ biến nhất đối với đầu vào ẩn là để theo dõi xem bản ghi cơ sở dữ liệu nào cần được cập nhật khi biểu mẫu chỉnh sửa được gửi. Một quy trình công việc điển hình trông như thế này
- Người dùng quyết định chỉnh sửa một số nội dung mà họ có quyền kiểm soát, chẳng hạn như bài đăng trên blog hoặc mục nhập sản phẩm. Họ bắt đầu bằng cách nhấn nút chỉnh sửa
- Nội dung cần chỉnh sửa được lấy từ cơ sở dữ liệu và tải vào biểu mẫu HTML để cho phép người dùng thực hiện thay đổi
- Sau khi chỉnh sửa, người dùng gửi biểu mẫu và dữ liệu cập nhật được gửi lại máy chủ để được cập nhật trong cơ sở dữ liệu
Ý tưởng ở đây là trong bước 2, ID của bản ghi đang được cập nhật được giữ trong một đầu vào ẩn. Khi biểu mẫu được gửi ở bước 3, ID sẽ tự động được gửi lại máy chủ với nội dung bản ghi. ID cho phép thành phần phía máy chủ của trang web biết chính xác bản ghi nào cần được cập nhật với dữ liệu đã gửi
Bạn có thể xem một ví dụ đầy đủ về điều này có thể trông như thế nào trong phần Ví dụ bên dưới
Cải thiện bảo mật trang web
Đầu vào ẩn cũng được sử dụng để lưu trữ và gửi mã thông báo bảo mật hoặc bí mật, nhằm mục đích cải thiện bảo mật trang web. Ý tưởng cơ bản là nếu người dùng điền vào một biểu mẫu nhạy cảm, chẳng hạn như biểu mẫu trên trang web ngân hàng của họ để chuyển một số tiền vào tài khoản khác, bí mật mà họ sẽ được cung cấp sẽ chứng minh rằng họ là chính họ và
Điều này sẽ ngăn người dùng ác ý tạo biểu mẫu giả mạo, giả làm ngân hàng và gửi biểu mẫu đó qua email cho những người dùng cả tin để lừa họ chuyển tiền đến sai địa điểm. Kiểu tấn công này được gọi là giả mạo yêu cầu trang web chéo [CSRF];
Ghi chú. Đặt bí mật vào một đầu vào ẩn vốn dĩ không làm cho nó an toàn. Thành phần và mã hóa của khóa sẽ làm điều đó. Giá trị của đầu vào ẩn là nó giữ bí mật được liên kết với dữ liệu và tự động bao gồm nó khi biểu mẫu được gửi đến máy chủ. Bạn cần sử dụng các bí mật được thiết kế tốt để thực sự bảo mật trang web của mình
Thẩm định
Đầu vào ẩn không tham gia xác thực ràng buộc;
ví dụ
Hãy xem cách chúng tôi có thể triển khai phiên bản đơn giản của biểu mẫu chỉnh sửa mà chúng tôi đã mô tả trước đó [xem Theo dõi nội dung đã chỉnh sửa], sử dụng đầu vào ẩn để ghi nhớ ID của bản ghi đang được chỉnh sửa
HTML của biểu mẫu chỉnh sửa có thể trông hơi giống thế này
Post title:
Post content:
This is the content of my excellent blog post. I hope you enjoy it!
Update post
Hãy cũng thêm một số CSS đơn giản
html {
font-family: sans-serif;
}
form {
width: 500px;
}
div {
display: flex;
margin-bottom: 10px;
}
label {
flex: 2;
line-height: 2;
text-align: right;
padding-right: 20px;
}
input,
textarea {
flex: 7;
font-family: sans-serif;
font-size: 1.1rem;
padding: 5px;
}
textarea {
height: 60px;
}
Máy chủ sẽ đặt giá trị của đầu vào ẩn có ID "
html {
font-family: sans-serif;
}
form {
width: 500px;
}
div {
display: flex;
margin-bottom: 10px;
}
label {
flex: 2;
line-height: 2;
text-align: right;
padding-right: 20px;
}
input,
textarea {
flex: 7;
font-family: sans-serif;
font-size: 1.1rem;
padding: 5px;
}
textarea {
height: 60px;
}
8" thành ID của bài đăng trong cơ sở dữ liệu của nó trước khi gửi biểu mẫu tới trình duyệt của người dùng và sẽ sử dụng thông tin đó khi biểu mẫu được trả về để biết bản ghi cơ sở dữ liệu nào cần cập nhật . Không cần kịch bản trong nội dung để xử lý việc này