I’m using ajax to get what the user has selected in a “select” box and sending it to a php file. Then i need to make the results of a query, with those selection results, are downloadable. So just to reiterate, when they click something jquery/ajax sends it to php. php returns a list of things for them to select again, this happens until they have selected five options. Then, below the select boxes, a link appears saying export(download). That link should send them to a php function export() along with a get saying the stored procedure name i need to export. Along with 5 selection results as parameters in the stored procedure. Hope that made sense. here’s my code.
PHP sending results to js file——-
$jsStr = '[';
if ($query->num_rows() > 0) {
foreach ($query->result() as $row) {
$jsStr .= '["'. $row->count_result .'","'. $row->count_desc .'","'. $row->count_SP .'",'. $cn .','. $gp .','. $co .','. $st .','. $dp .']';
}
$jsStr = substr($jsStr,0,-1);
}
$jsStr .= ']';
return 'changeResults('. $jsStr .');';
JS —————-
function changeResults (data) {
$('#systems').html(data[0][0] +' - '+ data[0][1] +' <a href="http://95.211.130.165:8080/index.php/discovery/export?sp='+ data[0][2] +'&cn='+ data[0][3] +'&gp='+ data[0][4] +'&co='+ data[0][5] +'&st='+ data[0][6] +'&dp='+ data[0][7] +'">Export</a>');
$('#users').html(data[1][0] +' - '+ data[1][1] +' <a href="http://95.211.130.165:8080/index.php/discovery/export?sp='+ data[1][2] +'&cn='+ data[1][3] +'&gp='+ data[1][4] +'&co='+ data[1][5] +'&st='+ data[1][6] +'&dp='+ data[1][7] +'">Export</a>');
}
Error I get from firebug
missing ] after element list
[Break On This Error]
…NV02) – Users counted in selected scope”,”usr_disc_Inv_usr_content”,1,1,1,1,1])
Let me know if anything is unclear, Thanks!
I don’t really know JavaScript or anything you use. But it looks to me as if you remove the last
]added within theforeach loopbyI think you had a comma at the end of the line in the
foreach. Like this:That way it makes more sense to me. To get the bracketing correct you either have to add this comma back (which I think is the right notation) or remove the
substroperation.