以下のinkedmnで指摘したように、私はもともとコードの壁に相当するものを投稿しました。誰も私を助けることができませんでした。だから、新しい質問/スレッドを作成するのではなく、私はこれをやり直すことにしました - タイトルは依然として質問に適用されます。jQueryフォームプラグインを実装するのに手助けが必要
私はjQuery Formプラグインを実装しようとしています。最終的な目標は です。1)提出前にフォームを確認します。 2)選択したファイルをアップロードします。 3)送信されたフォームデータを処理スクリプトに送信し、ファイルとフォームデータをデータベースに書き込みます。
私の最初の 3種類のajaxプラグインを使用したこの試行はすべて失敗しました。だから私は、2つのフォームフィールドをスクリプトに送信する単純なajaxフォームから始めて、成功した実行を返し、それを示すメッセージを表示することになっています。その後、データを処理してからファイルをアップロードしたいと思っています。
次のコードは、jQueryフォームプラグインのサンプルコードから取得したものです。
はここで、フォームのHTMLです:
<form id="myForm" action="testProcessAjaxUploadForm.php" method="post">
Name: <input type="text" name="name" />
Comment: <textarea name="comment"></textarea>
<input type="submit" value="Submit Comment" />
</form>
はここでjQueryのコードです:
// bind 'myForm' and provide a simple callback function
$('#myForm').ajaxForm(function() {
alert("Thank you for your comment!");
});
そして、ここでは、は、検索フォームデータを処理するので、JavaScriptを何かを返すようにを想定しているPHPのコードです警告表示:
<?php
require_once ('../scripts/logging.php');
$log = new Logging();
if (isset($_POST['comment']) && isset($_POST['name'])) {
$log->lwrite('name: ' . $_POST['name'] . ', comment: ' . $_POST['comment']);
} else {
$log->lwrite('Nothing passed to the script.');
}
//return true;
return $_POST['name'];
//echo $_POST['name'];
最初のロギング行はログファイルに書き込むので、スクリプトが実行されていることがわかります。いずれかのリターン行が使用されると、ブラウザはアドレスバーにスクリプトファイル名の空白ページをロードします。エコーが使用されている場合、その名前がページに表示され、アドレスバーにスクリプトのファイル名が表示されます。いずれにしてもjavascript Thank Youメッセージは決して表示されません。
私には何が欠けていますか?
UPDATEは、PHPコードは、私はそれを書いた方法で正しく動作します。つまり、投稿されたフォームフィールドを使用して使用することができます。 jQueryフォーム・プラグインのサンプル・ページには、「サーバーが成功状況を返した場合、ユーザーに「ありがとうございました」というメッセージが表示されます。だから私の質問は、 "ありがとうございましたメッセージが表示されるようにjQueryコードが正常な応答を検出する原因となるPHPスクリプトが返されると思いますか?
Link to testing page PHPスクリプトの内容は同じで見ることができますファイルcomment.txtでWebページとしてフォルダ
あなたは特定の/問題や質問を提供しても、あなたはおそらく人々が答えを得るのを助けることができます。あなたは、あなたの問題の細部の方法ではなく、並べ替えのために非常に多くのコードを投稿しました。 – inkedmn
ポイントは十分に取られています。私は**知っている**それは多くのコードを見ることです。私はそれを投稿したときに思ったほど多かったですが、どこから始めるべきか、セットアップが何を起こさないのかを突き止める方法はありませんでした。私の投稿の最初の段落には埋め込まれていますが、コードが現在行っていることを繰り返し述べます:ファイルはアップロードされ、必要に応じて情報がデータベースに書き込まれますが、ページは更新されます。私が**既存のコードで**を期待しているのは、表示するアラートで**ページは更新されません**。もし誰かが私が簡単にトラブルシューティングをしなければならないものを取り除く方法を提案できるなら、それはすばらしいでしょう。 – marky
空白のページが表示されたら、PHPスクリプトに問題があると思います。私はあなたのPHPをトリミングして、非常に基本的で簡単にエラーをスキャンし、それが動作するかどうかを確認し、そこからPHPスクリプトを構築することをお勧めします。 – jsonnull