Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过POST不工作传递值-PHP_Php_Mysql - Fatal编程技术网

通过POST不工作传递值-PHP

通过POST不工作传递值-PHP,php,mysql,Php,Mysql,我有以下代码。。我试图弄明白为什么wEx1值没有传递给PHP代码,而wDate是。我有name='wEx1'属性的,并且我尝试了直接的$\u POST[]来获取它和转义字符串,即使它不是用户的输入字段。无论如何,我都无法让它显示在php端的echo语句中。感谢您的任何想法和帮助 <form class='navbar-form' method='post' action='enterWorkoutPlan.php' onsubmit='return validateWorkoutPlan(

我有以下代码。。我试图弄明白为什么wEx1值没有传递给PHP代码,而wDate是。我有name='wEx1'属性的,并且我尝试了直接的$\u POST[]来获取它和转义字符串,即使它不是用户的输入字段。无论如何,我都无法让它显示在php端的echo语句中。感谢您的任何想法和帮助

<form class='navbar-form' method='post' action='enterWorkoutPlan.php' onsubmit='return validateWorkoutPlan()' name='workoutPlanForm'>
    <div class='form-group'>

    ...other stuff here..

        <b>Exercise 1: </b>

        <select class='form-control' name='wEx1'>
            <!-- Have default be Select Exercise for how many exercises are chosen check -->
            <option value='Select exercise' selected>Select exercise</option>
            <?php
                $sql2 = "SELECT exName FROM exercises";
                $result2 = mysqli_query($db, $sql2);
                if ($result2){
                    while($row2 = mysqli_fetch_assoc($result2)) {
                        echo "
                          <option value='".$row2['exID']."'>".$row2['exName']."</option>";
                    }
                } else {
                    echo "<script>confirm('Error pulling exercises list');</script>";
                }
            ?>                                                  
        </select><br>
    ...other stuff here..

    </div>

    <br><br>
    <input type='submit' value='Save Workout' class='btn btn-primary'>
</form> 
接受这些值的PHP页面如下所示

<?php
include("config.php");
include("userInfo.php");
session_start();

ini_set('display_startup_errors', 1);
ini_set('display_errors', 1);
error_reporting(-1);

$wUserID = mysqli_real_escape_string($db,$_POST["wUserID"]);
$wDate = mysqli_real_escape_string($db,$_POST["wDate"]);
$wEx1 = $_POST["wEx1"];
$wEx2 = mysqli_real_escape_string($db,$_POST["wEx2"]);
$wEx3 = mysqli_real_escape_string($db,$_POST["wEx3"]);
$wEx4 = mysqli_real_escape_string($db,$_POST["wEx4"]);
$wEx5 = mysqli_real_escape_string($db,$_POST["wEx5"]);
$wEx6 = mysqli_real_escape_string($db,$_POST["wEx6"]);
$wEx7 = mysqli_real_escape_string($db,$_POST["wEx7"]);
$wEx8 = mysqli_real_escape_string($db,$_POST["wEx8"]);
$wEx9 = mysqli_real_escape_string($db,$_POST["wEx9"]);
$wEx10 = mysqli_real_escape_string($db,$_POST["wEx10"]);
.... etc..

此外,在查询练习列表时,只会得到名称,而不会得到ID,因此每个条目的“值”很可能是一个空字符串,var_dump应该显示该字符串。检查选择选项的另一种方法是在页面加载后查看浏览器页面源Paul T.23分钟前

在您收到的PHP文件中,我假设是enterWorkoutPlan.PHP文件,您可以添加var\u dump$\u POST;查看POST数组中的内容?我在发布的HTML中没有看到wDate,所以我假设它在某个地方。还有一件小事:在HTML属性中,值应该有双引号,而不是单引号。此外,在查询练习列表时,只会得到名称,而不会得到ID,因此每个条目的“值”很可能是一个空字符串,var_dump应该显示该字符串。另一种检查选择选项的方法是在页面加载后查看浏览器页面源。谢谢@PaulT。我做了转储,得到了array12{[wUserID]=>string12[wDate]=>string10 2017/09/01[wEx1]=>string0[wEx2]=>string15选择练习..因此我仍然没有看到该wEx1的任何内容。仍然在查看..也尝试了双引号。是的,空字符串。我知道我之前的注释很长,但请参见我对填充Select选项的查询所说的内容。[wEx1]=>string0表示一个0长度的空字符串,因此进行了选择。请注意,wExt2确实有默认的“已选择”选项选择练习。哦,谢谢,我读过了,但没有意识到这是问题所在,我现在就尝试一下。修复:感谢WorkedId你真的复制了评论的一部分。lmaoRetro只是想要karma。