Visualizzazione dei risultati da 1 a 10 su 39

Visualizzazione discussione

  1. #1

    ON DUPLICATE KEY UPDATE e PDO non funziona

    Salve a tutti, non capisco il perchè ma la funzione ON DUPLICATE KEY UPDATE con PDO non funziona.
    Ho provato già anche REPLACE INTO ma ogni volta i valori vengono riaggiunti al database preesistente. Ciò che vorrei ottenere è che nel caso in cui all'interno della tabella sia gia presente lo stesso prodotto vengano solamente aggiornati i valori degli altri campi (specialmente il valore quantita). Ho cercato su internet ed ho visto che è un problema comune a molti. Ho tentato vari metodi ma non ho ottenuto risultati. Dove sbaglio? Grazie


    codice:
    $products = [];
        foreach (array_keys($match[2]) as $idx) {
    		
    		$taglia = substr($match[2][$idx],1); // 1 e' il numero di caratteri da rimuovere
            	$products[] = [
                'prodotto'  => $taglia,
                'quantita' => $match[3][$idx],
                'terminale'   => $match[4][$idx]
            ];
        }
    
    
        $pdo = new PDO("mysql:host=$host;dbname=$db_name", $username, $password);
        $query = $pdo->prepare('
        INSERT INTO tabella 
        (prodotto, quantita, terminale) 
        VALUES 
        (:prodotto, :quantita, :terminale)
        ON DUPLICATE KEY UPDATE 
        quantita= :quantita, terminale= :terminale');
    
    
    
    
        $query->bindParam(':prodotto', $prodotto);  
        $query->bindParam(':quantita', $quantita, PDO::PARAM_STR);
        $query->bindParam(':terminale', $terminale, PDO::PARAM_STR);
        $query->execute();
    	
    	
        foreach ($products as $product) {
            $query->execute($product);
        }
    Ultima modifica di supersqualo; 13-09-2017 a 14:36

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.