gpt4 book ai didi

jquery - 如何在 joomla 组件的 View (k2) 中使用 ajax 来访问和更新数据库中的用户配置文件数据?

转载 作者:行者123 更新时间:2023-12-01 05:56:55 25 4
gpt4 key购买 nike

我使用 joomla 2.5 及其默认的“用户配置文件”插件,该插件向 joomla 的配置文件页面添加额外的字段。

我也在使用 k2 并为我正在使用的 View 设置了模板覆盖设置:

site/templates/template/html/com_k2/category_item.php

在该 View 中,我可以使用以下命令成功“提取”所需的数据:

jimport('joomla.user.helper');
$user = & JFactory::getUser();
$profile = JUserHelper::getProfile($user->id);
echo $profile->profile['fieldname'];

我的问题确实是...如何使用 jQuery/Javascript 更新此字段而不刷新页面?不幸的是没有像这样的 joomla 函数:

JUserHelper::updateProfileField(value,user->id)

这就是我希望与 jQuery 的 .ajax() 一起使用的...无论如何,我想我可能必须编写一个函数来执行此操作...在这种情况下,我可能不想修改核心joomla 的东西(JUserHelper)...但也许是我自己的?或者我应该向 k2 添加一个可以更新 joomla 用户个人资料数据的函数?

顺便说一句...我这样做的全部目的是因为我想向用户个人资料页面添加自定义“点”字段...并且我只需要一种可靠的方式来读取和更新它(使用ajax我想)来自 k2category_item.php View !

谢谢!!!!

最佳答案

您应该编写一个组件来处理 ajax 调用,或者至少添加一个包含您需要的任务的 Controller ,即,如果您试图返回一些 json:

{user:'paul', custom_field_1:'yes and no'}

然后在您的 Controller 中,即 com_your_component/controller.php 您将有一个诸如“getInfo”之类的任务:

function getInfo() {
// return the json
echo json_encode($myResultArray);
exit; // this will make sure you don't get the template etc.
}

您可以将 ajax 调用发送至:

http://example.com/index.php?option=com_your_component&task=getInfo&format=json

关于jquery - 如何在 joomla 组件的 View (k2) 中使用 ajax 来访问和更新数据库中的用户配置文件数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14839511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com