|
Тема |
Jpg v baza |
|
Автор | nN (Нерегистриран) | |
Публикувано | 16.09.06 00:35 |
|
|
Хора цял ден съм си блъскал главата с един скрипт който трябва да качва картинка в базата и да я извежда в браузъра след това. Ъплоудвам файла и му правя един тъмбнейл който всъщност се качва в базата. Качвам тъмбнейла, но при показването на картинката има проблем - не я показва
Ето малко код:(input.php)
if($submit)
{
$FileName = $_FILES['my_file']['name'];
if ($FileName)
{
$FileNameParts = explode(".", $FileName);
$FileExtension = end($FileNameParts);
if ($FileExtension != "jpg" && $FileExtension != "JPEG" && $FileExtension != "JPG")
{
die ("Choose a JPG for the photo");
}
$PhotoSize = $_FILES['my_file']['size'];
if ($PhotoSize == 0)
{
die ("Sorry. The upload of $FileName has failed.");
}
$TempFileName = $_FILES['my_file']['tmp_name'];
$TempFile = fopen($TempFileName, "r");
$BinaryPhoto = fread($TempFile, fileSize($TempFileName));
$OldErrorReporting = error_reporting(E_ALL & ~(E_WARNING));
$SourceImage = imagecreatefromstring($BinaryPhoto);
error_reporting($OldErrorReporting);
if (!$SourceImage)
{
die ("Sorry.It was not possible to read photo $FileName.Choose another photo in JPG format.");
}
$Width = imagesx($SourceImage);
$Height = imagesy($SourceImage);
$DestinationWidth = 80;
$DestinationHeight = 60;
$DestinationImage = imagecreate($DestinationWidth, $DestinationHeight);
imagecopyresized($DestinationImage, $SourceImage,0, 0, 0, 0,$DestinationWidth, $DestinationHeight,$Width, $Height);
ob_start();
imageJPEG($DestinationImage);
$BinaryThumbnail = ob_get_contents();
ob_end_clean();
$BinaryThumbnail = addslashes($BinaryThumbnail);
$query=mysql_query("INSERT INTO table (th_base) VALUES ('$BinaryThumbnail')");
if($query) echo "uploaded";
else echo "error";
}
}
else
{
echo '
<form action=admin_index.php?content=add method=POST enctype="multipart/form-data">
<input type=hidden name=content value="add">
<table border=0><td><tr>
<td><b>Base Photo:</b></td><td><input type=file name=my_file>'.$error_file.'</td></tr>
</table>
<input type=submit value=Add name=submit></form>';
}
И сега тъмбнейла е в базата всичко каточели е ОК.
Опитвам се да го извадя по най-елементарния начин:
image.php:
<HTML>
<img src="image_test.php" width=80 height=60>
</HTML>
image_test.php:
header("Content-type: image/jpeg");
$connection = mysql_connect("localhost", "user", "pass");
mysql_select_db("db", $connection);
$query = mysql_query("SELECT th_base FROM table WHERE id=47");
$Row = mysql_fetch_array($query);
$Jpg = $Row["th_base"];
echo $Jpg;
Естествено проверих в базата ид-то де
Някакви идеи защо браузъра не вади картинката ? Данеби нещо при вкарването на данните да бъркам ?
|
| |
|
|
|