Ankündigung

Einklappen
Keine Ankündigung bisher.

leerzeichen in variable...

Einklappen

Neue Werbung 2019

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

  • leerzeichen in variable...

    mhm.. ich möchte jetzt einen ordner auslesen mit:

    $dh = dir ("c:\www\sky\\$album");

    ^^ wenn jetzt aber in der var $album ein leerzeichen ist (neuer ordner), dann setzt er für die variable nur "neuer" ein.
    wenn der ordner aber "neuer_ordner" heisst, dann geht das.

    wie bekommt man das so hin, das es auch mit leerzeichen funktioniert?


  • #2
    Re: leerzeichen in variable...

    Zitat von Sclot
    $dh = dir ("c:\www\sky\\$album");

    ^^ wenn jetzt aber in der var $album ein leerzeichen ist (neuer ordner), dann setzt er für die variable nur "neuer" ein.
    wenn der ordner aber "neuer_ordner" heisst, dann geht das.
    Versuchs mal so (ungetestet):
    Code:
    $dh = dir ("\"c:/www/sky/$album\"");
    Windows möchte bei Pfaden mit Leerzeichen ja auch "" haben.

    Kommentar


    • #3
      naja.. es sollte ehh auf einem linux server laufen.. und da gibts ja nicht wirklich leerzeichen wie unter windows...

      Kommentar


      • #4
        hi,

        ich habe dasselbe problem, aber ich hab es bis jetzt auch nicht geschafft, es per escaping zu lösen. ein script bekommt per post eine variable, die ebenfalls einen ordnernamen enthält, und soll dann alle bilder in diesem ordner auslesen, ist jetzt unwichtig, sieht verkürzt ungefähr so aus:

        Code:
        echo "[img].$_POST[ordner].[/img]";
        Gleiches Problem wie bei meinem Vorgänger, wenn der Ordner zB "neuer ordner" heisst, bekomme ich nur "neuer" als pfad...

        Kommentar


        • #5
          Leerzeichen werden immer mit %20 gehandelt. Also schreibt euch ne Funktion mit str_replace die nach Leerzeichen sucht und dann ersetzt

          Kommentar


          • #6
            nenn mich begriffstutzig, aber dem kann ich jetzt nicht ganz folgen...

            Kommentar


            • #7
              z.B.
              Code:
              <?php
              
              $blubb = "neuer Ordner";
              
              $blubb = preg_replace('/ /', "%20", $blubb);
              
              echo $blubb;
              
              ?>
              also dann für dein $_POST:
              Code:
              <?php
              
              $_POST['ordner'] = preg_replace('/ /', "%20", $_POST['ordner']);
              
              echo $_POST['ordner'];
              
              ?>
              müsste gehen

              Kommentar


              • #8
                tausend dank, ich teste das daheim sofort mal...

                Kommentar


                • #9
                  dank mir lieber erst, wenns geht sollte aber

                  Kommentar


                  • #10
                    Hi, Vielleicht hilft das weiter:
                    Code:
                    <?php
                    
                      //GET Parameter holen
                      $arr = parse_url( $PHP_SELF );
                      //ersetzen
                      foreach( $arr as $element )
                      {
                      //alle alphanumerischen Zeichen in hexadezimalen umwandeln und
                      //Leerzeichen in "+"
                      urlencode( $element );
                      //gegenteil
                      //urldecode( $QUERY_STRING );
                      }
                    ?>
                    MFG FlipKnoT

                    Kommentar

                    Lädt...
                    X