php anzeige mit if anweisung

rene5

Mitglied
Hi
Ich habe ein Problem mit einer if Anweisung, er soll mir wenn ein bestimmter Wert im Formularfeld ist etwas bestimmtes mit echo ausgeben, nur leider klappt es nicht, wo liegt das Problem?:
HTML:
<div id="abcd">
<form name="test" action="script.php" method="post"> <!--action weist hierbei auf diesselber seite, heißt wenn man etwas im fomular ausgewählt hat erscheint auf der selben seite das was echo ausgeben soll -->

<fieldset>
		<label id="hhh">Anzahl von etwas</label><select name="AZG">
            <option value="1">1</option>
            <option value="2">2</option>
			<option value="3">3</option>
			<option value="4">4</option>
			<option value="5">5</option>
			<option value="6">6</option>
			<option value="7">7</option>
			<option value="8">8</option>
			<option value="9">9</option>
			<option value="10">10</option>
			<option value="11">11</option>
			<option value="12">12</option>
			<option value="13">13</option>
			<option value="14">14</option>
			<option value="15">15</option>
			<option value="16">16</option>
			<option value="17">17</option>
			<option value="18">18</option>
			<option value="19">19</option>
			<option value="20">20</option>
				</select>
				
		

</fieldset>
<input class= "senden2" type="submit" name="button" value="Ergebnis" />
</form>
</div>
	<div id="abc">
	
<?php
	
	
	if ($_post["AZG"] == "2")
	{
	echo "459753456";
	
	}
	?>

	</div>
 
Hallo,

naja, die Daten müssten auch abgeschickt werden

PHP:
if(isset($_POST['button'])){Anweisung}

<div id="abcd">
<form name="test" action="script.php" method="post"> <!--action weist hierbei auf diesselber seite, heißt wenn man etwas im fomular ausgewählt hat erscheint auf der selben seite das was echo ausgeben soll -->

<fieldset>
<label id="hhh">Anzahl von etwas</label><select name="AZG">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
</select>



</fieldset>
<input class= "senden2" type="submit" name="button" value="Ergebnis" />
</form>
</div>
<div id="abc">

PHP:
<?php
	
	
	if ($_post["AZG"] == "2")
	{
	echo "459753456";
	
	}
	?>
</div>

Du solltes dich mal mit Schleifen beschäftigen. So kannst du schon deine Selectbox kürzer schreiben (ich sag nur forschleife) :) Desweiteren kannst du in diesem Fall auch das Value weglassen, da sie ja den gleichen Wert haben, wie dem, was du sendest. Für die Auswertung würde ich dir dann eine switch case-Anweisung empfehlen, da diese übersichtlicher ist, als 1000 if-anweisungen


Etwa so:


Der html-Teil
HTML:
<div id="abcd">
  <form name="test"  method="post">
    <fieldset>
       <select name="AZG">
          <?php 
            for($i=1; $i<21;$i++){
                echo '<option>$i</option>' ;
           }
           ?>
    </fieldset>
    <input type="submit" name="button" class="senden2" />
  </form>
</div>

und die dazugehörige Funktion:

PHP:
if(isset($_POST['button'])){
     $azg=$_POST['AZG'];
     switch($azg){
         case 1: echo 'Ergeniss, wenn 1 genommen wurde'; break;
         case 2: echo 'Ergeniss, wenn 2 genommen wurde'; break;
     }
}

ungetestet
 
Zuletzt bearbeitet:
PHP unterscheidet bei Variablennamen Groß- und Kleinbuchstaben.

Es müsste also heißen:

PHP:
if($_POST['AZG'] == '2')
 
Danke dir Kalito
Besonders für das mit den Schleifen bin ich dir dankbar, jetzt muss ich das erstmal verstehen, nützt ja nichts wenn ich das einbinde und ich es nicht verstehe :eek:
Der Link sieht auch vielversprechend aus :D

das mit dem abschicken und der echo ausgabe klappt jetzt wunderbar, jedoch wird bei der for schleife nur die varible $i angezeigt und nicht die zahlen 1-20
 
Zuletzt bearbeitet:
Benutze statt der einfachen Anführungszeichen normale Anführungszeichen oder klammere es richtig aus.
 
Zurück