【问题标题】:onClick add to databaseonClick 添加到数据库
【发布时间】:2013-07-21 03:59:31
【问题描述】:

我有以下代码,但我不确定它是否有效。基本上,我想做一个点赞系统,当我点击链接时,它会为用户的点赞添加 +1。

我非常努力地阅读,但我没有得到任何东西,我发现了一个类似下面的代码。

当我点击链接时,它确实处理了我的 insert.php 页面,但我不知道如何获取变量值...

我该怎么办?我不确定下面的代码结构是否正确...

谢谢!

<script>
function insertSalary()
{
    var salary = $("#salary").val();
    $.post('insert.php', {salary: salary}, function(data) 
    {
        $("#current-salary").html(data); 
    });
}
</script>

<div id="current-salary">
<a id="salary" onClick="insertSalary();">+1</a>
</div>

【问题讨论】:

  • 你是在使用ajax还是在执行表单操作?
  • 我想它是 AJAX。不会有表单,只有一个名为“Like”的链接,点击后,它会处理 +1 like。我只是不知道在哪里可以设置我的变量数据。比如,我在哪里将用户名设置为 +1?
  • 要获取post 的变量值,并取自您的var salary... 代码,请使用$salary = $_POST['salary'];,该$salary = $_POST['salary']; 稍后可用于数据库插入或写入具有递增值的文件使用w 开关。
  • 我想知道除了 $.post('script.php', {salary: 100}, function(data){...}); 之外,我如何为它们赋值,因为我的 js 文件将是外部的......
  • @user2509237 您可以在insert.php 中添加写入文件功能。你有那个文件的代码吗?

标签: php jquery ajax onclick


【解决方案1】:

该变量将在您的 php 脚本中为 $_POST['salary']

salary 的值在 jquery 中作为 post 方法的一部分传递。

所以你可以这样做:

$.post('script.php', {salary: 100}, function(data){...});

这会将值 100 作为薪水值传递给您的 php 脚本。

在 php 中,$_POST 和 $_GET 哈希包含您通过给定请求传递的数据。在 jquery $.post 中,$.get $.ajax 创建请求并获取数据哈希来构建您想要随请求传递的数据。

【讨论】:

  • 您好,感谢您的快速回复!但是如何分配值?
  • 我可以分配链接中的值吗?我见过像 data-id="33" 等。
  • @user2509237 您是否要求$salary = $_POST['salary']; 的影响。这会将变量 salary 分配为来自 POST 值的 $salary
  • 是的。然后您将通过$('#element_id').data('id') 访问该数据
  • @DanielNill 抱歉,我不明白如何在我的代码中实现它 D:Fred Yep!
【解决方案2】:

虽然这可能有效,但我建议您通过将 javascript 放在外部文件中,然后将您的 HTML 页面链接到它来将您的逻辑与您的网站分开。

我还建议不要通过指定
onClick="insertSalary()" 完成声明式事件绑定。
jQuery 提供了一种使用 on 方法以编程方式将函数分配给事件的方法。
因此,对于您的代码,您可以使用:

$('#current-salary').on( '点击', insertSalary());

【讨论】:

  • 我该如何实施呢?这是否意味着我的链接不再需要我添加 onClick="bla()" ?
猜你喜欢
  • 2021-08-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-10
  • 2019-10-19
  • 2018-01-22
  • 2017-01-15
  • 1970-01-01
相关资源
最近更新 更多