1

複数のレコードでこれを行う方法を見つけようとしています。私は物事を試していますが、参照を見ていますが、それを機能させる方法を理解していません。まずここで動作するコードは次のとおりです。

の私の href リンクloop

<a href="search.php?city=<?= $row['city'] ?>">city</a>

私のPHP

if (isset($_GET['city'])) {

$city = $_GET['city'];      
$stmt = $db->prepare("SELECT * from table WHERE city = ? ");
$stmt->execute(array($city)); 
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) : //loop starts

} else { //html content }

上記cityは、最初のループで URL 変数を介して呼び出されているレコードを単純にプルします。データベースから異なる結果を生成するために、異なる URL 変数を使用してこれを複数回繰り返したい場合。したがって、上記のコードのように 1 つのレコードを取得するのではなく、さらに 2 つのレコードを取得したいと考えています。

loopURL 変数 city、name country を使用した a の Href リンクの例:

<a href="search.php?city=<?= $row['city'] ?>">city</a>
<a href="search.php?name=<?= $row['name'] ?>">name</a>
<a href="search.php?country=<?= $row['country'] ?>">country</a>

動作していない PHP の例ですが、これらの URL 変数を取得し、SELECT によってそれらを mysql に渡しています。

if (isset($_GET['city'], $_GET['name'], $_GET['country'])) {

$city = $_GET['city'];  
$name = $_GET['name'];
$country = $_GET['country'];

$stmt = $db->prepare("SELECT * from table WHERE city = ? OR name = ? OR country = ?");
$stmt->execute(array($city, $name, $country)); 
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) : //loop starts

} else { //html content }

これを達成する方法についてのアドバイスをいただければ幸いです。また、これを行うためのより簡単な方法がある場合、または現在のコードがスクラッチに達していない場合は、お知らせください。ありがとう!

4

2 に答える 2

2
if (isset($_GET['city'])||isset($_GET['name'])||isset($_GET['country'])) {

       echo $city= $_GET['city'];

       echo $name=$_GET['name'];

       echo $country $_GET['country'];
       }
于 2013-10-11T10:16:27.757 に答える