Ajax、PHP和mysql注释系统
Ajax, PHP and mysql commenting system
我正在尝试使用ajax php和mysql为一个网站创建一个评论系统。为此,我想将点击上传评论的按钮的id(将被设置为文章名称)发送到sql数据库(以及评论和其他一些东西…)
我现在的系统很奇怪。。如果我把它复制到jsFiddle中,并链接到服务器上正确的php文件,它就会正常工作,按钮的id就会上传到数据库中。。然而,如果我把完全相同的东西上传到我的网站上,它就不起作用了。。。这是我的:
Html形式:
<form id="addCommentForm">
<input type="email" name="email" onchange="checkEmail();" id="email" /> </br>
<div>
<p id="emailerror"> </p>
</div> </br>
<input type="text" name="username" id="username" /> </br>
<input type="text" name="content" id="content" /> </br>
<input type="Button" value="submit" id="Test" onclick="commentSend(this.id);return false;"/>
</form>
javascript(外部):
function commentSend(clicked_id)
{
var email = document.getElementById("email").value //gets the user's email
var username = document.getElementById("username").value //gets the user's username
var content = document.getElementById("content").value //gets the comment content
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
};
xmlhttp.open("GET","commentUpload.php?email=" + email + "&username=" + username + "&content=" + content + "&articleName="+ clicked_id,true);
xmlhttp.send();
return false;
}
和php:
<?php
$con = mysql_connect("myserver","myusername","mypassword");
mysql_select_db("mydatabase", $con);
$articleName = mysql_real_escape_string($_GET['articleName']);
$email = mysql_real_escape_string($_GET['email']);
$username = mysql_real_escape_string($_GET['username']);
$content = mysql_real_escape_string($_GET['content']);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
$query = "INSERT INTO Comments (id, article, email, name, body) VALUES (NULL, '" . $articleName ."', '" . $email ."', '" . $username . "', '". $content . "')";
mysql_query($query);
mysql_close($con);
?>
我唯一能想到的是,将变量this.id传递到外部javascript文件时出现了一些错误,因为这是唯一没有上传到数据库的值。。。
有人有什么想法吗!?
您没有为查询字符串中使用的变量进行编码。
要解决这个问题,可以使用encodeURIComponent
(用于所有值…),如:
var content = encodeURIComponent(document.getElementById("content").value);
相关文章:
- Javascript中的备选注释方法
- 数据绑定:'系统Char'不包含名为'xxxxx'
- html5视频中的Youtube类型注释
- 如何允许在TinyMCE中使用valid_elements进行注释标记
- Javascript模块系统I'I’我正在努力,但搞不明白
- 是否可以在系统/电脑浏览器中访问手机摄像头
- Node JS中的排名系统算法
- 任何将(SSH)终端嵌入到一些HTML5表示系统中的想法(例如,show.js)
- 如何在foreach循环中对每个产品单独应用评级系统
- Javascript-修复搜索系统
- 是否有任何设置阻止JavaScript在系统上工作
- 如何组织用户系统的Mongo集合
- 在PHP的注释-回复系统中删除某个注释
- ajax/php注释系统不工作
- Ajax、PHP和mysql注释系统
- PHP 向评级系统添加注释框
- 嵌套的JavaScript使注释系统变慢
- 注释系统出现JSON解析错误
- PHP+AJAX+jQuery注释/回复系统在提取第一个回复后停止工作
- 使用角度JS的注释系统