我试图通过使用PHP中的sql查询从数据库中检索单个整数值来检查条件是否为真。这是代码-

$stmt = $dbo->prepare("SELECT Qty FROM sample.stock WHERE stock_ID=$s_stock_ID AND component='$component' LIMIT 1");
if ($stmt->execute(array($_GET['Qty'])))
{
   $Q = $_GET['Qty'];
   while ($row = $stmt->fetch())
   {
    print_r($row);
   }
}

if($Qty <= $Q) // comparison of integers
    {
     echo "success";
    }
else
{
 echo "failed";
}


我不明白我在这里被困在哪里..如果有人能指出我的错误,那将是很棒的。谢谢。

最佳答案

我已经更新了您的代码,以添加“尝试/捕获”块。您还需要将“数量”移入while循环。您可以将其作为对象或数组来获取。在下面的示例中,我将其作为对象获取。

    $Q = $_GET['Qty'];
    $sql = "SELECT Qty FROM sample.stock WHERE stock_ID=$s_stock_ID AND component='$component' LIMIT 1";

    $stmt = $dbo->prepare( $sql );

    try {
        $stmt->execute( array($_GET['Qty']) );
        while ($row = $stmt->fetch(PDO::FETCH_OBJ))
        {
            if( $row->Qty <= $Q ) {
                echo "success";
            } else {
                echo "failed";
            }
        }
    } catch (PDOException $e) {
        print $e->getMessage();
    }


http://php.net/manual/en/pdostatement.fetch.php

关于php - 如何从PHP中的SQL查询中检索单个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34806417/

10-16 10:00
查看更多