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

    problema con gestore news

    Ho creato un semplice gestore di news che stampa a video le notizie in ordine di data.. funziona tutto alla perfezione salvo che quando ci sono + notizie con la stessa data, vengono ordinate dalla + vecchia alla + nuova.. se io cambio l'ordine di visualizzazione da DESC a ASC non succede niente l'ordine delle news con la stessa data non cambia.. ma quando si aggiunge una notizia con una data + recente questa passa in fondo a tutte

    Per lo script utilizzo PHP e mysql

    Vi riporto di seguito il codice che utilizzo per ordinare per data
    Codice PHP:
    $query1 "SELECT * FROM tfn_articles ORDER BY datA DESC"
    È possibile fare un doppio ORDER BY? Per esempio se io carico anche l'ora posso poi usare un ORDER BY data AND ora DESC?

    Come posso fare altrimenti?
    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

  2. #2
    Io farei così:
    il campo data lo strutturerei anche con l'ora, salvo poi visualizzare il dato opportunamente formattato.

    ad esempio: datetime varchar(14); ed in inserimento fai:

    Codice PHP:
    INSERT INTO tabella (datetimeVALUES (NOW()*1); # il simbolo *1 serve ad inserire un valore numerico, ad esempio per l'ora attuale inserirebbe 20071118142940 
    A questo punto l'order by funziona alla grandissima!

    Ciao!

  3. #3
    comunque il doppio order funziona cosi:
    Codice PHP:
    SELECT FROM tabella WHERE "condizione" ORDER BY dataora DESC 
    Ciao!

  4. #4
    Ti rigrazio per la risposta ma scusa la mia ignoranza è che non sono molto bravo in php e sto cercando di apprenderlo.

    Io utilizzo questo metodo per inserire la data nel database in quanto mi serve inserire anche date diverse da quella attuale.

    Codice PHP:
    $giorno $_REQUEST['day'];
    $mese $_REQUEST['month'];
    $anno $_REQUEST['year'];

    $data mktime("0""0""0"$mese$giorno$anno); 
    Dapprima richiamo dai select box il giorno il mese e l'anno poi li converto.. e successivamente li carico nel database

    Codice PHP:
    INSERT INTO articoli (dataVALUES ($data
    con il tuo metodo come farei?

    Dovrei creare una nuova colonna chiamata per esempio ora e caricarla con il codice che mi hai scritto e poi ordinare sia per data sia per ora

    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

  5. #5
    allora io farei cosi:

    $var = $_POST['anno'].$_POST['mese'].$_POST['giorno'].$_POST['ora'].$_POST['minuti'].$_POST['secondi'];

    e inserisci il valore nel database.

    Questo è un modo semplicistico per indicare l'ordine in cui devono essere inseriti i dati. Devi controllare che i dati siano corretti, che giorno, mese, ora,minuti e secondi abbiano sempre 2 cifre, che l'anno ne abbia sempre 4, che le date siano corrette, ad esempio non può esistere il 30 febbraio.
    Ciao!

  6. #6
    Ciao.. scusa ma non ho capito quello che intendi.. dovrei creare un select box dove uno segna l'ora e inserisce la data cosi da caricarli nel database? io poi nella pagina di visualizzazione della news faccio figurare la data secondo la formattazione di mktime()

    Non c'è un codice che inserirsca nel database l'orario? di modo che poi ordino a secondo della data e dell'ora
    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

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.