Здесь я хочу сохранить в базу данных, значение ‘isi’ из textarea, когда я запускаю функцию, всегда получаю нулевое значение из textarea, что я делаю для исправления этого?
Благодарю.
Вот скрипт в виду:
<div class="tab-pane active" id="tab_1">
<div class="box-body">
<textarea class="form-control" rows="3" placeholder="Apa yang Anda pikirkan ?">{!! Input::old('quoteinput') !!}</textarea>
</div>
<div class="box-footer">
<a href="{!! URL::to('/timeline/quote') !!}">
<button type="submit" class="btn btn-info pull-right">Posting</button>
</a>
</div>
</div>
Вот скрипт от контроллера:
public function postQuote()
{
$Qdata = new QuotesModel;
$Qdata -> kode_user = Auth::user()->kode_user;
$Qdata -> kode_quote = 'Q'.strtotime(Carbon\Carbon::now()).rand(100,999);
$Qdata -> isi = Input::get('quoteinput');
$kategori = 'quote';
if($Qdata->save())
{
$this->postToTimeline($Qdata->kode_quote , $kategori);
}
Session::flash('message', 'Berhasil memposting !');
return redirect()->back();
}
Вот скрипт в маршруте:
Route::get('/timeline/quote', 'ClientTimeLineContr@postQuote' );
Вы не можете получить значение, не создавая форму в HTML, если вы делаете это с form::open
или <form>
тег. Вы также должны дать имя textarea
,
<div class="tab-pane active" id="tab_1">
<dorm method="GET" action="{!! URL::to('/timeline/quote') !!}">
<div class="box-body">
<textarea name="quoteinput" class="form-control" rows="3" placeholder="Apa yang Anda pikirkan ?">{!! Input::old('quoteinput') !!}</textarea>
</div>
<div class="box-footer">
<button type="submit" class="btn btn-info pull-right">Posting</button>
</div>
</form>
</div>
Вы можете использовать jquery для получения значения textarea без формы. И чтобы сохранить его в базе данных, используйте AJAX.
HTML
<textarea name="quoteinput" class="form-control mytextarea" rows="3" placeholder="Apa yang Anda pikirkan ?">{!! Input::old('quoteinput') !!}</textarea>
<button type="submit" class="btn btn-info pull-right">Posting</button>
JQuery и AJAX:
$(document).on('click','button',function(e)
{
e.preventDefault();
var text = $('textarea.mytextarea').val(); //this is the value of textarea
$.ajax({
type:"POST",
url: "{{url('/timeline/quote')}}",
data: {
"_token": "{{ csrf_token() }}",
"text": text
},
success: function (data) {
var res = $.parseJSON(data);
if(res == true)
{
alert('saved');
}
}
});
});
контроллер
public function postQuote(Request $request)
{
if($request->ajax())
{
$text=$request->text;
//save this textarea value to database
echo json_encode(TRUE);die;
}
Здесь я хочу сохранить в базу данных, значение ‘isi’ из textarea, когда я запускаю функцию, всегда получаю нулевое значение из textarea, что я делаю для исправления этого?
Благодарю.
Вот скрипт в виду:
<div class="tab-pane active" id="tab_1">
<div class="box-body">
<textarea class="form-control" rows="3" placeholder="Apa yang Anda pikirkan ?">{!! Input::old('quoteinput') !!}</textarea>
</div>
<div class="box-footer">
<a href="{!! URL::to('/timeline/quote') !!}">
<button type="submit" class="btn btn-info pull-right">Posting</button>
</a>
</div>
</div>
Вот скрипт от контроллера:
public function postQuote()
{
$Qdata = new QuotesModel;
$Qdata -> kode_user = Auth::user()->kode_user;
$Qdata -> kode_quote = 'Q'.strtotime(Carbon\Carbon::now()).rand(100,999);
$Qdata -> isi = Input::get('quoteinput');
$kategori = 'quote';
if($Qdata->save())
{
$this->postToTimeline($Qdata->kode_quote , $kategori);
}
Session::flash('message', 'Berhasil memposting !');
return redirect()->back();
}
Вот скрипт в маршруте:
Route::get('/timeline/quote', 'ClientTimeLineContr@postQuote' );
Вы не можете получить значение, не создавая форму в HTML, если вы делаете это с form::open
или <form>
тег. Вы также должны дать имя textarea
,
<div class="tab-pane active" id="tab_1">
<dorm method="GET" action="{!! URL::to('/timeline/quote') !!}">
<div class="box-body">
<textarea name="quoteinput" class="form-control" rows="3" placeholder="Apa yang Anda pikirkan ?">{!! Input::old('quoteinput') !!}</textarea>
</div>
<div class="box-footer">
<button type="submit" class="btn btn-info pull-right">Posting</button>
</div>
</form>
</div>
Вы можете использовать jquery для получения значения textarea без формы. И чтобы сохранить его в базе данных, используйте AJAX.
HTML
<textarea name="quoteinput" class="form-control mytextarea" rows="3" placeholder="Apa yang Anda pikirkan ?">{!! Input::old('quoteinput') !!}</textarea>
<button type="submit" class="btn btn-info pull-right">Posting</button>
JQuery и AJAX:
$(document).on('click','button',function(e)
{
e.preventDefault();
var text = $('textarea.mytextarea').val(); //this is the value of textarea
$.ajax({
type:"POST",
url: "{{url('/timeline/quote')}}",
data: {
"_token": "{{ csrf_token() }}",
"text": text
},
success: function (data) {
var res = $.parseJSON(data);
if(res == true)
{
alert('saved');
}
}
});
});
контроллер
public function postQuote(Request $request)
{
if($request->ajax())
{
$text=$request->text;
//save this textarea value to database
echo json_encode(TRUE);die;
}