2017-08-27 64 views
-1

現在我已經硬編碼下面的PHP代碼,我想兩個值傳遞給index.php如何包含在URL

<a href="index.php?vaccineid=VI 7038&patientid=PN001"> 
<?php echo $row['vaccine'];?></a> 

我曾嘗試與動態代碼來取代它,但不成功

<a href="index.php?vaccineid =<?php echo "$row['vaccineid']";?> 
&patientid=<?php echo "$_SESSION['abc']"; ?>"><?php echo $row['vaccine'];?></a> 

任何想法?由於

回答

1

在雙引號字符串中使用數組索引時,請勿在索引周圍加引號。因此,所有你需要做的是改變

echo "$row['vaccineid']" 
echo "$_SESSION['abc']" 

要:

// Remove single-quotes around keys ['key'] => [key] 
echo "$row[vaccineid]" 
echo "$_SESSION[abc]" 

或者因爲你是輸出只是數組值去掉雙引號:

echo $row['vaccineid'] 
echo $_SESSION['abc'] 
1

我覺得也許使用http_build_query()從手冊:

<?php 
$values = array(
    'vaccineid' => $row['vaccineid'], 
    'patientid'=> $_SESSION['abc'] 
); 
?> 
<a href="index.php?<?php echo http_build_query($values) ?>"><?php echo $row['vaccineid'] ?></a> 

檢查您的陣列,以確保它是你所期望的:

print_r($values); 

最後要注意,如果你有會話中的$_SESSION['abc'],不要通過GET發送,只需在處理下一頁的vaccineid時從會話中檢索它即可。

+0

不錯的答案。你在第3行的數組鍵中有一個錯字。應該是'vaccineid' – BeetleJuice

1

您的變量無法解析裏面有雙引號。

<a href="index.php?vaccineid=<?php echo urlencode($row['vaccineid']));?>&patientid=<?php echo $_SESSION['abc']; ?>"><?php echo $row['vaccine'];?></a> 

編輯:你也需要編碼vaccineid,因爲它包含包含空格。