Incompatibilità browser Firefox – Explorer

  • Creatore Discussione Creatore Discussione mariodp
  • Data di inizio Data di inizio

mariodp

Nuovo Utente
21 Gen 2010
28
0
0
Ciao ragazzi ho colorato una tabella con colori diversi con risultati diversi per browser.
Il codice è questo:
PHP:
/* colore tabelle */
if ($contatore == 1 )
{
$color = "#090"; // prima riga
$border="1"; /* bordo tabella */
$font = "8px";
$align ="center";
}
if ($contatore == 2 )
{
$color = "#6c0"; //seconda riga
$border="1"; /* bordo tabella */
$font = "8px";
$align ="center";
}
if ($contatore == 3 )
{
$color = "#6c0"; // ultime 4
$border="0"; /* bordo tabella */
$font = "8px";
$align ="center";
}
if ($contatore == 4)
{
$color = "#6c0"; // ultime 4
$border="0"; /* bordo tabella */
$font = "8px";
$align ="center";
}
if ($contatore == 5)
{
$color = "#6c0"; // ultime 4
$border="0"; /* bordo tabella */
$font = "8px";
$align ="center";
}
Con Firefox e chrome funziona con e solo con Explorer no come mai?.......
Grazie in anticipo per una eventuale risposta:book:
 
Ultima modifica di un moderatore:
ciao
immagino che tu faccia una cosa del genere (anche se non so se tutta in php) se non ho visto male nella pagina

PHP:
<td bgcolor="<?php echo $color;?>">15</td><td bgcolor="<?php echo $color;?>">
giusto?
intanto prova a scriverla in questa maniera

PHP:
<td style="background-color:<?php echo $color;?> "></td>
poi tempo fa avevo qualcosa di simile e ho avuto dei problemi sia con # che con i codici colore html a tre caratteri
e avevo risolto così

$color = "009900"
poi
PHP:
<td style="background-color:<?php echo "#".$color;?> "></td>
prova al massimo non funzia
 
Grazie adesso ci provo...... ma ancora un consiglio io ci stavo provando così tu che cosa ne pensi:
<?php
$cssClasses = array(

"classe1" ,
"classe3" ,
"classen"
);

// e poi nel ciclo


echo "<td class=\"".$cssClass[$contatore]."\">" . $riga['punteggio'] . "</td>";





echo "<tr class=\"".$cssClass[$contatore]."\">";
echo "<td >" . $riga['punteggio'] . "</td>";

// e nel css

// tr.classe1 td{ background-color:red; }
 
ciao
lavorare con le classi del css è sempre meglio che mescolare contenuti e stile
puoi fare come hai scritto creando l'array
oppure nel ciclo mettere semplicemente
PHP:
<?php
//....
echo "<td class=\"classe".$contatore."\">" . $riga['punteggio'] . "</td>";
//...
?>
e nel css ti fai classe1, classe2, ecc....
 
Nel tuo caso, comunque, lo switch è più performante:
PHP:
<?php
$align = 'center';
$font  = '8px';

switch ($contatore) {
    case 1:
    {
        $color = '#090';
        $border = '1';
        
        break;
    }
    
    case 2:
    {
        $color = '#6c0';
        $border = '1';
        
        break;
    }
    
    case 3: case 4: case 5:
    {
        $color = '#6c0';
        $border = '0';
        
        break;
    }
}
?>
 
ciao
ma per tenere sempre il più possibile separati, eventualmente
PHP:
<?php
//...
switch ($contatore) { 
    case 1: 
        $classe="classe1"; 
        break; 
    case 2: 
        $classe="classe2";  
        break; 
    case default: 
        $classe="classeN";  
        break; 
}
//....
?>
e lasciare i vari align, font, border nei css
 
Ciao a tutti
hehehehhhe c'è lo fatta l'errore era banale adesso è cosi php:
case 16:

$color = '#ff0000';
$border = '2'; //era questo l'errore non era inserito

break;


echo "<tr>";
// echo "<td>$contatore</td>"; /* numero squadra */
echo ""; /* numero squadra */
echo "<th scope=row >". $riga['squadra'] ."</th>";
echo "<td bgcolor=\"".$color.$border."\">" . $riga['punteggio'] . "</td>";
echo "<td bgcolor=\"".$color.$border."\">" . $riga['partite'] . "</td>";
echo "<td bgcolor=\"".$color.$border."\">" . $riga['vittorie'] . "</td>";
echo "<td bgcolor=\"".$color.$border."\">

Lo switch ($contatore) funzionava solo che non era inserito $border

era così echo "<td bgcolor=\"".$color."\">" . $riga['punteggio'] . "</td>";
ora è cosi e funziona echo "<td bgcolor=\"".$color . $border."\">" . $riga['punteggio'] . "</td>";
Un saluto a tutti e grazie...........
 

Discussioni simili