Hướng dẫn header(location with alert message in php) - tiêu đề (vị trí có thông báo cảnh báo trong php)

Tôi có một vấn đề nhỏ. Khi tôi nhận được tập lệnh PHP của mình mà không cần tiêu đề, tôi sẽ nhận được hộp cảnh báo JavaScript. Nhưng khi tôi sử dụng tiêu đề trước khi cảnh báo, nó không hoạt động. Nó chuyển hướng tôi như nó nên, nhưng nó không hiển thị bất kỳ hộp nào. Có ai có thể giúp tôi không?

if ( $pkt < 1 OR $user_id == 0) {
    header("Location: http://dunno.com/file.php");
    $message = 'This is a message.';

echo "";
    mysql_close();
}

Và đây là một trong những công việc (nhưng không có đầu)

if ( $pkt < 1 OR $user_id == 0) {
    $message = 'This is a message.';

echo "";
    mysql_close();
}

Tôi sẽ biết ơn sự giúp đỡ :)

@edit có thể có bất kỳ lệnh nào để cảnh báo chờ đợi cho đến khi tải toàn bộ trình duyệt không? (nếu đó là vấn đề)

Hướng dẫn header(location with alert message in php) - tiêu đề (vị trí có thông báo cảnh báo trong php)

Sam

7.16515 Huy hiệu vàng45 Huy hiệu bạc65 Huy hiệu Đồng15 gold badges45 silver badges65 bronze badges

Hỏi ngày 24 tháng 4 năm 2014 lúc 14:27Apr 24, 2014 at 14:27

2

Có thể thử chuyển hướng bằng JavaScript.

if ( $pkt < 1 OR $user_id == 0) {
    $message = 'This is a message.';

    echo "";
    mysql_close();
}

Đã trả lời ngày 24 tháng 4 năm 2014 lúc 14:33Apr 24, 2014 at 14:33

Hướng dẫn header(location with alert message in php) - tiêu đề (vị trí có thông báo cảnh báo trong php)

Zander Rootmanzander RootmanZander Rootman

2.1182 Huy hiệu vàng15 Huy hiệu bạc28 Huy hiệu đồng2 gold badges15 silver badges28 bronze badges

0

Tôi biết đây là một bài viết cũ, nhưng đây là cách tôi làm nó trong một ví dụ tương tự. Ví dụ này kiểm tra xem quản trị viên có đăng nhập từ một địa chỉ IP cụ thể không, nếu trả về sai, nó sẽ chuyển hướng người dùng trở lại trang đăng nhập và hiển thị thông báo lỗi.

Người dùng đã đăng nhập trang:

if ($_SERVER['REMOTE_ADDR'] == "ip address"){
    $admin = True;
}else{
    session_start();
    $_SESSION['errorMessage'] = "WARNING: You dont have access to this area.";
    header("Location: login.php");
}

Đăng nhập.php:

session_start();

if(isset($_SESSION['errorMessage'])){
    echo "";
    //to not make the error message appear again after refresh:
    session_unset($_SESSION['errorMessage']);
}

Đã trả lời ngày 26 tháng 2 năm 2016 lúc 12:25Feb 26, 2016 at 12:25

Saltcrackersaltcrackersaltcracker

3213 Huy hiệu bạc16 Huy hiệu Đồng3 silver badges16 bronze badges

Đây là một chuyển hướng:

if ( $pkt < 1 OR $user_id == 0) {
    $message = 'This is a message.';

echo "";
    mysql_close();
}
3

Mã bên dưới sẽ không hoạt động

Đã trả lời ngày 24 tháng 4 năm 2014 lúc 14:28Apr 24, 2014 at 14:28

AaronikeraaronikerAaroniker

1709 Huy hiệu bạc31 Huy hiệu Đồng9 silver badges31 bronze badges

2

Lỗi của bạn nằm trong cấu trúc mã của bạn. PHP, ngay cả trong OOP là thủ tục và sẽ chạy từng dòng từng dòng. Vì vậy, cách bạn cấu trúc mã của mình có nghĩa là trang được chuyển hướng trước tiếng vang của bạn. Một phương pháp tốt hơn là sử dụng hộp cảnh báo JavaScript để chuyển hướng trang của bạn bằng cách sử dụng:

var prompt=window.confirm("message here. \r\n"+"Do you want to redirect?");
if(prompt)document.location.href='http://dunno.com/file.php');

Đã trả lời ngày 24 tháng 4 năm 2014 lúc 14:34Apr 24, 2014 at 14:34

Bashleighbashleighbashleigh

8.2565 huy hiệu vàng26 Huy hiệu bạc46 Huy hiệu đồng5 gold badges26 silver badges46 bronze badges

Aaroniker là chính xác với nhận xét chuyển hướng. Một cách để làm cho nó hoạt động sẽ là gửi tin nhắn với một biến phiên và sau đó thêm tạo thông báo vào trang tiếp theo như vậy.

session_start();
if ( $pkt < 1 OR $user_id == 0) {
$_SESSION['message']= "this is a message";
header("Location: http://dunno.com/file.php");

Trên file.php:

session_start();
echo "";
    mysql_close();
}

Một lựa chọn khác là vượt qua chúng với tiêu đề của bạn. Như vậy:

if ( $pkt < 1 OR $user_id == 0) {
$message= "this is a message";
header("Location: http://dunno.com/file.php?message=" . $message . ");

Sau đó trên File.php:

echo "";
    mysql_close();
}

Đã trả lời ngày 24 tháng 4 năm 2014 lúc 14:37Apr 24, 2014 at 14:37

Sử dụng $ _Server 'php_elf'. Nó sẽ cho phép bạn tạo tập lệnh trên cùng một trang nơi bạn muốn cảnh báo. Bằng cách này, bạn sẽ không phải thêm tiêu đề.

Đây là một ví dụ:

if ( $pkt < 1 OR $user_id == 0) {
    $message = 'This is a message.';

echo "";
    mysql_close();
}
0

}

?>

Đã trả lời ngày 23 tháng 2 năm 2016 lúc 4:49Feb 23, 2016 at 4:49

Hàm tiêu đề dưới đây sẽ chạy chuyển hướng 302 theo mặc định và chuyển hướng máy khách đến http://dunno.com/file.php để bất kỳ mã nào sau khi bắt đầu mã Trang Mã này được bật.

if ( $pkt < 1 OR $user_id == 0) {
    $message = 'This is a message.';

echo "";
    mysql_close();
}
1

Vui lòng đọc thêm về chức năng tiêu đề tại đây: http://www.php.net/manual/en/function.header.php

Bạn có thể làm cho bạn lập trình ngủ/chờ vài giây (giả sử 10 giây cho ví dụ này) trước khi chuyển hướng nếu bạn cần tin nhắn để hiển thị như vậy:

if ( $pkt < 1 OR $user_id == 0) {
    $message = 'This is a message.';

echo "";
    mysql_close();
}
2

Đã trả lời ngày 24 tháng 4 năm 2014 lúc 14:31Apr 24, 2014 at 14:31

llanatollanatollanato

2.4686 Huy hiệu vàng36 Huy hiệu bạc57 Huy hiệu Đồng6 gold badges36 silver badges57 bronze badges

3

Tiêu đề nằm ở đâu trong PHP?

Vị trí tiêu đề PHP Để chuyển hướng PHP của bạn thành công, hàm Header () phải thực thi - và trước khi bất kỳ đầu ra nào được gửi.Đây là lý do tại sao mã của bạn phải xuất hiện trên hoặc các thẻ trong chỉ mục của bạn.Tệp PHP.the header() function must execute — and before any output is sent. This is why your code must appear above the or tags in your index. php file.

Làm cách nào để gửi tin nhắn cảnh báo trong PHP?

PHP không hỗ trợ hộp thông báo cảnh báo vì đây là ngôn ngữ phía máy chủ nhưng bạn có thể sử dụng mã JavaScript trong thân PHP để cảnh báo hộp thông báo trên màn hình.use JavaScript code within the PHP body to alert the message box on the screen.

Làm cách nào để nhận được tin nhắn cảnh báo sau khi chuyển hướng một trang?

Để hiển thị thông báo cảnh báo sau khi chuyển hướng, bạn có thể sử dụng phiên hoặc truy vấn và kiểm tra tải trang nếu phiên hoặc queryString không trống thì hiển thị thông báo cảnh báo.use Session or QueryString and on page Load check if the Session or QueryString is not empty then display alert message.

Làm thế nào để bạn viết cảnh báo trong một hộp cảnh báo?

Cảnh báo cửa sổ ()..
Thí dụ.Hiển thị một hộp cảnh báo: cảnh báo ("Xin chào! Tôi là một hộp cảnh báo !!");Thêm các ví dụ dưới đây ..
Hộp cảnh báo với dòng phá vỡ: cảnh báo ("Xin chào \ nhow phải không?") ;.
Cảnh báo tên máy chủ của url hiện tại: cảnh báo (vị trí. Tên máy chủ) ;.