[英]Assign div colour based on MySQL output
不知道如何寫標題對不起。 基本上,我有一個注釋系統,它的工作原理非常簡單,從一個數據庫中選擇帖子的uid,然后從另一個數據庫中輸出與該UID關聯的注釋。
評論系統的本質是每個發布者都是匿名的,因此很難跟蹤您是否與同一個人進行交流,因此,我想使圍繞評論的div成為特定的顏色,並且該人對該帖子發表的每條評論都應為該顏色。 將用戶評論聯系在一起的唯一內容是IP地址。
到目前為止,我的代碼:
$sql = "SELECT * FROM anonpost_com WHERE uid = '$uid' ORDER BY date DESC";
$result = mysql_query($sql) or print ("Can't select entry from table anonpost.<br />" . $sql . "<br />" . mysql_error());
while($row = mysql_fetch_array($result)) {
$date = date("l F d Y", strtotime($row['date']));
$comment = stripslashes($row['comment']);
$uid = ($row['uid']);
$cid = ($row['cid']);
$ip = ($row['ip']);
?>
<div id="comments" style="border:1px solid <?php echo $colour; ?>;">
<p><?php echo $comment; ?></p>
<h4>by <i>Anonymous</i> on <?php echo $date; ?></h4>
</div>
<?php
}
?>
$ colour來自:$ colour = dechex(rand(0,10000000);但是我不確定如何在評論中使相同IP的每個實例的$ colour都相同...
任何幫助,將不勝感激!
我同意IP地址可能不是最佳解決方案,但可以這樣做:
$sql = "SELECT * FROM anonpost_com WHERE uid = '$uid' ORDER BY date DESC";
$colours = array();
$result = mysql_query($sql) or print ("Can't select entry from table anonpost.<br />" . $sql . "<br />" . mysql_error());
while($row = mysql_fetch_array($result)) {
$date = date("l F d Y", strtotime($row['date']));
$comment = stripslashes($row['comment']);
$uid = ($row['uid']);
$cid = ($row['cid']);
$ip = ($row['ip']);
if (!isset($colours[$ip])) {
$colours[$ip] = dechex(rand(0,10000000);
}
$colour = $colours[$ip];
?>
<div id="comments" style="border:1px solid <?php echo $colour; ?>;">
<p><?php echo $comment; ?></p>
<h4>by <i>Anonymous</i> on <?php echo $date; ?></h4>
</div>
<?php
}
?>
請注意,每次加載頁面時顏色都會改變。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.