Гуру PHP помогите.
Что такое, ничего понять не могу:
Вот есть код:
<?
index.php
echo "<form method=post ENCTYPE=\"multipart/form-data\" action=send.php>";
echo "Имя:<br>";
echo "<input type=text name=name maxlenght=255 size=60 value=\"Имя участника\"><br>";
echo "Фото:<br>";
echo "<input type=file name=file> <input type=checkbox name=resize value=yes checked>Преобразовать изображение (100x100)<br>";
echo "О нём:<br>";
echo "<textarea rows=6 cols=60 name=about>О участнике</textarea><br>";
echo "<input type=hidden name=section value=members>";
echo "<input type=hidden name=act value=add>";
echo "<input type=submit value=Добавить>";
echo "</form>";
?>
---
Вот куда это всё идёт:
<?
send.php
if($act=='add')
{
if($resize)
{
ob_start();
MyResizeImg($file,$file_name,100,100);
$image = ob_get_contents();
ob_end_clean();
$sql="insert into cont_members values(null,'$name','$image','$about')";
mysql_query($sql);
}
else
{
$f=fopen("$file","rb");
$upload=fread($f,filesize("$file"));
fclose($f);
$sql="insert into cont_members values(null,'$name','$upload','$about')";
mysql_query($sql);
}
}
function MyResizeImg($userfile,$userfile_name,$newWidth,$newHeight)
{
$regs=split("\.",$userfile_name);
if(eregi("gif",$regs[1])) $srcImage = ImageCreateFromGIF($userfile);
if(eregi("jpg",$regs[1])|eregi("jpeg",$regs[1])) $srcImage = ImageCreateFromJPEG($userfile);
if(eregi("png",$regs[1])) $srcImage = ImageCreateFromPNG($userfile);
$srcWidth = ImageSX($srcImage);
$srcHeight = ImageSY($srcImage);
$ratioWidth = $srcWidth/$newWidth;
$ratioHeight = $srcHeight/$newHeight;
if($ratioWidth < $ratioHeight)
{
$destWidth = $srcWidth/$ratioHeight;
$destHeight = $newHeight;
}
else
{
$destWidth = $newWidth;
$destHeight = $srcHeight/$ratioWidth;
}
$destImage = imagecreate( $destWidth, $destHeight);
ImageCopyResized($destImage, $srcImage, 0, 0, 0, 0, $destWidth, $destHeight, $srcWidth, $srcHeight);
Imagejpeg($destImage);
ImageDestroy( $srcImage );
ImageDestroy( $destImage );
}
?>
---
Структура базы:
#
# Структура таблицы `cont_members`
#
CREATE TABLE cont_members (
id int(11) NOT NULL auto_increment,
name varchar(255) NOT NULL default '',
foto blob NOT NULL,
about text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;
---
Не могу понять, что не правильно, но картинки в базу не загружаются и при $resize и при !$resize
Хотя, если отключить буферизации в функции MyResizeImg картинка строго выходит в поток в том виде в каком и надо.
Но опять же её при этом в базу не добавишь. и просто когде resize не существует тоже картинка строго в поток выходит при маленьком изменеии, но в базу ни-ни. Не хочет.
Люди добрые, помогите!!! :((
|