Ben tabloda resim upload yanı sıra folder.please i klasör ve veritabanı görüntü kaydetmek nasıl, bana yardım etmelisin. yöntemi açıklayınız.
Thanks Manish
Siz PHP "her zamanki gibi" bunu yapabilirsiniz. Ben sadece bu gibi bir kaç gün önce yaptım:
$path = "/img/avatars/";
$dir = getcwd().$path;
$avatarFile = "$dir$id.png";
if (isset($this->data['User']['avatar']) && $this->data['User']['avatar']['error'] == 0) {
$avatar = $this->data['User']['avatar'];
if (!is_uploaded_file($avatar['tmp_name'])) $this->Utils->panic($avatar);
if (in_array($avatar['type'], array('image/jpeg','image/pjpeg','image/png'))) {
// load image
list($width, $height) = getimagesize($avatar['tmp_name']);
$width = $height = min($width, $height);
if (in_array($avatar['type'], array('image/jpeg','image/pjpeg')))
$source = imagecreatefromjpeg($avatar['tmp_name']);
else
$source = imagecreatefrompng($avatar['tmp_name']);
// resize
$thumb = imagecreatetruecolor(128, 128);
imagecopyresized($thumb, $source, 0, 0, 0, 0, 128, 128, $width, $height);
// save resized & unlink upload
imagepng($thumb, $avatarFile);
$success &= true;
} else {
$this->User->invalidate('avatar', __("Only JPG or PNG accepted.",true));
$success &= false;
}
unlink($avatar['tmp_name']); // Delete upload in any case
}
Hatta her zaman 128x128, bunu atlayabilirsiniz ve sadece hedef dir yüklenen görüntüyü yeniden adlandırmak için yeniden boyutlandırmak için gidiyor. Google da size yardımcı olacaktır, dosya yüklemeleri için özel bir şey Kek yoktur.
Yükleme formu:
echo $form->create('User', array(
'enctype' => 'multipart/form-data',
'type' => 'post',
));
echo $form->input('avatar', array('type' => 'file', 'label' => __('Avatar:',true)));