@FTIERSCH - What I want is the easiest way to load content from the database into parts of the page.
I know ajax with Jquery but I am sure there are easier ways.
For example, look at this mess
Just sampe code... not real
$('.up_button').on('click', function () {
//Post some variables
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
type:'post',
url: '/lessons/more',
data: { from: las_id}
});
}
});
public function ShowMore($lesson)
{
//Add validation
$last_lesson = \DB::select('
SELECT *
FROM lessons WHERE id = ?', [$lesson]);
$next_ten = \DB::select('SELECT * FROM lessons WHERE module_id = ? AND sort > ? LIMIT 2', [$last_lesson[0]->
module_id, $last_lesson[0]->sort]);
$append="";
foreach($next_ten as $val)
{
$append .= '<li id = "'.$val->module_id.'_lesson_'.$val->id.'" class="list-group-item list-group-item-action lessons_list" style="cursor: grab;"><i class="fas fa-arrows-alt-v cursor_pointer"></i> '.$val->title.'<div class="float-right">'.$val->id.'<span>Release after '.$val->release_after.' day(s)</span> <span style="cursor: pointer;" data-toggle="modal" data-target=".modal_edit_lesson" onclick="open_lesson_modal_opener(\''.$val->id.'\');" id="edit_lesson_detials_'.$val->id.'"><i class="fas fa-pen"></i></span></div><br /><input id = "'.$val->id.'_title" value="'.$val->title.'" type="hidden"><input id = "'.$val->id.'_video_link" value="'.$val->video_link.'" type="hidden"><input id = "'.$val->id.'_release_after" value="'.$val->release_after.'" type="hidden"><div id = "'.$val->id.'_description" class="hide-this">'.$val->id.'</div><input class = "last_lesson_id" type = "hidden" value="'.$val->id.'"></li>';
$last = $val->id;
$last_sort = $val->sort;
$last_module = $val->module_id;
}
$next_ten = \DB::select('SELECT * FROM lessons WHERE module_id = ? AND sort >= ?', [$last_module, $last_sort]);
$response = array($append, $last, count($next_ten));
return $response;
}
This is not good..