【问题标题】:Passing variable from JavaScript to PHP using Ajax使用 Ajax 将变量从 JavaScript 传递到 PHP
【发布时间】:2014-02-02 19:47:14
【问题描述】:

我让用户可以发表评论,当他遇到我希望将该评论保存在我的数据库中时。我将负责保存到数据库的部分,但我需要帮助将文本输入从 JavaScript 传递到 PHP。我想简单地回显“imeBoxa”和“komentar”变量。我的问题在 ajax 函数内部。

index.php 中的 HTML:

<button class="pointer comment">Komentiraj</button>

<script type="text/x-jquery-tmpl" id="fieldTemplate2"/>
<p><div class="imeBoxa"><b>{{imeBoxa}}</b>:</div> {{komentar}}</p>
<hr/>
</script>

JavaScript:

$("#leftColumn").on("click", ".comment",function()
    {
        var imeBoxa = prompt("Komentar za vijest:","");
        var komentar = prompt("Komentar","");

        if(komentar != null && imeBoxa != null)
        {
            var fieldTemplate2 = $("#fieldTemplate2").text();

            fieldTemplate2 = fieldTemplate2.replace("{{imeBoxa}}", imeBoxa);
            fieldTemplate2 = fieldTemplate2.replace("{{komentar}}", komentar);

            $.ajax
            ({
                type: 'post',
                url: 'index.php',
                data:
                {
                    imeBoxa,
                    komentar
                },
                success: function( data ) 
                {
                    console.log( data );
                }
            })

            var jField = $(fieldTemplate2);

            $(".komentari").append(jField);
        }
    });

【问题讨论】:

    标签: javascript php ajax


    【解决方案1】:

    您的代码中有语法错误。 AJAX 调用应如下所示:

    $.ajax({
        type: 'post',
        url: 'index.php',
        data: {
            imeBoxa: imeBoxa,
            komentar: komentar
        },
        success: function (data) {
            console.log(data);
        }
    });
    

    注意你如何构造data 对象以传递给服务器。在本例中,它将传递两个 POST 参数:imeBoxa 和 komentar。

    【讨论】:

    • 当我想知道和想知道是否可以发送上述问题中的参数时,您会更快:-) 完美答案。我的一票。
    • 我建议在success:function 中运行fieldTemplate2 和.append,这样可以确保只有在db 中成功存储时才会出现注释。
    • 在这样做之后,我尝试用这个 if(isset($_POST['imeBoxa'])) { $uid = $_POST['imeBoxa']; } 回声 $uid;如果我使用按钮并添加评论,那么它会自动回显我写的@dfsq
    • 在您的情况下,服务器应该以$uid 响应。
    • 添加评论前后显示未定义变量 $uid,我的评论显示在页面上,javascript 发挥作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-02
    • 1970-01-01
    • 1970-01-01
    • 2012-10-07
    相关资源
    最近更新 更多