My Form
{{ Form::open(array('url' => 'upfile', 'files' => 'true', 'method' => 'post', 'class' => 'form')) }}
<p>Sólo se admiten archivos en formato .pdf y no mayor a 127MB</p>
<p>
{{ Form::file('expediente', array('class' => 'text-field column_one', 'required' => 'required')) }}
</p><br>
<p>
{{ Form::text('nombrearchivo', null, array('class' => 'text-field column_one', 'required' => 'required', 'placeholder' => 'Nombre del Expediente.')) }}
</p><br>
{{ Form::hidden('username', $username) }}
<p style="color: red;">
<ul>
@foreach ($errors->all() as $message)
<li style="color:red;">{{$message}}</li>
@endforeach
<ul>
</p>
{{ Form::submit('Añadir Expediente', array('class' => 'submit submitNavy submitForm')) }}
{{ Form::close() }}
My Controller:
public function saveExpediente(){
ini_set("memory_limit","7G");
ini_set('upload_max_filesize', '127M');
ini_set('post_max_size', '127M');
ini_set('max_input_time', 0);
ini_set('max_execution_time', 0);
set_time_limit(0);
ignore_user_abort(true);
$rules = array(
'username' => 'required|exists:users,username',
'expediente' => 'required',
'nombrearchivo' => 'required|min:5'
);
$validator = Validator::make(Input::all(), $rules);
//$fileExtension = Input::file('expediente')->guessClientExtension();
$file = Input::file('expediente');
if ($validator->fails()) {
//dd($file);
return Redirect::back()
->withErrors($validator) // send back all errors to the login form
->withInput(); // send back the input (not the password) so that we can repopulate the form
}/*else if ($fileExtension != 'pdf'){
$validator->failed();
return Redirect::to('upload')->withErrors([
'expediente' => 'El archivo debe estar en formato PDF!',
])->withInput();
}*/else {
File::makeDirectory('expedientes/'.Input::get('username'), 0770, true, true);
Input::file('expediente')->move('expedientes/'.Input::get('username'),Input::file('expediente')->getClientOriginalName());
$expediente = new Expediente;
$expediente->username = Input::get('username');
$expediente->archivo = Input::file('expediente')->getClientOriginalName();
$expediente->nombrearchivo = Input::get('nombrearchivo');
$expediente->save();
return Redirect::back()->with('message', 'Se añadió correctamente el expediente al usuario.')->with('tipo','message-success');
}
}
When I'm uploading bigger than 8mb laravel returning NULL, like fields they were empty. I already got the value of variables PHP.init. I'm use Laravel 4.2 and Apache, need upload files size with 25-40 mb. If I try dd(Input::file('expediente')) return NULL