我的导师告诉我们制作一个PHP脚本,它将计算用户在文本区域中输入的任何内容的元音。同时在其下方显示结果。我已经做到了。
但随后讲师告诉我们,她还希望在显示结果后同时看到用户在文本区域中输入的内容。我仍在寻找如何做到这一点..有人可以帮我吗?
我在标签中使用PHP_SELF和方法 POST<form>
来显示结果。
<?php
error_reporting(0);
$text = $_POST['sentence'];
if ($_POST['display']){
$message1 = "The sentence is "$text".";
$message2 = "There are ".countVowels($text)." vowels in the sentence.";
}
function isVowel($ch){
$flag = false;
$vowels = "aeiou";
for ($i = 0; $i < strlen($vowels); $i++)
if ($ch == $vowels[$i])
$flag = true;
return $flag;
}
function countVowels($str){
$counter = 0;
for($i = 0; $i < strlen($str); $i++)
if (isVowel($str[$i]) == true)
$counter++;
return $counter;
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Count the vowels</title>
</head>
<body>
<form action = "<?php echo $_SERVER['PHP_SELF'];?>" method = "POST">
<p>Enter a sentence: </p>
<textarea name ="sentence" cols = "75" rows = "20" placeholder = "Type here..." ></textarea>
<br/>
<input type = "submit" name = "display" value = "Count Vowels"/>
<?php
echo $message1;
echo "<br/>";
echo $message2;
?>
</form>
</body>
</html>
单击计数元音按钮后的输出: 文本区域中应包含用户输入文本。
并将显示:
这句话是$sentence。 句子中有$countVowels($sentence(元音。
为什么不简单地做呢?
<?php
echo $message1;
echo "<br/>";
echo $message2;
echo "<br/>";
isset($_POST['display']) ? echo $_POST['sentence] : '';
?>