[英]click a link pass a session variable to the next page
我在一個頁面上使用PHP while循環來呼應我們經銷商的名稱和地址。 對於電子郵件鏈接,我希望用戶能夠單擊該鏈接,然后將其帶到向該人發送電子郵件的表單。
我知道您不能混合使用Javascript和PHP,那么如何知道用戶單擊了哪個鏈接,以便可以將該變量傳遞給下一頁的表單? 這是我的代碼:
<?php while($row = mysql_fetch_array($result)) {
if ($row['active'] == 1) {
?>
<div id="dealer">
<div id="dealername">
<h3 style="float:left;"><?php echo $row['company']; ?></h3><br/>
<p><?php echo $row['address1']; ?><br/>
<?php if($row['address2'] || $row['address3']) {
echo $row['address2'] . ' ' . $row['address3'] . '<br/>'; } ?>
<?php echo $row['city'];
if ($row['state']) {
echo ', ' . $row['state'];
}
echo ' ' . $row['zip']; ?>
<br />
<?php echo $row['country']; ?>
<br />
<br />
Phone: <strong><?php echo $row['phone1']; ?></strong><?php if ($row['phone2']) {
echo ' or ' . $row['phone2']; } ?><br/>
<?php if($row['fax']) { echo 'Fax: ' . $row['fax']; } ?><br />
</p>
</div>
<?php if ($row['email']) {
echo '<div class="dealerEmail">'. // need help here . '</div>';
} ?>
<br class="clearall" />
</div>
<?php }} ?>
該代碼出現的頁面是使用GET語句從數據庫中提取數據,該語句基於類似於“ index.php?state = az”的URL。
我嘗試使電子郵件鏈接使用“?email = ...”格式,但是當我轉到Dealer-email.php頁面時,URL中沒有任何參數,但我沒有得到。 這就是為什么我試圖根據用戶單擊的鏈接來尋找其他方式將某種變量傳遞給下一頁的原因。
希望這很清楚。 在此先感謝您的幫助。
這應該工作正常:
<a href="somepage.php?email=<?php echo $row['email']; ?>">contact dealer</a>
然后在somepage.php
頁面中檢索數據:
if(isset($_GET['email']))
$email = $_GET['email'];
else
//redirect somewherelse
我知道您不能混合使用Javascript和PHP
這不是真的。 Javascript是一種客戶端腳本語言,而PHP是一種服務器端腳本。 它們可以在不同的時間,不同的機器上運行,並且可以正常運行。
混合使用Javascript和PHP可能是一個精神挑戰,並且有很多陷阱,但是絕對可以做到,而且經常可以做到。
您可能會完全跳過電子郵件表單,並在鏈接中包含mailto屬性。
<a href="mailto:<?php echo $row['email'];?>">contact dealer</a>
這將打開用戶的默認電子郵件客戶端新消息窗口,並填入地址。我知道您可能想使用自定義表單來防止某人向您的所有聯系人發送垃圾郵件,但是如果這是登錄用戶的受限區域,或者Intranet網站,這可能有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.