2016-12-18 12 views
1

Wordpressクエリ配列にユーザー入力を取得しようとしています。私は私のjqueryコードで入力を得ることができますが、PHP配列の'meta_value' => '123456',に追加したいと思います。 'meta_value' => '123456','123456'からvar xにjqueryスクリプトから変更するにはどうすればよいですか?配列への入力をハードコードする代わりにユーザー入力を取得する

誰かが'meta_value' => '123456',を入力フィールドから取得する別の方法を提案できますか?

<script type="text/javascript"> 
    jQuery(document).ready(function(){ 
     jQuery("#bt").click(function(){ 
      var x = jQuery("#txt_name").val(); 
      alert(x); 
     }); 
    }); 

</script> 

<input type="text" id="txt_name" /> 
<input type="button" id="bt" value="click here" /> 




<?php 

$args = array(
     'meta_key' => 'cardnum', 
     'meta_value' => '123456', 
     'meta_compare' => '=' 
    ); 

$user_query = new WP_User_Query($args); 

// User Loop 
if (! empty($user_query->results)) { 
    foreach ($user_query->results as $user) { 
     echo '<p>' . $user->cardnum ." ". $user->nickname . '</p>'; 
    } 
} else { 
    echo 'Not available number.'; 
} 
?> 
+2

このデータは、ajaxまたはフォームを使用してサーバーに送信する必要があります。 Phpはブラウザでは動作しません。あなたは助けてくれてありがとうございました。AJAXとWordpressのAJAXを使用することに関するウェブ上のチュートリアルがたくさんあります。 – charlietfl

+0

ありがとうございました。 – Tarek

答えて

1

フォームまたはAjaxを使用する必要はありません。代わりにURLクエリ文字列を使用できます。

jquery関数が起動すると、ページURLをリロードしますが、今回は変数を含むクエリ文字列を含めます。

次に、PHP経由で変数を抽出することができます。

(これは、クライアント側の発信元の変数のサーバー側の処理を可能にするための最速かつ最も簡単な方法です。)

HTML:

<input type="text" id="txt_name" /> 
<input type="button" id="bt" value="click here" /> 

のjQuery:

$(document).ready(function(){ 
    $("#bt").click(function(){ 
     var x = $("#txt_name").val(); 
     window.location.href += '?x=' + x; 
    }); 
}); 

PHP:

<?php 
parse_str($_SERVER["QUERY_STRING"]); 
echo '<p>The value of <strong>x</strong> is... '.$x.'</p>'; 
?> 
+0

これはGETを説明しています...したがって、回答は矛盾しており、あまり完全ではありません。 – charlietfl

+0

はい、あなたは両方の点で正しいです。回答が更新されました。 – Rounin

関連する問題