Newbie möchte If-Schleife machen...

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Newbie möchte If-Schleife machen...

    Hallo.
    Ich möchte innerhalb eines komplexen Bildarchivs was mit PHP aufgebaut ist ein eigenes PHP-Script einbauen und zwar soll auf eine Seite ein Link.

    Auf dieser Seite sind variable von Dateinamen {image_file_name} enthalten die auch abgefragt werden können. Meine Dateinamen fangen (die ersten zwei Buchstaben) in bestimmten Codes an und je nach Anfang möchte ich auf eine andere Seite verlinken! {image_file_name} soll abgefragt werden und wenn (z.B.) der Name "jw_" am Anfang enthält, soll auf eine bestimmt Seite xyz.php geleitet werden, oder eben bei Name "ah_" auf die Seite abc.php

    Ich habe leider zu wenig Erfahrung um diese Abfrage zu machen, auch wenn Sie mir relativ einfach erscheint. Was ist z.B. der "Operator" für "Dateiname enthält"...

    Gruß,
    Mahony

  • #2
    Re: Newbie möchte If-Schleife machen...

    schau dir im manual die stringfunktionen an, z.b. substr oder substring helfen dir, nur die ersten paar zeichen einen strings zu betrachten.


    btw: es gibt keine if-schleife ;-)
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Comment


    • #3
      Ja Wasaga, da habe ich mich wohl gleich geoutet... Ich habe mal etwas nach Substring gesucht und habe mir (ich habe wirklich wenig Ahnung) was gebastelt was mir irgendwie logisch erscheint. Ist die Richtung richtig?


      <?php

      if ({image_file_name} = substr ("jw_*", 0, 2)) {
      $URL1 = abc.php;
      } elseif ({image_file_name} = substr ("ah_*", 0, 2)) {
      $URL2 = def.php;
      } else ({image_file_name} = substr ("mh_*", 0, 2)) {
      $URL3 = ghi.php;
      }

      ?>

      Comment


      • #4
        Original geschrieben von Mahony

        <?php

        if ({image_file_name} = substr ("jw_*", 0, 2)) {
        $URL1 = abc.php;
        } elseif ({image_file_name} = substr ("ah_*", 0, 2)) {
        $URL2 = def.php;
        } else ({image_file_name} = substr ("mh_*", 0, 2)) {
        $URL3 = ghi.php;
        }

        ?>
        Naja, fast richtig.

        PHP Code:

        if (substr($image_file_name,0,2) = "jw")  {
            
        $url "abc.php";
        }
        if (
        substr($image_file_name,0,2) = "ah")  {
            
        $url "def.php";
        }
        if (
        substr($image_file_name,0,2) = "mh")  {
            
        $url "ghi.php";

        Schöner gehts mit SWITCH
        PHP Code:
        switch (substr($image_filename,0,2)) {
            case 
        "jw":
                
        $url "abc.php";
                break;
            case 
        "ah":
                
        $url "def.php";
                break;
            case 
        "mh":
                
        $url "ghi.php";
                break;
            default:
                
        $url "abc.php"// Für den Fall das keine der drei Möglichkeiten zutrifft


        Richtig, oder habe ich deine Frage falsch verstanden?
        Ich denke, also bin ich.
        Manche sind trotzdem!

        Comment


        • #5
          Vielen Dank cst

          Das "sieht sehr gut aus" - probiere es später aus! Die URL muss ja auch gar nicht als Variable gesetzt werden, war ein Gedankenfehler. Ich denke so hatte ich mir das vorgestellt: jetzt muss es nur noch mit dem Einbau funktionieren.

          Danke nochmal. Ich sage nochmal bescheid obs geklappt hat.

          Comment


          • #6
            Ich bins nochmal. An anderer Stelle muss ich auch etwas ähnliches abfragen und da fällt mir auf das irgendwas nicht funktionert. Da mache ich folgendes:

            switch (substr($image_file_name,0,2)) {
            case "jw_":
            $formdat = "dat4";
            break;
            case "ah_":
            $formdat = "dat3";
            break;
            default:
            $formdat = "dat1";
            break;
            }


            Die Variable formdat führe ich dort ein und gebe sie später in einem formular-hidden-feld aus. PROBLEM: Selbst bei einem "jw_"-Filename wird immer nur default: "dat1" ausgegeben! Ist nur hier ein Fehler oder ist sogar das Script oben mit den Emails irgendwie fehlerhaft und ich merks nicht?

            Comment


            • #7
              könnte es sein das du ein zeichen zu wenig ausliest? also entweder vielleicht die _ nach ah und jw weglassen oder auf 3 erhöhen....

              Comment


              • #8
                Jaaaaaaa!

                gothmog, du hast mich für heute wieder glücklich gemacht! Ich verstehs zwar nicht, aber es klappt!!!!!!
                Ich dachte es würde mit 0 anfangen zu zählen, dann wär der Unterstrich 2.
                Aber gut, wahrscheinlich raffe ichs nur nicht.
                Vielen Dank!!!!!!

                Comment

                Working...
                X