2017-04-06 153 views
0

我從我的講師那裏得到了這個示例代碼。我想修改代碼,以便它可以從數據庫獲取我的數據以生成條形碼。我已經閱讀了一些文章,但我仍然對生成條形碼有所瞭解。那麼我現在應該怎麼做?你的幫助真的很感激。如何在php中生成條形碼

<?php 
 
// Including all required classes 
 
require_once('class/BCGFontFile.php'); 
 
require_once('class/BCGColor.php'); 
 
require_once('class/BCGDrawing.php'); 
 

 
// Including the barcode technology 
 
require_once('class/BCGcode39.barcode.php'); 
 

 
// Loading Font 
 
$font = new BCGFontFile('./font/Arial.ttf', 18); 
 

 
// Don't forget to sanitize user inputs 
 
$text = isset($_GET['text']) ? $_GET['text'] : '7895565'; 
 

 
// The arguments are R, G, B for color. 
 
$color_black = new BCGColor(0, 0, 0); 
 
$color_white = new BCGColor(255, 255, 255); 
 

 
$drawException = null; 
 
try { 
 
    $code = new BCGcode39(); 
 
    $code->setScale(2); // Resolution 
 
    $code->setThickness(30); // Thickness 
 
    $code->setForegroundColor($color_black); // Color of bars 
 
    $code->setBackgroundColor($color_white); // Color of spaces 
 
    $code->setFont($font); // Font (or 0) 
 
    $code->parse($text); // Text 
 
} catch(Exception $exception) { 
 
    $drawException = $exception; 
 
} 
 

 
/* Here is the list of the arguments 
 
1 - Filename (empty : display on screen) 
 
2 - Background color */ 
 
$drawing = new BCGDrawing('', $color_white); 
 
if($drawException) { 
 
    $drawing->drawException($drawException); 
 
} else { 
 
    $drawing->setBarcode($code); 
 
    $drawing->draw(); 
 
} 
 

 
// Header that says it is an image (remove it if you save the barcode to a file) 
 
header('Content-Type: image/png'); 
 
header('Content-Disposition: inline; filename="barcode.png"'); 
 

 
// Draw (or save) the image into PNG format. 
 
$drawing->finish(BCGDrawing::IMG_FORMAT_PNG); 
 
?>

+0

所以你不知道如何使用'mysqli'或'PDO'? – Justinas

+0

@Justinas我知道如何使用mysqli,但我的問題是我不知道上面我應該修改的源代碼中的哪個部分。 – user9791

回答

0

您的條形碼是由該代碼生成:$code->parse($text); // Text

哪裏$text$text = isset($_GET['text']) ? $_GET['text'] : '7895565';

因此,所有你需要做的$text = $db->fetch();

+0

我不知道該怎麼寫'$ db-> fetch();',你有更簡單的方法嗎? – user9791

+0

@ user9791這是PDO實施示例,將其替換爲PDO的實際代碼。所以你知道如何使用PDO或不?因爲如果不是的話 - 會把問題看得太寬泛。 – Justinas

+0

是這樣嗎? '$ db \t = mysqli_connect(「localhost」,「root」,「」,「smposf」); \t \t $ as \t \t = mysqli_query($ db,「select * from barcode」); //其中SDATE = ' 「$ SDATE。」' \t \t而($ B = mysqli_fetch_array($如)) \t \t { \t \t \t $條形碼= $ B [ '條形碼']; \t \t \t echo「$ barcode」,'
','
'; \t} – user9791