2017-03-17 3 views
0
if($_REQUEST['action'] == 'addToCart' && !empty($_REQUEST['id'])){ 
     $productID = $_REQUEST['id']; 
     // get product details 
     $query = $db->query("SELECT * FROM products WHERE id = ".$productID); 
     $row = $query->fetch_assoc(); 
     $itemData = array(
      'id' => $row['id'], 
      'name' => $row['name'], 
      'price' => $row['price'], 
      'qty' => 1 
     ); 

     $insertItem = $cart->insert($itemData); 
     $redirectLoc = $insertItem?'viewCart.php':'index.php'; 
     header("Location: ".$redirectLoc); 
    } 

Ich versuche, diesen Code in PDO Stmt zu konvertieren. Bitte hilf mir dabei, ich bin neu hier.Wie konvertiert man mysqli-Code in PDO stmt?

+0

'$ db' ist eine' pdo' Verbindung oder 'mysqli'? Was hast du bis jetzt gemacht? 'prepare (" SELECT * FROM Produkte WHERE id =? "' .. 'execute (array ($ productID))' – chris85

+1

Vielleicht möchten Sie uns Ihre Datenbankklasse zeigen, damit wir sehen können, was sie macht – icecub

Antwort

0

Sie müssen eine Verbindung mit der Datenbank, die Sie haben, entwickeln und herstellen. Überprüfen Sie die Verbindungsprüfung und verbinden Sie sich damit.

Stellen Sie sicher, dass Sie die PDO-Bibliothek installiert haben, überprüfen Sie Ihre PHP-Informationen.

try 
    {     
     $conn =new PDO("sqlsrv:Server=$this->hostName;Database=$this->dbName", "$this->userName", "$this->password"); 
     $productID = $_REQUEST['id']; 
     $sql = "SELECT * FROM products WHERE id=?"; 
     $stmt->bindParam(1, $productID); 
     $stmt = $conn->prepare($sql); 
     $this->result = $stmt->execute(); 

        if (!$this->result) 
        { 
         while($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
         { 
          $itemData = array(
          'id' => $row['id'], 
          'name' => $row['name'], 
          'price' => $row['price'], 
          'qty' => 1 
          ); 
         } 
        } 
    $insertItem = $cart->insert($itemData); 
    $redirectLoc = $insertItem?'viewCart.php':'index.php'; 
    header("Location: ".$redirectLoc);       
    } 
    catch(Exception e) 
    { 
    echo $e->getMessage(); 
        exit(); 
    }