Visualizzazione dei risultati da 1 a 5 su 5

Discussione: incremento quantità

  1. #1

    incremento quantità

    Salve, per caso riuscite ad aiutarmi su questo:

    ho una tabella così strutturata


    id_pro | id_sede | barcode_sed | quantita_sed


    e in pratica ho realizzato un form dove passo barcode_sed e id_sede

    la mia domanda è:

    come posso:
    1) incrementare di uno quantita_sed dove trovo barcode_sed inserito e id_sede ?
    come posso aggiungere un record se questo non esiste nella tabella?


    mi spiego meglio...
    inserisco il barcode e la sede...se esiste incremento quantità di 1
    se non esiste aggiungo un nuovo record con id_sed barcode_sed e quantita_sed=1

    spero di essere stato chiaro...

    io usavo questo ... ma non funziona... o meglio potrebbe anche funzionare ma solo per l'update...

    codice:
    $id_sedi=$_POST['id_sedi'];
    $quantita2=$quantita +1;
    $que= "UPDATE mag_sedi SET quantita_sed = '$quantita2' WHERE barcode_sed=".$barcode_sed;
    $q=mysql_query($que);
    echo $que;
    mysql_close();

    grazie per il tempo che mi dedicherete
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  2. #2
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    La domanda non ha niente a che fare con php.
    incrementare di uno quantita_sed dove trovo barcode_sed inserito e id_sede ?
    codice:
    UPDATE mag_sedi SET quantita_sed=quantita_sed+1 WHERE barcode_sed=123;
    inserisco il barcode e la sede...se esiste incremento quantità di 1
    se non esiste aggiungo un nuovo record con id_sed barcode_sed e quantita_sed=1
    codice:
    INSERT INTO mag_sedi (...) VALUES (...) ON DUPLICATE KEY UPDATE quantita_sed=quantita_sed+1;

  3. #3
    ho raggiunto questo livello... ma non funziona... sicuramente sbaglio qualcosa nella sintassi o nella forma... potreste controllare?


    codice:
    include("db.php");
    
    
    //recupero il record del prodotto se esiste
    $id_sedi=$_POST['id_sedi'];
    $barcode_sed=$_POST['barcode_sed'];
    
    
    $quecer="SELECT * FROM mag_sedi WHERE barcode_sed=".$barcode_sed;
    $query1 = mysql_query ($quecer);
    $row=mysql_fetch_array($query1);
    $quantita_pro=$row['quantita_pro'];
    
    
    echo $quecer;
    
    
    
    
    if(mysql_num_rows($result)>0) {
    
    
    //Inserisco il record del prodotto se non esiste
    
    
    $quantita_new=1;
    $queins="INSERT INTO mag_sedi SET 
                        id_sed = '$id_sed',
                        barcode_sed = '$barcode_sed',
                        quantita_sed = '$quantita_new'
    				";
    $q=mysql_query($queins);
    echo $queins;
    
    
    } else {
    
    
    //Modifico il record del prodotto se esiste e incremento la quantità di 1
    $barcode_sed=$_POST['barcode_sed'];
    $quantita2=$quantita_pro +1;
    $queup= "UPDATE mag_sedi SET quantita_sed = '$quantita2' WHERE barcode_sed=".$barcode_sed;
    $query2=mysql_query($queup);
    echo $queup;
    }
    mysql_close();
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  4. #4
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    Non è più semplice fare come ti ho suggerito prima?

    codice:
    include("db.php");
    
    $data = array(
        'id_sed' => $_POST['id_sedi'],
        'barcode_sed' => $_POST['barcode_sed'],
        'quantita_sed' => 1
    );
    
    
    $query = 'INSERT INTO mag_sedi ('. implode(',',array_keys($data)).') VALUES (\''.implode("', '", array_map('mysql_real_escape_string', $data)).'\') ON DUPLICATE KEY UPDATE quantita_sed=quantita_sed+1';
    if (mysql_query($query)) {
        echo "Great.";
    }
    
    mysql_close();
    Dovrebbe funzionare, purchè tu abbia settato barcode_sed come primary key o unique index.
    Ultima modifica di .Kurt; 12-12-2014 a 13:02

  5. #5
    grazie mille... funziona!
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

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.