-2

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

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

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

标志.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 的两个目录

谢谢

4

1 回答 1

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...';
于 2012-06-09T08:35:09.763 回答