このオンラインの例を見てきましたが、コードが壊れているようです。セッション変数に以下のコードを使用して照会したフィールドを保存したいと考えています。<a>リンクに関連付けられた値をセッション変数として設定する方法
PHP:
<?php
// Collect input
// If an input has been given
if(isset($_POST["aSearch"])) {
$searchq = $_POST["aSearch"];
$searchq = preg_replace("#[^0-9a-z]#i","",$searchq); //Can only search words
// Select records if name's match
$sql = "SELECT * FROM birdt WHERE birdName LIKE '%$searchq%'";
}
// Tests if connection is made to the db to query it
if ($conn->query($sql)=== TRUE){
echo "The rows you have searched for are:";
} else {
echo "Connection failed: ";
echo $conn->error;
}
// Show fields
$result = $conn->query($sql);
// Output data of each row
if ($result-> num_rows> 0) {
readfile("ViewReturn.html");
while($row = $result-> fetch_assoc()) {
// redirect the user to a new page
echo "<a href='sort.php'> Bird Name: ".$row["birdName"]. "</a><br><br>"; // Important row
}
} else {
echo "0 results";
}
?>
このコードは、ユーザー入力に応じて、データベースから値を返すために使用することができます。それは "birdName"を返し、ユーザが照会結果をクリックして "sort.php"ページに行くことを可能にする。
戻ってきたフィールド "birdName"をセッション変数でクリックする前に一度保存すると、次のページにアクセスできますか?
P.S.私の質問は非常に具体的で、非道であると理解していますが、私は真剣にこれを動作させるのに苦労しています。あなたは、あなたがこのアレイ上にデータベースから各鳥の名前を押して、セッション変数にアレイ内のすべての鳥の名前を保存することができます
session_start();
を配置する必要があり、スクリプトの開始時に
'session_start(); $ _SESSION ['var'] = $ x; ' –
@ Fred-ii-助けてくれてありがとうございます。 session_start(); $ _SESSION ['var'] = $ birdName; 割り当てられている値がデータベースのフィールドの場合でもこれは機能しますか? – Bossman
あなたの 'while'ループでは、行をセッション配列に割り当てます。だから、 '$ _SESSION ['var'] = $ row [" birdName "];'種類のものを実行すると 'echo $ var = $ _SESSION ['var']; –