Я хочу выполнить метод post, но это не похоже на работу …
Итак, у меня есть сейчас URL localhost/newthread/5
,
Это все хорошо, но теперь я хочу, чтобы 5
(Слизняк) может быть размещен.
Как я могу это сделать?
Посмотреть:
@include('globs.header')
<div class="panel-group col-sm-offset-1 col-sm-10">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Nieuw topic maken</h3>
</div>
<div class="panel-body">
<!-- Start Form -->
{{ Form::open(array('url' => 'PostTopic')) }}
<div class="form-group">
<label>Topic Naam (onderwerp):</label>
<input type="text" class="form-control" name="title">
</div>
<label>Bericht:</label>
<textarea name="message" class="form-control" rows="5" placeholder="Typ uw bericht..."></textarea>
<br>
<button type="submit" class="btn btn-success">Nieuw topic plaatsen</button>
{{ Form::close() }}
</div>
</div>
</div><!-- End page content -->
@include('globs.footer')
контроллер:
public function PostTopic()
{
//Get all the data and store it inside Store Variable
$data = Input::all();
// Make's messages of faults
$messages = array(
'title.required' => 'U moet een titel opgeven!',
'message.required' => 'u moet een bericht opgeven!',
'spamprt' => 'honeypot', //spam protection
'time' => 'required|honeytime:60'
);
$rules = array(
'title' => 'required',
'message' => 'required'
);
$validator = Validator::make($data, $rules, $messages);
//process the storage
if ($validator->fails())
{
return Redirect::back()->with('errors', $validator->errors())->withInput();
}else{
//store
$thread = new Thread;
$thread->cid = Input::get('cid');
$thread->title = Input::get('title');
$thread->message = Input::get('message');
$thread->prefix = 0;
$thread->uid = Auth::id();
$thread->username = Auth::user()->username;
$thread->date_posted = Carbon\Carbon::now();
$thread->save();
Session::put('_token', sha1(microtime()));
//redirect
return Redirect::back()->with('message', 'Uw bericht is succesvol geplaatst!');
}
}
Маршруты:
Route::group(array('before' => 'auth'), function()
{
Route::get('/newthread/{cid}', array('uses' => 'ForumController@CreateTopic', 'as' => 'Nieuw topic'));
});
Route::post('/PostTopic', array('uses' => 'ForumController@PostTopic', 'as' => 'Post_topic'));
Странно, скрытый ввод — это то, что я не могу сделать. Потому что, как вы видите на мой взгляд, это просто вид. Как мне это исправить?
Попробуйте использовать post {cid} в качестве параметра запроса
public function CreateTopic($cid)
{
$data['cid']=$cid;
return View::make('sayfa.createtopic',$data);
}
Часть зрения:
{{ Form::open(array('url' => 'PostTopic/'.$cid)) }}
<div class="form-group">
<label>Topic Naam (onderwerp):</label>
<input type="text" class="form-control" name="title">
</div>
<label>Bericht:</label>
<textarea name="message" class="form-control" rows="5" placeholder="Typ uw bericht..."></textarea>
<br>
<button type="submit" class="btn btn-success">Nieuw topic plaatsen</button>
{{ Form::close() }}
маршрут:
Route::post('/PostTopic/{cid}', array('uses' => 'SOController@PostTopic', 'as' => 'Post_topic'));
Почтовый метод:
public function PostTopic($cid){
//you can now have $cid with other inputs
}
Других решений пока нет …