Visualizzazione dei risultati da 1 a 4 su 4

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080

    Aiuto per output query con un carattere da identificare

    Ciao!
    Ho una banalissima pagina php che visualizza i dati di un db sqlserver di un software di terzi.
    Il db ha un campo data/ora in questo formato "Sep 12 2015 05.06"
    Nella mia pagina visualizzo i dati di una determinata giornata (non importa l'orario) per cui ho fatto così:

    1. Ho forzato i caratteri mb_internal_encoding("UTF-8"); (ma anche senza questo ho comunque il problema che vi spiegherò sotto)
    2. Creo la variabile con la data odierna nel formato del DB $oggi = date("M j Y");
    3. Faccio la mia select "select * from mia tbl where Data LIKE '". $oggi ."%'";


    In questo modo mi visualizza correttamente nel giorno di oggi tutti i dati di tutte le ore!

    Il problema è sorto il primo di settembre!!! Se metto in stampa la data dal db tramite php mi appare "Sep 2 2015" che è esattamente uguale alla mia variabile $oggi, ma la query mi risulta vuota!

    Dopo mille prove ho scoperto che se eseguo la query con LIKE '"Sep %2 2015%" (ovviamente non essendoci ancora stati il 12 e il 22 settembre) funziona!
    A questo punto vuol dire che nei giorni dal 1 al 9 prima del numero c'è qualcosa, ma cosa??? Se io stampo la stringa vedo uno spazio, ma se nel like incollo la stringa che ho stampato ho risultato 0!

    Help!

  2. #2
    "Sep 12 2015 05.06" non è il mio formato preferito, comunque, invece di Like e carattere jolly, secondo me sarebbe più accurata una query del tipo:

    codice:
    "select * from table where date>='".$oggi." 00.00' and date<='".$oggi."' 23.59"
    Potresti anche usare "between" per renderla più elegante.

  3. #3
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    Grazie
    Non avendo i dati sottomano ho semplificato, il formato è mese giorno anno ore minuti secondi, ma di ore minuti secondi non ricordo bene il formato! La tua soluzione è comunque applicabile adattandola, ma dubito sia la mia soluzione in quanto il problema è proprio la variabile oggi!
    Dal 1 al 9 del mese tra il mese e il giorno ci deve essere un carattere che non vedo. (E non è lo 0)
    È una cosa strana perché anche se forzo il like con 'Sep 2 2016% non funziona! Se metto in stampa la data e faccio copia e incolla nel like non funziona, devo per forza mettere la percentuale davanti al 2!

  4. #4
    Di solito il formato è H:i:s

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.