. **********************************************************************/ ?> close(); echo json_encode($send); } else if(isSet($_POST["name"]) && isSet($_POST["energy"]) && isSet($_POST["protein"]) && isSet($_POST["iron"]) && isSet($_POST["vitA"]) && isSet($_POST["thiamine"]) && isSet($_POST["riboflavin"]) && isSet($_POST["vitC"])){ $_SESSION["custom_food"][]=array("name"=>$_POST["name"], "energy"=>$_POST["energy"], "protein"=>$_POST["protein"], "iron"=>$_POST["iron"], "vitA"=>$_POST["vitA"], "thiamine"=>$_POST["thiamine"], "riboflavin"=>$_POST["riboflavin"], "vitC"=>$_POST["vitC"]); echo json_encode(["flag"=>true]); } else if(isSet($_POST["delete-custom-food"])){ array_splice($_SESSION["custom_food"], $_POST["delete-custom-food"], 1); echo json_encode(["flag"=>true]); } else if(isSet($_GET["initdata"])){ $data["list"]=get_food_list(); $data["custom"]=get_custom_food(); echo json_encode($data); } else{ exit("Error"); } function get_food_list(){ $preset=array(); $sql=new mysqli(HOST, USER, PASS, DTBS); $stmt=$sql->prepare("SELECT name FROM food"); $stmt->execute(); $stmt->bind_result($name); while($stmt->fetch()){ $preset[]=$name; } $stmt->close(); $sql->close(); foreach($_SESSION["custom_food"] as $item){ if(!in_array($item["name"], $preset)){ $preset[]=$item["name"]; } } return $preset; } function get_custom_food(){ return $_SESSION["custom_food"]; } function subject_stat($subjects, $sql){ $rda=array(); for($i=0; $iprepare("SELECT energy, protein, iron, vitA, thiamine, riboflavin, vitC FROM rda WHERE subject=?"); $stmt->bind_param("s", make_string($subjects[$i])); $stmt->execute(); $stmt->bind_result($energy, $protein, $iron, $vitA, $thiamine, $riboflavin, $vitC); $stmt->fetch(); $stmt->close(); $rda[$i]["energy"]=(float)$energy; $rda[$i]["protein"]=(float)$protein; $rda[$i]["iron"]=(float)$iron; $rda[$i]["vitA"]=(float)$vitA; $rda[$i]["thiamine"]=(float)$thiamine; $rda[$i]["riboflavin"]=(float)$riboflavin; $rda[$i]["vitC"]=(float)$vitC; if($subjects[$i]["age"]>=18 && $subjects[$i]["age"]<=45 && $subjects[$i]["sex"]=="Female"){ if($subjects[$i]["state"]!="npnl"){ $qs=""; if($subjects[$i]["state"]=="preg"){ $qs="pregnant"; } else if($subjects[$i]["state"]=="lactb6"){ $qs="lactating_below6"; } else if($subjects[$i]["state"]=="lacto6"){ $qs="lactating_above6"; } $stmt=$sql->prepare("SELECT energy, protein, iron, vitA, thiamine, riboflavin, vitC FROM rda WHERE subject=?"); $stmt->bind_param("s", $qs); $stmt->execute(); $stmt->bind_result($energy, $protein, $iron, $vitA, $thiamine, $riboflavin, $vitC); $stmt->fetch(); $stmt->close(); $rda[$i]["energy"]=$rda[$i]["energy"]+(float)$energy; $rda[$i]["protein"]=(float)$protein; $rda[$i]["iron"]=(float)$iron; $rda[$i]["vitA"]=(float)$vitA; $rda[$i]["thiamine"]=$rda[$i]["thiamine"]+(float)$thiamine; $rda[$i]["riboflavin"]=$rda[$i]["riboflavin"]+(float)$riboflavin; $rda[$i]["vitC"]=(float)$vitC; } } } return $rda; } function food_stat($foods, $sql){ $val=array(); if(count($foods)>0){ $qs=""; for($i=0; $iprepare("SELECT name, energy, protein, iron, vitA, thiamine, riboflavin, vitC FROM food WHERE ".$qs); $stmt->execute(); $stmt->bind_result($name, $energy, $protein, $iron, $vitA, $thiamine, $riboflavin, $vitC); while($stmt->fetch()){ $val[$name]["energy"]=(float)$energy; $val[$name]["protein"]=(float)$protein; $val[$name]["iron"]=(float)$iron; $val[$name]["vitA"]=(float)$vitA; $val[$name]["thiamine"]=(float)$thiamine; $val[$name]["riboflavin"]=(float)$riboflavin; $val[$name]["vitC"]=(float)$vitC; } $stmt->close(); } } return $val; } function make_string($sub){ $idx=""; if($sub["age"]==0){ $idx="infant_9m-12m"; } else if($sub["age"]<18){ if($sub["sex"]=="Male"){ $idx="male_".$sub["age"]."y"; } else if($sub["sex"]=="Female"){ $idx="female_".$sub["age"]."y"; } } else{ if($sub["sex"]=="Male"){ if($sub["work"]=="Sedentary"){ $idx="male_sedentary"; } else if($sub["work"]=="Moderate"){ $idx="male_moderate"; } if($sub["work"]=="Heavy"){ $idx="male_heavy"; } } else if($sub["sex"]=="Female"){ if($sub["work"]=="Sedentary"){ $idx="female_sedentary"; } else if($sub["work"]=="Moderate"){ $idx="female_moderate"; } if($sub["work"]=="Heavy"){ $idx="female_heavy"; } } } return $idx; } function has_custom($value){ $flag=false; foreach($_SESSION["custom_food"] as $item){ if($item["name"]==$value){ $flag=true; break; } } return $flag; } function get_custom_by_name($name){ $obj=false; foreach($_SESSION["custom_food"] as $item){ if($item["name"]==$name){ $obj=$item; break; } } return $obj; } ?>