【问题标题】:Pass data to database using javascript Onclick使用 javascript Onclick 将数据传递到数据库
【发布时间】:2010-10-17 06:36:58
【问题描述】:

当谈到 javascript/ajax 时,我是一个真正的菜鸟,所以任何帮助都将不胜感激。 关于这个问题:

Updating a MySql database using PHP via an onClick javascript function

但主要关注Phill Sacre留下的答案。我想知道是否有人可以详细说明我们是如何(如果可以的话?)通过他的示例使用 jquery 传递值/数据。 他留下的代码示例如下:

    function updateScore(answer, correct) {

      if (answer == correct) {
$.post('updatescore.php');

  }
}

...

<a onclick="updateScore(this, correct)" ...> </a>

例如,我们想用 php 向数据库传递任意数量的值,有人能给我一个 sn-p 示例,说明 javascript 函数需要什么吗?或者请详细说明上面发布的内容?

再次感谢大家。

【问题讨论】:

    标签: javascript jquery ajax


    【解决方案1】:

    我能想到的最简单的例子就是这个。在 if 块中进行 AJAX 调用,如下所示:

    $.get('updatescore.php', {'score': '222'}, function(d) {
        alert('Hello from PHP: ' + d);
    });
    

    在您的“updatescore.php”脚本中,只需执行以下操作:更新分数。并返回一个纯文本,说明更新操作是否成功。

    祝你好运。

    P.S.:您也可以使用 POST 代替 GET

    【讨论】:

    • 感谢您的回答。看来这就是我所追求的。干杯!
    • 是的,我真的很享受使用 Jquery 的好处。再次感谢:)
    【解决方案2】:

    你要做的是在 php 服务器端有一个页面,可以说它的 update.php。您的 javascript 将在 Ajax 请求中访问此页面,获取该请求并将其放入数据库中。

    php 可能看起来像这样:

    <?php
    mysql_connect(...)
    mysql_query("INSERT INTO table 
    (score) VALUES('$_GET["score"]') ") 
    

    您的 javascript 将简单地在 update.php 上执行一个 ajax 请求并将变量作为获取值“分数”发送给它。

    【讨论】:

    • 感谢您的回答!我实际上很擅长 PHP,它只是我尚未掌握的 javascript。但是还是感谢您的回答,这可能对看到此内容的其他人有所帮助。:)
    【解决方案3】:

    Phil 没有向脚本传递任何值。他只是向脚本发送一个请求,该脚本很可能包含“更新”分数的逻辑。一个精明的人参加他的测试可以简单地查看 HTML 源代码并通过检查锚点在做什么来查看答案。

    为了进一步挑剔他的解决方案,应该使用一组单选按钮,并且在表单中,应该使用一个按钮或某种可点击元素通过 ajax 请求将值发送到服务器,并且值可以分析发送到服务器的应答状态,并将应答状态发送回页面。

    由于您使用的是 jQuery,因此可以使代码不显眼,如下例所示:

    $('#submit_answer').click(function() {
        var answer = 'blah' // With blah being the value of the radio button
        $.get('updatescore.php',
        {'value': answer},
        function(d) {
            alert('Your answer is: ' + d') // Where d is the string 'incorrect' or 'correct'
        }
    });
    

    享受吧。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-18
    • 1970-01-01
    • 1970-01-01
    • 2019-08-19
    • 1970-01-01
    • 2016-03-27
    相关资源
    最近更新 更多