Vergleiche in PHP

reddragon90

Erfahrenes Mitglied
Hallo Leute,

mit welcher Kontrollstrukur realisiere ich es am idealsten, wenn ich über ein Formular, zwei Zahlen eingebe und diese Vergleichen möchte, und wenn diese in die Bedingung passt, soll ein Text ausgegeben werden. Das Problem ist, dass vieles verglichen werden muss. Mal ein Beispiel.

Ich gebe über die Formular1 Box z.B. 580 ein, in die zweite 66. Soweit so gut, dass kann ich ja noch wunderbar mit einer if kontrollstrukter machen. Aber wenn ich jetzt noch sagen möchte: Wenn 840 und 640 eingeben werden soll das ausgegeben werden, womit mache ich das am besten?
 
PHP:
if(anweisung)
{
  // tu was
}
elseif(anweisung)
{
  // tu was
}
elseif(anweisung)
{
  // tu was
}
else
{
  // tu was
}

So?
 
PHP:
$box1 = array( 
 1,
 2,
 3);
$box2 = array( 
 10,
 20,
 30);

if ($index = array_search($_POST['feld_box1'],$box1) )
{
 if($_POST['feld_box2'] == box2[$index])
  echo "Lustiger Text";
}

Meinst du ungefähr so etwas?

€dit: Felix du klaust mir immer alle Lösungen xD
 
Erstmal vielen Dank!

Aber so hatte ich das auch schon versucht, aber ich glaube ich hatte nicht mit der Syntax die Probleme sondern mit meiner logik, aber das habe ich jetzt glaube ich auch geklärt.

Gibt es den eine Möglichkeit zu sagen (auf diese Kontrollstruk. bezogen) , wenn die zahl zwischen x und y tue das? Weil wenn ich schreibe,
PHP:
if($_POST[bla1] > 330 < 150 && $_POST[bla2] == 15)

dann bekommen ich die Meldung: prase error. Sowas müsste man aber widerum mit schleifen lösen oder?
 
Es müsste so lauten:
PHP:
if(($_POST['bla1'] > 330  OR $_POST['bla1'] < 150) AND $_POST['bla2'] == 15)

Wobei das eigentlich keinen Sinn macht. Wenn es dazwischen liegen soll, dann:
PHP:
if($_POST['bla1'] > 150  AND $_POST['bla1'] < 330 AND $_POST['bla2'] == 15)

Wobei wir ja immer noch nicht genau wissen was du willst ;)
 
Zuletzt bearbeitet:
Ich muss ehrlich sagen, dass ich mich schwer getan habe, diesen Thread zu starten. Deshalb habe ich auch nicht genau geschrieben was ich möchte, damit man mir nicht direkt die Lösung vor die Platte schmeißt. Aber das mit dem OR werde ich mal versuchen (da habe ich was Neues gelernt). Wenn es gar nicht mehr geht, melde ich mich nochmal. :-)

EDIT: Ich glaube jetzt habe ich es. Wenn nicht melde ich mich :D Achja, Danke!

So jetzt entwickelt sich noch eine Frage. Wenn ich das jetzt so mache, wie ich das geschrieben habe, quasi mit der elseif, dann muss ich mich ja immer auf eine Varibal beziehen oder? Oder kann ich das ganze auch machen ohne einer Varibal einen Wert zuzuweisen in diesem Fall wäre das dann: bla1 und bla2, denn diese müssen ja auch verglichen werden. Wenn ich das wüsste, dann würde meinem Glück (ich hoffe doch) nichts mehr im wege stehen.
 
Was ist denn eine Varibal? *sry musste sein ^^*


Nunja, ohne eine Variable kann man ja schlecht irgentwelche dynamischen Werte vergeleichen.
Du kannst problemlos irgentwelche Zahlen ohne Variablenzuweisung vergleichen =)
 
Zurück