Php 把考试成绩分成不同的等级

Php 把考试成绩分成不同的等级,php,json,Php,Json,嘿,伙计们,我想建立一个以学术为导向的配对网站,让男孩和女孩通过学业成绩和爱好找到他们的潜在伴侣 我只是想把考试成绩的数量转换成A、B、C,然后把它们转换成S级、A级这样的联赛。首先我想把考试成绩A转换成5的整数,把考试成绩B转换成4的整数,依此类推。然后我将它们归纳起来,并将它们分为各自的类别 原始和累人的代码。。。我不确定它是否会起作用 $obtaindata = mysql_fetch_assoc(mysql_query('SELECT * FROM userinfo WHERE prim

嘿,伙计们,我想建立一个以学术为导向的配对网站,让男孩和女孩通过学业成绩和爱好找到他们的潜在伴侣

我只是想把考试成绩的数量转换成A、B、C,然后把它们转换成S级、A级这样的联赛。首先我想把考试成绩A转换成5的整数,把考试成绩B转换成4的整数,依此类推。然后我将它们归纳起来,并将它们分为各自的类别


原始和累人的代码。。。我不确定它是否会起作用

$obtaindata = mysql_fetch_assoc(mysql_query('SELECT * FROM userinfo WHERE primaryemel="' . $_COOKIE['smkdtuser'] . '"'));

$pmrresults = json_decode($obtaindata['pmr']);
$spmresults = json_decode($obtaindata['spm']);
$upsresults = json_decode($obtaindata['upsr']);

function calculateClassForPMR ($pmrresults) {
$aquality = (int)$pmrresults['a'] * 5;
$bquality = (int)$pmrresults['b'] * 4;
$cquality = (int)$pmrresults['c'] * 3;
$dquality = (int)$pmrresults['d'] * 2;
$gquality = (int)$pmrresults['g'] * 1;

$additup = $aquality + $bquality + $cquality + $dquality + $gquality;

//Classify sum of scores to their respective class
if ($additup => 35) {$classified = "s";}
elseif ($additup >= 29 && $additup <= 34) {$classified = "a";}
elseif ($additup >= 23 && $additup <= 28) {$classified = "b";}
elseif ($additup >= 17 && $additup <= 22) {$classified = "c";}
elseif ($additup >= 11 && $additup <= 16) {$classified = "d";}
elseif ($additup >= 0 && $additup <= 10) {$classified = "e";}
else {$classified = "wtf";};

return $classified; }
$obtaindata=mysql\u fetch\u assoc(mysql\u查询('SELECT*FROM userinfo WHERE primaryemel=“”.$”COOKIE['smkdtuser'].');
$pmrresults=json_decode($obtaindata['pmr']);
$spmresults=json_decode($obtaindata['spm']);
$upsresults=json_decode($obtaindata['upsr']);
函数calculateClassForPMR($pmrresults){
$aquality=(int)$pmrresults['a']*5;
$bquality=(int)$pmrresults['b']*4;
$cquality=(int)$pmrresults['c']*3;
$dquality=(int)$pmrresults['d']*2;
$gquality=(int)$pmrresults['g']*1;
$additup=$aquality+$bquality+$cquality+$dquality+$gquality;
//将分数总和分类到各自的班级
如果($additup=>35){$classified=“s”;}

如果($additup>=29&&$additup=23&&$additup=17&&$additup=11&&$additup=0&&$additup在使用json_解码时,我假设您在该选项卡行中包含类似的内容。请尝试使用:

$pmrresults=var_dump(json_decode($obtaindata['pmr'],true))
然后您可以使用
$pmrresults['a'];

将值存储到DB时,必须
json\u encode()


我不想租另一台服务器只是为了测试它……这很昂贵。
…用户XAMPP它是免费测试的。

代码出了什么问题?你在数据库中使用了什么格式…请发布错误…”“我不确定它是否能正常工作。"这不是测试的全部内容吗?我不想租另一台服务器来测试它…这很昂贵。但就像用户输入4A 1B 1C和1D…存储它们的最佳格式是什么。我想像Facebook那样像JSON对象一样存储它?JSON解码标记的原因是什么?哦,是的,我应该存储gr的数量不管怎样,我担心php表单处理器会将它们存储在字符串中。当我要求用户输入分数时,如何强制php将数据类型从字符串更改为整数。如果用户输入4D,您可以执行
$value=substr($var,0,-1)
其中
$var='4D';
$letter=substr($var,-1);
->它产生$letter=D和
$value=4
其中$value是一个整数