我正在嘗試使用 PHP 將影像保存到 SQL Server 資料庫中
CREATE TABLE [dbo].[ImageList](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Image] [varbinary](max) NULL,
[FactID] [varchar](50) NULL,
我的代碼是:
$img_data = (file_get_contents($_FILES['glryimage']['tmp_name']));
$tsql = "INSERT INTO dbo.ImageList (
FactID,
Image)
VALUES
(?, ?)";
$var = array($FactID, $img_data);
if (!sqlsrv_query($conn, $tsql, $var)) {
if( ($errors = sqlsrv_errors() ) != null) {
foreach( $errors as $error ) {
echo "SQLSTATE: ".$error[ 'SQLSTATE']."<br />";
echo "message: ".$error[ 'message']."<br />";
}
}
} else {
}
當嘗試插入資料庫時??出現錯誤
SQLSTATE:IMSSP
訊息:將輸入引數 4 的字串轉換為 UCS-2 時出錯:目標多位元組代碼頁中不存在 Unicode 字符的映射。
請我如何存盤影像。
提前致謝。
uj5u.com熱心網友回復:
這可能是由于服務器PHP函式可能不支持的字符編碼可能UTF-8會解決此問題,請嘗試一下UTF-16bin2hex
$img_data = bin2hex(file_get_contents($_FILES['glryimage']['tmp_name']));
使用 PHP 檔案作為參考。
二進制到十六進制
十六進制到 bin
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/484692.html
