überprüfung von eingabefeldern

quidnovi

Erfahrenes Mitglied
hi folks

Habe ein Eingabeformular gebastelt, welches die eingetragenen Daten mittels method="post" an ein Berechnungsformular weiterleitet. Das funktioniert auch.

Frage:
Es existieren 2 Eingabefelder (Breite und Höhe) in denen ein gewisser Wert weder unter - noch überschritten werden darf.
Es soll so funktionieren, dass bei einer Falscheingabe wie bei JS das Script beim Absenden sofort mault, und der Eingeber gar auf das Berechnungsformular weiterkommt. JS kann ich nicht, außerdem möchte ich bei PHP bleiben.

Könnt Ihr mir bitte weiterhelfen (habe das Forum nach dieser Sache gescannt - aber leider nix gefunden) wie ich das auf diesem Script realisieren kann?

Muss kein fertiger Code sein - es genügt wenn mir jemand sagen kann wonach ich suchen soll. Steh' momentan absolut auf'm Schlauch. :-(

thx im voraus
quidnovi
 
Zuletzt bearbeitet:
Hmm das ist eigentlich recht einfach nehmen wir mal an deine eingabefelder heißen "hoehe" und "breite" denn fragst du einfach ob die zahl größer 5 ist oder so ungefähr so:
PHP:
if ($_POST['hoehe'] && $_POST['breite'] <= 5) {
//ausgabe
}
else {
//rechne oder so
}
 
Erstmal Danke für die schnelle Aw

Hab's ma so probiert, es will aber nicht:

lmb = Lichtes Breitenmass
Der eingegebene Wert muss zwischen 700 mm und 1280 mm liegen.

PHP:
<form action="berechnung.php" method="post">
	  
		
		      if ($_POST['lbm'] >= 700 || $_POST['lbm'] <= 1280) 
			  { 
				  echo '<input text=50" name="lmb"> Lichtes Breitenmass<br><br>';
			  }
			  else
			  {
				  echo "Bitte die Minimal - bzw. Maximalwerte des Anlagentyps beachten<br>";
				  echo "min.:700 mm / max.:1280 mmm";






			  }

Blicke leider immer noch nicht durch. :-(

Bitte weiter um Hilfe
quidnovi
 
Muss in deine Bedingung nicht ein && rein statt dem ||? Das ja grösser als und kleiner als x sein soll und nicht grösser oder kleiner als x sein soll?


PHP:
 if ($_POST['lbm'] >= 700 && $_POST['lbm'] <= 1280)
 
Tja, wenn ich's mit "&&" progge, dann gibt er mir kein Inputfeld mehr, sondern sofort die "else" - Anweisung aus.
 
naja nicht wirklich. Es kommt auf deine Logik drauf an.
Wenn das Script das erste mal aufgerufen wird, darf
auch gar keine Überprüfung stattfinden, weil ja keine
Daten gesendet wuden sondern nur die Inputfelder
gezeigt werden sollen.
wenn das Formular aber abgesendet wird, kannst du auch
überprüfen.
Ansonsten verstehe ich dein Problem nicht.
 
Wenns das gleiche Script is dann überprüf doch zusätzlich ob überhaupt noch was drinnen is? $_POST[höhe]!='' oder isset($_POST...) oder empty()
 
hi

thx für Euer Bemühen, bin aber momentan auf einem nicht geplanten Kurzurlaub und mache die Bergwelt bis 25.7 unsicher. Geil!
Hernach widme ich mich erneut diesem Problem und hoffe dass Ihr mir dann - sollte ich mit Euren Posts nicht klarkommen - wieder unter die Arme greift.

Wir lesen uns - vielleicht schon mit der Lösung

Danke nochmal
quidnovi
 
Hi Proggers

Hab' das Problem nun ganz simpel gelöst.

$lmb = Breite
$lmh = Höhe

PHP:
if ($lmb > 1826)
	   {
		   header("Location:../php_scripts/fehlerscript.php"); 
	   }

	   if ($lmh > 2500)
	   {
		  header("Location:../php_scripts/fehlerscript.php"); 
	   }

Diese Lösung mag vielleicht nicht schön oder so sein, sie ist dafür aber zielführend (bin aber für Kritik ob dieser proggerei freudig aufgeschlossen - kann nur etwas dazulernen).

Danke nochmal für Euer Bemühen

quidnovi
 
Zurück