jQuery美元.post问题(未将变量发送到PHP)

jQuery $.post problems (Not sending variable to PHP)

本文关键字:PHP 变量 post 美元 问题 jQuery      更新时间:2023-09-26

我遇到了一个小问题,并努力解决它…我想知道你是否有什么想法…我读了很多关于同样问题的stackoverflow帖子,但仍然不能解决我的问题。我在CodeIgniter工作。

我试图将变量发送到PHP控制器使用jQuery ($.post)的视图。下面是我的js代码,嵌入到视图中:

$('#testbtn').on('click', function() {
        var orderValue = this.value;
        $.post('http://localhost/codeigniter/welcome/index', {val: 'myValue'}, function(data) {
            alert(data);
        });
    });
以下是控制器中的PHP代码:
$a = isset($_POST['val']) ? $_POST['val'] : 'Not set yet.';
echo $a ;

按钮在这里:<button id="testbtn" value="thevalue">button</button>

按钮被点击,我得到的警告消息与变量和整个页面的html代码,但PHP echo没有改变,仍然说:"Not set yet.".

基本上看起来很容易,但是我仍然找不到错误…

无需深入代码,这就可以工作了。

HTML:

<button id="testbtn" value="thevalue">button</button>
Javascript:

$('#testbtn').on('click', function() {
        var orderValue = {"orderValue": $(this).val()};
        $.ajax({
        url: 'http://localhost/codeigniter/welcome/index',
        method: 'POST',
        data: orderValue,
        success: function(data) { alert(data); }
    });
PHP:

public function index() {
    $a = isset($_POST['orderValue']) ? $_POST['orderValue'] : 'Not set yet.';
    return a;
}

正如其他评论所述,这可能不是最佳实践。