私は別のページにデータを送信するフォームを持っています。ディレクトリにデータが存在するかどうかを確認してから、リダイレクトしたい場合はエラーを表示します。
PHPフォームアクションが送信される前にデータが存在するかどうかをチェック
<form class="form-inline" method="POST" action="<?php checkMyFile(); ?>">
<select class="form-control" style="width:auto;" name="mydata">
<option value="id1">1</option>
<option value="id2">2</option>
</select>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
と私は上記のHTMLフォームの上部に次のPHPの関数があります。
<?php
funtion checkFile(){
if(!isset($_POST['mydata']) or !file_exists('../data/'.basename($_POST['mydata']).'.txt')){
echo $result='<div class="alert alert-danger">Sorry there was an error sending your message. Please try again later</div>';
} else {
return "my/destination/page.php"
}
}
?>
をが、現在それはエラーなしで白ページを示しています。 なぜ機能していないのですか?解決策は何ですか?
Errrr、それはそのようには機能しません。 'action'からPHP関数を実行することはできません。あなたは、スクリプトファイル(xxx.php)を実行する必要があり、新たにインスタンス化された 'xxx.php'スクリプトによって、あなたはPHPコードは関数を呼び出します – RiggsFolly
@RiggsFollyしてください可能性が設定されている場合、テストされるポストされたデータにパラメータを渡しますこれに対する答えを示唆していますか?あなたの説明と一緒に。おかげで – passion