javascript - Bring from a PHP file data sent by $.ajax using Json -


as need bring separate data php file, , create html piece injected jquery, i've choosen json.

i send php main file (between script tags) this:

$.ajax({datatype: "json", url:'course_generator.php', data:{co_subj_co:editedcourseid}}).done(function(newcourse){     var newcoursestructure = '<div class="tablerow dynamicrow noheight injectedrow" data-ismultisubjectvalue="'+ismultisubjectvalue+'" data-subjectsnum="'+subjectsnum+'" data-id="'+courseid+'" id="'+courseid+'" data-abbrev="'+newcourseabbrev+'" data-coursetypeid="'+newcoursetypeid+'" title="'+newcoursename+'"><div class="contentcolumn40"><span class="tablecontenttext">'+newcoursename+' ('+newcoursetypename+')</span></div><div class="contentcolumn40">'+subjectlist+'</div><div class="contentcolumn10"><div class="tableiconlink"><a href="#"><div class="editicon" data-id="'+courseid+'" title="editar '+newcoursename+'"></div></a></div></div><div class="contentcolumn10"><div class="tableiconlink"><a href="#"><div data-id="'+courseid+'" class="discontinueicon" title="discontinuar '+newcoursename+'"></div></a></div></div></div>';} 

this sends editedcourseid value. , what's inside course_generator.php is:

$courseid = $_post['co_subj_co'];  $select_co = mysql_query("select * course_conf join course_type on co_fk_ct_id=ct_id join co_rel_subj on co_subj_co='$courseid' join subject_conf on su_id=co_subj_subj co_id='$courseid'"); $result_co = mysql_fetch_array($select_co);  $newcourseid = $result_co['co_id']; $newcoursename = $result_co['co_name']; $newcourseabbrev = $result_co['co_abbrev']; $newcoursetypeid = $result_co['co_fk_ct_id']; $newcoursetypename = $result_co['ct_name']; $ismultisubjectvalue = $result_co['co_multisubject'];  $newcoursevalues = '{"newcourseid":'.$newcourseid.',"newcoursename":'.$newcoursename.',"newcourseabbrev":'.$newcourseabbrev.',"newcoursetypeid":'.$newcoursetypeid.',"newcoursetypename":'.$newcoursetypename.',"ismultisubjectvalue":'.$ismultisubjectvalue.'}'; 

i afraid im not receiving $courseid = $_post['co_subj_co'];, , neither $newcoursevalues being received on main php file newcoursestructure not generating anything. please identify several errors sure i'm making? thank you.


update:

after changing php main file to:

$.ajax({type : 'post', datatype: "json", url:'config/forms/course_conf/course_generator.php', data:{co_subj_co:editedcourseid}}).done(function(newcourse){ var courseid = newcourse.newcourseid; var newcoursename = newcourse.newcoursename; var ismultisubjectvalue = newcourse.ismultisubjectvalue; var subjectsnum = newcourse.subjectsnum; var newcourseabbrev = newcourse.newcourseabbrev; var newcoursetypeid = newcourse.newcoursetypeid; var newcoursetypename = newcourse.newcoursetypename; var newcoursestructure = '<div class="tablerow dynamicrow noheight injectedrow" data-ismultisubjectvalue="'+ismultisubjectvalue+'" data-subjectsnum="'+subjectsnum+'" data-id="'+courseid+'" id="'+courseid+'" data-abbrev="'+newcourseabbrev+'" data-coursetypeid="'+newcoursetypeid+'" title="'+newcoursename+'"><div class="contentcolumn40"><span class="tablecontenttext">'+newcoursename+' ('+newcoursetypename+')</span></div><div class="contentcolumn40">'+subjectlist+'</div><div class="contentcolumn10"><div class="tableiconlink"><a href="#"><div class="editicon" data-id="'+courseid+'" title="editar '+newcoursename+'"></div></a></div></div><div class="contentcolumn10"><div class="tableiconlink"><a href="#"><div data-id="'+courseid+'" class="discontinueicon" title="discontinuar '+newcoursename+'"></div></a></div></div></div>';} 

and course_generator.php file to:

$courseid = intval($_post['co_subj_co']); $subjectlist = ""; $data ="";  $select_co = mysql_query("select * course_conf join course_type on co_fk_ct_id=ct_id join co_rel_subj on co_subj_co='$courseid' join subject_conf on su_id=co_subj_subj co_id='$courseid'"); $result_co = mysql_fetch_array($select_co);  $outarr['newcourseid'] = $result_co['co_id']; $outarr['newcoursename'] = $result_co['co_name']; $outarr['newcourseabbrev'] = $result_co['co_abbrev']; $outarr['newcoursetypeid'] = $result_co['co_fk_ct_id']; $outarr['newcoursetypename'] = $result_co['ct_name']; $outarr['ismultisubjectvalue'] = $result_co['co_multisubject'];  $subjectsnum=mysql_num_rows(mysql_query("select * co_rel_subj co_subj_co = '$courseid'"));  $outarr['subjectsnum'] = $subjectsnum; echo json_encode($outarr); 

instead of showing html piece structured, $newcoursestructure results:

{"newcourseid":"243","newcoursename":"a","newcourseabbrev":"ae","newcoursetypeid":"1","newcoursetypename":"m\u00e1ster","ismultisubjectvalue":"1","subjectlist":" edici\u00f3n y acabado de imagen digital<\/div> ","subjectsnum":1} 

i have annotated 2 things in code:

$.ajax({     type : 'post',      datatype: "json",      url:'config/forms/course_conf/course_generator.php',     data:{         co_subj_co:editedcourseid     }})     .done(function(newcourse){         var courseid = newcourse.newcourseid;         var newcoursename = newcourse.newcoursename;         var ismultisubjectvalue = newcourse.ismultisubjectvalue;         var subjectsnum = newcourse.subjectsnum;         var newcourseabbrev = newcourse.newcourseabbrev;         var newcoursetypeid = newcourse.newcoursetypeid;         var newcoursetypename = newcourse.newcoursetypename;         var newcoursestructure = '<div class="tablerow dynamicrow noheight injectedrow"'         + ' data-ismultisubjectvalue="' + ismultisubjectvalue + '"'         + ' data-subjectsnum="' + subjectsnum + '"'         + ' data-id="' + courseid + '"'         + ' id="' + courseid + '"'         + ' data-abbrev="' + newcourseabbrev + '"'         + ' data-coursetypeid="' + newcoursetypeid + '"'         + ' title="' + newcoursename + '">'         + '<div class="contentcolumn40"><span class="tablecontenttext">'         + newcoursename + ' (' + newcoursetypename + ')</span></div>'         // subjectlist defined?         + '<div class="contentcolumn40">' + subjectlist          + '</div>'         + '<div class="contentcolumn10"><div class="tableiconlink">'         + '<a href="#"><div class="editicon" data-id="' + courseid + '"'         + ' title="editar ' + newcoursename + '"></div>'         + '</a></div></div><div class="contentcolumn10"><div class="tableiconlink">'         + '<a href="#"><div data-id="'+courseid+'" class="discontinueicon" '         + 'title="discontinuar '+newcoursename+'"></div></a></div></div></div>';     /*      * html generated, never put in dom      */     $('#idoutputwrapper').empty().html(newcoursestructure); } 

when use subjectlist json response, please notice comes closing </div> tag reason, maybe should change that, too.

btw: code formatting horrible, sorry so. can compress js before uploading server, while working on it, needs readable. edited fit better in codeblock here.


Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -