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

    select where data = timestamp

    Ciao a tutti,

    ho una colonna di tipo longtext, in cui memorizzo una data (giorno, mese, anno, orario) in formato timestamp.

    Non so come fare una query in manera da recuperare i dati solo di tale giorno, per esempio il 12/05/2012.

    grazie mille!

  2. #2
    Ciao, scusa una cosa...
    timestamp è il numero di secondi che sono passati dal 1 gennaio 1970 e giustamente ha un valore numerico il timestamp di adesso è 1350998911.


    ho una colonna di tipo longtext, in cui memorizzo una data (giorno, mese, anno, orario) in formato timestamp
    c'è qualcosa che non va...

    se ti serve il timestamp di una determinata data e ora fai così:
    codice:
    mktime($ore,$minuti,$secondi,$mese,$giorno,$anno);
    se realmente il campo è in timestamp, la tua query dovrà contenere la condizione:
    codice:
    WHERE data > ".mktime(0,0,0,5,12,2012)." AND data < .mktime(23,59,59,5,12,2012).";";
    spero di essere stato chiaro...
    Ciauzzz

  3. #3
    grazie testapazza (il tuo nik è mitico

    il valore timestamp è dentro a un campo longtext perchè si trova dentro alla tabella postmeta di wordpress.

    Infatti per ogni custom post Evento ho un metabox per la data dell'evento con giorno, mese, anno, ora, minuti che, prima di essere registrato lo unisco e faccio diventare un timestamp.

    Poi quando sono nell'archivio eventi ho i vari giorni che dovrebbero essere da filtro. Cioè se uno clicca su un giorno dovrebbero essere recuperati solo gli eventi di tale giorno...

    mamma mia non so se sono riuscito a spiegarmi!

    ora scrivo il codice e lo posto...

  4. #4
    ecco, ma non capisco perchè mi recupera tutti gli eventi:

    codice:
    $start = mktime(0,0,0,11,15,2012);
    $stop = mktime(23,59,59,11,15,2012);
    				
    $args = array (
    	'post_type' => 'eventi',
    	'orderby' => 'meta_value_num',
    	'meta_key' => '_evento_data',
    	'order' => 'ASC',
    	'meta_query' => array(
    			'key' => '_evento_data',
    			'value' => array($start, $stop),
    			'type' => 'numeric',
    			'compare' => 'BETWEEN',
    			)
    	);

  5. #5
    risolto.... mancava un array nel meta_query.
    Ecco il codice giusto:


    codice:
    $args = array (
    	'post_type' => 'eventi',
    	'orderby' => 'meta_value_num',
    	'meta_key' => '_evento_data',
    	'order' => 'ASC',
    	'meta_query' => array (
    		array (
    			'key' => '_evento_data',
    			'value' => array($start, $stop),
    			'type' => 'numeric',
    			'compare' => 'BETWEEN',
    		)
    	 )
    	);

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.