PHP + MSQL +函数在函数中使用请求

时间:2018-06-16 20:07:24

标签: php sql function pdo

伙计们,我想纠正这个功能来自DB的请求它工作正常但是我想将它作为一个函数使用,所以我可以重复30次

这里的问题是我真的不知道如何将它用于函数

<?php

        $today = date("Y-m-d") ;

        function getDateFunc($today) {

        $getttlprice = "SELECT SUM(price) AS TotalPrice FROM orders WHERE ldate = :today";
        $ttp = $pdo->prepare($getttlprice);
        $ttp->execute(array(':today'=>$today));
        $resultttp =  $ttp->fetchObject();
        $todayresulte = $resultttp->TotalPrice;
        echo $todayresulte ;
        }

        getDateFunc('16-06-2018') ;

     ?>

通常功能是这样的,但我不知道如何在我的请求中使用它

function getDateFunc($today){
  echo $today ; // resulte 16/06/2018 by today time
}

enter image description here

2 个答案:

答案 0 :(得分:0)

try {
$pdo= new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
// set the PDO error mode to exception
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully"; 
}
catch(PDOException $e)
{
echo "Connection failed: " . $e->getMessage();
}

你必须在$ pdo中提供连接

答案 1 :(得分:0)

该函数中没有数据库连接构造函数。您可以使用global或函数调用数据库连接代码。

此外,您的日期格式似乎不正确。

今天:年,月,日但是你写的; 日,月和年

 function getDateFunc($today) {

     try {
        $pdo= new PDO("mysql:host=$servername;dbname=myDB", $username, $password); 
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        echo "Connected successfully"; 
        }
        catch(PDOException $e)
        {
            echo "Connection failed: " . $e->getMessage();
        }


    $getttlprice = "SELECT SUM(price) AS TotalPrice FROM orders WHERE ldate = :today";
    $ttp = $pdo->prepare($getttlprice);
    $ttp->execute(array(':today'=>$today));
    $resultttp =  $ttp->fetchObject();
    $todayresulte = $resultttp->TotalPrice;
    echo $todayresulte ;
}