使用post方法与php,ajax和javascript

时间:2016-04-08 09:03:52

标签: javascript php jquery html ajax

我很难将输入的值从页面上的表单传递给另一个,所以这里是代码:(PS:我是法语,很抱歉,如果我的语法不好,我希望它&# 39;可以理解) 这是我的页面,其格式为:

编辑:我在这种形式上犯了两个错误,现在已经纠正了。首先我忘记了' '在mission_trans_select周围:onclick="document.getElementById('mission_trans_select').value=(this.value) 第二,echo

中缺少value="<?php echo $line['MIS_ID_MISSION'];
<html>
<form name="fListTran" id="fListTran" method="POST" action="index.php?page=missiontransfert">
    <div class="container">    
        <div id="loginbox"  class="mainbox col-md-6 col-md-offset-3 col-sm-8 col-sm-offset-2">     
            <div class="text-center">
                <div class="panel panel-primary" >
                    <div class="panel-heading">
                        <div class="panel-title"><strong>Liste des missions de transfert</strong></div>
                        <div id="float"><a href="#"></a></div>
                    </div> 
                    <div class="panel-body" >
                        <input name='name' id='mission_trans_select' type='hidden' value='' />
                            <strong>
                            <?php
                                echo "Il y a : ".$_Nbr_Missions_." missions trouvée(s).";
                                For($i=1;$i<=$_Nbr_Missions_;$i++){ //peut être mettre un max et donc tester le nombre de resultat
                            ?>
                            </strong>
                            <div class="btn-group-justified" id="mis-tran">
                            <a href="index.php?page=missiontransfert">
                                <button class="btn btn-default btn-lg btn-block" name="mission_tran" id="<?php echo $i ;?>" type="submit" value="<?php echo $line['MIS_ID_MISSION']; ?>" onclick="document.getElementById('mission_trans_select').value=(this.value);">
                                <?php 
                                    echo $line['MIS_ID_MISSION'] .' - [' . $line['MIS_ID_DO'] . '] Emplacement actuel : ' 
                                            . $line['MIS_ID_AREA_SRC'] .'-'.$line['MIS_ID_BAY_SRC'].'-'.$line['MIS_ID_RACK_SRC'].'-'
                                            . $line['MIS_ID_STAGE_SRC'] .'<br> Priorité : '.$line['MIS_PRIORITE']
                                            .'- Produit : '.$line['PRO_LITERAL'] ; 
                                ?>
                                </button> 
                            </a>
                        </div>  
                        <?php
                            $line = oci_fetch_array($reqMisTranCount, OCI_ASSOC);
                            }
                        ?>
                        <a id="retour" class="btn btn-lg btn-warning btn-block" href="index.php?page=menu">
                            <span  class="fa fa-arrow-circle-left"></span> Retour</a>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </form>

因此,为了解释它,我显示了一个由按钮表示的任务列表,用户可以单击该按钮,每个按钮都链接到我想要显示另一个需要与按下的按钮相关联的值的表单的页面。

因为按钮的id取决于我从我的选择查询获得的行数,我没有在这里显示但是工作正常,我无法从中获取值,所以onClick按钮我将隐藏输入的值设置为它的值。

表单和操作:index.php?page=missiontransfert,所以在索引页面中我调用了我的脚本loadJS.php,我尝试将post方法与ajax一起使用,但我没有得到它。 以下是我到目前为止所做的事情:

<script>
if (document.getElementById("mission_trans_select").value!=''){
    var mis_id = document.getElementById("mission_trans_select").value;

}

function get_mis_id(element){                    
    var xmlhttp=new XMLHttpRequest();
    xmlhttp.open("POST","./ajax/ajaxlistetransfert.php",true);
    xmlhttp.setRequestHeader("Content-Type", "./transfert_list.php");
    xmlhttp.send(mis_id);
}
</script>

我不知道它是否正确或是否是这样做的好方法......而且我也不知道该放入我的ajax文件中的内容( ajaxlistetransfert)

最后,这是在我的文件missiontransfert.php中获取帖子结果的好方法:

$_SESSION['MISMISSION']=$_POST['name'];

&#39;名称&#39;是我第一个表单中隐藏输入的名称。 谢谢你的帮助和时间!

1 个答案:

答案 0 :(得分:0)

正如您在问号标签中包含jQuery一样,您可以使用简化的POST请求语法:

$.post('/ajax/ajaxlistetransfert.php',{
    mission_id: your_variable_holding_the_id
},function(result){
    alert(result); // alerts output of requested file.
})

让你的ajax PHP文件在数据库/文件上用$_POST['mission_id']进行必要的操作并回显输出

(即'成功'/'失败'字符串或表格元素代码,然后可以附加到请求页面)

 然后可以访问javascript result