2013-03-26 40 views
0

這可能有點不好,但我不知道從哪裏開始解決問題。一個友好的微調正確的方向將不勝感激。將圖像的ID傳遞給另一頁

我想擁有一個材質畫廊,材料的圖像存儲在數據庫中,現在我想讓用戶點擊他們喜歡的材料的特定圖像,這將導致他們接下來將計算價格的頁面。

所以我想我的問題是,我如何將他們選擇的這個變量帶到畫廊的下一頁?

任何幫助,不勝感激

順便說一句,這是我對正從數據庫顯示的圖像代碼:

<?php 

    mysql_connect("localhost","root",""); 
    mysql_select_db ("imagez"); 

    $res=mysql_query("select * from imgz"); 

    while($row=mysql_fetch_array($res)) 
    { 

    echo "<a href=\"page.php?id={$row['id']}\" />  
    <img src=\"{$row['img']}\> </a>"; 

    } 

?> 
+0

'「;'必須是'」;' - 看到區別? – michi 2013-03-26 01:35:06

+0

哇,你真棒!謝謝它的作品,如果你不介意,只是最後一個問題,我該如何在這裏代表某人? =) – user2209644 2013-03-26 01:39:06

+0

在我答案的左邊,點擊V形箭頭下的勾號來接受我的答案,以進行投票,你需要更多的代表 – michi 2013-03-26 01:42:05

回答

0

你可以交出值到另一個頁面......

(1)QUERYSTRING(URL)

page.php?do=show&id=5 

從您的分貝拉記錄的唯一ID創建這些和創建一個鏈接:

echo "<a href=\"page.php?id={$row['id']}\" />{$row['name']}</a>"; 

假設您的表imgz具有字段id,name。

在page.php文件,你會得到這些變量與

$_GET['do']; $_GET['id']; 

:快速&容易
禁忌:可以通過邪惡的用戶很容易被操縱 - 他們改變了查詢字符串,讓你的腳本做奇怪的事情。

(2)發表

創建<form method="post" action="page.php">與包含 '身份證' 你想傳遞一個名爲id隱藏字段。添加一個<submit>按鈕將數據發送到page.php。

$_POST['id']; 

親:安全的,因爲邪惡的用戶不能使用POST不甘示弱
禁忌:開銷

在page.php文件,您可以通過獲取這些值3)會話:

在每頁頂部打電話session_start();,wri忒數據到會話由...

$_SESSION['id'] = $id; $_SESSION['do'] = "show"; 

這些變量將被保留頁之間,在page.php文件,你可以簡單地使用S_SESSION['id']並具有價值 - 如果你叫session_start()

親:方便,安全,PHP將做的工作適合你(例如處理Cookie等)
禁忌:會把負荷您的網絡服務器,如果流量都在您的網站。

+0

謝謝,我應該指定的是雖然我知道如何傳遞一個變量一頁到另一頁,我沒有得到的是,一旦用戶點擊圖像,我怎麼能得到圖像的'id'被放置到變量中?如果那有意義的話? :S – user2209644 2013-03-26 00:27:44

+0

@ user2209644:看幾秒我的編輯 – michi 2013-03-26 00:30:22

+0

一些很棒的東西,我試過使用這個,它一切工作,直到我添加圖像,這就是我已經做了'回聲'{$row['name']} 「;'但現在每個鏈接只鏈接ID 1,只顯示3圖像,而不是4,任何想法爲什麼? – user2209644 2013-03-26 01:16:47

0

上而不是通過URL傳遞變量,你可以使用cookie來存儲變量,做計算,檢查起來。

<?php 
$expire=time()+60*60*24*30; 
setcookie("price", "$54", $expire); 

echo $_COOKIE['price']; 
?> 

現在變量$price會針對您的網頁,最後不要忘記清除cookie的`的setcookie(「HP」,「」,$到期);