tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Dr Dau
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
404
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    fredolin fredolin ist offline Mitglied Gold
    Registriert seit
    Mar 2007
    Beiträge
    151
    Hallo Tutorialsgemeinde,

    ich entschuldige mich schon mal vorab, wenn eventuell es hier schon sehr oft danachgefragt wurden ist. Auch habe ich hier und über Google.de für mich keine befriedigte Searching-Ergebnisse gefunden.

    So nun hier mein Problem:

    Auf Webserver a läuft eine Webseite. Webserver a versteht nur PHP kein MySQL
    Auf Webserver b laufen PHP ud MySQL.

    Webserver A hat aber die URL, die auch aufgerufen wird.

    So nun möchte ich Inhalte von der Webseite, die auf Webserver a liegen in Datenbanken packen (Gästebuch,Login,Blog etc)

    Laut php.net http://de.php.net/manual/de/function.include.php
    sollte das auch so funktionieren wie ich es mir vorstelle.
    Aber leider tut es die nicht.

    Fehlermeldung: (ist momentan mein localer Webserver, der auf xampp läuft)
    PHP-Code:
    Warning: include() [function.include]: http:// wrapper is disabled in the server configuration by allow_url_include=0 in F:\webserver\htdocs\[B]www.webservera.local[/B]\index.php on line 7 
    Wie binde ich die Datei ein:
    PHP-Code:
    include 'http://[B]webserver_b[/B]/ordner1/ordner2/ordner3/irgendeinephpdatei.php'
    Ich möchte dann auf Webserver A, der ja PHP versteht dann in den PHP-Dateien dann nur die DB insert, updagte, delete etc funktionen ausführen lassen.

    Kann mir da jemand helfen?

    Freue mich auf Antworten und Danke vorab.

    Gruß
    Fredolin
     

  2. #2
    Avatar von Flex
    Flex Flex ist offline (aka Felix Jacobi)
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    5.295
    Blog-Einträge
    65
    Solange dir klar ist, dass das unglaublich unperformant ist, du doppelten Traffic erzeugst und durch das Erlauben von allow_url_include mögliche Sicherheitslücken in dein Skript reißt, okay...

    Obige Ini Einstellung erlauben, z. B. durch das Ändern der .ini oder durch eine .htaccess - siehe Wie man Konfigurationseinstellungen ändert

    Warum du nicht einfach den Hosting Vertrag kündigst, wechselst oder aktualisierst, ist mir allerdings fremd... Oder sogar nur die Domain wechselst.
     
    KIDS Kinderbetreuungsdienst
    Xing

    "When you play the game of thrones, you win or you die. There is no middle ground."
    by Cersei Lannister in "A Game Of Thrones"

  3. #3
    fredolin fredolin ist offline Mitglied Gold
    Registriert seit
    Mar 2007
    Beiträge
    151
    Hallo Felix,

    warum ich nicht wechsel, liegt daran, das es nicht meine Domain ist. Der Kunde hat diese Domain kostenlos bei seinen Provider und möchte dies da auch nutzen. Klar habe ich Ihn darauf hingewiesen, das er bei seinem Provider doch ne upgrad machen solle, doch dann kostet es geld und das möchte er nicht.

    Somit muss ich nun eine art alternativ finden, wo ich seinen Webspace benutze und dennoch mit MYSQL arbeiten kann.

    Hab auch nun schon probiert, in meiner Datei, die zum verbindungsaufbau der Datenbanken benutze, dort die URL anzugeben und alle erforderlichen Parameter.

    Fehlermeldung:
    PHP-Code:
    Warningmysql_connect() [function.mysql-connect]: Unknown MySQL server host 'http' (11001in 
     

  4. #4
    Avatar von Flex
    Flex Flex ist offline (aka Felix Jacobi)
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    5.295
    Blog-Einträge
    65
    Ohne http!

    Nur: "www.domain.de"

    Bist du denn wirklich auf die Datenbank angewiesen? Eventuell alles über SQLite?
     
    KIDS Kinderbetreuungsdienst
    Xing

    "When you play the game of thrones, you win or you die. There is no middle ground."
    by Cersei Lannister in "A Game Of Thrones"

  5. #5
    fredolin fredolin ist offline Mitglied Gold
    Registriert seit
    Mar 2007
    Beiträge
    151
    Ich habe da schon alles ausprobiert.

    Aber wie ist das mit fopen. Da ich mich damit nicht so auskenne, wäre es eine Möglichleit, per fopen irgendwie die Datei mit den Datenbankverbindungs-Script in das Web zu includieren bzw. so zu öffnen?

    Wenn ich im Script für die HErstellung zu MYSQL das so aufschreibe
    PHP-Code:
    $dom $_SERVER['http://mywebs.square7.de']; // URL ist auch ohne www

    define ("DBNAME","test");
    define ("DBSERVER",$dom);
    define ("DBUSER","testuser");
    define ("DBPASSWD","deinpasswd");

    // Datenbank öffnen
    function opendb()
    {
      
    $dbhandle=mysql_connect(DBSERVER,DBUSER,DBPASSWD);
      if(!
    $dbhandle)
        {
          echo 
    "Could not connect to dataserver(1)";
          return (-
    1);
        }

      
    $result=mysql_select_db(DBNAME$dbhandle);
      if(!
    $result)
        {
          echo 
    "Could not connect to database(2)";
          return(-
    1);
        }
      return (
    $dbhandle);

    bekomme ich nun folgende Fehlermeldung:
    PHP-Code:
    Warningmysql_connect() [function.mysql-connect]: Access denied for user 'testuser'@'localhost' (using passwordYES
    Mmmhh liegt irgendwie am Passwort? bzw. doch an der Variable $dom?
     

  6. #6
    Avatar von Flex
    Flex Flex ist offline (aka Felix Jacobi)
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    5.295
    Blog-Einträge
    65
    An der Variable $dom. Die $_SERVER Variable hat da nix zu suchen.

    Versuch es mal so:

    PHP-Code:
    define ("DBNAME","test");
    define ("DBSERVER","mywebs.square7.de");
    define ("DBUSER","testuser");
    define ("DBPASSWD","deinpasswd"); 
    Also komplett ohne $dom

    Per fopen() emulierst du mit HTTP einen HTTP Request, d. h. du kommst nur an die Daten, die das Skript auch ausgibt... Natürlich könntest du hier die Daten serialisiert (serialize()) ausgeben und dann verarbeiten, aber obige Lösung ist eleganter.
     
    KIDS Kinderbetreuungsdienst
    Xing

    "When you play the game of thrones, you win or you die. There is no middle ground."
    by Cersei Lannister in "A Game Of Thrones"

  7. #7
    fredolin fredolin ist offline Mitglied Gold
    Registriert seit
    Mar 2007
    Beiträge
    151
    so habe ich es probiert, ohne das $dom, doch da bekomme ich dann folgende Fehlermeldung:
    PHP-Code:
    Warningmysql_connect() [function.mysql-connect]: Unknown MySQL server host 'http' (11001
    Auch in Google finde ich dafür keine verständliche Hilfe.
     

  8. #8
    Avatar von Dr Dau
    Dr Dau Dr Dau ist offline ich wisch hier durch
    Registriert seit
    Feb 2005
    Ort
    hinterm Mond gleich Links
    Beiträge
    6.160
    Blog-Einträge
    4
    Hallo!

    Zitat Zitat von fredolin Beitrag anzeigen
    so habe ich es probiert, ohne das $dom, doch da bekomme ich dann folgende Fehlermeldung:
    PHP-Code:
    Warningmysql_connect() [function.mysql-connect]: Unknown MySQL server host 'http' (11001
    Auch in Google finde ich dafür keine verständliche Hilfe.
    Das Protokoll (http://) darf halt nicht beim Hostnamen stehen.
    Statt dessen ist die Portnumer anzugeben, falls MySQL nicht auf dem Standardport (3306) läuft.
    Da bei Dir Apache bereits auf Port 80 (Standardport für http) läuft, bezweifel ich doch sehr dass MySQL auf dem gleichen Port läuft.
    Daher sollte als Hostname "mywebs.square7.de:3306" bzw. "mywebs.square7.de" ausreichen (allerdings kenne ich Deine Serverkonfiguration nicht ).

    Gruss Dr Dau

    [edit]
    Blöde Frage.....
    Aber hast Du schon versucht die Verbindung zur Datenbank von Server A aus vorzunehmen?
    Vielleicht hast Du ja Glück und Server B lässt für die Datenbank externe Zugriffe zu.
    [/edit]
    Geändert von Dr Dau (13.12.10 um 16:07 Uhr)
    Flex bedankt sich. 
    Schri-Schra-Schrödi *g*
    mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
    Dinge, die mit Tabellen besser klappen als mit CSS
    Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
    Meine Links zum Thema Linux (Last update: 29.10.2011)
    Kein Busen ist so flach wie das Niveau dieser Party!
    ----
    Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
    ----
    Ich habe 3 Kinder und kein Geld!
    Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 25.05.10, 14:33
  2. include("http:// ...
    Von Raven280438 im Forum PHP
    Antworten: 8
    Letzter Beitrag: 04.02.08, 17:15
  3. Include & Post Daten von include Seiten
    Von Horrortubby im Forum PHP
    Antworten: 2
    Letzter Beitrag: 29.09.07, 17:04
  4. http://test.de/Bla statt http://test.de/index.php?text=Bla
    Von Spranta im Forum Hosting & Webserver
    Antworten: 10
    Letzter Beitrag: 31.07.06, 21:22
  5. Http-get Http-post
    Von Movera im Forum PHP
    Antworten: 2
    Letzter Beitrag: 04.07.06, 17:56

Stichworte