オリジナル関数 6−2
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="ja"><head>
<meta http-equiv="Content-type" content="text/html; charset=EUC-JP">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="stylesheet" href="./style.css">
<title>理想体重-肥満度計算</title></head>
<body><div class="file2">
理想体重-肥満度計算<br />
<?php
error_reporting(1);
$data1 = 0;
$data2 = 0;
$data1 = $_POST['data1'];
$data2 = $_POST['data2'];
$data3 = $data1.$data2 ;
/*------------------------------------------------------*/
function himan($sincho,$taiju){
$sincho = $sincho /100 ;
$bmi = $taiju / ($sincho * $sincho) ;
$hyojun = $sincho * $sincho * 22 ;
$himando = ($taiju - $hyojun) / $hyojun *100 ;
$himando = round($himando,2);
return $himando;
}
/*------------------------------------------------------*/
if($data1 == null or $data2 == null){
echo "<table border='0' width='600' height='350'><tr><td width='350'>";
echo "<form action='06_02_func.php' method='post'>¥n";
echo "<table border='1'><tr>¥n";
echo "<td width='65' align='center'>身長(cm)</td>¥n";
echo "<td width='65' align='center'>体重(kg)</td>¥n";
echo "<td></td></tr><tr>¥n";
echo "<td><input type='text' name='data1' size='10'></td>¥n";
echo "<td><input type='text' name='data2' size='10'></td>¥n";
echo "<td><input type='submit' value='計算!'></td></tr>¥n";
echo "</table></form>";
echo "●BMIの計算式:体重(kg)÷{身長(m)の二乗}<br>¥n";
echo "●標 準 体 重:身長(m)×身長(m)×22<br>¥n";
echo "●肥 満 度 :(実体重−標準体重)÷標準体重×100<br><br>¥n";
echo "たとえば、160cm,55kgなら<br>¥n";
echo "55÷(1.6×1.6)=21.484375<br>¥n";
echo "1.6×1.6×22=56.32<br>¥n";
echo "(55−56.32)÷56.32×100=-2.34375%<br>¥n";
echo "これを少数第3位で四捨五入して肥満度とし、<br>これをもとに評価を出します。<br><br>¥n";
echo "【-20%以上】激やせ!<br>¥n";
echo "【-10%以上】やせすぎ<br>¥n";
echo "【-5%以上】細身スレンダー<br>¥n";
echo "【±5%未満】ばっちり標準<br>¥n";
echo "【+5%以上】ふっくら系?<br>¥n";
echo "【+10%以上】ぽっちゃり系<br>¥n";
echo "【+20%以上】はっきりデブ<br>¥n";
echo "</td><td align='center'><img src='model.gif'></td></tr></table>¥n";
echo "注意:計算による肥満度は正しいものですが、評価は適当に作ったものです。<br>¥n";
echo "信用しないでね。入力は身長cm、体重kgで入力してください。¥n";
/*------------------------------------------------------*/
} else if(ereg("[^0-9-]",$data3)){
echo "<br>数字以外の文字が入ってますよ";
echo "<form action='06_02_func.php' method='post'>¥n";
echo "<input type='submit' value='もう一度'></form>¥n";
/*------------------------------------------------------*/
} else if($data1 < 0 or $data2 <0){
echo "<br>やぁね。マイナスにしたでしょ!";
echo "<form action='06_02_func.php' method='post'>¥n";
echo "<input type='submit' value='もう一度'></form>¥n";
/*------------------------------------------------------*/
} else if($data1 >= 250 or $data2 >= 400){
echo "<br>やぁね、そんな人いないでしょ!身長はcm、体重はkgです。";
echo "<form action='06_02_func.php' method='post'>¥n";
echo "<input type='submit' value='もう一度'></form>¥n";
/*------------------------------------------------------*/
} else if(himan($data1,$data2) > 250 or himan($data1,$data2) < -40){
echo "<br>そんな身長・体重はありえないんじゃないですか?身長はcm、体重はkgです。";
echo "<form action='06_02_func.php' method='post'>¥n";
echo "<input type='submit' value='もう一度'></form>¥n";
/*------------------------------------------------------*/
} else {
$data1 = htmlspecialchars($data1, ENT_QUOTES); //タグを無効化
$data2 = htmlspecialchars($data2, ENT_QUOTES); //タグを無効化
$hyouji = himan($data1,$data2) ; //関数を使用しているところ!
/*------------------------------------------------------*/
switch ($hyouji){
case $hyouji > -5 and $hyouji < 5;
$mess = "ばっちり標準";
break;
case $hyouji >= 20;
$mess ="はっきりデブ";
break;
case $hyouji >= 10;
$mess ="ぽっちゃり系";
break;
case $hyouji >= 5;
$mess ="ふっくら系?";
break;
case $hyouji <= -20;
$mess ="激やせ!";
break;
case $hyouji <= -10;
$mess ="やせすぎ";
break;
case $hyouji <= -5;
$mess ="細身スレンダー";
break;
}
/*------------------------------------------------------*/
$width = (100 + $hyouji*1.5)/100 * 80;
echo "<table width='600' border='0' height='350'><tr><td width='350' valign='top'>¥n";
echo "<table border ='1'><tr>¥n";
echo "<td width='65' align='center'>身長</td>¥n";
echo "<td width='65' align='center'>体重</td>¥n";
echo "<td width='65' align='center'>肥満度</td></tr>¥n";
echo "<td align='center'>$data1</td>¥n";
echo "<td align='center'>$data2</td>¥n";
echo "<td align='center'>$hyouji</td></tr></table>¥n";
echo "<br />肥満度<b> $hyouji </b> $mess です。<br><br>¥n";
echo "右の絵は肥満度をもとに<br>横幅を調節して表示しています。¥n";
echo "<form action='06_02_func.php' method='post'>¥n";
echo "<input type='submit' value='もう一度'></form>¥n";
echo "</td><td align='center'><img src='model.gif' width=$width height='286'></td></tr></table>¥n";
echo "注意:計算による肥満度は正しいものですが、評価は適当に作ったものです。<br>¥n";
echo "信用しないでね。入力は身長cm、体重kgで入力してください。¥n";
}
?><br><br>
</div></body></html>