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

Discussione: sessioni e array

  1. #1

    sessioni e array

    Ciao a tutti,
    con questo codice:

    $ordine = is_array($_SESSION['ordine']) ? $_SESSION['ordine'] : array();

    $ordine[] = array ('composizione' => $composizione , 'colore' => $colore , 'quantita' => $quantita , 'altre_informazioni' => $altre_informazioni );

    $_SESSION['ordine'] = &$ordine;

    foreach ($_SESSION['ordine'] as $ordini) {
    echo $ordini['composizione']."
    \n".$ordini['colore']."
    \n".$ordini['quantita']."
    \n".$ordini['altre_informazioni']."
    \n";
    }

    io creo degli array con i prodotti da ordinare, come faccio ad evitare che un modello dello stesso colore sia aggiunto più volte? Non c'è un modo che mi permetta di aumentare solo la quantità nel momento in cui ordinano più volte lo stesso modello con lo stesso colore?

    Grazie

  2. #2
    Invece di usare $ordine come array con indici numerici, usalo come array associativo usando come chiave qualche dato che identifica univocamente il singolo ordine, cosi' puoi accedere direttamente a
    codice:
    $ordine[$id_ordine]['quantita']

  3. #3
    Scusate ma sugli array sono proprio una pippa.

    Potresti farmi un esempio?

    Io ho tramite un post i campi: modello, colore, composizione

  4. #4
    Vi prego aiutatemi devo inserire in un array i valori di un form come faccio?

  5. #5
    Non ho capito bene come sono organizzati gli ordini...

  6. #6
    praticamente da un form ordino la quantità, il modello, il colore, la composizione. Come faccio ad inserirle in un array verificando che non sia già presente un modello dello stesso colore e della stessa composizione?

  7. #7
    Usa un array del genere:
    codice:
    $ordine[$modello][$colore][$composizione] = $quantita;

  8. #8
    ho risolto cosi:

    if (isset ($_SESSION['ordine'])) {
    if (is_array($_SESSION['ordine'])) {
    $ordine = $_SESSION['ordine'];
    }
    }else{
    $ordine = array();
    }
    $all = $modello.$composizione.$colore;
    if (array_key_exists($all, $ordine)) {
    foreach ($ordine as $x) {
    $ordine[$all]['quantita'] = ($x['quantita'] + $quantita);
    }
    }else{
    $ordine[$all]['modello'] = $modello;
    $ordine[$all]['colore'] = $colore;
    $ordine[$all]['composizione'] = $composizione;
    $ordine[$all]['quantita'] = $quantita;
    }
    $_SESSION['ordine'] = &$ordine;
    if (isset($_SESSION['ordine'])){
    foreach ($_SESSION['ordine'] as $x) {

    echo $x['quantita'].$x['modello'].$x['colore'].$x['composizione']."
    ";
    }
    }else{
    echo"nessun ordine";
    }

    ora funziona, però avrei bisogno convertire i vari array creati in variabili da inserire in una tabella di un database, mi sapete dire come posso fare?

  9. #9
    aiutatemi!!
    dopo un foreach come faccio a isolare ogni variabile di un array da inserire in un database?

  10. #10
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    non ho idea di come è strutturato il tuo array e di cosa vorresti fare, ma qui trovi di sicuro ciò che fa per te, http://ch.php.net/manual/de/control-...es.foreach.php

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.