6

私はPHPを初めて使用します。

誰かがアップロードするファイルサイズが大きすぎる場合、警告ポップアップを表示して前のページにリダイレクトしたいと思います(またはその逆)。

if(file size is too big){    
   ob_start();   
   header("location:index.php");    
   echo "<script type='text/javascript'>alert('Your File Size is too big!');</script>";   
   ob_end_flush();   
   exit;    
}

上記のこのコードは、index.phpにリダイレクトするだけで、警告ポップアップは表示されません。

4

4 に答える 4

9

次のようなことをします

header("Location: index.php?Message=" . urlencode($Message));

次にindex.phpで...

if (isset($_GET['Message'])) {
    print $_GET['Message'];
}

つまり、index.phpURL にメッセージが渡されているかどうかを常にチェックします。ある場合は、それを表示します。次に、リダイレクトでメッセージを渡すだけです

本当にモーダルポップアップを使用したい場合は、jsを生成してください...

if (isset($_GET['Message'])) {
    print '<script type="text/javascript">alert("' . $_GET['Message'] . '");</script>';
}

引用符をエスケープしない限り、メッセージで引用符を使用すると、これが壊れることに注意してください。

于 2012-07-28T19:10:31.097 に答える
4
<script type="text/javascript">
alert("YOUR MESSAGE HERE");
location="REDIRECTION_PAGE.php";
</script>
于 2016-08-17T19:55:17.387 に答える
1

問題はheader("location:index.php");、応答コードを302自動的に設定することです。ブラウザは、ページの内容を見ずにすぐにリダイレクトします。

アラートが送信された後にリダイレクト自体を JavaScript で行うか、リダイレクトするページでアラートを実行する必要があります。

于 2012-07-28T19:12:13.747 に答える
-1

コードは次のようになります。

if($_FILES['file']['size'] > 200000) //any file size, 200 kb in this case
{
 echo "<script type='javascript'>alert('File size larger than 200 KB')</script>";
}
header("Location: index.php");

index.phpファイルが正常にアップロードされたかどうかに関係なく、ブラウザはページにリダイレクトされます。ファイルのサイズが大きい場合にポップアップが表示されるだけです。

于 2012-07-28T19:49:13.873 に答える