私はウェブサイトのPHPをベースにしていますが、私はフォーム提出の質問があります。 は、例えば、私は私のindex.phpの中に次のような形式があります。そして、PHP - 同じファイルのデータベースに挿入
<form method='post' action='./insert_database.php'>
<input type="checkbox" name="value[]" value="name1">'name1'</br>
<input type="checkbox" name="value[]" value="name2">'name2'</br>
<input type="checkbox" name="value[]" value="name3">'name3'</br>
<input type="checkbox" name="value[]" value="name4">'name4'</br>
<input type="checkbox" name="value[]" value="name5">'name5'</br>
<input type="checkbox" name="value[]" value="name6">'name6'</br>
<input type='submit' name='submit' value='submit'>
</form>
を、私は、チェックボックスをマークすることができますし、私はフォームを送信するとき、それはPOSTを介して別のURL「./insert_database.php」に行きます適切なクエリを起動します。
問題は私がこれを望まないということです。私は現在のページを離れたくありません。 フォームをバックグラウンドで実行し、index.phpにとどまりますか?私はinsert_database.phpでindex.phpに "リダイレクト"することができることを知っていますが、それは良い考えです。
つまり、フォームを送信するときにindex.phpからユーザーを移動させたくないということです。あるいは、フォームの値をデータベースに挿入する別のフォームが存在しますか?
ありがとうございます。
これは私のPHPコードである...私はより良い私の場合を説明してみましょう:
echo "<form>";
if (is_dir($dir)){
if ($dh = opendir($dir)){
while (($file = readdir($dh)) !== false){
if ($file !== '.' && $file !== '..'){
echo '
<input type="checkbox" class="song" name="song[]" value="'.$file.'">'.$file.'</br>';
}
}
closedir($dh);
}
}
echo "<button id='submit'>Submit</button>";
echo "</form>";
この機能は、DIRを読んで、この内のすべての曲とチェックボックスでフォームを作成していますdir。次に、あなたが例えば5曲をチェックして、送信ボタンを押した場合、それは次のスクリプトを実行します。
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$('#submit').click(function() {
$.ajax({
url: "./functions/add_list.php",
type: "post",
data: $('.song:checked').serialize();
});
});
</script>
</head>
をWheereは、データベース内の値を挿入するためにPHPコードを持っている./functions/add_list。 問題は、これは私のために働いていないと私は理由を知らない...私はアヤックスで新しいと私はこれで助けが必要です...私はこのフォーラムで解決策を見つけようとしましたが見つかりませんでした。
何 '約するrequire_once( './ insert_database.phpを ');'と '<フォームメソッド=' ポスト'>' –
可能[ページをリロードしないでフォームを送信する]の複製(0120-328-002) – Shadow
この欲求は何度も尋ねられています。 – Shadow