Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Non riesco a far funzionare una query con le date

    Ciao a tutti sto realizzando un blog e vorrei che nella parte di navigazione venga inserito un elenco dove ci sono i mesi in cui sono stati realizzati articoli di questo blog per farlo ho creato, sbirciando qua e la una query (select data,extract(year_month from data) as mese_anno from articolo group by mese_anno order by data desc); poi vado a visualizzare $row['data'] con php in un ciclo.. il problema è che visualizza solo una data e neanche l'ultima inserita. Qualcuno mi sa dire cosa cè di sbagliato nella query? Grazie tante e tanti saluti

  2. #2
    anno e mese lo trovi nell'alias mese_anno. $row['mese_anno']

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    ok ma il problema è che mi visualizza solo un record invece di tre (per ora che avrei); dato che vorrei un elenco dei mesi nei quali sono contenuti articoli nel db..

  4. #4
    Originariamente inviato da ndonio83
    ok ma il problema è che mi visualizza solo un record invece di tre (per ora che avrei); dato che vorrei un elenco dei mesi nei quali sono contenuti articoli nel db..
    dipendera' da come hai impostato lo script. Se fai la query com phpmyadmin quante righe ti rende?

    tieni presente che group by raggruppa i dati e quindi ti presentera' solo un record per mese.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Mi da solo un risultato.. cioè uno dei record degli articoli (campo data) e mese_anno (che è stranamente NULL) non riesco a capire dove stà l'inghippo.. cmq nel mio database sono presenti articoli con diversi mesi di creazione (e conseguentemente il campo data, che è timestamp, assumerà valori "mensili" diversi)..

  6. #6
    Posto anche il codice se magari qualcuno riesce a capire perchè non va mi fa un favore enorme
    Codice PHP:
    $query mysql_query("select  data,extract(year_month from data) as mese_anno 
                          from commenti group by mese_anno
                          order by data desc"
    ) or die(mysql_error() ); 

    $str ' '
    while (
    $row mysql_fetch_assoc($query) ) { 
        
    $mese_anno $row['mese_anno']; 
         
        
    $str.= "<a href=\"index.php?data=$mese_anno\">".date('d M y - H:i',$row['data'])."</a>
    \n"



    nel caso possa essere un problema di DB vi scrivo anche la struttura della tabella.
    nella tabella articolo contiene:
    -id_articolo (int(5))
    -titolo (varchar(100))
    -data (int(11))
    -testo (text)


  7. #7
    uhm...prova a togliere group by mese_anno

    Ciao
    Sistemi di allarme, telecamere, autoradio, video proiettori e altri prodotti tecnologici: fedom.it

  8. #8
    se lo tolgo mi visualzza tutti gli articoli, e di conseguenza non mi li suddivide per mesi...
    grazie lo stesso. Ciao

  9. #9
    Guarda, eseguendo la query che hai postato(quindi con il group by) su una mia tabella, che ha data in formato DATETIME, ho come risultato:

    DATA mese_anno
    2008-11-10 13:15:54 200811
    2008-10-01 13:34:46 200810
    2008-09-08 10:31:03 200809
    2008-08-01 15:40:30 200808
    2008-07-01 11:48:44 200807
    2008-06-03 13:03:46 200806
    2008-05-01 12:49:23 200805
    2008-04-07 12:03:04 200804
    2008-03-08 16:01:41 200803

    Non vuoi questo?
    Sistemi di allarme, telecamere, autoradio, video proiettori e altri prodotti tecnologici: fedom.it

  10. #10
    si vorrei che mi visualizzasse un record per mese (e anno un fattore che vedrò dopo), ma provando a modificare la query col tuo consiglio a me visualizza tutti i record presenti nella tabella.. non so prova a postarmi la query che hai usato.. la adatto al mio e vedo

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.