【问题标题】:communicate javascript with php script用 php 脚本通信 javascript
【发布时间】:2014-01-22 16:55:51
【问题描述】:

我正在尝试将数据从 Javascript 发送到 php 脚本。我是 PHP、javascript 和 JSON 等的新手。我正在尝试使用 jQuery Upvote 插件。我正在阅读来自 readme.md here 的文档。但是,我觉得它太模糊了,我无法理解。

我在 HTML 正文中添加了以下代码。该插件在前端运行良好。

<div id="topic" class="upvote">
    <a class="upvote"></a>
    <span class="count">0</span>
    <a class="downvote"></a>
    <a class="star"></a>
</div>
<div id="output"> </div>
<script language="javascript">
var callback = function(data) {
    $.ajax({
        url: '/vote',
        type: 'post',
        data: { id: data.id, up: data.upvoted, down: data.downvoted, star: data.starred }
    });
};
$('#topic').upvote({id: 123, callback: callback});
</script>

有人可以告诉我应该如何编写 php 对应项以获取有关插件状态更改的信息吗?我认为它可能与 json 有关,但我被困在这里..

编辑: 根据建议,我修改了一些代码并编写了 PHP 脚本。 在上面的代码中,我将 URL 更改为我的 PHP 脚本 url: 'voter.php'

这是 PHP 代码(简要):

<?php require_once('Connections/conn.php'); ?>
mysql_select_db($database_conn, $conn);
if ($_POST['up']!=0){
$query_categories = "UPDATE user SET score=1 WHERE u_id =5";
$categories = mysql_query($query_categories, $conn) or die(mysql_error());
}
else if ($_POST['down']!=0) {
    $query_categories = "UPDATE user SET score=-1 WHERE u_id =5";
$categories = mysql_query($query_categories, $conn) or die(mysql_error());

}

数据库连接工作正常,但上述代码仍未更新数据库值..

【问题讨论】:

  • PHP 接收 post 数据。使用发布数据,将相关记录插入/更新到数据库(可能是 MySQL)
  • 究竟如何接受这些数据?你能给我举个例子吗?我正在使用 MySQL 数据库,一旦将数据放入 php 变量中,我就可以将其插入。我对如何接受数据感到困惑

标签: javascript php json


【解决方案1】:

您的脚本将 AJAX Post 请求发送到 php 脚本。您可以使用 $_POST[] 数组访问这些帖子变量:

$id = $_POST['id'];
$up = $_POST['up'];
$down = $_POST['down'];
$star = $_POST['star'];

然后就可以填充mysql表等了

【讨论】:

  • 好的,我试试。我需要向回调函数添加任何内容吗?另外,如果我的 php 脚本名称是 voter.php,如果 php 脚本位于同一目录中,URL url:'voter.php' 是否足够?
  • 是的,没错,你不需要在回调中添加任何东西,只需更新你的php脚本。网址正确。
  • 非常感谢! :) 我会试试的
猜你喜欢
  • 2018-07-30
  • 2016-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-18
  • 1970-01-01
  • 2013-05-13
  • 2012-10-12
相关资源
最近更新 更多