[PHP] Problema con query select

Max61

Utente Attivo
2 Mar 2014
710
3
18
Salve come da titolo ho un problema in una select, mi spiego:
questa è la query di partenza che mi estrae tutti i record della condizione WHERE
PHP:
// numero di risultati da visualizzare per pagina
        $per_page = 500;

        // calcola le pagine totali
               $result = mysql_query("SELECT * FROM anticipazione WHERE (peso_X_congiunturale >= 4000 OR peso_X_congiunturale <=-4000)");
       
        $total_results = mysql_num_rows($result);
        $total_pages = ceil($total_results / $per_page);

        // controlla se la variabile 'page' è impostata nell'URL (es: view-paginated.php?page=1)
        if (isset($_GET['page']) && is_numeric($_GET['page']))
        {
                $show_page = $_GET['page'];

                // mi assicuro che il valore di $show_page sia valido
                if ($show_page > 0 && $show_page <= $total_pages)
                {
                        $start = ($show_page -1) * $per_page;
                        $end = $start + $per_page;
                 }
                else
                {
                        // errore - mostra il primo set di risultati
                        $start = 0;
                        $end = $per_page;
                }
        }
        else
        {
                // se la pagina non è impostata, mostra il primo set di risultati
                $start = 0;
                $end = $per_page;
        }

        // visualizza impaginazione
        //echo "<p><h4><a class='nounderline' href='TestamentiCaricatiAll.php'>Visualizza Tutti</a> | <b>Visualizza impaginato:</b> ";
       
        for ($i = 1; $i <= $total_pages; $i++)
        {
                //echo "<a href='viewpaginated.php?page=$i'>$i</a> ";
        }
        echo "</p>";
              
        // visualizza i dati in tabella
        echo "<table border='1' cellpadding='5'>";
        echo "<tr> <th>Codice</th> <th>Prodotto</th> <th>Posizione</th> <th>Peso</th> <th>Tendenziale</th> <th>Congiunturale</th> <th>Peso X congiunturale</th></tr>";

        // loop tra i risultati della query del database, visualizzandoli in tabella
        for ($i = $start; $i < $end; $i++)
        {
                // mi assicuro che PHP non cerchi di mostrare risultati che non esistono
                if ($i == $total_results) { break; }

                // emissione del contenuto di ogni riga in una tabella
                echo "<tr>";
                echo '<td>' . mysql_result($result, $i, 'id') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'prodotto') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'posizione') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'peso') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'tendenziale') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'congiunturale') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'peso_X_congiunturale') . '</td>';
                echo "</tr>";

        }
        // chiude la tabella>
        echo "</table>";
ho voluto dare un pò di colore al risultato, infatti adesso ho:
valori positivi: righe colore verde
valori negativi: righe colore rosso
valore pari a zero: righe colore blu
ed ho modificato la query così (la parte di codice mancante la ometto perchè è identica):
PHP:
 // mi assicuro che PHP non cerchi di mostrare risultati che non esistono
                if ($i == $total_results) { break; }

while ($riga = mysql_fetch_array($result)) {
        
    if($riga['peso_X_congiunturale'] < 0){
    echo "<td>$id</td>";
    echo "<td>$prodotto</td>";
       echo "<td>$posizione</td>";
    echo "<td>$peso</td>";
    echo "<td>$tendenziale</td>";
    echo "<td>$congiunturale</td>";
       echo "<td>$peso_X_congiunturale</td>";
        $colore="#ff0000";
    
 } elseif($riga['peso_X_congiunturale'] > 0){
        $colore="green";
    echo "<td>$id</td>";
    echo "<td>$prodotto</td>";
       echo "<td>$posizione</td>";
    echo "<td>$peso</td>";
    echo "<td>$tendenziale</td>";
    echo "<td>$congiunturale</td>";
       echo "<td>$peso_X_congiunturale</td>";
        $colore="green";
 
 } elseif($riga['peso_X_congiunturale'] == 0){
    echo "<td>$id</td>";
    echo "<td>$prodotto</td>";
       echo "<td>$posizione</td>";
    echo "<td>$peso</td>";
    echo "<td>$tendenziale</td>";
    echo "<td>$congiunturale</td>";
       echo "<td>$peso_X_congiunturale</td>";
        $colore="blue";
 }

    
echo "<tr style=\"color:$colore; \">";
    $id=$riga['id'];
    $prodotto=$riga['prodotto'];
    $posizione=$riga['posizione'];
    $peso=$riga['peso'];
    $tendenziale=$riga['tendenziale'];
    $congiunturale=$riga['congiunturale'];
    $peso_X_congiunturale=$riga['peso_X_congiunturale'];
 }
   echo "</table>";
La query modificata mi conta correttamente i record che sono nel db, ma me ne fa vedere a video uno in meno cioè manca l'ultimo ed il primo rigo a video è vuoto...
Qualcuno sa dirmi dov'è l'errore?
Grazie
Max61
 

marino51

Utente Attivo
28 Feb 2013
3.039
192
63
Lombardia
forse ti basta inserire il colore nello script originale, che funzionava ….
PHP:
        for ($i = $start; $i < $end; $i++)
        {
                // mi assicuro che PHP non cerchi di mostrare risultati che non esistono
                if ($i == $total_results) { break; }

                // colora la riga
                $p = mysql_result($result, $i, 'peso_X_congiunturale');

                if ($p < 0) { $colore = "red";   } else
                if ($p > 0) { $colore = "green"; } else
                            { $colore = "blue";  }

                // emissione del contenuto di ogni riga in una tabella
                echo "<tr style='color:" . $colore . ";'>";
                echo '<td>' . mysql_result($result, $i, 'id') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'prodotto') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'posizione') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'peso') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'tendenziale') . '</td>';
                echo '<td>' . mysql_result($result, $i, 'congiunturale') . '</td>';
                echo '<td>' . $p . '</td>';
                echo "</tr>";
        }
 
  • Like
Reactions: Max61
Discussioni simili
Autore Titolo Forum Risposte Data
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
M Problema con php per calcolo costo percentuale PHP 7
L [PHP] Problema con Telegram PHP 1
N [Apache] problema con estensione php Apache 0
C [PHP] Problema con download file PHP 0
M [PHP] Problema con preg_match PHP 1
gandalf1959 [PHP] problema con l'utilizzo di Header PHP 3
S [PHP] Problema con istruzione "use" PHP 23
Cosina [PHP] fwrite problema con le parole accentate PHP 9
F [PHP] Problema con number_format PHP 3
C Apache Cordova problema con php Programmazione 1
T PHP+MYSQL: problema con quelle maledette lettere accentate... PHP 5
F [PHP] Problema con array multidimensionale PHP 4
F Problema con pagine login in PHP PHP 2
A [PHP] Problema invio mail con funzione mail() PHP 3
gandalf1959 problema con la codifica caratteri accentati e speciali tra php e mysql PHP 3
webmachine [PHP][MYSQL] Problema con le SELECT PHP 5
alessandra86 [PHP] Popolamento database con form ricorsivi - problema array (foreach ) PHP 5
C [PHP] problema con un esercizio PHP 2
P [PHP] Problema con accenti ed apostrofi PHP 0
R [PHP] Problema stampa array bidimensionali con formula $html.=<<<myHtml... PHP 2
M [PHP] problema con preg_match PHP 11
L [PHP] problema con upload e javascript (upload multiplo) Javascript 2
D [PHP] problema con xml PHP 13
T4MAR4 [PHP] Problema ricerca con apostrofo PHP 2
xone Problema FPDF con pagina dinamica PHP PHP 1
A Problema con getCurrentPosition e passaggio variabili da javascript a PHP Javascript 3
SebaGravi [PHP] problema url semantici con .htaccess PHP 3
L [PHP] problema parsing con comando file get contents PHP 7
L Problema con recupero dati in PHP cURL e JAVA con server PHP 1
zammaeng [PHP] Problema form con lista PHP 8
M [PHP] Problema con algoritmo struttura iterativa PHP 2
D Problema con query in php PHP 5
S Problema con script php-javascript PHP 2
M [PHP] Problema con query PHP 17
C [PHP] Problema con creazione csv PHP 3
B sitoweb responsivo problema con include php HTML e CSS 1
neo996sps PHP/MySQL - Problema con generazione array PHP 14
P problema con codice php... PHP 7
C Problema con html e php :D PHP 1
E php problema incremento e decremento di 2 variabili con click da pulsante PHP 0
G Problema con codice php PHP 1
L xml e php. Problema con i nodi PHP 4
P Problema con file di registrazione in php, non funziona e dà continui errori PHP 0
R problema con pagine php apache su centos 5.3 Apache 1
V problema con mail e php PHP 6
X Problema con php e javascript jQuery 0
IImanuII Problema con php e cache. PHP 6
L [PHP] Problema con il redirect ad un'altra pagina PHP 2

Discussioni simili