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

    aiuto ordinamento dati di due tabelle

    Ragazzi se potete per favore aiutarmi..

    ho i dati di due tabelle

    confmiele e miele

    contengono i dati della confezionatura e produzione del miele

    hanno campi simili come contenuto esempio :
    tabella miele
    campo nomemiele = ACACIA
    tabella confmiele
    campo nomeconfmiele = ACACIA
    o il codice miele ma le tabelle sono diverse (hanno diverso numero di campi)

    ora il mio cruccio è prelevare i dati delle due tabelle in base a un criterio esempio: nomemiele

    e ordinarli per data indipendentemente da quale tabella arrivano..

    quindi potrei trovare

    1 miele
    1confezionatura
    2confezionatura
    3 confezionatura
    e via dicendo il risultato deve essere come se fosse una sola tabella che mostra i dati di quando il miele è "uscito" in ordine cronologico....

    ho provato in diversi modi con mysql ma la union non si può applicare (le tabelle sono diverse)
    ho provato anche con inner join ma non da il risultato voluto in quanto facendo la relazione tra le due tabelle la prima la fa da padrone .. mi spiego meglio... per ogni confezionatura sopra viene sempre riportata la produzione e di quella nella tabella miele ce ne una sola
    invece a me

    viene così

    1miele id 1
    1confezionatura id 30
    1miele id1
    2confezionatura id 31
    1miele id1
    3confeziontura id32




    Uploaded with ImageShack.us


    spero con questa premessa di essermi spiegato bene....
    e spero che qualcuno mi possa aiutare...

    ecco il codice ---

    ovviamente vi ho postato tutto ma alcune parti fanno solo in modo di prelevare dati o traformarli nel formato corretto e quello funziona ....

    <?php



    include("connDBmiele.php");
    $nomemiele = $_POST['nomemiele'];
    $codmiele = $_POST['codmiele'];
    $datamieleitaDA = $_POST['datamieleitaDA'];
    $datamieleitaA = $_POST['datamieleitaA'];

    //per visualizzare tutti in caso si selezioni % nel campo codice miele

    if ($codmiele == "%" )
    {

    $codmiele1 == "TUTTI" ;

    } else {


    $codmiele1 == $_POST['codmiele'];

    }



    $result = mysql_query("SELECT * FROM dittmiele WHERE onoffdittmiele = 'SI' ") or die(mysql_error());

    $row = mysql_fetch_array( $result );

    $idditt = $row['idditt'];
    $onoffdittmiele = $row['onoffdittmiele'];
    $denodittmiele = $row['denodittmiele'];
    $coddittmiele = $row['coddittmiele'];

    ?>

    <div id="divButtons" name="divButtons" align="right">
    <input type="image" src="../../honeyweb/miele/images/icon-print30.gif" alt="stampa" title="STAMPA" width="33" height="30" border="none" onclick="printPage()" >

    <div align="center"><font color="#000000" size="+2" align="center" >--- X ----</font>
    <div align="center"><font color="#000000" size="+2" align="center" ><?php echo $denodittmiele;?></font><font color="#000000" >___________________________________________</font><font color="#000000" size="+2" align="center" ><?php echo $coddittmiele;?></div>
    <div align="center"><font color="#000000" size="+1" align="center" >REGISTRO CARICO SCARICO ANNO DI PRODUZIONE DAL <?php echo $datamieleitaDA; ?> AL<?php echo $datamieleitaA; ?> </font> </div>
    <div align="center"><font color="#000000" size="+1" align="center" >PRODOTTO MIELE GREZZO <?php echo $nomemiele; ?> CODICE LOTTO <?php echo $codmiele1; ?> CONFEZIONE METURETORE FUSTO , UNITA' DI MISURA KG </font> </div>

    </div>
    </p>
    <?php







    //inverte la stringa data da italiano a inglese per la ricerca sul db
    function convertiData2($data){
    $rsl = explode ('-',$data);
    $rsl = array_reverse($rsl);
    return implode($rsl,'/');
    }



    //inverte la stringa data da italiano a inglese per la ricerca sul db
    function convertiData($data){
    $rsl = explode ('/',$data);
    $rsl = array_reverse($rsl);
    return implode($rsl,'-');
    }

    $datamieleusDA=convertiData($datamieleitaDA);

    $datamieleusA=convertiData($datamieleitaA);




    // funzione converte grammi in kg CON DECIMALI
    function convertiGrammi($numero){
    $numero = $numero / 1000 ;
    $numero = number_format($numero, 3,",",",");
    return $numero ;

    }








    $query="SELECT miele.*, confmiele.* FROM miele INNER JOIN confmiele ON codmiele = codconfmiele WHERE codmiele = ('".$codmiele."') AND codconfmiele = ('".$codmiele."') AND datamiele BETWEEN ('".$datamieleusDA."') AND ('".$datamieleusA."') AND dataconfmiele BETWEEN ('".$datamieleusDA."') AND ('".$datamieleusA."') ORDER BY 2 DESC ";
    $res = mysql_query($query) or die ('Error updating database: ' . mysql_error());

    {





    }




















    ?>



    <table id=stat align="center" width="70%" border="4" bordercolor="#CCCCCC" bgcolor="#FFFFFF" cellpadding="1" cellspacing="1" >

    <tr>

    <td width='5%' align='center'><a style='text-decoration:none' title='Data confezionatura'>ID </a></td>
    <td width='5%' align='center'><a style='text-decoration:none' title='Data confezionatura'>DATA </a></td>
    <td width='5%' align='center'><a style='text-decoration:none' title='Nome univoco del lotto'>OPERAZIONE</a> </td>
    <td width='10%' align='center'><a style='text-decoration:none' title='Nome confezione'>PROVENIENZA O DESTINAZIONE</a></td>
    <td width='10%' align='center'><a style='text-decoration:none' title='Peso confezione'>POSTAZIONE</a></td>
    <td width='5%' align='center'><a style='text-decoration:none' title='Numero confezioni'>LOTTO</a></td>
    <td width='5%' align='center'><a style='text-decoration:none' title='Totale parziale confezionato'>CARICO</a></td>
    <td width='5%' align='center'><a style='text-decoration:none' title='Totale parziale confezionato'>SCARICO</a></td>
    <td width='5%' align='center'><a style='text-decoration:none' title='Totale globale lotto confezionato'>GIACENZA</a></td>




    </tr>
    <?php

    while($row=mysql_fetch_assoc($res)){


    ///per smielature

    //ho apreto il tag della tabella e inserito una riga di intestazione con i nomi dei campi.

    //inverte la stringa data

    //$row['dataconfmieleus'] = $row['dataconfmiele'];
    $row['datamieleita']=convertiData2($row['datamiele']);




    //converte i grammi del database in kg



    $row['totmielegrammi'] = $row['totmiele'] ;
    $row['totmielekg']=convertiGrammi($row['totmielegrammi']);


    $row['resmielegrammi'] = $row['resmiele'] ;
    $row['resmielekg']=convertiGrammi($row['resmielegrammi']);


    $row['resmielegrammi'] = $row['resmiele'] ;
    $row['resmielekg']=convertiGrammi($row['resmielegrammi']);



    ////per confezionature

    $row['dataconfmieleita']=convertiData2($row['dataconfmiele']);



    //converte i grammi del database in kg




    $row['tottotconfmielegrammi'] = $row['tottotconfmiele'] ;
    $row['tottotconfmielekg']=convertiGrammi($row['tottotconfmielegrammi']);


    $row['resparzconfmielegrammi'] = $row['resparzconfmiele'] ;
    $row['resparzconfmielekg']=convertiGrammi($row['resparzconfmielegrammi']);


    $row['resconfmielegrammi'] = $row['resconfmiele'] ;
    $row['resconfmielekg']=convertiGrammi($row['resconfmielegrammi']);




    ////fatt


    //ho apreto il tag della tabella e inserito una riga di intestazione con i nomi dei campi.

    //inverte la stringa data

    //$row['dataconfmieleus'] = $row['dataconfmiele'];
    $row['datamieleita']=convertiData2($row['datamiele']);
    $row['dataconfmieleita']=convertiData2($row['dataconfmiele']);
    $row['datafattmieleita']=convertiData2($row['datafattmiele']);

    //per ogni "ciclata" del while produciamo una riga della tabella
    //operazione per il resto miele
    $row['resmiele'] = $row['totmiele'] ;

    //converte i grammi del database in kg




    $row['resparz18sfusofattmielegrammi'] = $row['resparz1sfusofattmiele'] ;
    $row['resparz18sfusofattmielekg']=convertiGrammi($row['resparz18sfusofattmielegrammi']);

    ?>

    <tr>

    <td width="5%" align="center"><?php echo $row['id'] ?></td>
    <td width="5%" align="center"><?php echo $row['datamieleita'] ?></td>
    <td width="5%" align="center">SMIELATTURA</td>
    <td width="10%" align="center"><?php echo $row['postazimiele'] ?></td>
    <td width="10%" align="center"></td>
    <td width="5%" align="center"><?php echo $row['codmiele'] ?></td>
    <td width="5%" align="center"><?php echo $row['totmielekg']?></td>
    <td width="5%" align="center"><?php echo $row['resparzmielekg'] ?></td>
    <td width="5%" align="center"><?php echo $row['totmielekg']?></td>





    </tr>
    <tr>

    <td width="5%" align="center"><?php echo $row['idconf'] ?></td>
    <td width="5%" align="center"><?php echo $row['dataconfmieleita'] ?></td>
    <td width="5%" align="center">CONFEZIONATURA</td>
    <td width="10%" align="center"><?php $denodittmiele ?></td>
    <td width="10%" align="center"></td>
    <td width="5%" align="center"><?php echo $row['codconfmiele'] ?></td>
    <td width="5%" align="center"></td>
    <td width="5%" align="center"><?php echo $row['tottotconfmielekg'] ?></td>
    <td width="5%" align="center"><?php echo $row['resparzconfmielekg']?></td>





    </tr>

    <?php
    } //chiusura while
    ?>

  2. #2
    Sinceramente non si capisce molto. Forse è meglio che posti la struttura di entrambe le tabelle ed i campi che vuoi estrapolare.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3

    aiuto ordinamento dati di due tabelle

    scusatemi.... ecco la struttura

    tab miele

    `id`(11) INT NOT NULL AUTO_INCREMENT,
    `datamiele` DATE NOT NULL ,
    `codmiele` VARCHAR(10) NOT NULL ,
    `postazimiele` varchar(20) NOT NULL,
    `nomemiele` VARCHAR(20) NOT NULL ,
    `totmiele` INT(7) NOT NULL ,
    `resultmiele` INT(7) NOT NULL ,
    `resmiele` INT(7) NOT NULL ,
    `notemiele` VARCHAR(300) NOT NULL ,
    PRIMARY KEY (`id`)

    tab confmiele

    `idconf` INT(11) NOT NULL AUTO_INCREMENT,
    `dataconfmiele` DATE NOT NULL ,
    `codconfmiele` VARCHAR(10) NOT NULL ,
    `nomeconfmiele` VARCHAR(20) NOT NULL ,
    `boxconfmiele` VARCHAR(20) NOT NULL ,
    `pesoconfmiele` INT(7) NOT NULL ,
    `numconfmiele` INT(4) NOT NULL ,
    `totconfmiele` INT(7) NOT NULL ,
    `resparzconfmiele` INT(7) NOT NULL ,
    `tottotconfmiele` INT(7) NOT NULL ,
    `resultconfmiele` INT(7) NOT NULL ,
    `resconfmiele` INT(7) NOT NULL ,
    `totnumconfmiele` INT(7) NOT NULL ,
    `resultnumconfmiele` INT(7) NOT NULL ,
    `resnumconfmiele` INT(7) NOT NULL ,
    `noteconfmiele` VARCHAR(300) NOT NULL ,
    PRIMARY KEY (`idconf`)
    ) DEFAULT CHARSET=utf8;

    devo estrarre i dati della smielatura e confezionatura di da me scelta (filtrata con un form di ricerca) ad esempio ACACIA
    possono esser piu di una..
    oppure di quel determinato codice (valore univoco!!!) esempio AC13
    in questo caso esiste una sola smielatura...
    invece quando cerco viene ripetuta la smielatura per ogni confezionatura di riferimento

    come nell'immagine

    spero questa volta di essere stato piu esaustivo...

    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.