Php 从mysql获取所有值,然后生成变量
嗨,我想从PHP文件中获取值,并使它们像数组一样可用。 我正在使用jquery。 我应该如何格式化retriever和php文件来检索它们 PHP文件:我使用switch一次检索1,但这个方法很糟糕Php 从mysql获取所有值,然后生成变量,php,javascript,jquery,mysql,ajax,Php,Javascript,Jquery,Mysql,Ajax,嗨,我想从PHP文件中获取值,并使它们像数组一样可用。 我正在使用jquery。 我应该如何格式化retriever和php文件来检索它们 PHP文件:我使用switch一次检索1,但这个方法很糟糕 <?php ob_start(); session_start(); include('mysql_config.php'); $konto = $_SESSION['login']; $temp=mysql_fetch_array(mysql_query("SELECT `cur
<?php
ob_start();
session_start();
include('mysql_config.php');
$konto = $_SESSION['login'];
$temp=mysql_fetch_array(mysql_query("SELECT `curchar` FROM `users` WHERE `login`='$konto'"));
$id = $temp['curchar'];
$gracz=mysql_fetch_array(mysql_query("SELECT * FROM `chars` WHERE `id`='$id'"));
$gracz['max_pz']=94+($gracz['str']+$gracz['stm']*5);
$gracz['max_pe']=7.1-($gracz['str']*0.1)+$gracz['stm']+$gracz['int']*2;
$gracz['max_exp']=($gracz['lvl']*10)*25;
if ($gracz['max_exp'] <= $gracz['exp'])
{
$gracz['lvl']++;
$zostalo = $gracz['exp']-$gracz['max_exp'];
mysql_query("UPDATE `chars` SET lvl=lvl+1, stats=stats+3, exp='$zostalo' WHERE `id`='$id'");
$gracz['exp']=$zostalo;
$gracz['max_exp']=($gracz['lvl']*10)*25;
}
$lol=$_POST['name'];
switch ($lol) {
case 'pz':
echo $gracz['pz'];
break;
case 'max_pz':
echo $gracz['max_pz'];
break;
case 'pe':
echo $gracz['pe'];
break;
case 'max_pe':
echo $gracz['max_pe'];
break;
case 'max_exp':
echo $gracz['max_exp'];
break;
case 'str':
echo $gracz['str'];
break;
case 'dex':
echo $gracz['dex'];
break;
case 'int':
echo $gracz['int'];
break;
case 'stm':
echo $gracz['stm'];
break;
case 'stats':
echo $gracz['stats'];
break;
case 'exp':
echo $gracz['exp'];
break;
case 'lvl':
echo $gracz['lvl'];
break;
case 'mapa':
echo $gracz['mapa'];
break;
case 'x':
echo $gracz['x'];
break;
case 'y':
echo $gracz['y'];
break;
default:
echo "post jest pusty";
break;
}
ob_end_flush();
?>
使用JSON。在PHP文件中,只需输出:
echo json_encode($gracz);
并更改ajax处理程序以接受json数据:
$.ajax({
type: "POST",
async: false,
url: "char_info2.php",
data: { name: merk },
dataType: "json",
success: function(data) {
// Use data.max_pz or whatever here
}
});
您有一个SQL注入漏洞。@tatu ulmanen它不工作:C代码在这里,数据没有从函数中出来:/
$.ajax({
type: "POST",
async: false,
url: "char_info2.php",
data: { name: merk },
dataType: "json",
success: function(data) {
// Use data.max_pz or whatever here
}
});