Einfache Auswertung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Einfache Auswertung

    hi ich möchte gern ne auwertung erstellen die per eingabefeld arbeitet. Dazu soll sie mehrere möglichkeiten haben.
    wenn ich zb. a eingebe soll sie entweder richtig oder oder falsch ausgeben. wenn ich b eingebe soll sie ricvhtig1 oder falsch1 ausgeben usw.
    hab zwar bisher einen zum laufen aber bei mehrfachunterscheidung klappts nich.
    <?
    $name="a";
    if( $benutzer!=$name)
    {
    echo "falsch";
    }
    else
    {
    echo "
    richtig";
    }
    else
    $name="b";
    if( $benutzer!=$name)
    {
    echo"falsch1";
    }
    else
    {
    echo"richtig1";
    }
    ?>

    das geht zwar aber es werden beide teile abgearbeitet mit nem or dazwischen gehts ja nicht könnt ihr mir bitte helfen?

  • #2
    Code:
    [b]So schaut Dein Skript aus, wenn man das ganze strukturiert schreibt:[/b]
    <?
    $name="a"; 
    if( $benutzer!=$name) { 
    	echo "falsch"; 
    } else { 
    	echo " 
    	richtig"; 
    } 
    else		// hier fehlt {
    $name="b"; 
    if( $benutzer!=$name) { 
    	echo"falsch1"; 
    } else{ 
    	echo"richtig1"; 
    }
    // Wenn oben { fehlt, fehlt hier }
    ?>
    
    [b]Deinen Angaben zu Folge könnte man [i]zb.[/i] das so machen:[/b]
    <? 
    $name="a";
    // $name="b";
    if($name == "a") {
    	if($benutzer != $name) { 
    		echo "falsch"; 
    	} else { 
    		echo "richtig"; 
    	}
    } 
    if($name == "b") {
    	if($benutzer != $name) { 
    		echo"falsch1"; 
    	} else { 
    		echo"richtig1"; 
    	}
    }
    ?>
    
    [b]So aber auch, kommt ja drauf an was Du vor hast:[/b]
    <? 
    $name="a";
    // $name="b"; 
    if($benutzer != $name) { 
    	echo "falsch"; 
    } else { 
    	echo "richtig"; 
    } else {                 // [b]Das ist voller Schrott!! Zweimal schreibe ich einen else auf denselben IF [/b] 
    	if( $benutzer!=$name) { 
    		echo"falsch1"; 
    	} else { 
    		echo"richtig1"; 
    	}
    }
    ?> 
    [b]Es gäbe aber noch viel mehr Varianten[/b]
    [Editiert von hand am 03-03-2002 um 21:13]

    Kommentar


    • #3
      sorry aber keiner deiner beiden funktioniert. Das gleiche problem wie vorher auch das die doppelausgabe verglichen wird und bei richtig a erscheint richtfalsch1
      bei richtig b erscheint falschrichtig1
      bei sonstwas erscheint falschfalsch1
      dazu kommt das das else zwischen den beiden vergleichen als fehler gewertet wird, denn das hatte ich vorher auch schon eingebaut.
      Ich habs mal etwas abgeändert von den vars das es einfacher ist.
      <?
      $a="a";
      $b="b";
      if($benutzer != $a)
      {
      echo "falsch";
      } else {
      echo "richtig";
      }

      if($benutzer != $b)
      {
      echo"falsch1";
      } else {
      echo"richtig1";
      }
      ?>

      Das was ich will ist das die unterscheidung so stattfindet das jeweils die antworten ausgegeben werden bei den eingaben, aber mir fällt beim besten willen nicht ein qwie es gehen soll. Denn vom logischen ablauf kanns ja gar nicht mit dem script gehen denn ein wert ist ja immer falsch.

      Kommentar


      • #4
        Code:
        <? 
        $a="a";
        $b="b"; 
        if($benutzer == $a) { 
        	echo "richtig ";
        	if($benutzer == $b) { 
        		echo"richtig1 "; 
        	} else { 
        		echo"falsch1 "; 
        	}
        } else {
        	echo "falsch ";
        	if($benutzer == $b) { 
        		echo"richtig1 "; 
        	} else { 
        		echo"falsch1 "; 
        	}
        }
        ?>
        Das mit dem else-Fehler ist mir passiert. Zweimal else ist natürlich Schrott.


        [Editiert von hand am 03-03-2002 um 21:21]

        Kommentar


        • #5
          sorry aber immer noch nen fehler drin mit falsch beim zweiten teil.
          Aber macht nichts trotzdem vielen dank für deine hilfe.
          Da ich gerade erst mit php angefangen hab, hab ich etwas zu kompliziert gedacht. Da ich ja js usw. kann ists eigentlich vom ablauf identisch war mir nur nicht bewusst. so hab ich halt mal das ganze wie ichs in js machen würde nur auf php umgeändert und es geht. Dabei hab ich mal auf die zweite falschausgabe verzichtet, weil sie nicht unbedingt erforderlich ist.
          Das ganze sieht dann so aus.

          <?
          $a="a";
          $b="b";
          if($benutzer == $a) {
          echo "richtig ";
          if($benutzer == $b) {
          echo"richtig1 ";
          }
          } else {

          if($benutzer == $b) {
          echo"richtig1 ";
          }
          else
          {if ($benutzer!= $a or $b)
          echo"falsch";
          }

          }
          ?>

          Kommentar

          Lädt...
          X