Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] PHP läuft über Umweg nicht mehr

Einklappen

Neue Werbung 2019

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

  • [Erledigt] PHP läuft über Umweg nicht mehr

    Hallo,
    ich habe mir einen kleinen Contentswitcher zusammen gebastelt. So dass ich eine HTML und eine CSS datei für das aussehen habe, und die dort verbauten links über bsp. "index.php?content=oeffnugszeiten" angesprochen werden. Dann habe ich natürlich einen Ordner wo alle die verschiedenen Inhalte drin sind.
    Die Dateien dort sind alle .html Dateien.

    Nun möchte ich auf einer dieser seiten ein Kontaktformular, welches allerdings über PHP läuft, einbinden. Diese einzelne Datei hat also statt .html, .php am Ende.

    *klappt trotzdem nicht

    Wenn jemand weiß woran es liegt, würde ich es gerne erfahren

    MfG
    klein

  • #2
    Sortry, diese Frage versteht kein Mensch. Was Du auf Basis dieser Faktenlage hier erwartest...

    Kommentar


    • #3
      also:
      ich habe eine Website, in die über PHP, je nach Anfrage, verschiedene Inhalte geladen werden.
      Diese Inhalte werden dort in ein contentfeld geladen. (Darum habe ich es contentswitcher genannt.) Diese verschiedenen Inhalte liegen alle in einem Archiv, und sind .html Dateien.

      Jetzt möchte ich ein Kontaktformular, welches über PHP läuft, auf so einer Inhaltsseite einbinden. In der Ausgabe sieht man allerdings teile des PHP codes.

      Kommentar


      • #4
        Zitat von klein Beitrag anzeigen
        Jetzt möchte ich ein Kontaktformular, welches über PHP läuft, auf so einer Inhaltsseite einbinden. In der Ausgabe sieht man allerdings teile des PHP codes.
        Niemand hier kann wissen, was du in deinem sogenannten contentswitcher treibst. Wenn du z.B. eine (html) einliest und ausgibst, dann erscheint diese (eventuell) richtig im Browser. Wenn du das gleiche mit einer .php machst, dann bekommst du den php-Quellcode angezeigt. Denn eine .php muß vom Server geparst werden!
        So, mehr gibt meine Glaskugel kurz vorm Wochenende nicht her.
        Sprich: etwas Code zum Wesen deines 'contentswitcher' würde eventuell weiterhelfen.

        Kommentar


        • #5
          so sieht er aus:
          PHP-Code:
              switch(@$_GET['content']) 
                  { 
                  default:                    
          $content 'sitedir/home/home.html';                    
                  
                  
          /* Home / Willkommen */
                  
          case 'home':                $content 'sitedir/home/home.html';                    break;        
                  case 
          'oeffnugszeiten':        $content 'sitedir/home/oeffnugszeiten.html';            break; 
                  case 
          'service':                $content 'sitedir/home/service.html';                    break; 
          und wenn ich nun in einer der Inhaltsseiten php code einfüge, wird dieser garnicht (oder verkehrt) ausgeführt. Zurzeit bekomme ich immer ein "Objekt nicht gefunden" zurück. Dabei stimmt der Pfad.

          Kommentar


          • #6
            Und wie sieht der Teil aus, wo du $content verwendest/ einbindest?

            Kommentar


            • #7
              Da habe ich include benutzt:
              PHP-Code:
              <div id="content">
                  <?php include "config/content.php"; echo file_get_contents($content);?>
                </div>

              Kommentar


              • #8
                ne, du hast include nicht verwendet um den content zu laden, sondern du hast file_get_contents benutzt.

                Kommentar


                • #9
                  gut dann file_get_contents. Löst das denn mein Problem?

                  Kommentar


                  • #10
                    Nun. file_get_contents liest die Datei im Original ein, nicht mehr aber auch nicht weniger. Include würde PHP-Code ausführen. Es ist aber ziemlich gefährlich, eine Datei *.html nennen. Denn so kann sie, wenn du sie nicht per htaccess schützt, jeder direkt aufrufen und würde beispielsweise darin enthaltene Datenbank-Passwörter sehen.

                    Kommentar


                    • #11
                      Hallo,
                      Du könntest sinnvoller Weise, alle Dateien zu .php machen, und via Include einbinden.

                      Dem Server stört nicht, ob er nun eine .html includet oder eine .php.
                      Auch deinem Script ist das dann relativ egal. Vorteil an den .php Dateien ist wie bereits gesagt wurde, PHP Quelltext ausgeführt wird. Zudem kann man keinen PHP Quelltext lesen, der irgendwo steht falls man die Dateien direkt aufruft.

                      Solltest du aber bei html bleiben wollen, ist das kein problem an sich.
                      Dein kontaktformular baust du halt in 2 Modulen. den Formularteil (html) welcher an den absende teil (php) sendet.

                      Nach erfolgreichem oder fehlgeschlagenen Senden leitet die php einfach zurück aufs formular. mit einer header location kannste dies so schnell lösen, das es normale Benutzer u.U. garnicht mitbekommen, das sie weitergeleitet wurden.

                      Grüße
                      --
                      Ich

                      Kommentar


                      • #12
                        habs hinbekommen,
                        vielen Dank für eure Hilfe

                        Kommentar

                        Lädt...
                        X