Javascript 私人邮件无法提交,js$.post(…)不起作用
我想有一个消息系统,并嵌入到我的系统,但这个小东西不能继续!它从未发布到mysql…:\ 我在t.php中有一些额外的条件,但在这部分工作正常之前,我没有将它们合并到这里,因为它是主要部分。 这是一个月前,我试图实现消息系统,以用于我们的项目,但由于许多小问题发生,我无法实现这一点 这是表格文件 msgform.phpJavascript 私人邮件无法提交,js$.post(…)不起作用,javascript,php,mysql,message-system,Javascript,Php,Mysql,Message System,我想有一个消息系统,并嵌入到我的系统,但这个小东西不能继续!它从未发布到mysql…:\ 我在t.php中有一些额外的条件,但在这部分工作正常之前,我没有将它们合并到这里,因为它是主要部分。 这是一个月前,我试图实现消息系统,以用于我们的项目,但由于许多小问题发生,我无法实现这一点 这是表格文件 msgform.php <?php include('connect.php'); session_start(); $id = 1; //$_SESSION['id'];
<?php
include('connect.php');
session_start();
$id = 1; //$_SESSION['id'];
$q = "SELECT `rname` FROM `reciever` WHERE `sid`=".$id." AND `id`=".$_GET['id'];
$query = mysql_query($q);
$count = mysql_num_rows($query);
$row = mysql_fetch_row($query);
$rname = $row[0];
$q1 = "SELECT `sname` FROM `senders` WHERE `id`=".$_GET['id'];
$query1 = mysql_query($q1);
$count1 = mysql_num_rows($query1);
$row1 = mysql_fetch_row($query1);
$sname = $row1[0];
$ranNum = rand(0, 10);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<tiltle>Testing area at sender</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$('#msgForm').submit(function(){$('input[type=submit]'), this.altr('disabled', 'disabled');});
function sendMsg(){
var mheader = msgForm.msgHeader.value;
var mbody = msgForm.msgBody.value;
var sname = msgForm.sname.value;
var sid = msgForm.sid.value;
var rname = msgForm.rname.value;
var rid = msgForm.rid.value;
var thisWipit = msgForm.msgWipit.value;
var formData = {mheader: mheader, mbody: mbody, sname: sname, sid: sid, rname: rname, rid: rid, thisWipit: thisWipit};
$.post('t.php', formData,
function (data){
$('#tstmsgs').slideUp("slow");
$('#sthWrong').html(data).show();
}
);
}
</script>
</head>
<body>
<div id="sthWrong" style="color:#900; margin-right:10%;"></div>
<div id="tstmsgs">
<FORM name="msgForm" id="msgForm" method="POST">
<font size="+1">Sen to<strong><?php echo "$rname"; ?></strong></font><br/>
Subject:
<input name="msgHeader" id="msgHeader" type="text" maxlength="64" style="width:98%;"/>
</br>
Message:
<textarea name="msgBody" id="msgBody" rows="8" style="width:98%;"></textarea>
<input name="sid" id="sid" type="hidden" value="<?php echo $id;?>"/>
<input name="sname" id="sname" type="hidden" value="<?php echo $sname;?>"/>
<input name="rid" id="rid" type="hidden" value="<?php echo $_GET['id'];?>"/>
<input name="rname" id="rname" type="hidden" value="<?php echo $rname;?>"/>
<input name="msgWipit" id="msgWipit" type="hidden" value="<?php echo $ranNum;?>"/>
<input name="msgSubmit" type="submit" value="send" onClick="sendMsg();"/>
</FORM>
</div>
</body>
</html>
发送器处的测试区域
$('#msgForm').submit(函数(){$('input[type=submit')),this.altr('disabled','disabled');});
函数sendMsg(){
var mheader=msgForm.msgHeader.value;
var mbody=msgForm.msgBody.value;
var sname=msgForm.sname.value;
var sid=msgForm.sid.value;
var rname=msgForm.rname.value;
var rid=msgForm.rid.value;
var thisWipit=msgForm.msgWipit.value;
var formData={mheader:mheader,mbody:mbody,sname:sname,sid:sid,rname:rname,rid:rid,thisWipit:thisWipit};
$.post('t.php',formData,
功能(数据){
$('tstmsgs').slideUp(“慢”);
$('#sthWrong').html(data.show();
}
);
}
Sen到
主题:
信息:
您是否查看过您的开发控制台(firebug或同等产品)以查看是否存在错误?如果真的没有post,那么PHP与问题无关(更少的混乱更容易调试)。要提交表单值,请尝试使用/serialize/)。脚本的第一行有多个问题,请尝试$('#msgForm')。在('submit',function(evt){$('input[type=submit]')。prop('disabled','disabled');})
您可能希望阻止表单以常规方式提交,或者发送两次。是的,这正是我从那行中想要的“并且您可能希望阻止表单以常规方式提交,或者发送两次。”我使用的是开发控制台,它没有显示任何错误。我试过你的台词,但不太管用,是吗
<?php
include('connect.php');
$mheader = $_POST['mheader'];
$mbody = $_POST['mbody'];
$sname = $_POST['sname'];
$sid = $_POST['sid'];
$rname = $_POST['rname'];
$rid = $_POST['rid'];
$thisWipit = $_POST['thisWipit'];
$sessWipit = base64_decode('1');
if ((isset($mheader) && !empty($mheader)) && (isset($mbody) && !empty($mbody)) && (isset($sid) && !empty($sid)) && (isset($rid) && !empty($rid)) && (isset($sname) && !empty($sname)) && (isset($rname) && !empty($rname)) && (isset($thisWipit) && !empty($thisWipit)))
{
$to = $rid;
$from = $sid;
$toName = $rname;
$fromName = $sname;
$sub = $mheader;
$msg = $mbody;
$sql = "INSERT INTO `msgs` (`sid`, `rid`, `time_sent`, `msgbody`, `msgheader`) VALUES ('$from', '$to', NOW(), '$msg', '$sub')";
$query = mysql_query($sql);
if (!$query) echo "Database Error : ".$sql;
echo 'Messgae sent successfully.';
}
else
{
if((isset($mheader) && empty($mheader)))
echo '- Please fill out the Subject field.<br/>';
if((isset($mbody) && empty($mbody)))
echo '- Please fill out the Message field.<br/>';
if((isset($sid) && empty($sid)) || (isset($rid) && empty($rid)) || (isset($sname) && empty($sname)) || (isset($rname) && empty($rname)) || (isset($thisWipit) && empty($thisWipit)))
echo '- Some data are missed.<br/>';
}
?>