2016-08-24 22 views
0

私は、jqueryからphpにボタンを使って値を取得しようとしました。私はこれのようにしています。事はPOST[mail]が設定されていないと、なぜ..あなたでした私は手掛かりを持っていないということですJQueryがPHPで値を受け取る

HTML

<button class="button" name="reject" value="<?php echo $row['mail']; ?>" type="submit">reject</button> 

のjQuery

$(document).ready(function(){ 
    $('.button').click(function(){  

     var url  = window.location.href; 
     var whichBtn = $(this).attr("name"); 
     var mail = $(this).attr("value"); 

     var ajaxurl = url, 
     data = {'mail': mail, 'whichBtn' : whichBtn}; 

     $.post(ajaxurl, data, function (response) { 
      // Response div goes here. 
      alert(whichBtn); 
      alert("action performed successfully"); 
     }); 
    }); 
}); 

PHP

if(isset($_POST['mail'])) 
    echo $_POST['mail']; 

まあ、助けて?

+1

エラーがありますか?サーバー上で何が送信されていますか?ネットワークタブをチェックしましたか? – Rayon

+0

基本的なデバッグ: 'var_dump($ _ SERVER ['REQUEST_METHOD']、$ _POST)'と到着するものを見てください。それが投稿でないか、_POSTが空の場合は、少なくともどこから探し始めるか考えてください。 –

答えて

1

クリックハンドラにevent.preventDefault()を追加する必要があります。送信ボタンなので、Javascriptが実行される前にページからナビゲートしています。試してみてください:

$(document).ready(function(){ 
    $('.button').click(function(event){  
     event.preventDefault(); 
     var url  = window.location.href; 
     var whichBtn = $(this).attr("name"); 
     var mail = $(this).attr("value"); 

     var ajaxurl = url, 
     data = {'mail': mail, 'whichBtn' : whichBtn}; 

     $.post(ajaxurl, data, function (response) { 
      // Response div goes here. 
      alert(whichBtn); 
      alert("action performed successfully"); 
     }); 
    }); 
}); 
関連する問題