Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Stampo una tabella con il WHILE, vorrei mettere uno spazio vuoto..

    Ciao a tutti!
    Io stampo una tabella usando il ciclo while:
    codice:
     while($fetch = mysql_fetch_object($db1->result)){
    echo '<td>'.$fetch->campo1.'</td>';
    echo '<td>'.$fetch->regione.'</td>';
    echo '<td>'.$fetch->campo3.'</td>';
    }
    Io stampo dati sull'Italia e vorrei che quando la regione "cambia" mi inserisca una riga vuota oppure mi stami una riga piena di #... ho provato tantissime cose ma niente, proprio non riesco ad andare in avanti!
    Spero che qualcuno di voi mi possa aiutare!

    Questa è la query che fa il select sulla taballa: select * from apkProd order by regione

    Il risultato che vorrei

    lombardia
    lombardia
    lombardia
    lombardia
    (al posto degli spazi va bene anche #####)
    piemonte
    piemonte
    piemonte
    piemonte
    piemonte
    (al posto degli spazi va bene anche #####)
    ecc
    ecc

    Gracias a tutti =)

  2. #2
    Non hai provato a salvare i dati e gestirli prima di stamparli.

    Codice PHP:
    $result = array();
    while(
    $fetch mysql_fetch_object($db1->result))
       
    $result[] = array('campo1' => $fetch->campo1,
                         
    'regione' => $fetch->regione,
                         
    'campo3'$fetch->campo3);

    for(
    $i=0$i<count($result); $i++){
       if(
    $i>&& $result[$i]['regione'] != $result[$i-1]['regione'])
          echo 
    '<td></td>';
       echo 
    '<td>'.$result[$i]['campo1'].'</td>
             <td>'
    .$result[$i]['regione'].'</td>
             <td>'
    .$result[$i]['campo3'].'</td>';


  3. #3
    Originariamente inviato da ZioLuffio
    Non hai provato a salvare i dati e gestirli prima di stamparli.

    Codice PHP:
    $result = array();
    while(
    $fetch mysql_fetch_object($db1->result))
       
    $result[] = array('campo1' => $fetch->campo1,
                         
    'regione' => $fetch->regione,
                         
    'campo3'$fetch->campo3);

    for(
    $i=0$i<count($result); $i++){
       if(
    $i>&& $result[$i]['regione'] != $result[$i-1]['regione'])
          echo 
    '<td></td>';
       echo 
    '<td>'.$result[$i]['campo1'].'</td>
             <td>'
    .$result[$i]['regione'].'</td>
             <td>'
    .$result[$i]['campo3'].'</td>';

    Provato, non funziona! Cavolo...
    l'ho modificato così, ma niente
    $result = array();
    while($fetch = mysql_fetch_object($db1->result))
    $arrayData = explode("-", $fetch->Laaddatum);
    $data_IT = $arrayData[2]."/".$arrayData[1]."/".$arrayData[0];
    $result[] = array('dossier' => $fetch->dossier,
    'Zone' => $fetch->Zone,
    'ZoneIT'=> $fetch->ZoneIT,
    'substr($data_IT, 0,5)' => substr($data_IT, 0,5),
    'Laadplaats' => $fetch->Laadplaats,
    'Afzender' => $fetch->Afzender,
    'Losplaats' => $fetch->Losplaats,
    'Ontvanger' => $fetch->Ontvanger,
    'Aantal'=> $fetch->Aantal,
    'Type' => $fetch->Type,
    'LM' => $fetch->LM,
    'TON' => $fetch->TON,
    'Bijzonderheden'=> $fetch->Bijzonderheden,
    'Magazijn' => $fetch->Magazijn,
    'Vervoerder' => $fetch->Vervoerder,
    'Kenteken' => $fetch->Kenteken
    );


    echo '<table class="hovertable" WIDTH="100%">';
    echo "<tr>";
    echo "<th>".$output[39]."</th>";
    echo '<th>[img]../immagini/bottoni/world.png[/img]</th>';
    echo "<th>".$output[40]."</th>";
    echo '<th>'.$output[224].'</th>';
    echo "<th>".$output[41]."</th>";
    echo "<th>".$output[42]."</th>";
    echo "<th>".$output[43]."</th>";
    echo "<th>".$output[44]."</th>";
    echo "<th>".$output[46]."</th>";
    echo "<th>".$output[45]."</th>";
    echo "<th>".$output[47]."</th>";
    echo '<th>KG</th>';
    echo "<th>".$output[48]."</th>";
    echo '<th>'.$output[223].'</th>';
    echo "<th>".$output[49]."</th>";
    echo "<th>".$output[50]."</th>";
    echo '<th><th>';
    if($user->admin)
    {
    echo "<th></th>";
    }
    echo "</tr>";

    for($i=0; $i<count($result); $i++){
    if($i>0 && $result[$i]['ZoneIT'] != $result[$i-1]['ZoneIT']){
    echo '<tr><td></td></tr>';
    }else {
    echo '<tr>
    <td>'.$result[$i]['dossier'].'</td>
    <td>'.$result[$i]['Zone'].'</td>
    <td>'.$result[$i]['ZoneIT'].'</td>
    <td>'.$result[$i]['substr($data_IT, 0,5)'].'</td>
    <td>'.$result[$i]['Laadplaats'].'</td>
    <td>'.$result[$i]['Afzender'].'</td>
    <td>'.$result[$i]['Losplaats'].'</td>
    <td>'.$result[$i]['Ontvanger'].'</td>
    <td>'.$result[$i]['Aantal'].'</td>
    <td>'.$result[$i]['Type'].'</td>
    <td>'.$result[$i]['LM'].'</td>
    <td>'.$result[$i]['TON'].'</td>
    <td>'.$result[$i]['Bijzonderheden'].'</td>
    <td>'.$result[$i]['Magazijn'].'</td>
    <td>'.$result[$i]['Vervoerder'].'</td>
    <td>'.$result[$i]['Kenteken'].'</td>
    <td></td>
    <td></td>
    <td></td>
    </tr>';
    }

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Se vengono ciclate tutte le regioni ti basta controllare il valore della regione

    Codice PHP:
    $regione_prima null;
     while(
    $fetch mysql_fetch_object($db1->result)){
    if(
    $regione_prima != $fetch->regione && $regione_prima!=null) echo '

    '
    ;
    echo 
    '<td>'.$fetch->campo1.'</td>';
    echo 
    '<td>'.$fetch->regione.'</td>';
    echo 
    '<td>'.$fetch->campo3.'</td>';
    $regione_prima $fetch->regione;

    Grezzo grezzo

  5. #5
    Originariamente inviato da RoTeam
    Se vengono ciclate tutte le regioni ti basta controllare il valore della regione

    Codice PHP:
    $regione_prima null;
     while(
    $fetch mysql_fetch_object($db1->result)){
    if(
    $regione_prima != $fetch->regione && $regione_prima!=null) echo '

    '
    ;
    echo 
    '<td>'.$fetch->campo1.'</td>';
    echo 
    '<td>'.$fetch->regione.'</td>';
    echo 
    '<td>'.$fetch->campo3.'</td>';
    $regione_prima $fetch->regione;

    Grezzo grezzo
    Non ho capito bene..
    le mie zone sono suddivise così : Z0,Z1,Z2,...,Z9
    Non capisco come faccio a ciclare con questi dati..

  6. #6
    Originariamente inviato da paschi25
    Provato, non funziona! Cavolo...
    Probabilmente non funziona xkè ho scritto echo '<td></td>'; anziché echo '</tr><tr><td></td></tr><tr>';


  7. #7
    Originariamente inviato da ZioLuffio
    Probabilmente non funziona xkè ho scritto echo '<td></td>'; anziché echo '</tr><tr><td></td></tr><tr>';

    Così come ho rimesso io il codice è giusto in fatto di tr e td...puoi dargli un occhiata pls?

  8. #8
    Originariamente inviato da paschi25
    Così come ho rimesso io il codice è giusto in fatto di tr e td...puoi dargli un occhiata pls?
    Togli l'else nell'if-else, che credo che stampando ti salti un risultato, vero?

    Per il resto sembra giusto. Fai un print_r() di $result[$i] e $result[$i-1] per capire cosa c'è dentro.

    Cmq in effetti la soluzione di RoTeam è meno macchinosa della mia

  9. #9
    Originariamente inviato da ZioLuffio
    Togli l'else nell'if-else, che credo che stampando ti salti un risultato, vero?

    Per il resto sembra giusto. Fai un print_r() di $result[$i] e $result[$i-1] per capire cosa c'è dentro.

    Cmq in effetti la soluzione di RoTeam è meno macchinosa della mia
    if($regione_prima != $fetch->ZoneIT && $regione_prima!=null);

    Ma lui come fa a capire quando è la zona prima? dovrei sostituire $regione_prima con "Z0"?! e poi un altro IF con Z1 ecc?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.