Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    909

    sommare due valori array se uguali

    come faccio a sommare due valori contenuti in un array se questi sono uguali?
    codice:
    $dati = mysql_query("SELECT * FROM tabella WHERE  id='$id AND dal_data <= '$tisdata'  AND al_data >='$tisdata' ORDER BY dal_data");
        WHILE($row = mysql_fetch_array($dati)){
    
    for($i = strtotime($row[dal_data]); $i<=strtotime($row[al_data]); $i = strtotime("+1 day",$i)){
    $date=array();
       $date[] = date('d-m-Y',$i);
      }  
      
    for($i = 1; $i<$giorni+$primo_lunedi; $i++){
    
      if($i%$colonne+1==0){ print("<tr>"); }
    
      if($i<$primo_lunedi){ print("<td> </td>"); } 
      else 
      {
        $giorno_= $i-($primo_lunedi-1);
        $a = strtotime(date($anno_."-".$mese_."-".$giorno_));
        $tisdata = date("Y-m-d", $a);
        $b = strtotime(date("Y-m-d"));
        
        $dati = mysql_query("SELECT * FROM tabella WHERE  id='$id AND (dal_data <= '".$date[0]."' OR al_data >= '".$date[0]."')");
        WHILE($row2 = mysql_fetch_assoc($dati)){
    	$qta = array();
    	$qta[] = $row2[qta];
    
    for($i = strtotime($row2[dal_data]); $i<=strtotime($row2[al_data]); $i = strtotime("+1 day",$i)){
    $date=array();
       $date[] = date('d',$i);
    
     
       echo"<td>".$date[0]."
    ";
       echo$qta[0]."</td>";
    }
    sono arrivato a stampare i giorni che mi interessano con l'equivalente qta:

    del tipo;
    dal 2008-02-03 al 2008-02-05 (qta 5)

    ed ottengo col codice sopra:

    03 04 05
    5 5 5

    il problema è che essendo in un ciclo while per recuperare tutte le quantità in effetti se ho una situazione del genere:
    dal 2008-02-03 al 2008-02-05 (qta 5)
    dal 2008-02-04 al 2008-02-05 (qta 3)


    03 04 05 04 05
    5 5 5 3 3

    invece di:
    03 04 05
    5 8 8

    che è giusto ma graficamente sicuramente da migliorare, come faccio a far uscire solo i giorni interessati e sotto "la somma" delle varie quantità relative a quel giorno?

  2. #2
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Codice PHP:
    $query_str="SELECT SUM(quantita) AS totali,
                                dal_data AS from,
                                al_data AS to 
                     FROM    tabella 
                     WHERE  dal_data <= 
    $from_data
                     AND      al_data >=  
    $to_data
                     GROUP BY dal_data
                     ORDER BY dal_data"
    ;

    $query=mysql_query($query_str);

    echo 
    "<pre>";
    while (
    $res=mysql_fetch_assoc($query)) print_r($res);
    echo 
    "</pre>"
    prova così...
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    909
    sinceramente non visualizzo nulla....

    non so se hai capito come vorrei che visualizzassi i risultati ?

    grazie x la disponibilità..se non sono stato chiaro di pregherei di dirmelo

    garzie ancora

  4. #4
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Codice PHP:
    $query_str="SELECT SUM(quantita) AS totali,
                                dal_data AS from,
                                al_data AS to 
                     FROM    tabella 
                     WHERE  dal_data >= 
    $from_data
                     AND      al_data <= 
    $to_data
                     GROUP BY dal_data
                     ORDER BY dal_data"
    ;

    $query=mysql_query($query_str);

    echo 
    "<pre>";
    while (
    $res=mysql_fetch_assoc($query)) print_r($res);
    echo 
    "</pre>"
    riprova così.. mi sono sbagliato con le date
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    909
    nulla da fare!

    no so che dirti ...io l'unica cosa che faccio e sostituire il nome della tabella e ...

    $from_data con $tisdata
    $to_data con $tisdata
    che mi ricavo con
    codice:
    $a = strtotime(date($anno_."-".$mese_."-".$giorno_));
    $tisdata = date("Y-m-d", $a);
    qualche altra soluzione...magari sfruttando quanto ho già fatto?

    grazie ancora!

  6. #6
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    ciao, l' ho provarta e c'è un errore veramente grossolano... il from del campo non può esistere sennò mysql lo accetta come FROM esecutivo...

    Codice PHP:
    $query_str="SELECT SUM(quantita) AS totali,
                                dal_data AS from_date,
                                al_data AS to_date 
                     FROM    tabella 
                     WHERE  dal_data >= 
    $from_data
                     AND      al_data <= 
    $to_data
                     GROUP BY dal_data
                     ORDER BY dal_data"
    ;

    $query=mysql_query($query_str) or die(mysql_error());

    echo 
    "<pre>";
    while (
    $res=mysql_fetch_assoc($query)) print_r($res);
    echo 
    "</pre>"
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    909
    mi da questo errore:
    codice:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND al_data <= GROUP BY dal_data ORDER' at line 6

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    909
    perdonami ma cosa dovrei visualizzare?

    grazie

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    909
    up pls

  10. #10
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Originariamente inviato da yusizu
    mi da questo errore:
    codice:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND al_data <= GROUP BY dal_data ORDER' at line 6
    hai controllato le variabili $from_data e $to_data prima di passarle?stampale a video...
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

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.