Heim > php教程 > php手册 > How to use Redactor image upload in laravel 4?

How to use Redactor image upload in laravel 4?

WBOY
Freigeben: 2016-06-06 20:09:45
Original
1028 Leute haben es durchsucht

FROM?http://stackoverflow.com/questions/16736196/how-to-use-redactor-image-upload-in-laravel-4 I am trying to use Redactor with Laravel4. I can succesfully edit my textarea but I cant get to work with image uploads. When I try to upload a

FROM?http://stackoverflow.com/questions/16736196/how-to-use-redactor-image-upload-in-laravel-4

I am trying to use Redactor with Laravel4. I can succesfully edit my textarea but I cant get to work with image uploads. When I try to upload a file I get 500 error and In developer tools , I can see

Request URL:http://projemiz.dev/admin/blogs/3/postimage/3
Nach dem Login kopieren

This is my link for redactor photo upload:

$('#editor').redactor({ imageUpload: "postimage/{{$post->id}}"});
Nach dem Login kopieren

My routes are inside prefixes :

# Blog Management
Route::group(array('prefix' => 'blogs'), function()
{
    Route::get('/', array('as' => 'blogs', 'uses' => 'Controllers\Admin\BlogsController@getIndex'));
    Route::get('create', array('as' => 'create/blog', 'uses' => 'Controllers\Admin\BlogsController@getCreate'));
    Route::post('create', 'Controllers\Admin\BlogsController@postCreate');
    Route::get('{blogId}/edit', array('as' => 'update/blog', 'uses' => 'Controllers\Admin\BlogsController@getEdit'));
    Route::post('{blogId}/edit', 'Controllers\Admin\BlogsController@postEdit');
    Route::post('{blogId}/postimage','Controllers\Admin\BlogsController@postImage');
    Route::get('{blogId}/delete', array('as' => 'delete/blog', 'uses' => 'Controllers\Admin\BlogsController@getDelete'));
});
Nach dem Login kopieren

and my controller is :

public function postImage($blogId) {
    $path = base_path().'/public/uploads/img/posts/' . (int)$blogId;
    $image = Input::file('photo');
    if (Input::hasFile('photo'))
    {
    $fileName = $file->getClientOriginalName();
    $image->move($path,$fileName);
        $image = new Image;
        $image->name = $fileName.name;
        $image->save();
        // resizing an uploaded file
        Image::make($image->getRealPath())->resize(300, 200)->save($path.'thumb-'.$fileName);
        Image::make($image->getRealPath())->resize(300, 200)->save($path.'thumb-'.$fileName);
        //File::delete( $path . '/' . Input::file('file.name'));*/
    }
}
Nach dem Login kopieren

Can anyone help me to fix my link inside redactor?

Try changing your js-script this:

$('#editor').redactor({ imageUpload: "/{{$post->id}}/postimage"});
Nach dem Login kopieren

In the upload function return the path of the image after upload

public function postImage($blogId) 
{
    $path = base_path().'/public/uploads/img/posts/' . (int)$blogId;
    $image = Input::file('photo');
    if (Input::hasFile('photo'))
    {
        $fileName = $file->getClientOriginalName();
        $image->move($path,$fileName);
        $image = new Image;
        $image->name = $fileName.name;
        $image->save();
        // resizing an uploaded file
        Image::make($image->getRealPath())->resize(300, 200)->save($path.'thumb-'.$fileName);
        Image::make($image->getRealPath())->resize(300, 200)->save($path.'thumb-'.$fileName);
        // Return Image path as JSON
       if ($file->move($path, $fileName))
       {
           return Response::json(array('filelink' => $path . '/' . $fileName));
       }
    }
}
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage