通过js / jQuery发布数据

时间:2012-06-09 08:21:29

标签: javascript jquery

我对Javascript和它的许多出色的库都很陌生,我发现即使是最简单的脚本也难以执行。

我确实想要学习这门语言,因为它对于创建客户端网站会很有用,但是在我尝试做一些相对简单的事情时,这就是在我的网站上标记个人消息。在一个大的列表中有很多消息,我正在做的是当用户点击“Flag PM”图像时,它将在后台运行flag.php,这将把MySQL中的标志字段从0更改为1。

这个脚本都依赖于一个字段,即id,所以我可以通过数据库运行它。无论如何,这是我的代码;

flag.php

 require('_inc/_core/core.php'); // inc core_funcs for sql & clean
$pm_id = clean($_POST['p_id']); // create new variable, clean the post
echo "The ID for the PM is " . $pm_id;
mysql_query("UPDATE `messages` SET `flag_status` = 1 WHERE `id` = {$pm_id}"); // update the db

JS / jQuery的

     // Flag a Personal Message
$("#flagPM").submit(function(event) {
    event.preventDefault(); 
    $.post("flag.php", { p_id: pm_id } );
    alert(event);
});

HTML处理表单

<form action="#" id="flagPM"><input type="hidden" id="pm_id" value="$id" />
        <input type="submit" class="submit" value="FLAG" /></form>

因此,有一个名为 pm_id 的隐藏输入字段,其中包含我想要发布的内容。

非常感谢一些帮助,Javascript是从一个独立的文件运行的,这个文件是来自flag.php的两个目录

谢谢

1 个答案:

答案 0 :(得分:2)

  

Javascript是从两个独立文件运行的   目录来自flag.php

在这种情况下,只需:

$.post("flag.php", { id: id } );

无法访问flag.php文件,您需要指定正确的路径,包括您提到的文件夹名称:

$.post("folder1/folder2/flag.php", { id: id } );

顺便说一句,您应该使用$.post函数的回调来了解flag.php返回的消息:

$.post("flag.php", { id: id }, function(data){
  alert(data);
} );

在您的flag.php中,请确保echo某些内容,以便您在ajax处理程序中获得该响应:

// your other code here, such as query, etc
echo 'whatever...';