[resolvido] cor linha [php]

RicAlmeida

Power Member
boas pessoal,

é assim, tenho este codigo em php
PHP:
$pesquisa1=mysql_query("SELECT * FROM calendario WHERE mes=1 and ano=".$ano." ORDER BY dia ASC");
$num1=mysql_num_rows($pesquisa1);
echo "<tr><td colspan=4 bgcolor=#CDCDC1><b>:: Janeiro</b></td></tr>";
if ($num1<=0) { echo "<tr><td colspan=4 align=center>Não existe eventos para este mês</td></tr>"; }
else {
    for ($i=0;$i<$num1;$i++) {
        echo "<tr><td bgcolor=#EEEEE0>";
        echo mysql_result($pesquisa1,$i,'dia');
        if (mysql_result($pesquisa1,$i,'diaate')!=0){
            echo "-".mysql_result($pesquisa1,$i,'diaate'); }
        echo "</td><td>";
        echo mysql_result ($pesquisa1,$i,'evento');
        echo "</td><td bgcolor=#EEEEE0>";
        echo mysql_Result($pesquisa1,$i,'escalao');
        echo "</td><td>";
        echo mysql_Result($pesquisa1,$i,'local');
        echo "</td></tr>"; }}

o que eu quero é o seguinte:
que uma linha fiquei de um cor e a outra linha doutra.
por exemplo :
preto
branco
preto
branco
 
boas pessoal,

é assim, tenho este codigo em php
PHP:
$pesquisa1=mysql_query("SELECT * FROM calendario WHERE mes=1 and ano=".$ano." ORDER BY dia ASC");
$num1=mysql_num_rows($pesquisa1);
echo "<tr><td colspan=4 bgcolor=#CDCDC1><b>:: Janeiro</b></td></tr>";
if ($num1<=0) { echo "<tr><td colspan=4 align=center>Não existe eventos para este mês</td></tr>"; }
else {
    for ($i=0;$i<$num1;$i++) {
        echo "<tr><td bgcolor=#EEEEE0>";
        echo mysql_result($pesquisa1,$i,'dia');
        if (mysql_result($pesquisa1,$i,'diaate')!=0){
            echo "-".mysql_result($pesquisa1,$i,'diaate'); }
        echo "</td><td>";
        echo mysql_result ($pesquisa1,$i,'evento');
        echo "</td><td bgcolor=#EEEEE0>";
        echo mysql_Result($pesquisa1,$i,'escalao');
        echo "</td><td>";
        echo mysql_Result($pesquisa1,$i,'local');
        echo "</td></tr>"; }}
o que eu quero é o seguinte:
que uma linha fiquei de um cor e a outra linha doutra.
por exemplo :
preto
branco
preto
branco

Defines duas variáveis, tipo $linha1 = corA e $linha2 = corB

antes do for, inicializas um $linha = 0; e no final do for incrementas

no inicio do for, ou no td bgcolor colocas um if
se o resto da divisão do $linha por 2 for zero atribuis uma cor
se não for zero, atribuis outra
 
deve bastar isto:
Código:
[COLOR=DarkOrange][B]$cor = "white";[/B][/COLOR]
$pesquisa1=mysql_query("SELECT * FROM calendario WHERE mes=1 and ano=".$ano." ORDER BY dia ASC");
$num1=mysql_num_rows($pesquisa1);
echo "<tr><td colspan=4 bgcolor=#CDCDC1><b>:: Janeiro</b></td></tr>";
if ($num1<=0) { echo "<tr><td colspan=4 align=center>Não existe eventos para este mês</td></tr>"; }
else {
    for ($i=0;$i<$num1;$i++) {
[COLOR=DarkOrange][B]       if ($cor == "white"){
                $cor = "black";
        }
        else
        {
                $cor = "white";
        }[/B][/COLOR]
        echo "<tr [B][COLOR=DarkOrange]BGCOLOR=" . $cor . "[/COLOR][/B]><td bgcolor=#EEEEE0>";
        echo mysql_result($pesquisa1,$i,'dia');
        if (mysql_result($pesquisa1,$i,'diaate')!=0){
            echo "-".mysql_result($pesquisa1,$i,'diaate'); }
        echo "</td><td>";
        echo mysql_result ($pesquisa1,$i,'evento');
[COLOR=DarkOrange][/COLOR]        echo "</td><td bgcolor=#EEEEE0>";
        echo mysql_Result($pesquisa1,$i,'escalao');
        echo "</td><td>";
        echo mysql_Result($pesquisa1,$i,'local');
        echo "</td></tr>"; }}
cumps
 
Última edição:
PHP:
$pesquisa1=mysql_query("SELECT * FROM calendario WHERE mes=1 and ano=".$ano." ORDER BY dia ASC");
$num1=mysql_num_rows($pesquisa1);
echo "<tr><td colspan=4 bgcolor=#CDCDC1><b>:: Janeiro</b></td></tr>";
if ($num1<=0) { echo "<tr><td colspan=4 align=center>Não existe eventos para este mês</td></tr>"; }
else {
    for ($i=0;$i<$num1;$i++) {
        if($i%2) {
        echo "<tr><td bgcolor=#EEEEE0>";
        }
        else{
        echo "<tr><td bgcolor=#CCCCCC>";
        }
        echo mysql_result($pesquisa1,$i,'dia');
        if (mysql_result($pesquisa1,$i,'diaate')!=0){
            echo "-".mysql_result($pesquisa1,$i,'diaate'); }
        echo "</td><td>";
        echo mysql_result ($pesquisa1,$i,'evento');
        echo "</td><td bgcolor=#EEEEE0>";
        echo mysql_Result($pesquisa1,$i,'escalao');
        echo "</td><td>";
        echo mysql_Result($pesquisa1,$i,'local');
        echo "</td></tr>"; }}

Experimenta assim.
 
deve bastar isto:
Código:
[COLOR=DarkOrange][B]$cor = "white";[/B][/COLOR]
$pesquisa1=mysql_query("SELECT * FROM calendario WHERE mes=1 and ano=".$ano." ORDER BY dia ASC");
$num1=mysql_num_rows($pesquisa1);
echo "<tr><td colspan=4 bgcolor=#CDCDC1><b>:: Janeiro</b></td></tr>";
if ($num1<=0) { echo "<tr><td colspan=4 align=center>Não existe eventos para este mês</td></tr>"; }
else {
    for ($i=0;$i<$num1;$i++) {
        echo "<tr><td bgcolor="[B][COLOR=DarkOrange] . $cor . [/COLOR][/B]">";
        echo mysql_result($pesquisa1,$i,'dia');
        if (mysql_result($pesquisa1,$i,'diaate')!=0){
            echo "-".mysql_result($pesquisa1,$i,'diaate'); }
        echo "</td><td>";
        echo mysql_result ($pesquisa1,$i,'evento');
[COLOR=DarkOrange][B]        if ($cor == "white"){
                $cor = "black";
        }
        else
        {
                $cor = "white";
        }[/B][/COLOR]
        echo "</td><td bgcolor="[B][COLOR=DarkOrange] . $cor . [/COLOR][/B]">";
        echo mysql_Result($pesquisa1,$i,'escalao');
        echo "</td><td>";
        echo mysql_Result($pesquisa1,$i,'local');
        echo "</td></tr>"; }}
cumps

Com este código estás a alternar as colunas em vez das linhas, não estás??
 
achei a forma que o Armadillomais simples, fiz assim e esta todo bem
Funciona prefeitamente para o que eu quero.

como tinhas feito estava a alterar as linhas, mas adaptei ao que eu queria, e esta a funcionar como quero

Obrigado na mesma geoblast, D. Carreira
 
Última edição:
Back
Topo