将一个表中的详细信息存储到另一个表中

时间:2016-06-16 20:22:26

标签: php mysql

单击添加按钮时,我尝试将项目添加到数据库中的购物篮表中。这是我的表格,按钮:

<div id="products-container">
            <?php
                $pdo = new PDO('mysql:host=localhost;dbname=','name','password');
                $result = $pdo->query('SELECT file_id, productName, price, stock FROM files');
                foreach($result as $row){
                    echo "<form method='post' action='addbasket.php' id='shop'>";
                    echo "<img id='product' src=\"mfile.php?id={$row['file_id']}\">";
                    echo '<p>' . $row['productName'] . '</p>';
                    echo '<p>' . "£" . $row['price'] . '</p>';
                    echo '<p>' . "Stock Level: " . $row['stock'] . '</p>';
                    echo '<input type="submit" name="add" value="Add">';
                    echo "</form>";
                }
            ?>
        </div>

然后我有一个单独的文件与我的PHP将项目添加到该表,所以我想要做的是将会话名称,fileid,productname和价格存储在篮子表中(fileid,productname和价格来自它只是重定向到空白的addbasket.php页面并且不向数据库添加任何内容。任何人都可以看到我出错的地方吗?:

<?php

function newAccount(){
    $pdo=new PDO('mysql:host=localhost;dbname=', 'name', 'password');

    $name=$_SESSION['userName'];
    $fileid=$_GET['file_id'];
    $productname=$_GET['productName'];
    $price=$_GET['price'];


$st = $pdo->prepare('INSERT INTO basket (Username,file_id,productName,price) VALUES (:userName,:file_id,:productName,:price)');
    if(!isset($error)){
        //no error
        $sthandler = $pdo->prepare("SELECT file_id FROM files WHERE file_id = :file_id");
        $sthandler->bindParam(':file_id', $fileid);
        $sthandler->execute();

if($sthandler->rowCount() > 0){
    die(header("Location: mproducts.php"));

}else {

$st->execute(array('Username' => $name, 'file_id'=>$fileid, 'productName'=>$productname, 'price'=> $price));
    header("Location: mproducts.php");

    }
    }


if(isset($_POST['add'])){
    newAccount();
}
}

?> 

0 个答案:

没有答案