Php / sqlite数据库没有返回结果

时间:2016-03-22 20:50:41

标签: php sqlite return

我目前正在尝试在php / sqlite中创建一个小程序(我对php和sqlite很新),我可以填充已存储产品的数量,并添加新产品aswel。

我已经有一个数据库,里面有很多条目。

我设法创建了这段代码,但它没有返回任何内容或给我任何错误。

有人能够指出我做错了什么或可能的解决方案吗?!

这是我的代码......

<?php

$db=sqlite_open("warehouse.db");

if(isset( $_POST['warehouse']) && strcmp($_POST['warehouse'],"") !=0 ){

    $ItemID = sqlite_escape_string($_POST["warehouse"]);

    $ItemName=$_POST['warehouse'];

    $Quantity=$_POST['warehouse'];

$qr="UPDATE warehouse SET Quantity = $Quantity WHERE ItemName = (SELECT id FROM warehouse WHERE itemName='$ItemName')";

    sqlite_query($db,$qr);

echo "<h2>". "Show warehouse"."</h2>";

echo "<table border=1>\n";

echo "</br>\n";

$result=sqlite_query($db,"SELECT * from warehouse WHERE warehouse.ItemName = warehouse.id");

echo "<th>Item ID</th><th>Item Name</th><th>Item Quantity</th>\n";

while($row=sqlite_fetch_array($result,SQLITE_ASSOC))
{
    echo "<tr>\n";
    echo "<td>" . $row['warehouse.ItemId'] . "</td>\n";
    echo "<td>" . $row['warehouse.ItemName'] . "</td>\n";
    echo "<td>" . $row['warehouse.Quantity'] . "</td>\n";
    echo "</tr>\n";
}
echo "</table>\n";


}
sqlite_close($db);

?>

1 个答案:

答案 0 :(得分:0)

您展示的代码包含在:

if(isset( $_POST['warehouse']) && strcmp($_POST['warehouse'],"") !=0 ){
    // all your code, including showing the current data
}

因此,当您向其发布内容时,它只会生成输出,即向其提交表单。如果您只是在浏览器中访问该页面,那么您正在执行GET,因此唯一发生的事情是您的数据库已打开并立即关闭,POST测试中没有任何内容执行,并且没有为浏览器生成输出。

您可能希望将关闭POST测试的“}”移动到您的“Show Warehouse”标题之上,这样您在使用GET时至少会看到您的数据表。

if(isset( $_POST['warehouse']) && strcmp($_POST['warehouse'],"") !=0 ){
    // code for updating data
}
echo "<h2>". "Show warehouse"."</h2>";
// rest of your display code