Я вчера боролся с этим весь день, но не могу до конца разобраться.
У меня есть база данных, из которой я пытаюсь получить изображение (я знаю, что хранение изображений громоздконо это то, с чем я застрял).Я могу запросить соответствующее поле базы данных и получить данные, но когда я их отображаю, кажется, что отображается только часть данных.
Я использую этот код для отображения изображения:
require_once('../odbc_config.php');
if((isset($_GET['ur'])) AND ($_GET['ur'] != "")) {
$aria_query1_ur = $_GET['ur'];
$aria_query1 = "SELECT * FROM Patient WHERE PatientId='$aria_query1_ur' ";
$patient_result = odbc_exec($aria,$aria_query1) or die("Error getting Patient Data");
$patient_data = odbc_fetch_array($patient_result);
}
$ID=$patient_data['PatientSer'];
$query = odbc_exec($aria, "SELECT * FROM Photo WHERE PatientSer=".$ID);
$row = odbc_fetch_array($query);
$content = $row['Picture'];
header('Content-type: image/jpeg');
echo $content;
Я называю этот код так:
echo '<img src="contents/image2.php?ur='.$_GET['ur'].'">';
К сожалению, мне кажется, что я могу отображать изображение только частично.Размеры изображения правильно прочитаны, и я вижу первые 50 х 480 или около того пикселей сверху, но после этого все, что я вижу, это серый фон 640 х 480 пикселей.
Вот так: http://i1218.photobucket.com/albums/dd411/Barbs_ldsr/stuff/th_partial_image.jpg
Возможно ли, что драйвер Sybase ODBC пропускает только определенный объем данных?Как бы я проверить или исправить это?Или есть проблема с PHP?
Любая помощь приветствуется.Спасибо