str_replace ersetzt nicht mehr?!

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

  • str_replace ersetzt nicht mehr?!

    Hallo!

    Vielleicht hat hierzu jemand einen Rat, wäre echt dankbar dafür!

    Auszug aus der index.php
    PHP-Code:
    $output str_replace('index.php?l=de','index.html',$output);
    echo 
    $output
    Im entsprechenden Smarty-Template steht:
    PHP-Code:
    <li><{if ($start)}class="current" {/if}href="index.php?l=de">Startseite</a></li
    Allerdings wenn ich nun auf die Seite gehe, wurde die URL NICHT ersetzt.

    Habe bisher keine Probleme damit gehabt, nun bei der neuen Seite allerdings will es einfach nicht ersetzt werden.

    Vielleicht hat jemand Tipps, an was so etwas liegen könnte.

    Danke!

    Gruß DD

    P.S. die .htaccess ist einwandfrei über index.html kann ich die Seite auch aufrufen, nur im PHP wird sie NICHT ersetzt.
    Zuletzt geändert von _DD_; 05.09.2006, 00:31.

  • #2
    nachgeschaut ob das "?" anderst abgespeichert wurde?

    versuch doch mal nur index.php zu ersetzen.
    Mafia Browsergame - Scripts

    Wer glaubt, ein Christ zu sein, weil er die Kirche besucht, irrt sich. Man wird ja auch kein Auto, wenn man in eine Garage geht.
    Albert Schweitzer (14.01.1875 - 04.08.1965)

    Kommentar


    • #3
      Original geschrieben von garyx7de
      nachgeschaut ob das "?" anderst abgespeichert wurde?

      versuch doch mal nur index.php zu ersetzen.
      ja, hatte ich auch bereits versucht, geht allerdings auch nicht!

      Sonstige Einfälle?

      Gruß DD

      Kommentar


      • #4
        Hi,

        was beinhaltet $output vor der str_replace ?

        Grüße,
        gen

        Kommentar


        • #5
          Variante 1: echo 'nach Ersetzung:' . htmlspecialchars($output) . $output;

          dh testoutput . smarty ignoriert nicht etwa dein $output?

          Variante 2: (unsicher) smarty hat doch ein Cache, vll ist eine alte Version ohne den link drin.

          Kommentar


          • #6
            Original geschrieben von gen
            Hi,

            was beinhaltet $output vor der str_replace ?

            Grüße,
            gen
            nichts, kommt da erstmals zum Einsatz.

            Original geschrieben von sternm
            Variante 1: echo 'nach Ersetzung:' . htmlspecialchars($output) . $output;

            dh testoutput . smarty ignoriert nicht etwa dein $output?

            Variante 2: (unsicher) smarty hat doch ein Cache, vll ist eine alte Version ohne den link drin.
            Variante 1: gibt mir nichts aus außer "nach Ersetzung:"
            Veriante2: ohne Erfolg

            Sonstige Vorschläge?

            Ich versteh es einfach nicht...

            Gruß DD

            Kommentar


            • #7
              nichts, kommt da erstmals zum Einsatz.
              *lol* und wie kommst du auf die Idee, dass wenn man irgendwas in nichts ersetzt aus dem nichts auf einmal ein String wird?

              hast du das error_reporting auf e_all?

              Kommentar


              • #8
                Original geschrieben von TobiaZ
                *lol* und wie kommst du auf die Idee, dass wenn man irgendwas in nichts ersetzt aus dem nichts auf einmal ein String wird?

                hast du das error_reporting auf e_all?
                ja, also, vielleicht bisl falsch ausgedrückt. $output ist immer das template.

                ich bekomme keinen error.

                Gruß DD

                Kommentar


                • #9
                  Hi,

                  probier es mal mit ereg() aus ob er die Zeichenkette findet.
                  PHP-Code:
                  if (ereg('index.php?l=de'$output)) {
                  echo 
                  "'index.php?l=de' gefunden";

                  Grüße,
                  gen

                  Kommentar


                  • #10
                    Original geschrieben von gen
                    Hi,

                    probier es mal mit ereg() aus ob er die Zeichenkette findet.
                    PHP-Code:
                    if (ereg('index.php?l=de'$output)) {
                    echo 
                    "'index.php?l=de' gefunden";

                    Grüße,
                    gen
                    Ja, wird sie. Wird immer seltsamer...

                    Gruß DD

                    Kommentar


                    • #11
                      Hi,

                      um Cache oder nachhaltiges rücksetzen der Variable auszuschließen.
                      Was kommt raus bei:
                      PHP-Code:
                      echo str_replace('index.php?l=de','index.html',$output); 
                      Grüße,
                      gen

                      Kommentar


                      • #12
                        Original geschrieben von _DD_
                        $output ist immer das template.
                        Das stimmt eben nicht. Du meinst, es sollte so sein - ob der Wunsch wahr wird?

                        Schaust mal in deinem .php, wie das template in $output kommen sollte, und berichtest.

                        Gruss

                        Kommentar


                        • #13
                          Original geschrieben von sternm
                          Das stimmt eben nicht. Du meinst, es sollte so sein - ob der Wunsch wahr wird?

                          Schaust mal in deinem .php, wie das template in $output kommen sollte, und berichtest.

                          Gruss
                          Ja, es ist so, seltsamerweise habe ich das Problem nun gelöst und wie? Habs auf meinen Webserver hochgeladen und da läuft es ohne Probleme. Seltsam? Ohja...ist der selbe Apache/PHP

                          Danke aber für eure Bemühungen.

                          Gruß DD

                          Kommentar

                          Lädt...
                          X