在其他页面上发出显示复选框实体

时间:2017-03-29 20:33:03

标签: php html mysqli

我有两个文件 Add_Services.html add_services.php

数据库名称:ecc
表名:addservices
列名:id,name,cost

Add_Services.html

它有 按钮 onClick 会打开 弹出窗口< / EM>

以下代码:

<html>
<input type = "button" value = "Add Services"
onClick="MyWindow=window.open('add_services.php',
'MyWindow',width=600,height=300);
return false;">
</html>

add_services.php

显示从表 addservices 中提取的复选框列表。
弹出窗口显示两个字段&#39; 费用 &#39;和&#39; 名称 &#39;。

以下代码:

<html>
<body>
    <?php
        $con = mysqli_connect("localhost", "root", "", "ecc");

        if(!$con){
            echo 'Not connected';
        }
        if(!mysqli_select_db($con,'ecc'))
        {
            echo 'db not selected';
        }

    $sql = "SELECT name, cost FROM addservices"; 
    $records = mysqli_query($con, $sql);
    $row=mysqli_fetch_array($records,MYSQLI_ASSOC);
    ?>



    <table width ="800" border="1" cellspacing="1">

    <tr>

    <th>
    Select
    </th>

    <th>
    Name
    </th>

    <th>
    Cost
    </th>

    </tr>

    <form action="" method = "POST">

  <?php


    while($row = mysqli_fetch_assoc($records)){
        echo "<tr>";
        $n=$row['name'];
        $t=$row['cost'];
        echo "<td>";
        echo "<input type='checkbox' name='chkbox[]' value='{$row["name"]}'>";
        echo "</td>";
        echo "<td>";
        echo "$n";
        echo "</td>";
        echo "\t";
        echo "<td>";
        echo "{$row["cost"]}";
        echo "</td>";

        echo "<br>";
        echo "</tr>";
  }
      ?>    

    </table>
 <input type="submit" value="Submit">   
    </form>

    <?php

        if(isset($_POST['submit'])){

            while(!empty($_POST['chkbox'])){

                echo "chkbox";

            }

        }

    ?>

  </body>
  </html>

我的问题:我要在页面 Add_Services.html

页面上显示核对清单的核对内容

如果有人改写它会很棒。

1 个答案:

答案 0 :(得分:0)

问题是:您尚未定义提交按钮的name

更改错误代码:

<input type="submit" value="Submit">

修正以下代码:

<input type="submit" value="Submit" name="submit">

而且,而不是使用while循环打印chkbox[]的值,只需使用简单的foreach循环。

注意:您的代码将进入无限循环,因为$_POST['chkbox']将始终具有值

所以,改变代码:

while(!empty($_POST['chkbox'])){
    echo "chkbox";
}

至以下更正的代码:

foreach($_POST['chkbox'] as $value)
    echo $value."\n";