我正在尝试添加评论部分。我有一个ajax调用,它将一条消息插入到我的数据库中。我在页面上显示了来自表的所有消息的php。当我单击评论部分时,没有任何反应。
我最初尝试在javascript中对一些变量进行硬编码,只是为了查看我的ajax是否至少尝试将其插入数据库中,但是确实找到了答案 send form to php file using ajax 我尝试了这个,但对我不起作用。
我确保点击ID被篡改,并且hp文件已更改为正确的URL,但是当我单击“提交”时,没有任何反应。
在找到答案之前,我最初是有这个想法的,但我认为应该是可行的。此处:send form to php file using ajax
var message='hey how are you';
var task=37;
var Domain='fun';
var Task_Number=37;
function messfunction() {
$.ajax({
url:'mess.php',
type:'POST',
data:{task:task,Domain:Domain,message:message},
success:function(data){
window.location.reload(true)
}
});
}
这就是我现在所拥有的。
$(document).ready(function(){
$('#Butt').click(function(e){
e.preventDefault();
form = $("#myform").serialize();
$.ajax({
type: "POST",
url: "mess.php",
data: form,
success: function(data){
window.location.reload(true)
}});
return false;
});
});
我的表单我正在使用php输出表单,这就是为什么您将php变量视为值的原因。
<form id= "myform" name ="myform" method= "POST" action="">
<input type= "hidden" name="User" value="'.$email.'">
<input type ="hidden" name ="date" value="'.date("Y-m-d H:i:s").'">
<input type="hidden" name="task" value="'.$Tasknumber_modal.'">
<input type="hidden" name="Domain" value="'.$domain_modal.'">
<textarea name="message"></textarea>
<button id="Butt" >Comment</button>
</form>';
这是我的mess.php页面。
require('server.php');
session_start();
$User=$_SESSION['email'];
$message=$_POST['message'];
$domain1=$_POST['Domain'];
$task=$_POST['task'];
$sqli= "Insert into Universe.Message (Message,Users,TaskNumber,urlDomain) VALUES(?,?,?,?)";
$stmt =mysqli_prepare($link,$sqli);
mysqli_stmt_bind_param($stmt,"ssis",$message,$User,$task,$domain );
mysqli_stmt_execute($stmt);
mysqli_stmt_close($stmt);
答案 0 :(得分:0)
strcspn()
更适合.serialize()
请求,因为它基本上将表单数据转换为字符串布局(GET
)。
您的第一个示例似乎表明您的PHP正在解码formData,因此请在第二个示例中尝试以下操作:
?q=Search+Query&id=12