Я делаю сайт код воспламенитель и пытаюсь реализовать AJAX урожай изображение профиля из http://croppic.net/AJAX обрезка не работает в codeigniter?
URL: http://myphpdevelopers.com/dev/selfee_social/ пользователь: [email protected] ПАРОЛЬ: abcd1234
приборной панели URL: http://myphpdevelopers.com/dev/selfee_social/notype.
наведите указатель мыши на профиль pic в верхней левой части страницы. Будет видна иконка, которая будет вызывать загрузчик файлов при нажатии.
при выборе изображения в загрузчике необходимо отобразить наложение обложек файлов. Однако, загрузчик продолжает вращаться и не показывает ovderlay.
Если вы проверяете страницу в консоли разработчика, скажем, светлячок вы увидите ряд ошибок: -
<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: chown(): Operation not permitted</p>
<p>Filename: controllers/home.php</p>
<p>Line Number: 292</p>
</div><div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: mkdir(): Permission denied</p>
<p>Filename: helpers/myfile_helper.php</p>
<p>Line Number: 11</p>
</div><div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: mkdir(): Permission denied</p>
<p>Filename: helpers/myfile_helper.php</p>
<p>Line Number: 11</p>
</div>The upload path does not appear to be valid.
Путь загрузки является /home/myphpdev/public_html/dev/selfee_social/user_photos/profile
, но я предполагаю, что его не доступен для записи, так что я написал следующий код мой контроллер
public function ajax_upload_profile_pic()
{
//error reporting
error_reporting(E_ALL);
ini_set("display_errors", "On");
header("Content-Type:application/json;");
$ua = $this->session->userdata('user_auth');
$uniq_id = $ua["id"];
if(empty($ua))
{
die("not authenticated");
}
if($_FILES['img']['error']==0)
{
$owner = @exec('whoami');
$DIR = $this->profile_image_path;
chown($DIR, $owner);
//chmod($DIR, 0755);
$temp_path = $DIR. 'temp/'. $uniq_id.'/';
if (!file_exists($temp_path)){
my_create_dirs_r($temp_path, 0777);
}
$config = array(
'allowed_types' => 'jpg|jpeg|gif|png',
'upload_path' => $temp_path,
'max_size' => 0
);
//$this->load->library('upload', $config);//not working
$this->upload->initialize($config);
if (! $this->upload->do_upload('img'))
{
echo $this->upload->display_errors('','');die();
$this->session->set_flashdata('error',$this->upload->display_errors('',''));
}
else
{
$image_data = $this->upload->data("");
}
$response = array(
"status" => 'success',
"url" => base_url('user_photos/profile/temp/' . $uniq_id . '/' . $image_data['file_name']),
'file' => $image_data['file_name'],
"width" => $image_data['image_width'],
"height" => $image_data['image_height']
);
echo json_encode($response);
}
//echo json_encode($ua);
die();
}
файл изображения не получает загружены и наложения, чтобы обрезать его не отображается
путь профиль изображение
$this->profile_image_path = realpath('.').'/user_photos/profile/';
и помощник myfile_helper.php
имеет функцию ниже:
if (! function_exists('my_create_dirs_r'))
{
function my_create_dirs_r($dirName, $rights=0777){
$dirs = explode('/', $dirName);
$dir='';
foreach ($dirs as $part) {
$dir.=$part.'/';
if (!is_dir($dir) && strlen($dir)>0)
mkdir($dir, $rights);
}
}
}
Может кто-нибудь помочь с этим?