Avatar billede prodigy01 Nybegynder
19. oktober 2005 - 18:00 Der er 13 kommentarer og
1 løsning

Hver anden har en anden farve.

Jeg har et nyheds system, men vil gerne have sådan at hver anden nyhed har en anden farve.
f.eks:

Blå
Grøn
Blå
Grøn

osv.
Avatar billede jaw Nybegynder
19. oktober 2005 - 18:04 #1
F.eks.:

$color1 = "#FFFFFF";
$color2 = "#000000";

$i = 0;
while(din_løkke) {
    $color = (($i%2) == 0) ? $color1 : $color2;
    //udskift af løkken, hvor du bruger $color som baggrundsfarven i dine tables/td/tr
    $i++;
}
Avatar billede prodigy01 Nybegynder
19. oktober 2005 - 18:21 #2
Jeg dur' ikk så meget til det med løkker osv.
Kunne det være at du kunne sætte det ind for mig?

<html>

<head>

<link rel="stylesheet" HREF="style.css" type="text/css">

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
.style1 {color: #8B0000}
-->
</style></head>

<body oncontextmenu="return false"ondragstart="return false"onselectstart="return false">
<?
if($_GET[vis] == "" OR $_GET[vis] == "nyeste") {
include("database.php");
$hent_nyhed = mysql_query("SELECT * FROM nyheder ORDER BY id DESC LIMIT 10") or die(mysql_error());
while($vis = mysql_fetch_array($hent_nyhed)) {
?>
<table border="0" cellspacing="1" width="417" height="56">
  <tr>
    <td valign="top" width="84"><img src="nyheds_ikoner/<?  print $vis[image]; ?>"> </td>
    <td valign="top" width="326"><table border="0" cellspacing="1" width="324" height="64">
        <tr>
          <td width="296" height="21" valign="top"><b><? echo $vis[overskrift]; ?></b></td>
        </tr>
        <tr>
          <td width="296" valign="middle"><? echo substr($vis[nyhed],0,95); ?>...</td>
        </tr>
        <tr>
          <td valign="middle"><a href="?side=nyhed&id=<? echo $vis[id]; ?>">L&aelig;s mere!</a></td>
        </tr>
    </table></td>
  </tr>
</table>
<HR color=#CECDB9 SIZE=1>

<?
    }
}
if($_GET[vis] == "alle") {
include("database.php");
$hent_nyhed = mysql_query("SELECT * FROM nyheder ORDER BY id DESC") or die(mysql_error());
while($vis = mysql_fetch_array($hent_nyhed)) {
?>
<table border="0" cellspacing="1" width="417" height="56">
  <tr>
    <td valign="top" width="84"><img src="nyheds_ikoner/<?  print $vis[image]; ?>"> </td>
    <td valign="top" width="326"><table border="0" cellspacing="1" width="324" height="64">
        <tr>
          <td width="296" height="21" valign="top"><b><? echo $vis[overskrift]; ?></b></td>
        </tr>
        <tr>
          <td width="296" valign="middle"><? echo substr($vis[nyhed],0,95); ?>...</td>
        </tr>
        <tr>
          <td valign="middle"><a href="?side=nyhed&id=<? echo $vis[id]; ?>">L&aelig;s mere!</a></td>
        </tr>
    </table></td>
  </tr>
</table>
<HR color=#CECDB9 SIZE=1>

<?
    }
}
?>


</body>

</html>
Avatar billede mahler Nybegynder
19. oktober 2005 - 18:23 #3
Avatar billede prodigy01 Nybegynder
19. oktober 2005 - 18:30 #4
Er ikke lige til javascripts
Avatar billede zib Nybegynder
19. oktober 2005 - 18:31 #5
$query = mysql_query("SELECT * FROM tabel");
while($row = mysql_fetch_array($query)){
$i++;
if ($i%2 == 1) {
$class = "ulige";
} else {
$class = "lige";
}
Avatar billede prodigy01 Nybegynder
19. oktober 2005 - 18:32 #6
Hvor kommer farverne så ind henne?
Avatar billede jaw Nybegynder
19. oktober 2005 - 18:39 #7
Jeg vil tro, at dette bør virke for dig hvis du udskifter det:

if($_GET[vis] == "alle") {
include("database.php");
$hent_nyhed = mysql_query("SELECT * FROM nyheder ORDER BY id DESC") or die(mysql_error());
$i = 0;
$color1 = "#FFFFFF";
$color2 = "#000000";
while($vis = mysql_fetch_array($hent_nyhed)) {
$color = (($i%2) == 0) ? $color1 : $color2;
?>
<table border="0" cellspacing="1" width="417" height="56">
  <tr bgcolor="<?=$color;?>">
    <td valign="top" width="84"><img src="nyheds_ikoner/<?  print $vis[image]; ?>"> </td>
    <td valign="top" width="326"><table border="0" cellspacing="1" width="324" height="64">
        <tr>
          <td width="296" height="21" valign="top"><b><? echo $vis[overskrift]; ?></b></td>
        </tr>
        <tr>
          <td width="296" valign="middle"><? echo substr($vis[nyhed],0,95); ?>...</td>
        </tr>
        <tr>
          <td valign="middle"><a href="?side=nyhed&id=<? echo $vis[id]; ?>">L&aelig;s mere!</a></td>
        </tr>
    </table></td>
  </tr>
</table>
<HR color=#CECDB9 SIZE=1>

<?
    }
}
?>
Avatar billede prodigy01 Nybegynder
19. oktober 2005 - 18:46 #8
Den viser hvid bg ved dem alle =/
Avatar billede jaw Nybegynder
19. oktober 2005 - 18:48 #9
Nå ja, den her:

<?
    }
}
?>

skal lige ændres til:
<?
    $i++;
    }
}
?>
Avatar billede hmortensen Nybegynder
19. oktober 2005 - 18:59 #10
Kan også lave optællingen direkte i if sætningen:
$color = (($i++%2) == 0) ? $color1 : $color2;
Avatar billede prodigy01 Nybegynder
19. oktober 2005 - 19:03 #11
Det virkede.. smid svar..
Men jeg gider ikk havde at den skal vise nyhederne kun hvis man vælger vis alle, jeg vil have at alle vises på en side.
Så jeg slettede

if($_GET[vis] == "alle") {

Men så får jeg denne fejl:

Parse error: parse error, unexpected '}' in /web/www/frac/users/towerssecrets/nyheder.php on line 31
Avatar billede jaw Nybegynder
19. oktober 2005 - 19:04 #12
Så skal du fjerne den ene } af de 2 du har i bunden.

Og selv tak, går næsten ud fra at det var til mig? :)
Avatar billede hmortensen Nybegynder
19. oktober 2005 - 19:04 #13
Så mangler du muligvis at slette en } i bunden.
Avatar billede prodigy01 Nybegynder
19. oktober 2005 - 19:13 #14
Ja det var det os Jaw..

Men tak til jer alle for jeres indsats =D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester