PHP フォーム プロセッサを使用してクライアント用の小さな Web サイトを作成しています。私が望むのはmailto
、Web サーバーで PHP が使用できない場合に、コンタクト フォームがメソッドにフォールバックすることです。奇妙に思えますが、どこにでもデプロイできるようにする必要があります。
今私は持っています:
form method="post" action="my_form_processor.php"
とにかくこれを処理する方法はありますか?
PHP フォーム プロセッサを使用してクライアント用の小さな Web サイトを作成しています。私が望むのはmailto
、Web サーバーで PHP が使用できない場合に、コンタクト フォームがメソッドにフォールバックすることです。奇妙に思えますが、どこにでもデプロイできるようにする必要があります。
今私は持っています:
form method="post" action="my_form_processor.php"
とにかくこれを処理する方法はありますか?
これは悪い考えです。クライアントがサーバーサイド言語のインストールを拒否した場合、動的なWebサイトを取得できません。
楽しみのために、おそらく次のようなことをすることができます:
<script>
if ('<?php ?>'.length != 0) {
$('#form').attr('action', 'mailto:fallback@example.com');
}
</script>
ディレクトリに index.html と index.php の 2 つのファイルを提供できます。フォームの動作を除いて、内容は同じです。
php がインストールされている場合、(通常、サーバーの構成に基づいて変更される可能性があります) ホームページを提供するときに index.html よりも index.php が優先されます。php が存在しない場合、サーバーは代わりに index.html を提供します。
リンクするときは、ファイルではなくディレクトリに移動してください。たとえば、example.com/foo/index.php の代わりに example.com/foo/ にリンクします。
私はあなたが何か他のことをしたいかもしれないというコメントに同意します.
これは悪い考えのように思えますが、技術的に解決するのはそれほど難しくありません。
var myVar = "<?php echo 'php'; ?>";
myVar === 'php'
の属性を変更します。action
false
もちろん、これは訪問者が JavaScript を無効にしている場合にも失敗するため、クライアントにサーバー要件のリストを提供することをお勧めします。