-1

这是我用于其他 ajax 更新功能的过程,但对于这个特定实例,它不想工作。我不知道我的代码中是否遗漏了某些内容,或者查询字符串的一部分是否是 url 并且需要在 AJAX 插件之前进行编码(不知道这一点并且找不到任何信息关于它,只是头脑风暴)。

当我直接访问 php 脚本并回显查询,然后在控制台模式下运行它时,它工作正常。当我尝试使用 AJAX 访问它时,我得到了成功响应,但是数据库中的条目没有更新,所以我认为这意味着脚本没有正常运行。

这是我的代码:

AJAX

jQuery('#nl-details').on('click','#d-cl-change', function(){

    var mls = jQuery('#d-mls').val(),
        cl = jQuery('#d-cl-input').val(),
        url = 'scripts/forms/cl/clchange.php?mls='+mls+'url='+cl;

    jQuery('#test').html(url); //This is just for me to view the URL

    jQuery.ajax({
        url: url,
        dataType: 'json',
        success: function(data){

            jQuery('#d-cl-save').fadeIn('200').delay('800').fadeOut('800');
            jQuery('#d-cl-url').html('<a href="'+cl+'" target="_blank">Go to Listing</a>');

        },
        error: function(){

             jQuery('#d-cl-fail').fadeIn('200').delay('800').fadeOut('800');

        }
    });
});

PHP

//Generic include for MYSQL Credentials

define('INCLUDE_CHECK',true);
require('../../c.php');

$url = mysqli_real_escape_string($link,urldecode($_GET['url']));
$mls = mysqli_real_escape_string($link,$_GET['mls']);

$query = "UPDATE `nht_actprop`
        SET CLLINK = '".$url."'
        WHERE MSTMLSNO = '".$mls."'";

$result = mysqli_query($link,$query);

echo $query;

mysqli_close($link);
4

2 回答 2

2

在这行代码中,您缺少 &

url = 'scripts/forms/cl/clchange.php?mls='+mls+'url='+cl;

我认为它应该是这样的

url = 'scripts/forms/cl/clchange.php?mls='+mls+'&url='+cl;
于 2013-08-21T18:02:12.147 回答
1

我看到您已经选择了最佳答案,但我只想与您分享我将如何解决此任务。

我建议使用 AJAX 的类型选项通过 GET 发送数据,如下所示:

jQuery('#nl-details').on('click','#d-cl-change', function(){

    var url = 'scripts/forms/cl/clchange.php';

    jQuery('#test').html(url); //This is just for me to view the URL

    jQuery.ajax({
        url: url,
        type: 'GET',
        data: {
                  mls: jQuery('#d-mls').val(),
                  url: jQuery('#d-cl-input').val()
              },
        dataType: 'json',
        success: function(data){

            jQuery('#d-cl-save').fadeIn('200').delay('800').fadeOut('800');
            jQuery('#d-cl-url').html('<a href="'+cl+'" target="_blank">Go to Listing</a>');

        },
        error: function(){

             jQuery('#d-cl-fail').fadeIn('200').delay('800').fadeOut('800');

        }
    });
});

最好的部分是你根本不需要改变你的 PHP

祝你好运!让我知道你的想法

于 2013-08-21T18:14:29.320 回答