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

Discussione: range di dati

  1. #1
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489

    range di dati

    ciao ragazzi,
    ho un problema...
    non riesco a scrivere lo script per ottenere un range di dati da una tabella in relazione con un'altra...
    ho due tabelle:
    tabella 1 =id nominativo data_n
    tabella 2 = id data_in, data_out, differenza, nominativoid, data

    le tabelle sono gia popolate.

    ho lavorato come segue:
    in un file ho scritto il form su cui raccolgo le date del range (6 campi, da/a) e il nominativo (di riferimento). con l'action del form porto i dati al file che deve elaborare i dati, scrivo le variabili, trasformo i dati delle date in timestamps (data_in, data_out sono in timestamps), e qui mi fermo.
    se scrivo la query con riferimento a una sola tabella (2) con "between" nessun problema, ho l'output.
    il problema sta nello scrivere la query considerando sia il range sia il nominativo, un join penso.
    mi aiutate?

    ciao

  2. #2
    codice:
    select *
    from tab1
    inner join tab2 on tab1.id = tab2.nominativoid
    where $tua_data between tab2.data_in AND tab2.data_out
    Sempre che presumendo sia vero che sono questi i campi di referenza: tab1.id = tab2.nominativoid

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

  3. #3
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    grazie,,
    in mattinata provo...
    ti faccio sapere

  4. #4
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    ciao,
    ho letto qualcosa su "inner join" però ho dovuto trascurare per la difficoltà di comprensione e anche perchè meno usate rispetto ad altre...
    certamente mi sbaglio ma ho timore che mi manchi la variabile del nome
    quel nome che mi porto dal form.... ho provato e non funziona.
    ti allego il codice che ho scritto nella pagina che l'action del form richiama


    Codice PHP:
    <?php // dati provenienti dal form:   
    //dati presenti nella tabella 2(orario) 
    $day_in =$_POST['giorno_in'];       
    $month_in =$_POST['mese_in'];         
    $year_in =$_POST['anno_in'];  
    $day_out =$_POST['giorno_out'];     
    $month_out =$_POST['mese_out'];         
    $year_out =$_POST['anno_out'];  

    //dato presente nella tabella 1 (nominativo) 
    $nome$_POST['nome'];   

    //ho pensato di trasformare le date in timestamps    
    $data_inmktime("0","0","0"$month_in$day_in$year_in);     
    $data_outmktime("0","0","0"$month_out$day_out$year_out);   

     
    // echo $data_in, $data_out; (per verificare i dati arrivano, e arrivano, come previsto, in timestamp) 
       
    $sql_1 "select * 
    from nominativo 
    inner join orario on nominativo.id = orario.nominativoid 
    where 
    $data_in between orario.data_in AND orario.data_out";       

    $risultato =mysql_query($sql_1) or die (mysql_error());     
    while (
    $row =mysql_fetch_array($risultato))         
    {             
    $in date("H:i"$row['data_in']);                 
    $out =date("H:i"$row['data_out']);
    $data =$row['data'];          
        
    echo 
    $in$out$data;         
    }    
    ?>
    adesso non ridere per il codice...

  5. #5
    Codice PHP:

    $sql_1 
    "select *
    from nominativo
    inner join orario on nominativo.id = orario.nominativoid
    where 
    $data_in between orario.data_in AND orario.data_out
    AND nominativo = '
    $nome' "

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

  6. #6
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    l'output è pagina bianca...
    perchè??

  7. #7
    Originariamente inviato da ttcc
    l'output è pagina bianca...
    perchè??
    Domanda da 100 milioni .... Come faccio a saperlo?

    potrebbe esserci un errore e hai la segnalazione errori disattivata.

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

  8. #8
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    ho provato diversi step, sono arrivato sino al codice prima del "select" l'output sono le date e il nome che inputo nel form... quando inserisco i codice del select, e seguito, mi presenta bianca.
    ho provato con tutto il codice omettendo qualcosa, come ";" , e mi segnala errore...
    allego il codice del form per maggiore chiarezza...

    Codice PHP:
    <?php include ('../Connections/DB_progetto.php'); 
     
    $sql "select id, nominativo from nominativo";
     
    $risultato =mysql_query($sql) or die (mysq_error()); 
     
    ?>   
    <form method="POST" action="riepilogo.php" > 

    data:
     <select name="giorno_in">  
    <?php 
    for ($i=1$i<=31$i++)

    echo 
    "<option value=\"$i\"> $i </option>"

    ?> 

    </select> <select name="mese_in"> <option value="1">gennaio</option> <option value="2">febbraio</option> <option value="3">marzo</option> <option value="4">aprile</option> <option value="5">maggio</option> <option value="6">giugno</option> <option value="7">luglio</option> <option value="8">agosto</option> <option value="9">settembre</option> <option value="10">ottobre</option> <option value="11">novembre</option> <option value="12">dicembre</option> </select> <select name="anno_in"> <option value="2009">2009</option> </select> 
     data:
     <select name="giorno_out">  
    <?php 
    for ($i=1$i<=31$i++)

    echo 
    "<option value=\"$i\"> $i </option>"
    }
     
    ?>  
    </select> <select name="mese_out"> <option value="1">gennaio</option> <option value="2">febbraio</option> <option value="3">marzo</option> <option value="4">aprile</option> <option value="5">maggio</option> <option value="6">giugno</option> <option value="7">luglio</option> <option value="8">agosto</option> <option value="9">settembre</option> <option value="10">ottobre</option> <option value="11">novembre</option> <option value="12">dicembre</option> </select> <select name="anno_out"> <option value="2009">2009</option> </select> <select name="nome"> <option value="">scegli nome</option>  
    <?php while ($riga =mysql_fetch_array($risultato))
     {     
    $id $riga['id'];     $nominativo =$riga['nominativo'];
     echo 
    "<option value\"$id\">$nominativo</option>\n";  
    ?> 
    </select>
      <input type="submit" name="submit" value="cerca">
     </form>

  9. #9
    Codice PHP:

    <?php 
    error_reporting
    (E_ALL);
    ini_set("display_error""1");


    // dati provenienti dal form:   
    //dati presenti nella tabella 2(orario)

    echo "<pre>";
    print_r($_POST);
    metti questo in testa al file riepilogo.php

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

  10. #10
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    Array
    (
    [giorno_in] => 24
    [mese_in] => 4
    [anno_in] => 2009
    [giorno_out] => 25
    [mese_out] => 4
    [anno_out] => 2009
    [nome] => paola
    [submit] => cerca
    )
    12405240001240610400paola

    ti confermo che i dati imputati sono quelli dell'array e che le prove le faccio direttamente sul server esterno

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.