私はデータベースから引き出された電話番号のフィールドをajax経由で取得しようとしていますが、情報の横に削除ボタンを追加しています。動作しているはずですが、そうではありません。私はまた、ブートストラップを使用しています。Ajax jQuery MySqlフィールドを削除
HTMLのCODE:
<input type="hidden" value="<?php echo _e($_SESSION['id']); ?>" id="userid">
<div class="row">
<div class="col-md-4">
<p>',_e($r->label),'</p>
</div>
<div class="col-md-6">
<p>',_e($r->phone),'</p>
</div>
<div class="col-md-2">
<a class="delPhone" rel="',_e($r->id),'" href="#">
Delete Number
</a>
</div>
</div>
Ajaxコード
$('.delPhone').on('click', function() {
$id = $('#userid').val();
$.ajax({
type: 'POST',
url: "functions.php",
data: {"userid":$id, "phoneid": $(this).attr('rel')},
success: function(data) {
console.log(data);
}
});
});
PHPコード
if(isset($_POST['phoneid']) === true && isset($_POST['userid']) === true) {
if(empty($_POST['phoneid']) === false && empty($_POST['userid']) === false) {
$phoneid = $_POST['phoneid'];
$userid = $_POST['userid'];
require_once 'connect.php';
$sql = "DELETE FROM numbers WHERE userid=:userid AND id=:phoneid";
$query = $handler->prepare($sql);
$query->execute(array(
':userid' => $userid,
':phoneid' => $phoneid
));
}
}
コメントアウト 'location.reload()'とあなたが戻ってPHPから何を得るのメッセージ参照してください?また、PHPファイルがHTTPヘッダエラーを返さない限り、 'error:'関数は決してトリガされません。また、PHPファイルで 'var_dump($ _ POST)'を実行し、reutrnで取得したデータをチェックすることもできます。 'location.reload();の代わりに' console.log(data); 'を入れてください – junkfoodjunkie
エラーが発生しますか?あなたは_inspector_で何を見ますか? – EhsanT
ここで「うまくいかない」とはどういう意味ですか? – halfer