簡體   English   中英

無法從PHP中的db刪除行

[英]cannot delete row from db in php

我有2頁sell.php和sell_form.php。 當用戶從sell_form.php的下拉菜單中選擇一個股票代碼時,我在sell.php中有一個查詢,該查詢應該從數據庫中刪除該股票代碼,但是當我現在得到的只是空白頁面時我點擊賣出按鈕。 我不確定我是否完全理解下拉菜單中的值如何傳遞到sell.php表單。 這是我到目前為止的代碼

這是我的sell.php文件

if ($_SERVER["REQUEST_METHOD"] == "POST") 
{



    // delete the stock from their portfolio 
query("DELETE FROM shares WHERE id = ? AND symbol = ?", $_SESSION["id"],$_POST["symbol"]);  

redirect("/");
}
else
{

$rows = query("SELECT * FROM shares WHERE id = ?", $_SESSION["id"]);

    //create array to store the shares
    $shares = [];

    //for each of the user info

    foreach($rows as $row){

        //lookup stock info
        $stock = lookup($row["symbol"]);
        if($stock !== false){

            $shares[] = [
                "name" => $stock["name"],
                "price" => $stock["price"],
                "shares" => $row["shares"],
                "symbol" => $row["symbol"],
                "total" => $row["shares"]*$stock["price"]
            ];

        }
    }

// render portfolio
render("sell_form.php", ["shares" => $shares, "title" => "Sell"] );
}

這是我的sell_form.php

<form action="sell.php" method="post">
<fieldset>     
    <div class="control-group">

        <select name="symbol">
        <option value="blank"></option>

        <?php foreach ($shares as $symbol):?>
        <option value="symbol"><?= $symbol["symbol"]?></option>
         <? endforeach ?>
        </select>     

    </div>
    <div class="control-group">
        <button type="submit" class="btn">Sell all shares</button>
    </div>
</fieldset>
</form>

我們認為在sell_form.php中,

<option value="symbol"><?= $symbol["symbol"]?></option>

應該更改為

<option value="<?= $symbol["symbol"]?>"><?= $symbol["symbol"]?></option>

否則在sell.php

delete語句解釋為-

DELETE FROM shares WHERE id = <<Spefied User Id>> AND symbol = 'symbol';

Thnaks

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM