Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将愿望列表按钮添加到VirtualMart产品列表_Php_Jquery_Joomla3.0_Virtuemart - Fatal编程技术网

Php 将愿望列表按钮添加到VirtualMart产品列表

Php 将愿望列表按钮添加到VirtualMart产品列表,php,jquery,joomla3.0,virtuemart,Php,Jquery,Joomla3.0,Virtuemart,我正在使用 1.Joomla 3.4.4 2.VirtualMart 3.0.9 我想在VirtualMart中使用从产品子布局发送数据,并使用ajax将数据发送到控制器 var url = "?"; jQuery(document).ready(function() { jQuery( ".wishlist-btn" ).click(function() { var productid = this.id; var userid = jQuery('input#user_

我正在使用 1.Joomla 3.4.4 2.VirtualMart 3.0.9

我想在VirtualMart中使用从产品子布局发送数据,并使用ajax将数据发送到控制器

var url = "?";
jQuery(document).ready(function() {
   jQuery( ".wishlist-btn" ).click(function() {
    var productid = this.id;
    var userid = jQuery('input#user_id').val();
     var fav = {
            Productid: productid,
            Userid:userid
        }


    jQuery.ajax({
            url: url,
            type: "POST",
            data: { json: JSON.stringify(fav) },
            dataType: 'json',
contentType: 'application/json; charset=utf-8',
            success: function(data) {
                alert(data);
            }
        });


});
但是我不知道应该在哪里编写PHP代码,我的AJAX请求中的URL是什么。 我想将配置文件id和用户id发送到wishlist的附加数据库。 我在中创建了一个PHP文件

com_virtualamar/controller/ajax.php

对于AJAX请求中的URL,我使用了

/components/com_virtuemart/controllers/ajax.php


但我认为它在控制器中的地址和用法是完全不正确的,而且我也不知道为什么userid不返回

您的Ajax请求中有错误。对于发送到PHP文件,删除
数据:{json:json.stringify(fav)}
并替换为:

jQuery.ajax({
    url: url,
    type: "POST",
    data: JSON.stringify(fav),
    dataType: 'json',
    contentType: 'application/json; charset=utf-8',
    success: function(data) {
        alert(data);
    }
});
并在php文件上替换:

$person = json_encode($json);

如果您想在Joomla会话上直接访问get ID或Password用户,可以检查

JFactory::getUser();

请查看更多信息:

谢谢,那么url呢?我必须编写哪个控制器?您可以使用
url=“/ajax.php”
并将其放在您的根站点文件夹中,或者使用complett方式
url=”http://yourdomain/components/com_virtuemart/controllers/ajax.php“
如果您想使用
JFactory::getUser()您可以
定义(1)$json=$_POST['json']$person=json_decode($json);打印(人);var url=“/components/com_virtuemart/controllers/ajax.php”;好的,你的页面有错误吗?javascript还是其他?谢谢
$person = json_decode($json);
JFactory::getUser();