HTMLページから入力値を取得し、それらをリストに表示するphp関数に渡す小さな関数があります。私の目標は、フィールドが空白のままになっている場合、PHP スクリプトは何もエコーしないため、そのインスタンスを完全にスキップすることです。もちろん、ただ話すよりも、あなたに見せたほうがいいでしょう:
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Untitled 1</title>
</head>
<body>
<form method="POST" action="test3.php" name="form">
<p>Please enter your name:</p>
<input type="text" name="1"></input>
<br />
<input type="text" name="2"></input>
<br />
<input type="text" name="3"></input>
<br />
<input type="text" name="4"></input>
<br />
<input type="text" name="5"></input>
<br />
<input type="submit" value="Submit" name="subButton" tabindex="50"></input>
</form>
</body>
</html>
PHP
function callNames(){
$body;
for($name = 1; $name <= 6; $name++){
if($name <= 5){
echo "Your name is " . $_POST[$name] . ".<br />";
}
elseif($name =? ){
?;
}
else {
echo "Your out of names!";
}
};
}
callNames();
それが私の解決策になると思ったので、elseif関数を空白のままにしました。つまり、フィールド 3 以外のすべてに名前を入力すると、"Your name is " が 4 回エコーされるだけで、必要な場所に余分な区切りが残ることはありません。これを解決するためにelseifを使用しませんか?