我试图做一个自动完成的窗体和必须根据在前面的字段中输入的数据完成的字段,从数据库中的数据和所有的东西在Wordpress ...Wordpress中的恢复变量Ajax
对于自动完成,没有问题,它与WordPress的工作,我只是增加了一个有点像代码:
$("#nomPersonne").autocomplete
({
source: 'wp-content/themes/hero-child/listePersone.php'
});
和页面listePersonne这样的:
<?php
include_once 'connexion.php';
$term = $_GET['term'];
$requete = $link->prepare("SELECT `wp_terms`.`name` FROM `wp_term_taxonomy`
JOIN `wp_terms` ON `wp_terms`.`term_id`=`wp_term_taxonomy`.`term_id`
WHERE `wp_term_taxonomy`.`taxonomy`='nomPersonne' AND `wp_terms`.`name` LIKE :term");
$requete->execute(array('term' => '%' . $term . '%'));
$array = array(); // on créé le tableau
while ($donnee = $requete->fetch()) { // boucle pour obtenir les données
array_push($array, $donnee['name']); // et on ajoute celles-ci à notre tableau
}
echo json_encode($array); // il n'y a plus qu'à convertir en JSON
?>
所以个人名单如果选择一个人(如果找到合适人选),则以下列出的组织将仅列出上述列表中所选人员的组织。
我率先与阿贾克斯发现,它使用WordPress的声明是必要的面前:
add_action('wp_ajax_do_ajax', 'notre_fonction_ajax');
我还是不设法通过我的变量(值PERSONNAME)为了让我reqête到下一个领域。
所以我有一个JS文件:
jQuery(document).ready(function(){
jQuery('#nomPersonne').mouseleave(function(){
doAjaxRequest();
});
});
function doAjaxRequest(){
jQuery.ajax({
url: 'wp-admin/admin-ajax.php',
data:{
'action':'do_ajax',
'fn':'get_id_value'
},
dataType: 'JSON',
success:function(data){
jQuery("#nomOrgani").html(data);
},
error: function(errorThrown){
alert('error');
console.log(errorThrown);
}
});
}
我在function.php功能:
功能notre_fonction_ajax(){
// CE开关lancera莱fonctions聚赛龙拉valeur曲”光环不可变'fn'
switch($_REQUEST['fn']){
case 'get_id_value':
$output = ajax_get_id_value($_REQUEST['count']);
break;
default:
$output = 'No function specified, check your jQuery.ajax() call';
break;
}
// Maintenant nous allons transformer n otrerésultat恩JSON和l'afficher
$output=json_encode($output);
if(is_array($output)){
print_r($output);
}
else{
echo $output;
}
die;
}
function ajax_get_id_value(){
function ajax_get_id_value(){
include_once 'connexion.php';
$term = $_GET['term'];
$requete = $link->prepare("SELECT `wp_postmeta`.`meta_value` FROM `wp_postmeta`
JOIN `wp_term_relationships` ON `wp_postmeta`.`post_id` = 'wp_term_relationships`.`object_id`
JOIN `wp_term_taxonomy` ON `wp_term_relationships`.`term_taxonomy_id` = `wp_term_taxonomy`.`term_taxonomy_id`
JOIN `wp_terms` ON `wp_terms`.`term_id` = `wp_term_taxonomy`.`term_id`
WHERE `wp_terms`.`name` = 'Malaysia Airlines' AND `wp_postmeta`.`meta_key`='organization' AND `wp_postmeta`.`meta_value` LIKE :term ");
$requete->execute(array('term' => '%' . $term . '%'));
$array = array(); // on créé le tableau
while ($donnee = $requete->fetch()) { // on effectue une boucle pour obtenir les données
array_push($array, $donnee['meta_value']); // et on ajoute celles-ci à notre tableau
}
echo json_encode($array); // il n'y a plus qu'à convertir en JSON
}
}
在这个文件中,我设置了“马来西亚航空”,但它实际上是我应该收回变量。
当我看着萤火虫,我看到了答案:“马航”]在控制台上,但我不能让这个值在我的下一个查询中使用
不管怎样,我刚刚完成我的课程我在培训和我有一点麻烦,使他们一起工作的所有语言,CMS等...
现在我的大脑就像果冻......如果有人有一些灯,我会永远感激!
Kaelig。
Sola,perduta,abbandonata ... – user3723830 2014-10-20 21:16:19
如果您有建议,我会在本周末回复它... – user3723830 2014-10-24 13:51:06
我认为我在逻辑的某个地方犯了一个错误,我想我会重新开始一切从零开始。 我有两个列表(Personne&organization),如果数据存在于BDD中,则由自动填充填充,此部分正在工作。 然后,我想找回选择的两个字段,以请求显示BDD中的相应数据(如果存在)。 我想通过填补第二个领域,根据第一个领域抓住的东西来改善。 如何让你进入最简单和最有效的? 祝您有美好的一天! – user3723830 2014-10-28 09:44:41