• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

Daten aus externer Datenbank in Wordpress

Chriis

Dithmarscher Paradiesapfel
Registriert
25.01.10
Beiträge
1.467
Lieber ATer,

ich benötige für meinen privaten Wordpress-Blog eine Verbindung zu einer externen MySQL-Datenbank.
Ich möchte in einem Blogbeitrag über das Plugin "Insert PHP" (Erlaub das Schreiben von PHP im Editor) direkt auf dem Editor ein Feld mit externen (dynamischen) Daten anzeigen lassen.

Leider schaffe ich es nicht, die externe MySQL Datenbank ins System zu bringen.

Hier mein Code zum Testen der Verbindung: (Zugangsdaten hab ich zensiert...)

PHP:
[insert_php]
  if ($db = mysql_connect('HOST', 'NUTZER', 'PASSWORT') &&
            mysql_select_db('TABELLE', $db)) {
    echo 'Funktioniert!.';
    mysql_close($db);
  } else {
    echo 'Fehler: ' . mysql_error() . '!';
  }
[/insert_php]

Ich bekomme hier immer folgenden Fehler:
Code:
Warning: mysql_connect() [function.mysql-connect]: php_network_getaddresses: getaddrinfo failed: Name or service not known

Was ist da los? :(

EDIT: Hat das etwas mit den " bzw ' im echo zu tun?

EDIT 2: Ich habe folgenen Eintrag im Wordpress-Forum gefunden:
https://wordpress.org/support/topic/connect-to-an-external-database

Das habe ich nun auch auf meinen Blog und meine Datenbank angepasst:

PHP:
[insert_php]
$my_wpdb = new WPDB( 'USER', 'PW', 'DATENBANK', 'SERVER');

$user_count = $my_wpdb->get_var( "SELECT COUNT(*) FROM $my_wpdb->TABELLE" );
echo "<p>User count is {$user_count}</p>";


[/insert_php]

Ich bekomme hier nun erstmal keinen Fehler! ;-)
Aber leider keine Ausgabe. Der Abgewandelte Code sollte ja meines Erachtens die Zeilenanzahl (User) ausspucken? Auch wenn es bei mir keine User sind, sind ja dennoch Zeilen drin...
 
Zuletzt bearbeitet:
Das heißt i.d.R., dass der Host nicht erreicht werden kann. Läuft die DB lokal? Stimmt der Port?
 
Nein, die DB liegt im Netz (bei one.com) - Ich habe auch ein eigenes Formular-Tool geschrieben, über das ich flott Inhalt einpflegen kann. Das funktioniert seit Jahren einwandfrei. Nur hier in der Wordpress-Anbindung nicht.
 
Hi, was schreibst du denn bei HOST hin? Die IP oder den Namen, also one.com oder xxx.xxx.xxx.xxx? Falls du da den Namen stehen hast, dann ersetz das mal mit der IP des DB-Servers. Solange du keinen gültigen Verbindungsaufbau zur DB hinbekommst, kann der Rest auch nicht funktionieren. Zweite Fehlerquelle könnte sein, dass der entfernte DB-Server nur lokale Zugriffe zulässt.