Jag har en liknande fråga. Hur gör jag så att varannan rad blir i en annan färg?
<?php
// Plocka ut 10 senaste SMS
$res = mysql_query('SELECT *,unix_timestamp(tstamp) as utstamp FROM sms
ORDER BY tstamp DESC LIMIT 10');
// Eka ut en tabell
echo '<table width="70%" cellspacing="0" cellpadding="5" border="1">';
echo '<tr><th>Datum</th><th>Meddelande</th></tr>';
// Gå igenom varje SMS - skriv ut tabellrader
while ($row = mysql_fetch_assoc($res)) {
// Plocka bort första ordet (prefix) ur meddelandet
$row['message'] = substr($row['message'],strpos($row['message'],' '));
// Plocka ev bort andra ordet ur meddelandet, på samma sätt
// $row['message'] = substr($row['message'],strpos($row['message'],' '));
echo '<tr>';
echo '<td>' . date('ymd h:i',$row['utstamp']) . '</td>';
echo '<td>' . $row['message'] . '</td>';
echo '</tr>';
}
echo '</table>';
?>
<?php
// Plocka ut 10 senaste SMS
$res = mysql_query('SELECT *,unix_timestamp(tstamp) as utstamp FROM sms
ORDER BY tstamp DESC LIMIT 10');
// Eka ut en tabell
echo '<table width="70%" cellspacing="0" cellpadding="5" border="1">';
echo '<tr><th>Datum</th><th>Meddelande</th></tr>';
$n=0; // startvärde
// Gå igenom varje SMS - skriv ut tabellrader
while ($row = mysql_fetch_assoc($res)) {
// Plocka bort första ordet (prefix) ur meddelandet
$row['message'] = substr($row['message'],strpos($row['message'],' '));
// Plocka ev bort andra ordet ur meddelandet, på samma sätt
// $row['message'] = substr($row['message'],strpos($row['message'],' '));
echo '<tr style="background-color: ' . ($n++%2==0?"#ff0000":"#00ff00") . ';">'; // denna raden är ändrad
echo '<td>' . date('ymd h:i',$row['utstamp']) . '</td>';
echo '<td>' . $row['message'] . '</td>';
echo '</tr>';
}
echo '</table>';
?>
/red ändrade från + (plus) till . (punkt) på raden echo '<tr style="background-color: ' + ($n++%2==0?"#ff0000":"#00ff00") + ';">'; // denna raden är ändrad
Tack för ett snabbt svar, men det verkar inte fungera. :(
Som det ser ut nu, så får jag bara en massa nollor "0" över själva tabellen och ingen rad byter färg.
Tack för ett snabbt svar, men det verkar inte fungera. :(
Som det ser ut nu, så får jag bara en massa nollor "0" över själva tabellen och ingen rad byter färg.
Tack för ett snabbt svar, men det verkar inte fungera. :(
Som det ser ut nu, så får jag bara en massa nollor "0" över själva tabellen och ingen rad byter färg.
Njae, det blir inte rätt. om du visar rad 4 så ska den bli en annan färg men det blir den inte i ditt exempel.
$i = 4;
$d = 4 * 4 = 16;
$nu = 16 / 2 = 8;
if(8 == 4)
för rad 2 blir det rätt men inte längre.
$i = 2;
$d = 2 * 2 = 4;
$nu = 4 / 2 = 2;
if (2 == 2)
ajdå, var jag som precis kommit från asp och råkade använda + istället för . (punk) för att sammanfoga strängarna. nu fungerar det.
<?php
// Plocka ut 10 senaste SMS
$res = mysql_query('SELECT *,unix_timestamp(tstamp) as utstamp FROM sms
ORDER BY tstamp DESC LIMIT 10');
// Eka ut en tabell
echo '<table width="70%" cellspacing="0" cellpadding="5" border="1">';
echo '<tr><th>Datum</th><th>Meddelande</th></tr>';
$n=0; // startvärde
// Gå igenom varje SMS - skriv ut tabellrader
while ($row = mysql_fetch_assoc($res)) {
// Plocka bort första ordet (prefix) ur meddelandet
$row['message'] = substr($row['message'],strpos($row['message'],' '));
// Plocka ev bort andra ordet ur meddelandet, på samma sätt
// $row['message'] = substr($row['message'],strpos($row['message'],' '));
echo '<tr style="background-color: ' . ($n++%2==0?"#ff0000":"#00ff00") . ';">'; // denna raden är ändrad
echo '<td>' . date('ymd h:i',$row['utstamp']) . '</td>';
echo '<td>' . $row['message'] . '</td>';
echo '</tr>';
}
echo '</table>';
?>