热搜:NVER node 开发 php

js向php发送post请求失败,求解

2024-08-18 23:10:01
js向php发送post请求失败,求解

function alertWin(title, msg, w, h) {         var titleheight = "22px"; // 窗口标题高度         var bordercolor = "#666699"; //窗口的边框颜色         var titlecolor = "#FFFFFF"; // 窗口的标题颜色         var titlebgcolor = "#666699"; // 窗口的标题背景色         var bgcolor = "#FFFFFF"; // 内容背景色         var iWidth = document.documentElement.clientWidth; //这个窗口的宽度         var iHeight = document.documentElement.clientHeight; //这个窗口的高度         //创建一个弹出层         var msgObj = document.createElement("div");         //设置弹出的层的样式         msgObj.style.cssText = "position:absolute;font:11px '宋体';top:" + (iHeight - h) / 2 + "px;left:" + (iWidth - w) / 2 + "px;width:" + w + "px;height:" + h + "px;text-align:center;border:1px solid " + bordercolor + ";background-color:" + bgcolor + ";padding:1px;line-height:22px;z-index:1001;";         document.body.appendChild(msgObj);         //创建一个table用于容纳层上的内容         var table = document.createElement("table");         //将Table放到弹出层上         msgObj.appendChild(table);         //设置table的格式         table.style.cssText = "margin:0px;border:0px;padding:0px;";         table.cellSpacing = 0;         //插入一行用于显示标题         var tr = table.insertRow(-1);         //插入一个单元格用于容纳标题         var titleBar = tr.insertCell(-1);         titleBar.style.cssText = "width:100%;height:" + titleheight + "px;text-align:left;padding:3px;margin:0px;font:bold 13px '宋体';color:" + titlecolor + ";border:1px solid " + bordercolor + ";cursor:move;background-color:" + titlebgcolor;         titleBar.style.paddingLeft = "10px";         //设置标题         titleBar.innerHTML = title;         //关闭按钮事件         var closeBtn = tr.insertCell(-1);         closeBtn.style.cssText = "cursor:pointer; text-align:right;padding:2px;background-color:" + titlebgcolor;         closeBtn.innerHTML = "×";         closeBtn.onclick = function() {             document.body.removeChild(msgObj);         }         //弹出的消息窗口内容         var msgBox = table.insertRow(-1).insertCell(-1);         msgBox.style.cssText = "font:10pt '宋体';";         msgBox.colSpan = 2;         msgBox.innerHTML = msg;         var nameBox1 = table.insertRow(-1);         var nameLable1 = nameBox1.insertCell(-1);         nameLable1.style.cssText = "font:10pt '宋体';text-align:center;";         nameLable1.innerHTML = "手机 * "; 				var nameBox2 = table.insertRow(-1);         var nameLable2 = nameBox2.insertCell(-1);         nameLable2.style.cssText = "font:10pt '宋体';text-align:center;";         nameLable2.innerHTML = "验证码";         		var nameBox3 = table.insertRow(-1);         var nameLable3 = nameBox3.insertCell(-1);         nameLable3.style.cssText = "font:10pt '宋体';text-align:center;";         nameLable3.innerHTML = ""; 	}	function get_mobile_code(){		alert("111");		$.post('http://'+serverIp+'smsExecute.php', {mobile:jQuery.trim($('#mobile').val()),send_code:<?php echo $_SESSION['send_code'];?>}, function(msg) {            alert(jQuery.trim(unescape(msg)));        });        alert("222");	}


回复讨论(解决方案)

55行之前的代码,效果如下:

然后点击44行的“获取手机验证码”按钮,能够触发57行的get_mobile_code函数,111跟222都能弹出,但是.post没有反应。

报什么错呢,就你现在这些信息出问题可能性太多了

看看有没有session_start()  再有就是大括号里面传值实际上键值要用引号的

页面右键查看源代码看看你那些变量有没有正确解析

看看有没有session_start()  再有就是大括号里面传值实际上键值要用引号的


-------------------------------------------------------------------------------------------------------------
session_start()是有的。加了引号也没效果:{"mobile":jQuery.trim($('#mobile').val()),"send_code":<?php echo $_SESSION['send_code'];?>}

send_code:'<?php echo $_SESSION['send_code'];?>'}

确认 jQuery 加载无误

1.firebug有什么错误提示?
2.firebug network 看看post后返回的内容。


看看有没有session_start()  再有就是大括号里面传值实际上键值要用引号的


-------------------------------------------------------------------------------------------------------------
session_start()是有的。加了引号也没效果:{"mobile":jQuery.trim($('#mobile').val()),"send_code":<?php echo $_SESSION['send_code'];?>}
你在右键查看源码的时候那个php脚本正确解析了吗?这个很关键

send_code:'<?php echo $_SESSION['send_code'];?>'}

确认 jQuery 加载无误


----------------------------------------------------------------------
您好,顺便再请教个问题,比如我在a.php中使用了$_SESSION['send_code']=‘123456’,那么在b.php中可以直接使用$_SESSION['send_code']吗?还是需要像post一样在a.php中指定b.php?

是的,可以直接使用
但有个前提:一定要有 session_start(); 语句

是的,可以直接使用
但有个前提:一定要有 session_start(); 语句


-------------------------------------------------------------------------
那$_SESSION['send_code']这个值会一直存在吗?

不会,关闭浏览器或关闭了与该网站相关的标签页后,就没有了

发现自己走进了死胡同~~~