2016-12-18 44 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和ajax以及wordpress的教​​程。 – 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