kostenloser Webspace werbefrei: lima-city


DB auf mehreren Servern

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    internetplattform

    internetplattform hat kostenlosen Webspace.

    guten tag

    ist es mit php möglich eine datenbank mittels odbs von einem server a auf dem server b anzusprechen?

    so spreche ich meine DB's im php zurzeit an.

    $_DSN = "dbname odbs";
    $_User = "odbs username";
    $_PW = " odbs passwort";
    $conn = odbc_connect($_DSN, $_User, $_PW) or die("Verbindung fehlgeschlagen");
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. thomasba

    Co-Admin Kostenloser Webspace von thomasba

    thomasba hat kostenlosen Webspace.

    Ich persönlich habe zwar noch nicht damit gearbeitet, aber laut der Manual-Seite soltle es so gehen:

    $conn = odbc_connect("DRIVER={MySQL ODBC 3.51 Driver};Server=localhost;Database=mysql", "shyam", "mypass");


    Das ganze steht unten in den Kommentaren, die kannst du dir ja mal Ansehen. Das Beispiel ist für eine MySQL-Datenbank, du hast ja leider nihct erwähnt, um was für einen Datenbank-Server es sich handelt …
  4. richtig... du brauchst nur den Server und den offenen Port... was allerdings sehr selten ist... ein offener SQL Port ins Internet... weils eben ein sicherheitsrisiko ohnesgleichen ist...normalerweise ist der port nur auf Localhost oder ins intranet offen, nie aber ins internet... weil man sowas idR über VPN realisiert...
  5. Autor dieses Themas

    internetplattform

    internetplattform hat kostenlosen Webspace.

    wie sehe ich, ob der odbc port offen ist oder nicht?
    den mein ziel ist es zb.
    die gallery auf einem server zu platzieren, wo eine gute gallerysoftware hat, der rest der homepage zb. hier oder auf einem anderen server.
    ich habe für meine gallery eine funktion entwickelt, wo user auf das bild klicken können und dann in einer db gespeichert wird, und in seinem profile angezeigt wird (favorittenbilder).
    aber dies geht nur, wenn eben ich die db vom server a auf dem server b ansprechen kann.
  6. thomasba

    Co-Admin Kostenloser Webspace von thomasba

    thomasba hat kostenlosen Webspace.

    Du kannst es einfach versuchen, indem du versuchst eine Verbindung zur Datenbank herzustellen, klappt das nicht ist der Server vermutlich nur Lokal zu erreichen.

    EIne andere Möglichkeit wäre nmap, da weiß ich aber nicht, ob du die Software kennst. Wenn du sie Nicht kennst einfach mit der anderen möglichkeit probieren ;)
  7. Autor dieses Themas

    internetplattform

    internetplattform hat kostenlosen Webspace.

    und wie müsste es aussehen der befehl
    so zb.?

    $_server = "166.66.66.66";
    $_DSN = "dbname odbs";
    $_User = "odbs username";
    $_PW = " odbs passwort";
    $conn = odbc_connect($_server,$_DSN, $_User, $_PW) or die("Verbindung fehlgeschlagen");

  8. internetplattform schrieb:
    und wie müsste es aussehen der befehl
    so zb.?

    $_server = "166.66.66.66";
    $_DSN = "dbname odbs";
    $_User = "odbs username";
    $_PW = " odbs passwort";
    $conn = odbc_connect($_server,$_DSN, $_User, $_PW) or die("Verbindung fehlgeschlagen");
    für jeden erreichbaren server sieht der befehl so aus:
    if ( !$c = @mysql_connect ("hostname", "username","password") ) {exit ("error: ".mysql_error ());}
    oder
    if ( !$c = @odbc_connect ("hostname", "username","password") ) {exit ("error: ".mysql_error ());}
    also nicht besonders aufregend oder unterschiedlich. hier ein beispiel, von einem kundenserver kannst auf lima zugreifen, oder wegen fehler eben nicht; aber nicht auf meinem privaten mysql server. (erlaubte werte für host sind "1", "2" oder "3". mehr ist nicht drin! die query heißr 'select variables()'.)
    warum bist du eigentlich so auf odbc angewiesen?

    Beitrag zuletzt geändert: 17.4.2010 19:00:13 von czibere
  9. Autor dieses Themas

    internetplattform

    internetplattform hat kostenlosen Webspace.

    in deinem beispiel beispiel schreibst du nur hostname,username,password. aber wie weiss er auf welchen server er gehen muss und dort welche db öffnen soll?

    meine vorschlag:
    $_server = "166.66.66.66";
    $_DSN = "dbname odbs";
    $_User = "odbs username";
    $_PW = " odbs passwort";
    $conn = odbc_connect($_server,$_DSN, $_User, $_PW) or die("Verbindung fehlgeschlagen");

    euer vorschlag:
    if ( !$c = @mysql_connect ("hostname", "username","password") ) {exit ("error: ".mysql_error ());}

    ihr schreib mysql_connect, aber ich odbc_connect.
    den es ist ein windows-db im hintergrund und keine mysql-db
  10. internetplattform schrieb: in deinem beispiel beispiel schreibst du nur hostname,username,password. aber wie weiss er auf welchen server er gehen muss und dort welche db öffnen soll?

    ...

    euer vorschlag:
    if ( !$c = @mysql_connect ("hostname", "username","password") ) {exit ("error: ".mysql_error ());}

    ihr schreib mysql_connect, aber ich odbc_connect.
    den es ist ein windows-db im hintergrund und keine mysql-db
    ok also ganz langsam:
    in dem fall (wie ich es auch vorhin geschrieben habe) kannst das nehmen:
    if ( !$c = odbc_connect ("hostname", "username","password") ) {exit ("error: ".odbc_errormsg ());}
    da stehen natürlich die ausdrücke "hostname", "username","password", weil ich ja nicht wissen kann wie die echt lauten. wenn das dein server ist, musst du ja es wissen!?
    ein beispiel: du hast zu hausee bei dir einen server stehen und da drauf rennt ein sql-server. dann würden die drei ausdrücke in etwa so lauten: hostname = "localhost", username = "Administrator"(für windows)/"root"(für UNIX/Linux) und das password = "..." ja das kann ich dir wirklich nicht sagen ;o)
    wo hast du denn den server überhaupt?
    ==== edit: oh ja! welche datenbank
    odbc_do  ($c, string "use database");


    Beitrag zuletzt geändert: 17.4.2010 19:01:44 von czibere
  11. Autor dieses Themas

    internetplattform

    internetplattform hat kostenlosen Webspace.

    jetzt habe ichs gesehen, aber
    hostname: servername
    usernaame: benutzer
    password: passwort
    aber wo steht, welche DB geöffnet werden muss?
  12. internetplattform schrieb:
    jetzt habe ichs gesehen, aber
    hostname: servername
    usernaame: benutzer
    password: passwort
    aber wo steht, welche DB geöffnet werden muss?

    du warst vor meier editierung dran. entschuldige ich habe darauf vergessen. jetzt steht in der vorigen posting. allerdings gibt es auch andere möglichkeiten, in dem du keine datenbank auswählen musst. der name muss dan immer in der query stehen z.b.:
    "select * from <db-name>.<table-name> ..."
    achte auf den punkt!

    Beitrag zuletzt geändert: 17.4.2010 17:55:17 von czibere
  13. Autor dieses Themas

    internetplattform

    internetplattform hat kostenlosen Webspace.

    schreibe ich dies so in meiner php

    $_DSN = "url-server";
    $_User = "dbuser";
    $_PW = "dbpass";
    $conn = odbc_connect($_DSN, $_User, $_PW) or die("Verbindung fehlgeschlagen");

    $SQL0 = "SELECT * FROM dbname.tabelle";
    $SQL0R = odbc_exec($conn, $SQL0);


    bekomme ich beim aufrufen der seite diese meldung: Fatal error: Call to undefined function odbc_connect()

  14. ... Fatal error: Call to undefined function odbc_connect() ...
    sehr einfach, dort wo dein script rennt, wird kein odbc unterstützt. sag mal. versuchst den script etva bei lima zum rennen zu bringen? wenn das so ist, probier's doch lieber mit
    if ( !$c = @mysql_connect ("hostname", "username","password") ) {exit ("error: ".mysql_error ());}
    es wird wunder bewirken ;o)
    und wenn der wo anders rennt ist sowieso schwer von hier aus hilfe zu leisten.
  15. Autor dieses Themas

    internetplattform

    internetplattform hat kostenlosen Webspace.

    aber mit mysql_connect kann man doch keine odbc ansprechen?
    also kann ich hier nicht die php seiten haben und meine odbc datenbank wo anders
  16. ... also kann ich hier nicht die php seiten haben und meine odbc datenbank wo anders
    doch. nur, wie ich vorhin schon gesagt habe, es schafft kaum jemand, ohne irgendetwas von der umgebung von 'wo anders' zu wissen. um hilfe leisten zu können sollte möglichst viel (eigentlich ohnehin alles) von deinem anderen server bekannt sein - sonst geht es nicht. wir sind alle keine 'programmatische' hellseher. man sollte eigentlich den server inspizieren können, bevor man irgend etwas sagt. das machen wir ja mit zahlenden kunden auch nicht anders ;o)

    Beitrag zuletzt geändert: 18.4.2010 8:40:45 von czibere
  17. Autor dieses Themas

    internetplattform

    internetplattform hat kostenlosen Webspace.

    also ein paar infos über den server, wo ich meine db's habe

    meine gallery würde ich zb. hier haben, die braucht keine db für sich selbst.
    aber ich habe sie weite(gallery)weiter entwickelt, damit neben dem bild auf den knopf gedrückt werden kann "favoritenbild" dieser knopf soll eben in die db schreiben, welche auf einem anderen server ist den die db ist eim ms-access db, somit odbc ansprechbar.
    oder gibt es eine andere möglichkeit die ms-access anzusprechen ohne odbc, wenn ja, würde ich auch dies machen und die db dann auf dem gleichen server haben?

    server info "db":
    system: win srv 2003
    php 5.0
    odbc ms-access treiber 4.0
  18. Lima bietet weder odbc_ noch den PDO_ODBC Driver an.

    Allgemein, ein gut gemeinter Rat: Wenn du im Internet eine Datenbank nutzt, solltest du auf MySQL setzen, da das sie einzig wirklich breit unterstützte Datenbank ist. Einige Hoster unterstützen auch noch PgSQL, Lima jedoch nicht (konfiguriert mit --without-pgsql).

    Mit MS-Access kommst du nicht weit.
  19. internetplattform schrieb:
    also ein paar infos über den server, wo ich meine db's habe

    meine gallery würde ich zb. hier haben, die braucht keine db für sich selbst.
    aber ich habe sie weite(gallery)weiter entwickelt, damit neben dem bild auf den knopf gedrückt werden kann "favoritenbild" dieser knopf soll eben in die db schreiben, welche auf einem anderen server ist den die db ist eim ms-access db, somit odbc ansprechbar.
    oder gibt es eine andere möglichkeit die ms-access anzusprechen ohne odbc, wenn ja, würde ich auch dies machen und die db dann auf dem gleichen server haben?

    server info "db":
    system: win srv 2003
    php 5.0
    odbc ms-access treiber 4.0
    dann ist es so, du hast deine gallery da, aber du solltest den script, der in die db schreibt auf dem server haben wo mssql drauf ist. aber die worte von nikic solltest dir ernsthaft überlegen. guter rat. überschreibe deine bisherigen scripte. da werden dir die leute dabei sicher helfen. solltest aber doch bei M$ bleiben wollen, kann ich dir ein bisschen dabei helfen (also nicht alles für dich proggen ;o).
  20. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!