Ich habe diese einfache Programmierung Übung und ich versuche es in PHP zu tun: Bestimmen Sie, ob ein Schüler den Kurs bestehen oder nicht. Der Schüler wird den Kurs bestehen, wenn sein Durchschnitt von drei Noten größer oder gleich 15 ist. Zeigen Sie eine Nachricht, ob der Schüler besteht oder nicht, und bestätigen Sie die drei Noten, bevor Sie den Durchschnitt berechnen. Zeigen Sie eine Fehlermeldung an, wenn eine Note falsch ist.Wie kann ich Felder in PHP genau validieren?
Ich habe es sowohl in Pseudo-Code und pseint, so ist es einfach zu validieren, weil ich eine Do-While-Schleife verwenden und jedes Mal, wenn es mich fragt nach einer Nummer und ich mache es falsch, überprüft es die Noten:
Algorithm Exercise14
Define grade1, grade2, grade3, prom as Real;
Repeat
print "Type the first grade: ";
read grade1;
if (grade1<0 | grade1>20)
print "Error! Invalid grade, type a valid grade.";
endif
Until (grade1>=0 & grade2<=20);
Repeat
print "Type the second grade: ";
read grade2;
if (grade2<0 | grade2>20)
print "Error! Invalid grade, type a valid grade.";
endif
Until (grade2>=0 & grade2<=20);
Repeat
print "Type the third grade: ";
read grade3;
if (grade3<0 | grade3>20)
print "Error! Invalid grade, type a valid grade.";
endif
Until (grade3>=0 & grade3<=20);
prom = (grade1+grade2+grade3)/3;
if (prom>=15)
print "The student passed the course!";
print "The average is: " prom;
else
print "The student did not pass the course.";
print "The average is: " prom;
endif
endAlgorithm
Jetzt möchte ich das aber in PHP tun. Mein Problem ist, dass ich auf diese Weise nicht validieren kann, denn wenn ich es tue, braucht der Browser nur viel Zeit, um zu reagieren, und es tut nichts, also habe ich im Internet gesucht und ich brauche eine Funktion, um zu bestätigen, aber ich bin es nicht sicher. Ich lerne PHP, entschuldige mich, wenn das eine wiederholte Frage ist oder es zu leicht ist, aber ich möchte es wissen, weil ich lerne.
Die letzte Frage ist, wie kann ich diese Felder validieren, wenn ich es mit PHP und natürlich HTML5 mache?
PHP-Code:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Exercise 14</title>
<meta charset="utf-8">
</head>
<body>
<h2>PHP Exercises</h2>
<h3>Exercise 14</h3>
<form action="#" method="post" id="constant" name="constant">
<div>
<label for="text">Grade 1: </label>
<input type="text" name="grade1" placeholder="Type grade1">
</div>
<div>
<label for="text">Grade 2: </label>
<input type="text" name="grade2" placeholder="Type grade 2">
</div>
<div>
<label for="text">Grade 3: </label>
<input type="text" name="grade3" placeholder="Type grade 3">
</div>
<div>
<input type="submit" name="button" id="sending" value="Send">
</div>
</form>
<?php
if(isset($_POST['button'])){
$grade1 = $_POST['grade1'];
$grade2 = $_POST['grade2'];
$grade3 = $_POST['grade3'];
while($grade1<0){
echo "Error!";
}
do{
if ($grade2<0 | $grade2>20) {
echo "Error!";
}
}while($grade2>=0 && $grade2<=20);
do{
if ($grade3<0 | $grade3>20) {
echo "Error!";
}
}while($grade3>=0 && $grade3<=20);
$prom = ($grade1+$grade2+$grade3/3);
if ($prom>=15) {
echo "The averages is: " . $prom;
echo "The student passed the course!";
}else{
echo "The averages is: " . $prom;
echo "The student did not pass the course.";
}
}
?>
</body>
</html>
Ohne Code zu sehen, ist es unmöglich zu wissen, welches Problem Sie haben, aber wenn Sie zwischen den Zeilen lesen, klingt es so, als hätten Sie ein falsches Verständnis für die Programmierung eines Webclients. Weitere Informationen finden Sie unter [Was ist der Unterschied zwischen clientseitiger und serverseitiger Programmierung?] (Http://stackoverflow.com/q/13840429/476). – deceze
Ich habe eine Online-Datei in Google Drive veröffentlicht, nicht wahr? Siehst du, kannst du? –
Bereit, habe ich den Beitrag bearbeitet. Jetzt können Sie sehen, wovon ich rede. Kannst du mir sagen, wie ich diese Felder mit PHP validieren kann? Ich weiß, es ist sehr anders als pseint und #C oder C++. –