str_replace funzt net !

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

  • str_replace funzt net !

    Hi,

    ich hab ein problem mit str_replace, und zwar möchte ich eine html-datei einlesen (Template) und halt mit str_replace die platzhalter ersetzten. Funzt aber net, die datei wird unverändert dargestellt

    Hier mal der Code, so wie ich es halt machen würde, der aber net geht:

    PHP-Code:

    function ParseHyper($tpl)
    {

    global 
    $title;

    $tpl str_replace("{TITLE}","$title",$tpl);

    return 
    stripslashes($tpl);
    }

    $titel="Titel der Seite";

    $tpl=readfile("main.html");

    ParseHyper($tpl); 
    html-datei :

    Code:
    <html>
    <head>
    <title>{TITLE}</title>
    </head>
    <body>
    bla bla bla....bla 
    bla bla
    </body>
    </html>

    liegt das an der art und weise, wie ich die seite einlese oder was ??? ich habs schon mit include, file, fopen etc. probiert, alles erfolglos.
    -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

  • #2
    quote die { } jeweils:

    \{text\}

    in strings sind die klammern bei php u.a. trennungsoperatoren.

    Kommentar


    • #3
      danke für deine antwort, aber das funzt leider auch net, der platzhalter steht nach wie vor unverändert in der datei
      -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

      Kommentar


      • #4
        und du hast das wirklich so gemacht?
        probier mal, ob das funzt:

        $tpl = ereg_replace("\{TITLE\}","$title",$tpl);

        *ist nur zum testen, weil's zu lahm sonst ist!*

        Kommentar


        • #5
          Nein, geht nicht, ereg_replace funzt auch net...

          ich denke, das es am einlesen der datei liegt, denn wenn ich die funktion z.B. so aufrufe

          parseHyper(Dies ist ein Teststring mit dem Titel {TITLE}}

          ...dann gehts
          -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

          Kommentar


          • #6
            paste mal die ausgabe von $tpl hier rein *verwundertguck*

            Kommentar


            • #7
              Also, es wird einfach die HTML-Datei ausgegeben, aber ohne das die Platzhalter ersetzt worden sind :

              Code:
              <html>
              <head>
              <title> {TITLE} </title>
              <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
              </head>
              
              <body>
              
              </body>
              </html>
              Ich bin kurz vorm verzweifeln
              -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

              Kommentar


              • #8
                AAAAARGGGGHHH!!!!

                schonmal geguckt?

                global $title;

                und später:

                $titel = "Titel der Seite";



                Kommentar


                • #9
                  ne, den fehler hatte ich auch schon entdeckt, aber daran lag es net (

                  also, ich habs mittlerweile so vorliegen, funzt aber net :

                  PHP-Code:

                  function ParseHyper($tpl)
                  {

                  global 
                  $title;

                  $tpl ereg_replace("\{TITLE\}","$title",$tpl);

                  return 
                  stripslashes($tpl);
                  }

                  $title="TESTSEITE";

                  $template=include("main.html");

                  ParseHyper($template); 

                  also, das ist doch schon fast vorschriftsmässig *g*... oder ich bin irgenwie blind
                  -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

                  Kommentar


                  • #10
                    Abgesehen davon, dass Du Dich wie schon beebob bemerkt hat beim Titel und Title vergurkt hast, wird das nix, so wie Du es vor hast. Der Gedanke is gut, aber leider ...

                    readfile() gibt direkt an den Standardoutput aus - sorry Du bekommst den Inhalt so leider nicht in die Variable.

                    Kommentar


                    • #11
                      ich geh jetzt erstmal in den stall und lass mich von fury treten. bin so gegen 21.00 uhr wieder da ...

                      Kommentar


                      • #12
                        hmm, könntest du mir dann evtl mal auf die sprünge helfen, wie würde das denn sonst funzen ???
                        -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

                        Kommentar


                        • #13
                          wie gesagt, ich muss mich erstmal treten lassen. bin um 21.00 uhr wieder da. vielleicht kriegt's bis dahin jemand anders auf die kette ...

                          beebob

                          Kommentar


                          • #14
                            @ hand

                            ok, readilfe funz net, aber ich habs ja auch mit include, fopen usw. probiert, oder geben die etwa alle nur an den standartoutput aus ??? wie bekomm ich denn sonst den inhalt einer datei in eine variable ?
                            -=Es gibt Leute, die können Ihren Stammbaum bis zu denen zurückverfolgen, die noch darauf saßen=-

                            Kommentar


                            • #15
                              Original geschrieben von hand
                              Abgesehen davon, dass Du Dich wie schon beebob bemerkt hat beim Titel und Title vergurkt hast, wird das nix, so wie Du es vor hast. Der Gedanke is gut, aber leider ...

                              readfile() gibt direkt an den Standardoutput aus - sorry Du bekommst den Inhalt so leider nicht in die Variable.

                              jau, wer lesen kann, ist klar im vorteil.
                              include gibt natürlich nicht den stream zurück. readfile() hilft da bestimmt nicht

                              dann brauch ich mich wenigstens auch nicht von fury treten zu lassen ...
                              Zuletzt geändert von beebob; 19.08.2002, 16:58.

                              Kommentar

                              Lädt...
                              X