Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.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
PHP数据库过滤器_Php_Mysql - Fatal编程技术网

PHP数据库过滤器

PHP数据库过滤器,php,mysql,Php,Mysql,我试图有一个简单的选择框来过滤数据库。我已经成功地用pageload上的所有值填充了数据库,但是我似乎无法克服应用过滤器的最后一个障碍。此外,单击“过滤器”按钮后,选择文本是否可以保留在文本中而不是返回默认文本 [注意:我启用了漂亮的URL,因此在结尾处使用了no.php] 代码如下: <?php $query = "SELECT * FROM Events"; echo $Type; i

我试图有一个简单的选择框来过滤数据库。我已经成功地用pageload上的所有值填充了数据库,但是我似乎无法克服应用过滤器的最后一个障碍。此外,单击“过滤器”按钮后,选择文本是否可以保留在文本中而不是返回默认文本

[注意:我启用了漂亮的URL,因此在结尾处使用了no.php]

代码如下:

            <?php 

            $query = "SELECT * FROM Events";
            echo $Type;

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

                $Type = $_POST['value'];

                $query .= " WHERE Type = '{$Type}'";

            }               

            $result = mysql_query($query);

            ?>                      

            <form action='/events' method="post" name="form_filter" >
                <select class="eventList">
                    <option value="EVENT1">EVENT1</option>
                    <option value="EVENT2">EVENT2</option>
                    <option value="EVENT3">EVENT3</option>
                    <option value="EVENT4">EVENT4</option>
                    <option value="EVENT5">EVENT5</option>
                    <option value="EVENT6">EVENT6</option>
                    <input type="submit" name="filter" value="Filter">                      
                </select>

            </form> 

            <table class="table table-striped table-hover table-curved">
                <thead>
                    <tr>
                        <th><b>Date</b></th>
                        <th><b>Event Name</b></th>
                        <th><b>Type</b></th>
                        <th><b>Region</b></th>
                    </tr>
                </thead>
                <tbody>                 

                <?php while ($row = mysql_fetch_array($result)) { ?>
                <tr>
                    <td><?php echo $Date = $row['Date']; ?></td>
                    <td><?php echo $Name = $row['Name']; ?></td>
                    <td><?php echo $Type = $row['Type']; ?></td>
                    <td><?php echo $Region = $row['Region']; ?></td>
                </tr>
                <?php } ?>
                </tbody>
            </table>

您的
没有名称:

<select class="eventList" name="event">

更新你的代码如下

<?php 

        $query = "SELECT * FROM Events";
        echo $Type;

        if (isset($_POST)) {

            $Type = $_POST['event'];

            $query .= " WHERE Type = '{$Type}'";

        }               

        $result = mysql_query($query);

        ?>                      

        <form action='/events' method="post" name="form_filter" >
            <select class="eventList" name="event">
                <option value="EVENT1" <?php echo ($Type=="EVENT1")?'selected="selected"':'';?>>EVENT1</option>
                <option value="EVENT2" <?php echo ($Type=="EVENT2")?'selected="selected"':'';?>>EVENT2</option>
                <option value="EVENT3" <?php echo ($Type=="EVENT3")?'selected="selected"':'';?>>EVENT3</option>
                <option value="EVENT4" <?php echo ($Type=="EVENT4")?'selected="selected"':'';?>>EVENT4</option>
                <option value="EVENT5" <?php echo ($Type=="EVENT5")?'selected="selected"':'';?>>EVENT5</option>
                <option value="EVENT6" <?php echo ($Type=="EVENT6")?'selected="selected"':'';?>>EVENT6</option>
                <input type="submit" name="filter" value="Filter">                      
            </select>

        </form> 

        <table class="table table-striped table-hover table-curved">
            <thead>
                <tr>
                    <th><b>Date</b></th>
                    <th><b>Event Name</b></th>
                    <th><b>Type</b></th>
                    <th><b>Region</b></th>
                </tr>
            </thead>
            <tbody>                 

            <?php while ($row = mysql_fetch_array($result)) { ?>
            <tr>
                <td><?php echo $Date = $row['Date']; ?></td>
                <td><?php echo $Name = $row['Name']; ?></td>
                <td><?php echo $Type = $row['Type']; ?></td>
                <td><?php echo $Region = $row['Region']; ?></td>
            </tr>
            <?php } ?>
            </tbody>
        </table>
>事件1
>事件3
>事件5
我必须更新这一行 `国际单项体育联合会(国际单项体育联合会){

并添加了选择名称和代码列表代码

 $Type =$_POST['event'];
<select class="eventList" name="event">
<option value="EVENT1" <?php echo ($Type=="EVENT1")?'selected="selected"':'';?>>EVENT1</option>
$Type=$\u POST['event'];

(1) 表单输入需要一个name属性-
,然后在php中获得该属性-
$Type=$\u POST['eventList'];
(2)您应该清理添加到查询中的任何数据-
$Type=mysql\u real\u escape\u string($\u POST['eventList'])。(3)为什么提交按钮嵌套在
中花点时间从
mysql
更新到
mysqli
PDO
@Sean,感谢您提供的信息-即使所有的更改都不起作用。我单击“筛选”按钮,它只会返回到同一页面,而不会对表格进行任何更改。这并不能解决OPs问题,因为
没有ame属性,所以所有的
echo($Type==“…”)
除了数据库过滤不起作用之外,永远不会起作用我编辑了代码你是对的,我在发布后意识到这一点是有效的,但是我如何编辑它,使它在第一次加载页面时显示所有结果?它应该在第一次加载页面时显示结果,但在发布页面后,它将显示过滤结果(如果有)如果不是这样的话,请告诉我,我会寄给你解决办法的
 $Type =$_POST['event'];
<select class="eventList" name="event">
<option value="EVENT1" <?php echo ($Type=="EVENT1")?'selected="selected"':'';?>>EVENT1</option>