jQueryの.ajax()関数を使用して、2つの入力フィールドの値をphpファイル(search_value.php)に送信してdivコンテンツ(#update_div) 。PHP経由でjQuery ajax関数でdivコンテンツを更新する
htmlフォームのPOSTメソッドを使用して入力フィールドの2つの値をリダイレクトするだけで動作します。 search_value.phpは正しいはずです。
私のHTMLコード:
<form id="my_form">
<input id="food" name="food">
<input id="amount" value="amount in gram" name="amount">
<input type="button" value="Update" id="submit" name="submit" />
</form>
<div id="update_div">
</div>
私のJavascriptのコード:
$("#submit").click(function() {
var food = $("#food").val();
var amount = $("#amount").val();
$.ajax({
url: 'search_value.php',
type: 'GET',
data: {"food":food,"amount":amount},
success: function(data)
{
$('#update_div').html(data);
}
});
});
私のPHPコード:
<?php
$pdo = new PDO('mysql:host=localhost;dbname=calotools', 'root', '');
$food = $GET_['food'];
$amount = $GET_['amount'];
$query="SELECT * FROM nahrungsmittel WHERE name = '$food'";
$user = $pdo->query($query)->fetch();
echo $user['name']."<br />";
echo $user['kcal']/100 * $amount;
?>
私は本当にボタンをクリックしてフィードバックを得ることはありません。なぜあなたは私にその理由を教えることができますか? GETリクエストのために
ブラウザのコンソールでjavascriptをクリックして、送信ボタンをクリックすると動作しますか? –
ブラウザコンソールネットワークを使用してリクエストが行われているかどうかを確認します。エラー処理を追加します。コード実行時に '$( '#update_div')'が存在することを確認してください – charlietfl
'$ _GET'の代わりに' $ GET_'を入れました –