繁体   English   中英

请如何在我的代码中将mysql查询转换为pdo?

[英]please How to convert mysql query to pdo in my code?

我在mySQLquery中将代码PHP转换为唯一的产品ID函数

function kode($tabel, $inisial){
$struktur   = mysql_query("SELECT * FROM $tabel");
$field      = mysql_field_name($struktur,0);
$panjang    = mysql_field_len($struktur,0);

$qry    = mysql_query("SELECT MAX(".$field.") FROM ".$tabel);
$row    = mysql_fetch_array($qry); 
if ($row[0]=="") {
    $angka=0;
}
else {
    $angka      = substr($row[0], strlen($inisial));
}

$angka++;
$angka  =strval($angka); 
$tmp    ="";
for($i=1; $i<=($panjang-strlen($inisial)-strlen($angka)); $i++) {
    $tmp=$tmp."0";  
}
return $inisial.$tmp.$angka; }

如何将此代码转换为php pdo? 请帮我..

这是我用于PDO的标准代码段:

try
{
    $dbh = new PDO("mysql:host=xxxxxxxxxxxx;dbname=streaming", "xxxx", "xxxx");
}
catch (Exception $e)
{
    throw new Exception( 'Something really gone wrong', 0, $e);
}


$date = reformatDate($_POST['date']);

$sql="SELECT * FROM order_items WHERE date_start = :date";
$sth = $dbh->prepare($sql);
$sth->bindParam(':date', $date, PDO::PARAM_STR, 10);

$sth->execute();

$result = $sth->fetchAll(PDO::FETCH_ASSOC);

此示例应该为您指明正确的方向,但是您需要进行繁重的工作。

更新资料

这也是可以接受的。

$madeupstring = "Mk9285425";
$sql="SELECT * FROM order_items WHERE product = :whatever";
$sth = $dbh->prepare($sql);
$sth->bindParam(':whatever', $madeupstring);
$sth->execute();

$result = $sth->fetchAll(PDO::FETCH_ASSOC);

您也可以这样做:

$sql="SELECT * FROM order_items WHERE product = 'Mk9285425'";
$sth = $dbh->prepare($sql);
$sth->execute();

$result = $sth->fetchAll(PDO::FETCH_ASSOC);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM