PHPExcel 如何在查询中动态设置 WHERE 值

PHPExcel how to set WHERE value in a query dinamically

我正在使用 PHPExcel 将值从我的 mysql 数据库提取到 Excel 文件,查询如下:

export.php

$query = $db->query("SELECT id, home, away, scorehome, scoreaway, best_bets, oddtwo, oddthree, partialht, over05ht, over05sh, over05, over15, over25, over35, over45, goal, risultato,esito, campionato FROM risultati ORDER BY best_bets");

它正在工作,但现在我想从 HTML 表单动态地设置 WHERE 语句到我的 export.php 文件。 我尝试过这种方式,但它不起作用:

form.html

    <!DOCTYPE html>

<html>
<head>
    <title></title>
</head>
<body>

<form method="post" action="export.php">
   <br><br>

  Corsa:
  <select name="tournaments">
    <option value="Aut-A">Austria A</option>
    <option value="Aut-B">Austria B</option>
    <option value="Bel-A">Belgio A</option>
    <option value="Bel-B">Belgio B</option>
    <option value="CoR-A">Costa Rica</option>
    <option value="Cro-A">Croatia</option>
    <option value="CZE-A">Czech Republic</option>
    <option value="Den-A">Denmark A</option>
    <option value="Den-B">Denmark B</option>
    <option value="Egy-A">Egypt</option>
    <option value="Fra-A">France A</option>
    <option value="Fra-B">France B</option>
    <option value="Ger-A">Germany A</option>
    <option value="Ger-B">Germany B</option>
    <option value="Ger-C">Germany C</option>

  </select>
  <br><br>

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

</body>
</html>

我在我的 export.php 文件中输入了以下代码:

    if(isset($_POST['submit'])){
    if  (isset($_POST["tournaments"])) { 
        $tournamentsss = $_POST["tournaments"];
    }
}



...

$query = $db->query("SELECT id, home, away, scorehome, scoreaway, best_bets, oddtwo, oddthree, partialht, over05ht, over05sh, over05, over15, over25, over35, over45, goal, risultato, esito, campionato FROM risultati WHERE campionato = '$tournamentsss' ORDER BY best_bets");

我真的不知道如何修复这段代码。

谢谢!

编辑:我编辑了我的代码,它以这种方式工作。谢谢

提交表单后;你可以像这样直接得到 "tournaments" 的值:

if(isset($_POST['submit'])){
    if  (isset($_POST["tournaments"])) { 
        $tournamentssss = $_POST["tournaments"];
    }
}

PS : 您的输入不允许多选。

您的查询可以这样写:

query = $db->query("SELECT id, home, away, 
                      scorehome, scoreaway, best_bets, 
                      oddtwo, oddthree, partialht, 
                      over05ht, over05sh, over05, over15, 
                      over25, over35, over45, goal, 
                      risultato, esito, campionato 
                    FROM risultati 
                    WHERE campionato = '$tournamentsss' 
                    ORDER BY best_bets");

希望对您有所帮助

现在它是正确的,以你的方式它不起作用