我試圖實現一種顯示始終不同信息的模式。這取決於你點擊的名字。此時他總是展示最新鏈接的模式。使用foreach打開不同的模態診斷()
這裏我打印出不同的信息。對於每一行,我想一個特定的模式
PHP
foreach ($badgesNotifications as $notifications) {
echo "<p>Congratulations! You've earned the <a href='#' data-reveal-id='myModal'>" . $notifications['challenge_badge_title'] ." badge</a></p>";
echo "<div id='myModal' class='reveal-modal' data-reveal>
<h2>" . $notifications['challenge_title'] . "</h2>
<p class='lead'>Your couch. It is mine.</p>
<p>" . $notifications['challenge_description'] . " </p>
<a class='close-reveal-modal'>×</a>
</div>";
}
?>
我試圖在鏈接與$notifications['challenge_badge_title']
替換「myModal」和郵件的ID,但後來他是不開放的模式。
標題總是不同,所以我認爲他會打開另一個窗口。該ID不必是「MyModal」所必需的,因爲它可以與其他單詞結合使用。
我也嘗試把數據放在不同的數組中,因爲它們是互相覆蓋的。但這也不能解決我的問題。
public function BadgeNotifications($user_id)
{
$db = new Db();
$select = "SELECT
c.challenge_id,
c.challenge_title,
c.challenge_target,
c.challenge_description,
c.challenge_badge_img,
c.challenge_badge_title,
p.challenge_id,
p.user_id,
p.challenge_progress
FROM (tblchallenges c INNER JOIN tblchallenges_progress p ON c.challenge_id = p.challenge_id) WHERE p.user_id = " . $user_id . " ";
$result = $db->conn->query($select);
$result_count = mysqli_num_rows($result);
$result_array = array();
for($i = 0; $i < $result_count; $i++)
{
$result_data = mysqli_fetch_assoc($result);
$result_array[$i]["challenge_id"] = $result_data["challenge_id"];
$result_array[$i]["challenge_title"] = $result_data["challenge_title"];
$result_array[$i]["challenge_description"] = $result_data["challenge_description"];
$result_array[$i]["challenge_badge_title"] = $result_data["challenge_badge_title"];
}
return $result_array;
}
什麼運行你的模態對話框?你使用Javascript嗎?快速瀏覽不會顯示您的PHP代碼的基本問題,但僅僅回顯某個班級不會給您一個模式窗口。 – freshnode
我正在使用基金會http://foundation.zurb.com/docs/components/reveal.html中的模版。它爲每個通知提供一個模式窗口,但信息始終是最後通知的信息 – Lisa