Php 使用html表单在多个列中搜索

Php 使用html表单在多个列中搜索,php,sql,mysqli,Php,Sql,Mysqli,工作代码:) 这样做对吗?还是我丢失了更多的安全代码 出了什么问题?第一个if条件是:if(isset($\u POST['submit']){ } 我不知道该怎么做,但它会工作的,所以我把它改成下面的代码,现在它工作了!!:) 如果需要所有条件,请使用“和”,而不是“或” 但更好地构建sql where子句动态,测试isset参数如下: $sql= "SELECT * FROM users WHERE 1=1"; if isset($_POST['username']) { $name =

工作代码:)

这样做对吗?还是我丢失了更多的安全代码

出了什么问题?第一个if条件是:if(isset($\u POST['submit']){

}

我不知道该怎么做,但它会工作的,所以我把它改成下面的代码,现在它工作了!!:)

如果需要所有条件,请使用“和”,而不是“或”

但更好地构建sql where子句动态,测试isset参数如下:

$sql= "SELECT * FROM users WHERE 1=1";
if isset($_POST['username']) {
  $name = $_POST['username'];
  $sql .= " and username LIKE '%$name%'";
} 

echo()
中不能有
echo()



你需要
我已经修好了!!!而且效果很好。。!向@Adam Silenko呼喊动态where子句:)


和@luweiqi感谢SQL注入帮助和
而不是

我不需要,如果用户想要来自阿姆斯特丹的人并且在线,结果必须是来自阿姆斯特丹的在线用户,但是如果用户只想看到在线用户或者仅仅是来自阿姆斯特丹的用户,那么查询也必须是真的……嗯。。。我有点傻:p谢谢哈哈,但它仍然不起作用:(也没有错误。)@ReduanKurtaj不客气!你的数据库连接正确吗?$server=mysqli_connect(“server”、“USERNAME”、“PASS”、“DB_TABLE”);if(!$server){echo“Kan geen verbinding maken met de server”;exit()}而且,如果我点击提交按钮,就不会发生任何事情,只是看到我的表单……我编辑了我的帖子……html表单就在里面!
<?php

                    if (isset($_POST['username']) || isset($_POST['locatie']) || isset($_POST['geslacht']) || isset($_POST['online'])) {

                        $name = mysqli_real_escape_string($server, $_POST['username']); 
                        $waar = mysqli_real_escape_string($server, $_POST['locatie']);
                        $sex = mysqli_real_escape_string($server, $_POST['geslacht']);  
                        $status = mysqli_real_escape_string($server, $_POST['online']);

                        $sql= "SELECT * FROM users WHERE 1=1";
                            if (isset($_POST['username'])) {
                                $name = $_POST['username'];
                                $sql .= " and username LIKE '%$name%'";
                            }

                            if (isset($_POST['locatie'])) {
                                $name = $_POST['locatie'];
                                $sql .= " and locatie LIKE '%$waar%'";
                            }

                            if (isset($_POST['geslacht'])) {
                                $name = $_POST['geslacht'];
                                $sql .= " and geslacht LIKE '%$sex%'";
                            }

                            if (isset($_POST['online'])) {
                                $name = $_POST['online'];
                                $sql .= " and online LIKE '%$status%'";
                            }

                                $sql .= " ORDER BY RAND()";

                        $result_set=mysqli_query($server,$sql) or die(mysqli_error($server));

                            //echo $sql;
                            echo '<div class="col-sm-12">';

                        while($row=mysqli_fetch_array($result_set)) {
                            echo '<div class="col-sm-2">';
                            echo '<center><img class="img-vrienden" src=' . $row['prof_pic'] . ' /><br>' . $row['username'].'</center>';
                            echo '</div>';
                        }
                            echo '</div>';   
                    }
                ?>
$sql= "SELECT * FROM users WHERE 1=1";
if isset($_POST['username']) {
  $name = $_POST['username'];
  $sql .= " and username LIKE '%$name%'";
} 
echo '<img class="img-vrienden" src="echo $row["prof_pic"]" /><br>
echo $row["username"]';
echo '<img class="img-vrienden" src="' . $row["prof_pic"] . '" /><br>' . $row["username"];
<button name="submit" type="submit" class="button">
<input type="submit" name"submit">
$name = mysqli_real_escape_string($server, $_POST['username']); 
$waar = mysqli_real_escape_string($server, $_POST['omgeving']);
$sex = mysqli_real_escape_string($server, $_POST['geslacht']);  
$status = mysqli_real_escape_string($server, $_POST['status']);