Hộp cảnh báo được sử dụng để hiển thị thông báo cảnh báo cho người dùng. Như bạn đã biết rằng PHP không có tính năng bật lên hộp thông báo cảnh báo nhưng bạn có thể sử dụng mã javascript trong mã PHP để hiển thị hộp thông báo cảnh báo. Bằng cách này, bạn có thể hiển thị hộp thông báo cảnh báo của Javascript trong PHP
JavaScript có ba loại hộp bật lên, đó là những loại sau
Trong bài viết này, bạn sẽ tìm hiểu về hộp cảnh báo, hộp xác nhận và hộp nhắc với các ví dụ
1. Hiển thị hộp cảnh báo trong PHP
Hộp cảnh báo không là gì ngoài hộp cửa sổ bật lên trên màn hình của bạn với một số thông báo hoặc thông tin cần sự chú ý của người dùng.
Hộp cảnh báo là hộp thoại JavaScript được trình duyệt hỗ trợ
PHP là ngôn ngữ phía máy chủ và không hỗ trợ thông báo cảnh báo bật lên. Trình duyệt của khách hàng đưa ra cảnh báo
Để bật một thông báo cảnh báo qua PHP, chúng tôi cần kết xuất mã JavaScript bằng PHP và gửi nó tới trình duyệt. JavaScript là ngôn ngữ phía máy khách
cú pháp
alert["Nhập tin nhắn của bạn tại đây"];
Thí dụ. Sử dụng hộp cảnh báo JavaScript
JavaScript Alert Box by PHP
';
echo ' alert["JavaScript Alert Box by PHP"]'; //not showing an alert box.
echo '';
?>
Mã vận hành
đầu ra
Thí dụ. Sử dụng hàm PHP
JavaScript Alert Box by PHP
alert['$msg'];";
}
?>
Mã vận hành
đầu ra
2. Hiển thị hộp xác nhận trong PHP
Hộp xác nhận chủ yếu được sử dụng để nhận sự chấp thuận của người dùng để xác minh hoặc chấp nhận một giá trị
cú pháp
confirm["Nhập tin nhắn của bạn tại đây"];
Thí dụ. Sử dụng hộp bật lên xác nhận Javascript
JavaScript Alert Box by PHP
';
echo ' function openulr[newurl] {';
echo ' if [confirm["Are you sure you want to open new URL"]] {';
echo ' document.location = newurl;';
echo ' }';
echo '}';
echo '';
}
?>
Open new URL
Mã vận hành
đầu ra
JavaScript Alert Box by PHP
Open new URL
3. Hiển thị hộp nhắc trong PHP
Hộp nhắc chủ yếu được sử dụng, khi muốn người dùng nhập liệu, người dùng cần điền dữ liệu vào trường đã cho hiển thị trong hộp bật lên và phải nhấp vào ok hoặc hủy để tiếp tục
Bạn có muốn xác nhận và biểu mẫu của bạn được hiển thị trên trang sau mỗi lần gửi biểu mẫu thành công không? . Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách đạt được điều này bằng một đoạn mã nhỏ
Thiết lập biểu mẫu
Trước tiên, bạn sẽ cần tạo một biểu mẫu mới. Với mục đích của hướng dẫn này, chúng tôi đã hoàn thành bước này. Tuy nhiên, nếu bạn cần trợ giúp trong việc tạo biểu mẫu với WPForms, vui lòng xem lại tài liệu này
Đối với biểu mẫu của chúng tôi, chúng tôi đã chỉ thêm trường biểu mẫu Tên, Email và Đoạn Văn bản
Vô hiệu hóa AJAX trên biểu mẫu
Tiếp theo, bạn cần đảm bảo rằng tùy chọn Bật gửi biểu mẫu AJAX bị tắt trên biểu mẫu. Để kiểm tra cài đặt này, nhấp vào tab Cài đặt bên trong trình tạo biểu mẫu rồi nhấp vào Chung
Thêm đoạn mã
Tiếp theo, bạn sẽ cần thêm một đoạn mã nhỏ vào trang web của mình để cho phép biểu mẫu hiển thị lại trước thông báo xác nhận
Nếu bạn cần trợ giúp thêm đoạn trích vào trang web của mình, vui lòng xem lại hướng dẫn này
/* * Display confirmation message and form after successful submission. * * @link //wpforms.com/developers/how-to-display-the-confirmation-and-the-form-again-after-submission/ * */ function wpf_dev_frontend_output_success[ $form_data, $fields, $entry_id ] { // Optional, you can limit to specific forms. Below, we restrict output to form #235. if [ absint[ $form_data[ 'id' ] ] !== 235 ] { return; } // Reset the fields to blank unset[ $_GET[ 'wpforms_return' ], $_POST[ 'wpforms' ][ 'id' ] ]; // Uncomment this line out if you want to clear the form field values after submission unset[ $_POST[ 'wpforms' ][ 'fields' ] ]; // Actually render the form. wpforms[]->frontend->output[ $form_data[ 'id' ] ]; } add_action[ 'wpforms_frontend_output_success', 'wpf_dev_frontend_output_success', 10, 3 ];
Vì chúng tôi chỉ muốn đoạn mã này chạy trên một biểu mẫu cụ thể, nên chúng tôi đang sử dụng if [ absint[ $form_data[ 'id' ] ] !== 235 ]
. Điều này có nghĩa là đoạn mã này sẽ chỉ chạy nếu ID biểu mẫu khớp với 235
Nếu bạn cần trợ giúp trong việc xác định số ID biểu mẫu của mình, vui lòng xem hướng dẫn này
Nếu bạn muốn giữ lại các giá trị bên trong các trường của biểu mẫu sau khi biểu mẫu được gửi, chỉ cần xóa unset[ $_POST[ 'wpforms' ][ 'fields' ] ];
Bây giờ bạn sẽ thấy khi biểu mẫu được gửi, khách truy cập của bạn sẽ thấy xác nhận và biểu mẫu trên cùng một trang sau khi biểu mẫu được gửi
Và đó là nó. Bạn có muốn đặt ngày mặc định trên bộ chọn ngày của mình không?
Có liên quan
Tham khảo hành động. wpforms_frontend_output_success
Câu hỏi thường gặp
Q. Tại sao thông báo xác nhận của tôi xuất hiện bên dưới biểu mẫu?
A. Nếu thông báo xác nhận của bạn xuất hiện phía trên biểu mẫu của bạn và bạn muốn nó xuất hiện bên dưới, vui lòng thay đổi mức độ ưu tiên của chức năng này
Để giải thích mức độ ưu tiên của hàm là gì, chúng ta hãy xem đoạn mã trên, cụ thể là dòng cuối cùng
add_action[ 'wpforms_frontend_output_success', 'wpf_dev_frontend_output_success', 10, 3 ];
Trong trường hợp này, tên của hook hành động [như được định nghĩa bởi WPForms] là wpforms_frontend_output_success, tên hàm của chúng ta là wpf_dev_frontend_output_success. Bên trong hàm này, chúng tôi truyền 3 đối số [$form_data, $fields, $entry_id] và chúng tôi có mức ưu tiên mặc định được đặt thành 10
Vì chúng ta muốn chức năng mặc định của form xuất hiện trước, trong trường hợp này là thông báo xác nhận, chúng ta cần thay đổi mức độ ưu tiên để thông báo xuất hiện trước và chức năng chạy sau. Để làm điều này, chúng tôi sẽ tăng mức độ ưu tiên lên 99
Hầu hết các chức năng sử dụng 10 làm số ưu tiên mặc định, vì vậy nếu bạn muốn thứ gì đó chạy trước, bạn sẽ ưu tiên thứ gì đó dưới 10 nếu bạn muốn chức năng chạy sau, hãy tăng mức độ ưu tiên lên thứ gì đó trên 10
________số 8_______Q. Tại sao đoạn mã không hoạt động với tôi?
A. Nếu đoạn mã không hoạt động, vui lòng đảm bảo rằng bạn đã thay đổi 235 để khớp với ID biểu mẫu của riêng bạn trên trang web của bạn. Vui lòng xem hướng dẫn này để giúp tìm ID biểu mẫu của bạn
Q. Tại sao tôi phải tắt AJAX?
A. AJAX cho phép các trang web được cập nhật không đồng bộ bằng cách trao đổi một lượng nhỏ dữ liệu với máy chủ đằng sau hậu trường. Điều này có nghĩa là có thể cập nhật các phần của trang web mà không cần tải lại toàn bộ trang. Đoạn mã này sẽ không gọi hàm wpforms[]->frontend->output trừ khi trang tải lại hoàn toàn
Làm cách nào để gửi email xác nhận cho người dùng sau khi gửi biểu mẫu bằng php?
Làm cách nào để nhận được thông báo thành công trong cùng một trang sau khi gửi biểu mẫu liên hệ?
Điều gì xảy ra sau khi gửi biểu mẫu?
Làm cách nào để hiển thị thông báo đăng nhập thành công trong php?
' . $_SESSION['success'] . "
"; unset[$_SESSION['success']]; } if [isset[$_SESSION['error']]] { echo '' .