Visualizzazione dei risultati da 1 a 7 su 7

Discussione: ordinare dati

  1. #1
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592

    ordinare dati

    NON scrivo in database perchè credo sia una questione di PHP.
    Ho una query.
    Estraggo facciamo conto 6 valori, con gli id
    1
    2
    4
    7
    10
    14

    Vorrei che la pagina web mi visualizzasse per primo il record con id 14, poi tutti gli altri.
    Potrei fare con 2 query, ma sarebbe troppo facile..
    forse con mysql data seek?
    Grazie a chiunque potrà darmi una mano

    p.s.: ho cercato ma non ho trovato niente, anche se ricordo che qualche anno fa lo stesso argomento uscì..

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    Nel senso che vorresti stampare così?
    14
    1
    2
    4
    7
    10

    in tal caso stampi
    Codice PHP:
    echo $array[count($array)-1]; //stampa l'ultimo elemento
    for($i=0$i<$array[count($array)-1]; $i++)
    {
        echo 
    $array[$i]; //stampa tutti gli elementi tranne l'ultimo


  3. #3
    nella query al database aggiungi in fondo
    Codice PHP:
    ORDER BY 'campo' DESC 
    DESC = ordine discendente
    ASC = ordine ascendente

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    Originariamente inviato da robbi_gallo
    nella query al database aggiungi in fondo
    Codice PHP:
    ORDER BY 'campo' DESC 
    DESC = ordine discendente
    ASC = ordine ascendente
    Si, ma se deve fare come ho capito io, e penso sia così, ASC e DESC non lo aiutano.

  5. #5
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    è come dice alhazred..
    intanto grazie ad entrambi..
    la mia situazione è che ho un ciclo while..
    Codice PHP:
    <?php do { ?>[*]
             <span class="NewsTitle">
              [url="corso_singolo.php?corso=<?php echo $row_Recordset1['id_c']; ?>&tipo-corso=<?php echo $row_Recordset1['tipo_corso']; ?>"]<?php echo $row_Recordset1['titolohome']; ?>[/url]            </span>
        <?php } while ($row_Recordset1 mysql_fetch_assoc($Recordset1)); ?>
    come posso modificare questo codice per implementare il tuo?

    GRAZIE ANCORA

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,448
    Codice PHP:
    <?php
    //prima di tutto crei un array contenente il risultato della query
    $temp = array();
    while(
    $row mysql_fetch_assoc($Recordset1))
    {
        
    $temp[] = $row;
    }

    //ne crei uno ordinato come ti serve
    $risultati = array();
    $risultati[] = $temp[count($temp)-1];
    for(
    $i=0$i<$temp[count($temp)-1]; $i++) 

        
    $risultati[] = $array[$i];
    }

    //il primo array non serve più, quindi lo elimini
    unset($temp);

    //adesso il ciclo lo fai su $risultati usando for invece che while
    for($i=0$i<count($risultati); $i++)
    {
    ?>[*] 
            <span class="NewsTitle"> 
                [url="corso_singolo.php?corso=<?php echo $risultati[$i]['id_c']; ?>&tipo-corso=<?php echo $risultati[$i]['tipo_corso']; ?>"]<?php echo $risultati[$i]['titolohome']; ?>[/url]
            </span> 
        
    <?php    
    }
    ?>

  7. #7
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    ..sono un po' arrugginito..
    la risposta la avevo in casa, e dopo aver riflettuto sull'aiuto ho scoperto l'uovo di colombo..
    ho fatto così:
    Codice PHP:
    <?php
    $righetotali 
    mysql_num_rows($Recordset1); 
    $i 1;
     do {
        
    $id[$i] = $row_Recordset1['id_tabella'];
        
    $tipocorso[$i] = $row_Recordset1['tipo_corso'];
        
    $i++;
        
    ?>
    così mi faccio le variabili delle colonne che mi interessano
    e quando voglio stamparle faccio così
    Codice PHP:
    <?php
    echo $id[$righetotali] . "
    "
    ;
    for (
    $i 1$i $totalRows_Recordset1$i++) {
        echo 
    $id[$i] . "
    "
    ;
    }
     
    ?>
    praticamente echo $id[$righetotali] è l'ultimo id estratto dalla query. e con il ciclo for mi fermo, con $i < $totalRows_Recordset1 al totale dei record -1

    grazie a tutti comunque e auguri..

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 © 2024 vBulletin Solutions, Inc. All rights reserved.