ajax online examination system for frontend in laravel 5.2 - laravel-5

I am trying to make online examination system. I have three tables. Table "student" has details of students, column id identifies students uniquely. Table "tests" has details of all the tests available and there is a column id which contains id of tests. and then I have tables of tests which contains questions and answers.
now i want to ask that how to call question in frontend using ajax. How can I achieve that? Please help. Thanks in advance.

Its a little strange how you have phrased this question from a database point of view. I'll assume you know that you need to setup Laravel routes and models and that all you are struggle with is the frontend AJAX.
Easiest way to do this is to download JQuery and use the AJAX function in your javascript code:
$.ajax({
url: url,
data: data,
success: success,
dataType: dataType
});

Related

Using two different slugs on a route

I'm upgrading an old procedural site to laravel 5.2, and I'm struggling with the old routes I made.
On this website, the routes were made like this : {user_slug}/{content_slug}.html. For the moment, I use cviebrock/eloquent-sluggable to generate the slugs, but I'm open to another one if this one cannot meet my needs.
I have two questions :
Can I make the content-slug unique, but per user ?
How can I write the route and the controller in order to match the correct user slug ad the correct content slug ?
I have not done this myself but I believe there would be a way in the validation rules to do this. Here is an untested rough draft to check content_slug in the posts table but only check uniqueness where the user_id field equals a variable:
'content_slug' => "unique:posts,content_slug,NULL,id,user_id,$user->id"
Depending on who you ask, they may advise you (either instead of or as well as doing the above) to set up a key in the database based on the user_id and content_slug fields. This way the database returns an error if an insert is attempted as well as gives a performance boost when running a query off that index. Queries off of an index can literally give an exponential performance increase.

0 getting inserted into table fields

I have a website done using code igniter. My issue is in the registration form where '0' values getting inserted into my database table columns without any known submission. i can view the IP address from which the registrations comes. Since java script validations are given, also one field is readonly in my form, am surprised how '0' get dumped into my table fields. This dummy registration happen 2 or 3 at a time, then after few hours may be another insertion. can someone help to deal with it.
I have implemented same functionality in which required ajax call to save data.
I suggest to implement server side validation for the ajax call and check the value of form posted then validate and insert only entry with valid value or not null.
The issue is most likely the way you are sending your data from AJAX. The most accurate way that works for me is the following:
var url = "http://...";
var dataToSend= {'company':company, 'dateFrom':dateFrom, .....};
$.post(url, dataToSend, function(data) {
alert(data);
});

How to show data in input field when select data at dropdown in Grocery Crud and Codeigniter

In Grocery Crud and Codeigniter , Basically i want to show data from one table(such as a_tbl) when select data or id_no(id_no will get from a_tbl) in dropdown then Name and current posting data will take in input field from table(such as a_tbl) , Then Designation, Dept and Section will take in input field from three different table (such as desg_tbl, dept_tbl, sect_tbl).
How can i solve it , Please any help me
You can use AJAX.
If you use jquery, you can do something like:
$("#field-ID_No").change(function(){
$.ajax({
'url':'your_controller/get_name_of_id/'+$("#field-ID_No").val(),
'success':function(response){
$("#field-Name").value(response);
}
});
});
Basically, when field-ID_No (the select/combobox) changed, the program will send a request to the server (for example: get_name_of_id/1). Assuming, you have "get_name_of_id" function in the controller that echo-ing a name based on given id, you will get the name as response.
(Sorry if it sounds complicated). And then, the value of field-Name should be changed with that echoed name.
For more information about AJAX and JQuery, you can read https://stackoverflow.com/a/5004276/755319
I have done this what you want, it is really simple complete tutorial is on following link
http://www.grocerycrud.com/forums/topic/1087-updated-24112012-dependent-dropdown-library/
hope you will find it helpful

problem with 'datatable' jquery plugin and two table (ajax related)

i have two tabs that their content loads by ajax. both have a table in their content. i want to apply 'datatable' jquery plugin to both table. tables have the same id because they are create by a function.but their rows are different.
datatable plugin is applied to first tab table well but on the second one give this error:
"DataTables warning (table id = 'dttable'): Cannot reinitialise DataTable.
To retrieve the DataTables object for this table, please pass either no arguments to the dataTable() function, or set bRetrieve to true. Alternatively, to destory the old table and create a new one, set bDestroy to true (note that a lot of changes to the configuration can be made through the API which is usually much faster)."
i use "bDestroy":true in datatable plugin define.but in this way the plugin doesn't show in second table.
would you help me?
Your problem is that both tables have the same ID, which is invalid HTML. When you try to initialize the second Databable, your selector only finds the first table and tries to initialize Datatables on the first table again, which results in the error that you are getting.
You need to change your function to create each table with a unique ID and initialize each table by its respective ID.
Why not set the Datatables by a className rather than ID then it can apply to both of them?
When retrieving the data you can use something like $('.dataTableStyle').eq(1) to get information from the relevant one.
I'm using mvc3 and my problem was with initializing a dataTable in a view, then rendering a partial view with another dataTable. The issue was not in the id's of the 2 tables, but in the way the partial views get rendered in the framework. In my case, I had to move the script, or reference to the script, into the view that hosts the partial view. I had an issue similar to this using the Google Maps api.
try this code
$(document).ready(function() {
oTable = $('#DataTables_Table_0').dataTable({ //DataTables_Table_0 <-------table id
iVote: -1, //your field name
"bRetrieve":true
});
oTable.fnSort( [ [1,'desc'] ] );
});
use this in function event when you would change your table data
$('#tbl_resultates').dataTable().fnDestroy();
and add
"bRetrieve": true,
in
$('#tbl_resultates').dataTable({

Looking for links for zend framework ajax table refresh

As you maybe aware from the following post I'm new to the Zend framework and web programming so any help is greatly appreciated.
What I want to do is have a page that my users can search for clients stored on the database have the results returned via a table. I know how to do this in a traditional form -> post -> results page manner but I would like to implement the following:
Have two or more Dojo autocomplete combo boxes that the user can enter search criteria into (I've found examples of this on the web and should be ok implementing this.)
Use the text entered into the query the clients table in the DB.
Return the results in a table on the same page without having to redirect, and if possible have the table update the results as the user types into the combo boxes.
for example if the user types "Fa" for example the table will have
"Farrell
"Fagan"
"Farrelly"
As the user continues to type eg "Far" the table will have
"Farrell"
"Farrelly"
As you may have already guessed I need help with parts two and three. I've tried searching using keywords refresh and autocomplete but I've been unable to find anything that comes close to what I need.
Can anyone please provide links to tutorials/examples of how to do this in the Zend Framework. I know code is a lot to ask for but if anyone is feeling generous go ahead.
Just in case it makes a difference I'm using Doctrine ORM to handle my models.
Thanks in advance for any replies.
Graham
The basic gist is this...
Using the AjaxContext helper, add an html context to your action.
Move your table markup into a .ajax.phtml file and replace it in your normal view with a render call
Example
<?php echo $this->render('controller-name/action-name.ajax.phtml') ?>
Add your JavaScript event handlers to the page. When requesting the AJAX content, add a format=html parameter to the request. This will trigger the AjaxContext helper, returning only your table markup which you can then inject into the page.
The best part about this approach is that it degrades gracefully. If JavaScript is disabled or not available, the page reverts to the old school form -> post -> results method.
Have a look at my AJAX pagination post here for some pointers - http://blog.philipbrown.id.au/2011/03/awesome-pagination-with-zf-paginator-ajaxcontext-and-the-html5-history-api/
This uses a page parameter in the same way you want to use your search criteria so it should do as a base reference.

Resources