str_replace klappt nicht

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

  • str_replace klappt nicht

    Hallo,

    ich versuche gerade, dass die Buchstaben eines eingegbenen Wortes durch bestimmte Zahlen ersetzt und ausgegeben werden. Das klappt leider nicht und ich finde den Fehler nicht. Habe schon nach ähnlichen Einträgen gesucht, aber es funzt immer noch nicht.

    Ich erhalte keine Fehlermeldung von PHP. Ausgegeben wird einfach nur das Wort, das man eingetippt hat. Das heißt, die Buchstaben werden nicht umgewandelt.

    Kann mir da einer weiterhelfen?

    PHP-Code:
    <? 
    error_reporting(E_ALL);
    if (isset($_POST['berechnen'])) {

    $name = $_POST["name"];

    $buchstaben = Array(
    "A","B","C","D","E","F","G","H","I",
    "J","K","L","M","N","O","P","Q","R",
    "S","T","U","V","W","X","Y","Z");

    $zahlen = Array(
    "1","2","3","4","5","6","7","8","9",
    "1","2","3","4","5","6","7","8","9",
    "1","2","3","4","5","6","7","8");

    $ergebnis = str_replace($buchstaben, $zahlen, $name);
    echo $ergebnis;
    }
    ?>
    <form action="<? $_SERVER['PHP_SELF'] ?>" method="post">
        <input name="name" type="text" 
    style="font-family: Verdana; font-size: 12px; text-transform: uppercase;"> 
        
        <input type="submit" name="berechnen" value="berechnen">
    </form>

  • #2
    str_replace unterscheidet zwischen Groß- und Kleinschreibung. Möglicherweise ist das ja das Problem.

    Grüße
    Nieder mit der Camel Case-Konvention

    Kommentar


    • #3
      Haste mal nen Beispielstring?

      Kommentar


      • #4
        Die groß und kleinschreibung ist die Ursache - vielen Dank für die schnelle Antwort!

        Kommentar


        • #5
          Solltest du mit PHP >= 5 arbeiten, könnte str_ireplace interessant für dich sein.
          Nieder mit der Camel Case-Konvention

          Kommentar


          • #6
            @Griecherus: Super-Tipp

            Da ich nun vom Ergebnis die Quersumme berechnen will, so dass am Ende nur noch eine Zahl übrig ist, hier gleich meine nächste Frage:

            Die Berechnung für die Quersumme an sich habe ich schon
            PHP-Code:
            function quersumme($ergebnis)
            {
              
            settype($ergebnis"string");
              
            $res 0;
              for(
            $i=0$i<strlen($ergebnis); $i++)
              {
                
            $res $res $ergebnis[$i];
              }
              return 
            $res;
            }

            echo 
            quersumme($ergebnis); 
            Nehmen wir mal den Fall, dass eine zweistellige Quersumme berechnet wird, wie kann ich es dann machen, dass auch dieses Ergebnis nochmal runtergerechnet wird, so dass am Ende wirklich nur noch eine Ziffer übrigbleibt?

            Kommentar


            • #7
              rekursiv!

              Kommentar


              • #8
                oki, danke - funzt schon

                Kommentar

                Lädt...
                X