Visualizzazione dei risultati da 1 a 6 su 6

Discussione: foreach

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929

    foreach

    ciao a tutti,

    dovrei far ripetere un blocco di codice tante volte quanti sono i risultati di una query, come posso fare... mi sono persa

    la parte da ripetere è quella in grassetto...

    Grazie mille

    codice:
    	if (isset($utente)&& $utente !=0 && isset($cliente)&& $cliente !=0) {
    
    	$query_cerca_dati = "SELECT * FROM temporaneo WHERE id_utente = '$utente' AND id_cliente = '$cliente'";
    	$cerca_dati = mysql_query($query_cerca_dati, $conn) or die(mysql_error());
    	$row_cerca_dati = mysql_fetch_assoc($cerca_dati);
    	$totalRows_cerca_dati = mysql_num_rows($cerca_dati); // QUESTO E' IL NUMERO TOTALE DEI RECORD
    	 
    	$categoria = $row_cerca_dati['categoria']; // PRENDO LA CATEGORIA DEL PRIMO RECORD TROVATO
    	$prezzo = $row_cerca_dati['prezzo']; // PRENDO IL PREZZO DEL PRIMO RECORD TROVATO
    	$quantita = $row_cerca_dati['quantita']; // PRENDO LA QUANTITA' DEL PRIMO RECORD TROVATO
    	
    	$totale = $prezzo*$quantita;
    	
    	$query_cerca_sconto = "SELECT * FROM sconto WHERE ID_CLIENTE = '$cliente'";
    	$cerca_sconto = mysql_query($query_cerca_sconto, $conn) or die(mysql_error());
    	$row_cerca_sconto = mysql_fetch_assoc($cerca_sconto);
    	$totalRows_cerca_sconto = mysql_num_rows($cerca_sconto);
    	
    	$applica_questo = $row_cerca_sconto[$categoria];
    	
    	$totale_scontato1 = $totale*$applica_questo/100;
    	
    	$totale_scontato = $totale - $totale_scontato1;
    	
    	
    	}

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    155
    1)A meno che tu non lavori su più Db ti consiglio di specificare la connessione una volta per tutte.
    2)Specifica gli ambiti delle variabili ($_POST , $_GET , $_SESSION etc.. etc..)
    3)Spero di aver capito cosa ti serve perche nel tuo script ci sono errori sia di sintassi che logici.


    ---------------------------------connessione.php------------------------------



    mysql_connect("server" , "user" , "pass" )";
    mysql_select_db("TuoDatabse");

    ---------------------------------script.php------------------------------
    include("connessione.php");

    if(!empty($utente) and !empty($cliente)){
    $querysconto=mysql_query("SELECT * FROM sconto WHERE ID_CLIENTE = '$cliente'");
    $sconto=mysql_fetch_row($querysconto);
    $query=mysql_query(SELECT * FROM temporaneo WHERE id_utente = '$utente' AND id_cliente = '$cliente');
    while($Prodotto = mysql_fetch_array($query)){
    $Tot=$Prodotto["prezzo"] * $Prodotto["quantita"];



    }
    }else{}
    ---------------------------------------------------------------------
    Fino a qui ti seguo poi non capisco come hai relazionato gli sconti (che sono gia relazionati con i clienti) , alle categorie.
    Mostra lo schema del Db se vuoi che lo terminiamo.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    no, io ho postato solo la parte che interessava del codice

    questa è una funzione

    codice:
    function scontatutto($conn,$utente,$cliente){
    	
    	global $totale_scontato;
    
    	if (isset($utente)&& $utente !=0 && isset($cliente)&& $cliente !=0) {
    
    	$query_cerca_dati = "SELECT * FROM temporaneo WHERE id_utente = '$utente' AND id_cliente = '$cliente'";
    	$cerca_dati = mysql_query($query_cerca_dati, $conn) or die(mysql_error());
    	$row_cerca_dati = mysql_fetch_assoc($cerca_dati);
    	$totalRows_cerca_dati = mysql_num_rows($cerca_dati); // QUESTO E' IL NUMERO TOTALE DEI RECORD
    
    	
    	$categoria = $row_cerca_dati['categoria']; // PRENDO LA CATEGORIA DEL PRIMO RECORD TROVATO
    	$prezzo = $row_cerca_dati['prezzo']; // PRENDO IL PREZZO DEL PRIMO RECORD TROVATO
    	$quantita = $row_cerca_dati['quantita']; // PRENDO LA QUANTITA' DEL PRIMO RECORD TROVATO
    	
    	$totale = $prezzo*$quantita;
    	
    	$query_cerca_sconto = "SELECT * FROM sconto WHERE ID_CLIENTE = '$cliente'";
    	$cerca_sconto = mysql_query($query_cerca_sconto, $conn) or die(mysql_error());
    	$row_cerca_sconto = mysql_fetch_assoc($cerca_sconto);
    	$totalRows_cerca_sconto = mysql_num_rows($cerca_sconto);
    	
    	$applica_questo = $row_cerca_sconto[$categoria];
    	
    	$totale_scontato1 = $totale*$applica_questo/100;
    	
    	$totale_scontato = $totale - $totale_scontato1;
    	
    	
    	}
    }
    scontatutto($conn,$_GET['nome'],$_GET['cliente']);

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    155
    Come puoi vedere devi aprire un ciclo while che estrarre i prodotti ed in funzioine di quel ciclo applicare gli sconti.
    Anche se continuo a non capire come è strutturato il tuo database.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    2,929
    soluzione....

    codice:
    	if (isset($utente)&& $utente !=0 && isset($cliente)&& $cliente !=0) {
    
    	$query_cerca_dati = "SELECT * FROM temporaneo WHERE id_utente = '$utente' AND id_cliente = '$cliente'";
    	$cerca_dati = mysql_query($query_cerca_dati, $conn) or die(mysql_error());
    	$row_cerca_dati = mysql_fetch_assoc($cerca_dati);
    	$totalRows_cerca_dati = mysql_num_rows($cerca_dati); // QUESTO E' IL NUMERO TOTALE DEI RECORD
    	do { 
    	
    	$categoria = $row_cerca_dati['categoria']; // PRENDO LA CATEGORIA DEL PRIMO RECORD TROVATO
    	$prezzo = $row_cerca_dati['prezzo']; // PRENDO IL PREZZO DEL PRIMO RECORD TROVATO
    	$quantita = $row_cerca_dati['quantita']; // PRENDO LA QUANTITA' DEL PRIMO RECORD TROVATO
    	
    	$totale = $prezzo*$quantita;
    	
    	$query_cerca_sconto = "SELECT * FROM sconto WHERE ID_CLIENTE = '$cliente'";
    	$cerca_sconto = mysql_query($query_cerca_sconto, $conn) or die(mysql_error());
    	$row_cerca_sconto = mysql_fetch_assoc($cerca_sconto);
    	$totalRows_cerca_sconto = mysql_num_rows($cerca_sconto);
    	
    	$applica_questo = $row_cerca_sconto[$categoria];
    	
    	$totale_scontato1 = $totale*$applica_questo/100;
    	
    	$totale_scontato = $totale - $totale_scontato1;
    	
    	$stringa .= "<input name=\"".$totale_scontato."\" type=\"text\" id=\"".$totale_scontato."\" value=\"".$totale_scontato."\">
    ";
    	
    	} while ($row_cerca_dati = mysql_fetch_assoc($cerca_dati));
    	
    	
    	$totale_scontato = $stringa;
    	
    	}
    grazie

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    155
    Di nulla.
    Ultima cosa , perche non usi empty invece di isset?

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.