0

私のウェブサイトで次のコードを実行しています。私はそれをhtmlフォームから呼び出します。フォームには、データベースでリダイレクト値を検索し、Webサイトにリダイレクトする必要があるクライアント番号があります。リダイレクトは、データベース内の1つの値でうまく機能します。ただし、さらに値を追加すると、最後の値が使用されます。見えるようにエコー後藤を追加しました。スクリプトは、データベース全体のすべてのリダイレクト値をプルします。client_numberに関連付けられたリダイレクト値を取得するにはどうすればよいですか?

<php 

$host="localhost"; // Host name  
$username=""; // Mysql username  
$password=""; // Mysql password  
$db_name=""; // Database name  
$tbl_name="clients"; // Table name  

// Connect to server and select databse. 
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 

// sent from form
$myclient=$_POST['myclient']; 

$myclient = stripslashes($myclient); 

$sql="SELECT * FROM $tbl_name WHERE client_number='$myclient'"; 

$result=mysql_query($sql); 


$count=mysql_num_rows($result); 

if($count==1){ 

$result = mysql_query("SELECT redirect FROM clients"); 

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { 


$goto = $row['redirect'];
//added to see output
echo $goto; 
//header ("location: $goto");
} 
exit(); 
} 
else { 
echo "Account number is invalid"; 
} 
?> 
4

1 に答える 1

0

クエリから、すべてのリダイレクトを取得しています

$result = mysql_query("SELECT redirect FROM clients"); 

どちらであるべきか

$result = mysql_query("SELECT redirect FROM clients WHERE clientID=1234");

次に、while代わりに使用していましたif

if($row = mysql_fetch_array($result, MYSQL_ASSOC)) { }

header('Location: xyz.ext')ループでリダイレクトを使用するのは悪いことです

于 2012-08-18T09:33:12.990 に答える