I need some help. I am posting multiple data using FormData in Ajax but I always gets 500 Internal Server Error after posting the 2nd and the third data. First data which the file one is the only one that can be post.
Here's is my codes:
HTML file
<form class="validation-wizard wizard-circle" method="post" data-toggle="validator" enctype="multipart/form-data" id="form">
@csrf
<input type="hidden" id="id" name="id">
<!-- Step 1 -->
<h6>Your Information</h6>
<section>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="wfirstName2"> First Name : <span class="danger">*</span> </label>
<input type="text" class="form-control required" id="wfirstName2" name="first_name" value=""> </div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="wlastName2"> Last Name : <span class="danger">*</span> </label>
<input type="text" class="form-control required" id="wlastName2" name="last_name" value=""> </div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="wemailAddress2"> Email Address : <span class="danger">*</span> </label>
<input type="email" class="form-control required" id="wemailAddress2" name="email" value="" readonly="true"> </div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="phone2">Phone Number :</label>
<input type="text" class="form-control" id="phone2" value="" name="contact"> </div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="wlocation2"> Select City : <span class="danger">*</span> </label>
<select class="custom-select form-control" id="wlocation2" name="city" value="">
<option value="">--Select City--</option>
<option value="Manila">Manila</option>
<option value="Quezon City">Quezon City</option>
<option value="Makati">Makati</option>
<option value="Caloocan">Caloocan</option>
<option value="Las Piñas">Las Piñas</option>
<option value="Malabon">Malabon</option>
<option value="Mandaluyong">Mandaluyong</option>
<option value="Marikina">Marikina</option>
<option value="Muntinlupa">Muntinlupa</option>
<option value="Navotas">Navotas</option>
<option value="Parañaque">Parañaque</option>
<option value="Pasay">Pasay</option>
<option value="Pasig">Pasig</option>
<option value="Pateros">Pateros (Municipality)</option>
<option value="San Juan">San Juan</option>
<option value="Taguig">Taguig</option>
<option value="Valenzuela">Valenzuela</option>
<option value="Other">--Other--</option>
</select>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="wdate2">Date of Birth :</label>
<input type="date" class="form-control" id="wdate2" value="" name="birth"> </div>
</div>
</div>
</section>
<!-- Step 2 -->
<h6>More About You</h6>
<section>
<div class="row">
<div class="col-md-12">
<div class="form-group">
<label for="shortDescription3">Short description about your self:</label>
<textarea name="shortDescription" id="shortDescription3" rows="6" class="form-control" name="description"
value=""></textarea>
</div>
</div>
</div>
</section>
<!-- Step 3 -->
<h6>About your Pom</h6>
<section>
Pom 1
<br/>
<br/>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="wint1">Pom's name :</label>
<input type="text" class="form-control" name="pom_name1" id="pom_name1" value=""> </div>
<div class="form-group">
<label for="wint1">Your Pom's color :</label>
<input type="text" class="form-control" name="pom_color1" id="pom_color1" value=""> </div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="wjobTitle4">Birth Date :</label>
<input type="date" class="form-control" id="pom_birth1" name="pom_birth1" value="">
</div>
<div class="form-group">
<label>Gender :</label>
<select class="custom-select form-control" id="pom_gen1" name="pom_gen1" value="">
<option value="">--Gender--</option>
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
</div>
</div>
</div>
<br/>
<br/>
Pom 2
<br/>
<br/>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="wint1">Pom's name :</label>
<input type="text" class="form-control" name="pom_name2" id="pom_name2" value=""> </div>
<div class="form-group">
<label for="wint1">Your Pom's color :</label>
<input type="text" class="form-control" name="pom_color2" id="pom_color2" value=""> </div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="wjobTitle4">Birth Date :</label>
<input type="date" class="form-control" id="pom_birth2" name="pom_birth2" value="">
</div>
<div class="form-group">
<label>Gender :</label>
<select class="custom-select form-control" id="pom_gen2" name="pom_gen2" value="">
<option value="">--Gender--</option>
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
</div>
</div>
</div>
<br/>
<br/>
Pom 3
<br/>
<br/>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="wint1">Pom's name :</label>
<input type="text" class="form-control" name="pom_name3" id="pom_name3" value=""> </div>
<div class="form-group">
<label for="wint1">Your Pom's color :</label>
<input type="text" class="form-control" name="pom_color3" id="pom_color3" value=""> </div>
</div>
<div class="col-md-6">
<div class="form-group">
<label for="wjobTitle4">Birth Date :</label>
<input type="date" class="form-control" id="pom_birth3" name="pom_birth3" value="">
</div>
<div class="form-group">
<label>Gender :</label>
<select class="custom-select form-control" id="pom_gen3" name="pom_gen3" value="">
<option value="">--Gender--</option>
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
</div>
</div>
</div>
</section>
<!-- Step 4 -->
<h6>And Finally</h6>
<section>
<div class="row">
<div class="col-md-4">
<h3>Upload Profile Picture</h3>
<br/><br/>
<img src="/img/rrpom.png" id="profile_tar" class="profile">
<input type="file" name="profile" id="profile">
<br/><br/>
<input type="button" name="" value="Browse" id="browse_profile" class="btn btn-primary form-control">
</div>
<div class="col-md-8">
<h3>Upload Cover Photo</h3>
<br/><br/>
<img src="" id="cover_tar" class="cover">
<input type="file" name="cover" id="cover">
<br/>
<br/>
<input type="button" name="" value="Browse" id="browse_cover" class="btn btn-primary form-control">
</div>
</div>
</section>
</form>
</div>
<!-- /.box-body -->
</div>
</section>
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery('.finish').click(function(g){
g.preventDefault();
$.ajaxSetup({headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')}});
var form = $('form')[0]; // You need to use standard javascript object here
var formData = new FormData(form);
$.ajax({
url: "",
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function(data){
alert(data.success);
}
});
});
});
</script>
Routes:
Route::post('/user-update','MemberController@userUpdate')->middleware('auth');
Controller:
public function userUpdate(Request $request){
$input = $request->except(['_token']);
$profile = "";
$cover = "";
$extension = $input['profile'];
$extension = $input['profile']->getClientOriginalExtension(); // getting excel extension
$uploader = Auth::user()->email;
$dir = 'uploads/profile/'.''.$uploader;
$profile = uniqid().'_'.time().'_'.date('Ymd').'.'.$extension;
$input['profile']->move($dir, $profile);
$extensionCo = $input['cover'];
$extensionCo = $input['cover']->getClientOriginalExtension(); // getting excel extension
$uploaderCo = Auth::user()->email;
$dirCo = 'uploads/cover/'.''.$uploaderCo;
$cover = uniqid().'_'.time().'_'.date('Ymd').'.'.$extensionCo;
$input['profile']->move($dirCo, $cover);
$id = Auth::user()->id;
DB::table('users')->where('id', $id)->update($input);
return response()->json(['responseText' => 'Success!'], 200);
}
I hope that someone will solve this and this will be appreciated. Thanks in advance!
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire