首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

一次点击多个操作有关问题

2012-04-27 
一次点击多个操作问题当前页面有一个表单要 点击一个 按钮或连接 后使当前页面输入的值插入数据库然后自动

一次点击多个操作问题
当前页面有一个表单 要 点击一个 按钮或连接 后使当前页面输入的值插入数据库 
  然后自动跳转到下一个页面同时还有传一个值过去 
   
  我的做法是使用ajax传值 但是好像不行

那个高人给看看 要是有好别的的方法更好

PHP code
<form id='order' name='order' method='get' action='./jiesuan.php'><table width="500" height="200" align="center" name="formt">    <tr><td>收货人:</td><td><input type="text" name="shouhuo" id="shouhuo"></td></tr>    <tr><td>收货地址:</td><td><input type="text" name="address" id="address"></td></tr>    <tr><td>邮编:</td><td><input type="text" name="postcode" id="postcode"></td></tr>    <tr><td>电话:</td><td><input type="text" name="phone" id="phone"></td></tr>    <?php $o_num=date('Ymdhis');    //生成订单号?>            <tr><td>    <a href="./pay.php?o_num=<?php echo $o_num ?>" name="tijiaoding"><img src="../image/tijiaoding.jpg" ></img></a>    <td><input type="button" id="mys" name="mys" value="mys"></td>    </tr>        </table></form><script type="text/javascript"><!--function s(){    var xmlhttp = new XMLHttpRequest();    var url = "pay.php?shouhuo="+$("shouhuo").value+"&address="+$("address").value+"&postcode="+$("postcode").value+"&phone="+$("phone").value;    alert("已提交");    xmlhttp.open("GET",url,true);    xmlhttp.send(null);    window.location.reload();  //  location.href="pay.php";}$("mys").onclick = s;function $(id){    return document.getElementById(id);}//--></script><?php if($_POST){    //if($_SESSION['user'])    //{            $user=$_SESSION['user'][1];                //    if($_POST['shouhuo']){                $shouhuo=$_POST['shouhuo'];                $address=$_POST['address'];                $postcode=$_POST['postcode'];                 $phone=$_POST['phone'];                                $ding="insert into ord(o_id , o_num , coun ,  u_name , u_phone , u_address , postcode , ordertime , send , pay )                         values('','$o_num', '$sum','$user','$phone','$address','$postcode',NOW(),'','',)";                if(mysql_query($ding,$conn))                    go("pay.php");                foreach ($arr as $k=>$v){                                    }    //        }    //        else     //            echo "请输入收货信息!";    //}    //else     //    echo "请<a href='../vip.php'>登录>></a>!";}?>



[解决办法]
这段代码的问题还是form表单中没有type=submit 按钮,所以表单不会被提交。我觉得我不应该修改你的代码,因为它的逻辑很怪。
还是重复我之前的建议:
 表单提交到 jiesuan.php后。在jiesuan.php的最后添加下面几行代码:

// header()前不要有输出,包括空格
header("Location:pay.php?shouhuo={$_POST['shouhuo']}&address={$_POST['address']}&postcode={$_POST['postcode']}" );

这样也一样能让浏览器跳转到pay.php并附带刚才提交上来的参数。

或者你做这个是想多学习新知识,那么就去学学ajax吧。它当然可以解决你的问题,但并不是什么情况都建议用它,因为你完全有更方便的路可以走又何必绕个弯呢
[解决办法]
javascript连续跳转。或者ajax的连续跳转。
[解决办法]
楼主是将表单的值进行按钮提交,通过ajax进行传递值,服务端接受值之后进行一个新增的操作。操作成功之后进行跳转!这是本人理解楼主的意思,不知道是否!如果是的话,楼下可以根据这个来回答楼上的问题。
------解决方案--------------------


程序有逻辑错误!

JScript code
function s(){    var xmlhttp = new XMLHttpRequest();    var url = "pay.php?shouhuo="+$("shouhuo").value+"&address="+$("address").value+"&postcode="+$("postcode").value+"&phone="+$("phone").value;    xmlhttp.onreadystatechange=myCallback;    xmlhttp.open("GET",url,true);    xmlhttp.send(null);}function myCallback(){  alert("已提交");  window.location.reload();} 

热点排行