Output om en om gekleurd

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

ArendJan

ArendJan

05/09/2007 15:07:00
Quote Anchor link
Ik heb een reactiesysteem... Nu wil ik eigenlijk dat de reacties om en om een witte/paarse achtergrond hebben. Is dit makkelijk te maken? Ik ben een designer, geen phhper dus heb er geen ervaring mee....

Grt
ArendJan
 
PHP hulp

PHP hulp

20/04/2024 09:16:20
 
Joren de Wit

Joren de Wit

05/09/2007 15:09:00
Quote Anchor link
Dat is vrij eenvoudig te realiseren met twee css klasses die je met behulp van php om en om meegeeft aan bijvoorbeeld een <li> of <tr> element.

Ik heb hier een voorbeeld staan.
 
Arjan Kapteijn

Arjan Kapteijn

05/09/2007 15:12:00
Quote Anchor link
Kijk of de reacties deelbaar zijn door 2 (even) of niet (oneven), aan de hand daarvan geef je je tabelrij/div/li een andere kleur mee. Dat doe ik zelf ook.
 
ArendJan

ArendJan

05/09/2007 15:19:00
Quote Anchor link
Ok, ik denk dat het me wel lukt aan de hand van die van Blanche.

Btw Arjan, ik snap ook wel hoe je dat moet aanpakken, alleen ben ik te slecht in php om dat zelf te maken. ;)
 
ArendJan

ArendJan

05/09/2007 15:26:00
Quote Anchor link
Ik vraag toch nog even jullie hulp.

Dit is de code die om en om dus gekleurd/niet gekleurd moet worden:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
echo('<table width="100%" bgcolor="#cccccc">');
                       while ($row = mysql_fetch_array($result))
                       {
                               $i++;
                               echo('<tr><td><img src="images/comment_blue.gif" alt="Reactie!" /><br/>Door:<b> '.$row['naam'].'</b></td></tr>');
                               echo('<tr><td>Op: '.$row['datumnl'].'</td></tr>');
                               echo('<tr><td><hr size="1" color="#cccccc"></td></tr>');
                               echo('<tr><td>'.$row['reactie'].'</td></tr>');
  


Nu heb ik een poging gedaan dat script van Blanche aan de praat te krijgen...

Dus als iemand denkt dat ie zn pluspunt van vandaag nog moet verdienen... ;-) Kan iemand dit even voor mij aan proberen te zwengelen?

Zoals je ziet gaat het bij mij alleen om de table die een ander bg krijgt...

Danke.
Gewijzigd op 01/01/1970 01:00:00 door ArendJan
 
Frank -

Frank -

05/09/2007 15:48:00
Quote Anchor link
Hier een eenvoudig voorbeeldje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$array
= array(1,2,3,4,5,6,7);

$i = 0;
foreach ($array as $value) {
    $css = ($i++%2)?  'blauw':'rood';
    echo $css.PHP_EOL;
}

?>

Resultaat:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
rood
blauw
rood
blauw
rood
blauw
rood

blauw en rood zijn de verwijzingen naar de bijbehorende css.

Tip: echo is geen functie ( en ) horen daar dus niet bij te staan.
 
ArendJan

ArendJan

05/09/2007 15:53:00
Quote Anchor link
Voor de duidelijkheid. Ik kan amper php en heb het ook laten scripten voor me, alleen wilde ik nog wat kleine verandering doorvoeren. Kan iemand dit bovenstaande stukje code in bv. jouw of Blanches script verwerken?
 
Joren de Wit

Joren de Wit

05/09/2007 15:55:00
Quote Anchor link
Hoe heb je het precies opgebouwd? Gebruik je voor de verschillende reacties telkens een nieuwe tabel?

In dat geval moet <table> natuurlijk ook in de while-loop staan. Vervolgens kun je die table dan een css klasse meegeven met behulp van php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$n
= 0;
while ($row = mysql_fetch_array($result))
{

    $n ^= 1;
    echo '<table width="100%" class="bg'.$n.'">'
    echo '<tr><td><img src="images/comment_blue.gif" alt="Reactie!" /><br/>Door:<b> '.$row['naam'].'</b></td></tr>';
    echo '<tr><td>Op: '.$row['datumnl'].'</td></tr>';
    echo '<tr><td><hr size="1" color="#cccccc"></td></tr>';
    echo '<tr><td>'.$row['reactie'].'</td></tr>';
    echo '</table>';
}

?>

En vervolgens neem je in je css code de volgende twee klasses op:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
table.bg0 {
    background-color: #99ccff;
}
table.bg1 {
    background-color: #3399ff;
}

Alleen de kleuren nog even aanpassen natuurlijk.
 
ArendJan

ArendJan

05/09/2007 21:11:00
Quote Anchor link
Het lukt me niet echt... weetniet of ik misschien het hele script ff moet neergooien... (de betreffende pagina...)
 
Klaasjan Boven

Klaasjan Boven

05/09/2007 21:29:00
Quote Anchor link
probeer het eens :)
 
Jan Koehoorn

Jan Koehoorn

05/09/2007 21:33:00
 
Jurgen assaasas

Jurgen assaasas

06/09/2007 08:22:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$i
=0;

//while loop begin
if($i++ %2 == 0)
{

echo '<tr class="rood">';
}

else
{
echo '<tr class="blauw">';
}



//hier de rest van je output.

//while loop einde

?>


Gewoon dit even ter vervanging van je <tr> zetten dan zou het moeten werken. wel even de $i buiten de while loop gooien anders wordt hij telkens reset en krijg je altijd class="blauw"
Gewijzigd op 01/01/1970 01:00:00 door Jurgen assaasas
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.