[請益] PHP AJAX 問題發問 請大大們協助!

作者: die78325 (轉生形象設計團隊)   2015-07-17 00:51:41
先PO上我的原始碼
js部分
/* 補發驗證MAIL */
$('#mailGet').ready(function(){
$('#mailSend').click(function(){
$.ajax({url:'mail_get.php', //指定執行頁
cache:'false',
dataType:'html',
type:'POST',
data: $("#mailGet").serialize(), //表單全部欄位
beforeSend:function(){
/* 在資料尚未回傳之前,執行的JS語法內容 */
var mr_id = $('#mr_id').val();
if (mr_id == '') {
swal("發生錯誤","您尚未填寫您的id。","error");
$('#mr_id').css("background-color","#FCE6F2");
return false;
}
var mr_mail = $('#member_mail').val();
if (mr_mail == '') {
swal("發生錯誤","您尚未填寫您的mail。","error");
$('#mr_mail').css("background-color","#FCE6F2");
return false;
}
},
success:function(response){
/* 資料回傳回來,執行的JS語法內容*/
$('#mailGetMsg').html(response); //指定回傳資料位置點
}
});
});
});
PHP 部分
<div style="height:500px">
<form id="mailGet" method="post" ></form>
<input name="mr_mail" id="mr_mail" type="hidden" value="<? echo $member_mail
;?>">
<input name="mr_id" id="mr_id" type="hidden" value="<? echo
$_COOKIE[MemberID] ;?>">
<table width="800px" height="300px" border="0" cellspacing="5" >
<tr>
<td style="text-align:right">您所設定的電子郵件:</td>
<td ><a style="font-size:25px; color:#F00;"><? echo $member_mail
?></a></td>
</tr>
<tr>
<td colspan="2" style="text-align:center"><a id="mailSend" class="button
button-glow button-rounded button-raised button-primary">補發驗證信</a></td>
</tr>
<tr>
<td style="text-align:right">更變電子郵件並發送驗證:</td>
<td><input name="newmember_mail" type="text" placeholder="請輸入新的電子
郵件"></td>
</tr>
<tr>
<td colspan="2" style="text-align:center"><a class="button button-glow
button-rounded button-raised button-primary">確認更改您個人電子郵件並發送驗證
</a></td>
</tr>
</table>
<span id="mailGetMsg"></span>
</form>
接收端 mail_get.php
<?
sleep(2);
echo $_POST[mr_mail];
require ("php/cmsdb.php");
$sql= mysql_db_query ("$dbname", "select * from member where
member_id='$_POST[mr_id]' ");
$num = mysql_num_rows( $sql ); //計算目前資料表筆數
if ($num==0) {
echo "
<script>
MsgAlertOn(); $('.MsgTxt').text('無法取得相關資料,請重新確認。
');
</script>
";
exit;
/* 行動電話與電子郵件正確 */
} else {
echo "
<script>
setTimeout(function(){ location.href='./'; }, 3000); //</script>
";
}
接收不到值!請位各位大大們!是為什麼???
感謝各位大大看了我那麼長的程式碼....先感謝了!
作者: ns1234 (FAR)   2015-07-17 01:39:00
整個 $_POST 出來有東西嗎?$_POST[mr_mail] => $_POST['mr_mail'] 少了單引號?
作者: die78325 (轉生形象設計團隊)   2015-07-17 02:46:00
抱歉 那是我那時測試用的 正常是檢查有無接收到值沒有則離開 現在問題為何沒傳值?哪錯了??
作者: serotw (弒龍)   2015-07-17 08:32:00
你確定你的JavaScript帶的data有帶到資料?
作者: die78325 (轉生形象設計團隊)   2015-07-17 09:56:00
如何修改才可確定帶到資料
作者: ns1234 (FAR)   2015-07-17 10:17:00
consoles.log靠腰 多一個s
作者: crossdunk (推噓自如)   2015-07-17 11:02:00
console.log($("#mailGet").serialize());看看有沒有資料
作者: die78325 (轉生形象設計團隊)   2015-07-17 11:56:00
感謝各位大大幫忙 已解決 </FORM> 一開始就結束了!

Links booklink

Contact Us: admin [ a t ] ucptt.com