使用php和jquery从mysql数据库中获取[1,2,3]格式的数据
我有我的jquery代码,它连接到使用php和jquery从mysql数据库中获取[1,2,3]格式的数据,php,jquery,mysql,arrays,ajax,Php,Jquery,Mysql,Arrays,Ajax,我有我的jquery代码,它连接到getdata.php。这里的val是动态值,每次从下拉列表中选择选项时都会调用该函数 function getMoleculeData(val){ var molval=val; var url = 'getmoldata.php'; $.ajax({ url: url, data: 'molval='+molval, method:'POST', success: f
getdata.php
。这里的val
是动态值,每次从下拉列表中选择选项时都会调用该函数
function getMoleculeData(val){
var molval=val;
var url = 'getmoldata.php';
$.ajax({
url: url,
data: 'molval='+molval,
method:'POST',
success: function(moldata) {
alert(moldata);
}
});
}
我的getdata.php
代码在这里
<?php
$molval = $_POST['molval']; // consider $_POST['molval']=ABC
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname= "userdata";
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($dbname) or die ();
$query = "SELECT cm_id, CORP_RANK, CORP_MKT_SHARE, COMBINED_MOLECULE FROM PRODUCT_UNIVERSE_D WHERE COMBINED_MOLECULE ="."'$molval'";
$result = mysql_query($query) or die(mysql_error());
$i = 1;
$array = array();
while($row = mysql_fetch_array($result) {
$array[] = $row;
echo $row['CORP_RANK']; // etc
}
?>
当我在下拉列表中选择ABC时,where子句中给出了相同的值,并且我能够获取结果。对于在getdata.php
中编写的上述代码,我得到的输出是1058
即CORP\u RANK的值,其中COMBINED\u molecular='ABC'。但要求是我必须以[10,5,8]
的形式获得结果。如何获得此数组格式的结果,以及如何分别获取所有列,如$row['CORP_MKT_SHARE']=[10,50,40]
,并将它们分别显示在index.php的success函数中
[10,5,8] and [10,50,40] for furthur use
请帮助我,因为我在数组的基础知识方面不是完美的,所以我无法得到结果。如果您希望将数据输出为json格式,请提前感谢
example:
$array = array(1,2,3);
var_dump(json_encode($array));
您将获得以下输出:
string(7) "[1,2,3]"
最好将循环更改为:
for($array = array();$row = mysql_fetch_array($result);$array[] = $row);
json_encode($array);
这是使用ajax从php文件检索数据的最佳方法
使用您的代码:
while($row = mysql_fetch_array($result)) {
$rank[] = $row['CORP_RANK'];
$share[] = $row['CORP_MKT_SHARE'];
}
$array = array('CORP_RANK'=>$rank,'CORP_MKT_SHARE'=>$share);
json_encode($array);
希望这能有所帮助。我得到了相同的输出,例如[{“0”:“1”,“cm_id”:“1”,“1”:“5”,“公司等级”:“5”,“2”:“50”,“公司等级”:“50”,“公司等级”:“50”,“3”:“ABC”,“联合分子”:“ABC”},{“0”:“2”,“cm_id”:“2”,“1”:“8”,“公司等级”:“8”,“2”,“50”,“公司等级”:“50”,“公司等级”:“50”,“联合分子”:“50”,“3”:“ABC”,“联合分子”:“XYZ”}但我想得到它的格式[ABC,ABC,ABC]例如对于COMBIND_Molecular和[10,5.8]对于CORP_RANK@Ronnel Padernalfor($array=array();$row=mysql_fetch_array($result);$array[]=$row['CORP_RANK']),为了只获取CORP_RANK数据,Thanq.它是有效的:)我还有一个疑问。如何分别获取这些值,就像我想将$row['CORP_RANK']附加到div和$row一样['CORP_MKT_SHARE']到其他div如何在从getdata.php获取json数据到jquery代码后追加您可以使用json.parse(json)@DarkZ3ro11将json数据从getdata.php转换为javascript。请给出代码。我对这个领域非常陌生。请不要介意
while($row = mysql_fetch_array($result)) {
$rank[] = $row['CORP_RANK'];
$share[] = $row['CORP_MKT_SHARE'];
}
$array = array('CORP_RANK'=>$rank,'CORP_MKT_SHARE'=>$share);
json_encode($array);