Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    46

    Problema quantita' carrello

    Ciao raga...una domanda veloce veloce...
    ho un while e prendo dei dati dal db...
    nome prodotto .. quantita' .. peso.. etc etc e li visualizza belli ordinati in una tabella...
    Ora vorrei fare in modo che mettendo un input vicino ad ogni prodotto nel while, mi aggiorni la quantita'...solo che mi modifica sempre l'ultima quantita' dell' ultimo oggetto inserito...come posso fare per aggiornare la quantita' del singolo oggetto a mia scelta lasciando inalterata quella degli altri?
    codice:
    <form name="Form1" id="Form1" method="post" action="CheckCarrello.php" onsubmit="return ValidateForm1(this)">
    				<input type="hidden" name="usernameCarrello" id="usernameCarrello" value="<? echo $usernameCarrello; ?>" size="3">
    				<table width="500" height="100%" id="TabellaRiquadroCarrello" border="0" cellpadding="0" cellspacing="0">
    					<tr>
    						<td align="center" valign="top" height="20">
    							<?
    							$queryDatiCarrello = mysql_query("SELECT * FROM Negozio_Carrello WHERE username_carrello = '$usernameCarrello'");
    							
    							while($datiCarrello = mysql_fetch_array($queryDatiCarrello))
    							{
    								$nomeProdottoCarrello = $datiCarrello['nome_prodotto_carrello'];
    								$codCarrello = $datiCarrello['cod_carrello'];
    								$prezzoCarrello = $datiCarrello['prezzo_carrello'];
    								$quantitaCarrello = $datiCarrello['quantita_carrello'];
    								$pesoCarrello = $datiCarrello['peso_carrello'];
    							?>
    							<table width="500" id="TabellaCarrello" border="0" cellpadding="0" cellspacing="0">
    								<tr>
    									<td height="40">Nome prodotto</td>
    									<td>Peso</td>
    									<td>Quantita</td>
    									<td>Prezzo</td>
    								</tr>
    								<tr>
    									<td>
    										<? echo $nomeProdottoCarrello; ?>
    									</td>
    									<td>
    										<? echo $pesoCarrello." Kg"; ?>
    									</td>
    									<td>
    										<? echo $quantitaCarrello; ?>  <input type="text" name="a" id="a" value="" size="3">
    										<input type="submit" id="Button2" name="Button2" value="Aggiorna">
    									</td>
    									<td>
    										<? echo number_format($prezzoCarrello,2)." €"; ?>
    									</td>
    								</tr>
    								<?
    									$totale = $totale + ($prezzoCarrello*$quantitaCarrello);
    									$totalePeso = $totalePeso + ($pesoCarrello*$quantitaCarrello);
    								?>
    								<tr>
    									<td>
    									</td>
    									<td>
    										
    Totale peso:
    										<? echo $totalePeso." Kg" ?>
    									</td>
    									<td>
    									</td>
    									<td>
    										
    Totale ordine:
    										<? echo number_format($totale,2)." €"; ?>
    									</td>
    									
    
    								</tr>
    							</table>
    							<input type="hidden" name="b" id="b" value="<? echo $nomeProdottoCarrello; ?>" size="3">
    							<?
    							}
    							?>
    							
    
    							Continua a comprare 
    						</td>
    					</tr>
    				</table>
    				</form>
    e qui fa il check
    codice:
    echo $quantitaCarrello = $_POST["a"];
    echo $usernameCarrello = $_POST["usernameCarrello"];
    echo $nomeProdottoCarrello = $_POST["b"];
    
    mysql_query("UPDATE Negozio_Carrello SET quantita_carrello = '$quantitaCarrello' WHERE nome_prodotto_carrello = '$nomeProdottoCarrello' AND username_carrello = '$usernameCarrello'");
    Me la data una mano please?

  2. #2
    beh, proprio per il fatto che metti tutti gli input con lo stesso name.

    Prova a fare

    <input type="text" name="a[<?=$nomeProdottoCarrello?>]" value="" size="3">

    In questo modo non ti servirebbe neanche l'input hidden in fondo, perché nel check faresti:

    Codice PHP:
    $quantitaCarrello $_POST["a"];
    $usernameCarrello $_POST["usernameCarrello"];

    foreach(
    $quantitaCarrello as $nomeProdotto => $quantita){
       
    mysql_query("UPDATE Negozio_Carrello SET quantita_carrello = '$quantita' WHERE nome_prodotto_carrello = '$nomeProdotto' AND username_carrello = '$usernameCarrello'");


  3. #3
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    46
    oki cosi' funziona =) ma c'e' un altro problema =P
    adesso se aggiorno la quantita' del primo oggetto e lascio vuoto il secondo...mi sparisce la quantita' del secondo e viceversa.....xche'?

  4. #4
    perché devi farlo così:

    <td>
    <input type="text" name="a" id="a" value="<?=$quantitaCarrello?>" size="3">
    <input type="submit" id="Button2" name="Button2" value="Aggiorna">
    </td>

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    46
    Funziona tutto =) tnx.....Posso chiedere un'altra cosa?
    Come devo immagazzinare in un'array una variabile che sta' in un while?
    mi spiego =P
    codice:
    while($datiCarrello1 = mysql_fetch_array($queryDatiCarrello1))
    {
        echo "
    A ".$nomeProdottoCarrello1 = $datiCarrello1['nome_prodotto_carrello'];
        $prova = array('$nomeProdottoCarrello1');
    }
    Ma se faccio echo su prova mi scrive array....
    Come devo fare? tnx

  6. #6
    Codice PHP:
    $prova = array();
    while(
    $datiCarrello1 mysql_fetch_array($queryDatiCarrello1))
    {
        echo 
    "
    A "
    .$nomeProdottoCarrello1 $datiCarrello1['nome_prodotto_carrello'];
        
    $prova[] = $nomeProdottoCarrello1;


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.