<? include ?> Code-Schnippsel in eine PHP-Datei einfügen

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

  • <? include ?> Code-Schnippsel in eine PHP-Datei einfügen

    Hallo,
    Und zwar möchte ich die Banner eines Bannerrotators in verschiedene Php-Scripte einbinden.
    Dafür muss ich
    PHP-Code:
    <? include ("beispiel.php"); ?>
    in verschiedene HTML- und PHP-Dokumente einfügen.

    In den HTML-Dateien funktioniert dies perfekt, nicht aber in den PHP-Dateien.
    Ist dies schlichtweg nicht möglich? Oder nur an bestimmten Stellen innerhalb einer PHP-Datei?

    Ich habe einen Bannerrotator, in welchem ein Java-Script statt des
    PHP-Code:
    <? include ("beispiel.php"); ?>
    -Befehls die rotierenden Banner aufgerufen hat.
    Das hat funktioniert. Der Bannerrotator selber hat mir aber nicht gefallen.

    Ich fände es sehr gut, wenn ihr mir helfen könntet.

    Ich gehe davon aus, das für diese Fragestellung keine weiteren Informationen zu der PHP-Version oder den von mir verwendeten Scripten nötig ist. Wenn doch, hole ich das natürlich nach.

    Schonmal danke im Vorraus.

  • #2
    was heisst funktioniert nicht? Fehlermeldung?

    Kommentar


    • #3
      Ja. Folgende beim Kalender:

      Warning: include(http://localhost/xampp/banner/adcontrol.php) [function.include]: failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required in /opt/lampp/htdocs/xampp/eventkalender/calendar/calendar.php on line 2
      Warning: include() [function.include]: Failed opening 'http://localhost/xampp/banner/adcontrol.php' for inclusion (include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/xampp/eventkalender/calendar/calendar.php on line 2

      Folgende bei den Anzeigen:
      Warning: include(http://localhost/xampp/banner/adcontrol.php) [function.include]: failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required in /opt/lampp/htdocs/xampp/artmedic_kleinanzeigen3/artmedic_kleinanzeigen3/index.php on line 2

      Warning: include() [function.include]: Failed opening 'http://localhost/xampp/banner/adcontrol.php' for inclusion (include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/xampp/artmedic_kleinanzeigen3/artmedic_kleinanzeigen3/index.php on line 2

      Und dieselbe Fehlermeldung auch bei den anderen Scripten.
      Das heisst für mich als Laien, die Skripte wollen nicht, das ein anderes
      integriert wird?

      *rotwerd*

      Kommentar


      • #4
        Warum includest du über HTTP, und nicht über's lokale Dateisystem des Servers?
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Ja, Super, das funktioniert.
          (Merkwürdigerweise nicht bei dem Veranstaltungskalender.
          Der spuckt dann einen MySql-Datenbank-Fehler aus).
          Bei allen anderen Scripten schon.

          Warum funktioniert http:// nicht?

          Kommentar


          • #6
            Original geschrieben von artuses
            HTTP request failed! HTTP/1.1 401 Authorization Required

            Warum funktioniert http:// nicht?
            sieht so aus, dass der ordner per .htaccess geschützt ist.
            http://de.selfhtml.org/servercgi/ser...tatuscodes.htm

            Kommentar


            • #7
              Original geschrieben von artuses
              Warum funktioniert http:// nicht?
              Deswegen:
              HTTP request failed! HTTP/1.1 401 Authorization Required


              Ist dir überhaupt der Unterschied zwischen einem include von .php-Dateien über HTTP und über's Dateisystem klar?

              Bei ersterem bekämst du lediglich die Ausgabe eines bereits geparsten Scriptes zu sehen, bei letzterem hingegen würde der PHP-Code in das andere Script "übernommen" und in dessen Kontext ausgeführt.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Ist dir überhaupt der Unterschied zwischen einem include von .php-Dateien über HTTP und über's Dateisystem klar?
                Nein, ich erfahre hier gerade zum Ersten mal davon...

                Kommentar


                • #9
                  Ich habe mein Problem gelöst. Ich möchte mich gerne an dieser Stelle bedanken, weil ich durch euch erst die Lösung finden konnte. Zum einen habe ich etwas über "includen" gelernt, zum anderen aber, das es von dem Bannerrotator-Script auch völlig unabhängig ist, auf welche Weise ich die .php Datei mit den rotierenden Bannern einbaue. Es funktionieren ja alle drei Möglichkeiten:
                  -- <? include ?>
                  -- per Java-Script oder
                  -- als iframe.

                  Ich habe mich gegen das "includen" über das Dateisystem des Servers entschieden, weil ich in kostenlos vergebenen Foren Werbung einblenden möchte.
                  Bei mir hat das Einbinden des Rotators über das Dateisystem nur dadurch funktioniert, das ich die Dateien des Rotators in das selbe Verzeichnis kopiert habe, in dem sich auch das jeweilige Script befand. Das hiesse, ich müsste ja in jedem vergebenem Forum einen neuen Banner einbinden.
                  Über das includen per Java-Script oder iframe brauche ich ja nur ein Verzeichnis des Rotators auf das die Links in den Foren verweisen. Dadurch erscheint ein neuer Banner automatisch in allen Foren.

                  Da Java-Script ja von vielen Leuten deaktiviert ist, habe ich mich für die iframe-Lösung entschieden.

                  Das Ding habe ich zusammengebastelt:




                  <center><small>Werbebanner:</small><br><iframe src="http://localhost/xampp/banner/showbanner.php" width="370px" height="66px" scrolling="no" border="0px"></iframe><br><small>(Nur alternative Werbung. <a
                  href="http://localhost/xampp/Joomla_1.0.11-Stable-Full_Package/index.php?option=com_content&amp;task=view&amp;id=43&amp;Itemid=112" target="_blank">Interesse?</a>)</small></center>

                  Kommentar


                  • #10
                    Original geschrieben von wahsaga
                    Deswegen:

                    Ist dir überhaupt der Unterschied zwischen einem include von .php-Dateien über HTTP und über's Dateisystem klar?

                    Bei ersterem bekämst du lediglich die Ausgabe eines bereits geparsten Scriptes zu sehen, bei letzterem hingegen würde der PHP-Code in das andere Script "übernommen" und in dessen Kontext ausgeführt.
                    Dazu würde ich persönlich gerne mehr wissen, da ich immer wieder über diese Meldung stolpere. Irgendwie kann ich es dann immer lösen, aber auf diese Zufallserfolge möchte ich verzichten. Wie sieht lokal anbinden konkret aus.

                    Beispiel meiner Fehlermeldung: Warning: include() [function.include]: Failed opening '../../template.php?main=kontakt' for inclusion (include_path='.;C:\Programme\xampp\php\pear\') in C:\Programme\xampp\htdocs\test\content\kontakt\sendmail.php on line 52

                    Kommentar


                    • #11
                      Original geschrieben von pixel
                      Dazu würde ich persönlich gerne mehr wissen, da ich immer wieder über diese Meldung stolpere. Irgendwie kann ich es dann immer lösen, aber auf diese Zufallserfolge möchte ich verzichten. Wie sieht lokal anbinden konkret aus.
                      Lokal Einbinden sieht so aus, dass du den lokalen Pfad und Dateinamen angibst.
                      Auf den Pfad kann ggf. verzichtet werden, wenn die Datei innerhalb des definierten include_path liegt, der PHP sagt, dass es dort auf jeden Fall auch suchen soll.
                      Beispiel meiner Fehlermeldung: Warning: include() [function.include]:
                      Failed opening '[color=red]../../template.php?main=kontakt[/color]' for inclusion (include_path='.;C:\Programme\xampp\php\pear\') in ...
                      Das ist eben kein lokaler Dateiname - du speicherst doch Scripte nicht wirklich unter dem Namen '../../template.php?main=kontakt' ab.
                      (Dürfte unter gängigen Dateisystemen schon rein technisch gar nicht gehen, weil es mindestens ein unerlaubtes Sonderzeichen enthält.)
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar


                      • #12
                        Original geschrieben von wahsaga
                        Das ist eben kein lokaler Dateiname - du speicherst doch Scripte nicht wirklich unter dem Namen '../../template.php?main=kontakt' ab.
                        Danke - Also lautet er nur '../../template.php', funktioniert. Jetzt bin ich zwar wieder auf der Startseite, obwohl ich zum Bereich Kontakt zurück wollte, aber das werde ich auch noch lösen.

                        Kommentar


                        • #13
                          http://tut.php-q.net/frames.html
                          lies und lerne...

                          Kommentar

                          Lädt...
                          X