带有jQuery getJSON(回调)的JSONP公共API(MySql)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了带有jQuery getJSON(回调)的JSONP公共API(MySql)相关的知识,希望对你有一定的参考价值。
This is a public jsonp api. I use it with jQuery Like This:$.getJSON("http://yourdomain/yourpath/jsonp_api.php?method=getSchema¶ms=your_db_name&jsoncallback=?",
function(data){
//DO SOMETHING WITH THE DATA HERE
}
);
/** * JSON API FOR mysql */ //////////////////////////////////////////////////////////////////////////////////////////////////// // CONFIGURATION SETTING VARIABLES FOR DATABASE CONNECTION $HOST="localhost"; $USER="root"; $PASS=""; $DBNAME = 'your_db_name'; /////////////////////////////////////////////////////////////////////////////////////////////////// /** * CONNECT TO MYSQL */ if(!$CON) { } if(!$dataselect) { } /** * EXECUTE THE PASSED IN METHOD WITH OR WITHOUT PARAMETERS * (multiple parameters are specified by a ',' separated string) */ $function = new ReflectionFunction($method); //instantiate the function as an object $function->invokeArgs($opts); //invoke the function with an array of arguments (if given) }else{ //ELSE THE FUNCTION DOES NOT EXIST echo "error the function you called : ".$_GET['method']."(".$_GET['params'].")"." does not exist"; exit; } exit; //////////////////////////////////////////////////////////////////////////////////////////////////////////// /** * FUNCTIONS WHICH RETURN JSONP RESULTS */ /** * fetchTable() * RETURNS AN ENTIRE MYSQL TABLE (JSONP) * @param mixed $dbtable * @return void */ function fetchTable($dbtable){ $sql="SELECT * FROM $dbtable"; $results[] = $row; } } /** * showTables() * * @param mixed $dbname * @return void */ function showTables($dbname){ $sql = "SHOW FULL TABLES IN hskitts_$dbname"; $results[] = $row; } } /** * showColumns() * * @param mixed $dbtable * @return void */ function showColumns($dbtable){ $sql = "SHOW FULL COLUMNS IN $dbtable"; $results[] = $row; } } /** * _show_cols() * internal used by getSchema * SCRIPT UTILITY FUNCTION * @param mixed $dbtable * @return */ function _show_cols($dbtable){ $sql = "SHOW FULL COLUMNS IN $dbtable"; $results[] = $row; } return $results; } /** * getSchema() * GET THE FULL SCHEMA MAP TABLES AND COLUMNS * OF A MYSQL DATABASE. RETURN AS JSONP * @param mixed $dbname * @return void */ function getSchema($dbname){ $sql = "SHOW TABLES IN $DBNAME"; $results[] = $row; } foreach($results[$i] as $key => $value){ $schema[$value] = _show_cols($value); } } }
以上是关于带有jQuery getJSON(回调)的JSONP公共API(MySql)的主要内容,如果未能解决你的问题,请参考以下文章
jQuery.getJSON(url, [data], [callback])
jQuery getJSON 回调不起作用 - 即使使用有效的 JSON - 并且似乎使用的是“OPTION”请求而不是“GET”
jQuery中的getJSON方法的url参数中,为啥加上callback=