Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17

Discussione: Help su recupero dati

  1. #1

    Help su recupero dati

    Ciao a tutti...
    ho un problemino e spero qualcuno mi possa aiutare.

    Ho una tabella che contiene questi campi: id, data, locale e indirzzo.
    Il campo data e' formattato cosi 20050524
    Quindi lo recupero con:
    $anno = substr($data, 0, 4);
    $mese = substr($data, 4, 2);
    $giorno = substr($data, 6, 2);

    Ma arriviamo al problema.
    Devo fare un menu sulla sinistra con tutti i vari anni (2002, 2003, 2004 ecc...). Cliccando sugli anni si và alla pagina dove verranno pescati dal db solo i dati relativi a quell'anno.

    Come posso fare?

    grazie mille in anticipo!

  2. #2
    la pagina che deve estrarre i dati per anno farà una query con una clausola tipo:

    where data like '$anno%'


  3. #3
    scusami ma potresti cadere un po' piu' nello specifico?
    ti ringrazio tantissimo!

  4. #4
    Originariamente inviato da zoc
    scusami ma potresti cadere un po' piu' nello specifico?
    ti ringrazio tantissimo!
    cosa intendi per specifico?
    Cos'è che non sai fare?

    specifico:

    $sql= "SELECT * FROM tuatabella WHERE data like '$anno%'";

    non è che cambi molto da quanto ti ho detto ptima.. devi dirmi tu cosa non capisci di tutto ciò... se non sai cos'è una clausola where... se non sai come funziona like.. se non capisci da dove viene fuori $anno.. o che altro!

    Fermo restando che una volta indirizzato sulla giusta strada ricercando sul forum o su google probabilmente chiarirai i tuoi dubbi senza costringere ogni volta il forumista di turno a reinventare la ruota per te

    campagna per l'educazione degli utenti a formulare domande intelligenti ed intellegibili

  5. #5
    il problema e' anno....
    anno si trova dentro il record data che e' sotto questa forma: 20051124...
    solo dopo che l'ho estratto lo rielaboro con substr...

  6. #6
    Ricordo che una volta ho fatto così:

    $sql= "SELECT substring(campo_data, 1,4) FROM tuatabella";


    se ti può servire !

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    483
    Il LIKE funziona insieme a questi due caratteri "_" e "%"

    • _ rappresenta un carattere arbitrario
    • % rappresenta una stringa di lunghezza arbitraria
    (anche 0 caratteri)

    quindi nel tuo caso se fai:

    ....WHERE data LIKE '2005%' selezioni tutti quelli che hanno nelle prime 4 posizioni "2005"....fregandotene che poi ci sia altro oppure non ci sia niente.....

  8. #8
    mitici ragazzi!! ok allora il LIKE va' bene per quando devo selezionare i campi che contengono l'anno passato dal link.
    Ma come faccio a creare la sequenza di link tipo:

    2002
    2003
    2004
    2005

    ???

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    prova a fare così
    codice:
    <select name="anno" onchange="location.href='tuapagina.php?anno='+this.options[this.selectedIndex].value;">
     <option value="0">-- anno --</option>
     <?php
     for($i=2000; $i< date("Y"); $i++)
     {
     ?>
      <option value="<?=$i; ?>"><?=$i; ?></option>
     <?php
     } 
     ?>
    </select>
    Così ti fai il tuo menù a tendina con la possibilità di scegliere l'anno...una volta effettuata la scelta,ti rimanda alla stessa pagina passandoti via get l'anno selezionato...
    Ad inizio pagina metti un controllo tipo
    //Controlli che effettivamente hai selezionato qualcosa dal menu a tendina,altrimenti te lo farebbe anche la prima volta che entri
    if($_GET['anno'] != null)
    {
    $anno = $_GET['anno'];
    //Query ricerca
    $sql = "SELECT ...... LIKE '$anno%'";
    .....
    }

    prova così..ciao

  10. #10
    ma il fatto e' che anche gli anni vengono recuperati dal db...
    cioe' se per esempio ci sono delle date con dentro il 2002 allora comparirà il 2002 come link, altrimenti no... non li metto con la tendina, ma come link....
    grazie!

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.