我对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的两个目录
谢谢
答案 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...';