XML -> MySQL Mir fehlt Verbindung zur Datenbank in Beispiel

Spelmann

Erfahrenes Mitglied
Hallo,
ich weiß in einem Beispiel für einen XML Import nicht, wie ich mich mit der Datenbank verbinden soll:

So gehe ich sonst vor:
PHP:
require_once ('./db_connect/dbConfig.php');
$db_link = mysqli_connect (MYSQL_HOST, 
                           MYSQL_BENUTZER, 
                           MYSQL_KENNWORT, 
                           MYSQL_DATENBANK);

$sql=$db_link->prepare('insert INTO... usw.
Aber in dem Beispiel aus dem Netz (das ich auch noch nicht so richtig verstehe) komme ich so nicht weiter. An welcher Stelle bringe ich da meine Datenbankverbindung "$db_link" unter?
PHP:
//Werte in die DB schreiben

$query = "INSERT INTO wws_artikel (LFSN, FKURZBEZ, MARKE) VALUES ";
$pattern = "( {lfsnString}, '{fkurzbezString}', '{markeString}')";
$sep = ', ';

$rows = array();

foreach ( simplexml_load_string($xml) as $elems ) {
    $rowData = array(
       '{lfsnString}' => (string)$elems->LFSN,
       '{fkurzbezString}' => (string)$elems->FKURZBEZ,
       '{markeString}' => (string)$elems->MARKE
    );
   
    $rows[] = strtr($pattern, $rowData);
}

$query .= join($sep, $rows);

Kann mir hier jemand helfen?
Vielen Dank!
 
Hi

der Verbindungsaufbau und das Absetzen der SQL-Anweisung (vom String query) kommt erst
nach dem zweiten Codeausschnitt, und ist in diesem nicht enthalten. Der ganze Codeteil
dreht sich nur um das Erzeugen der SQL-Anweisung, ausgehend vom Inhalt einer XML-Datei.

Du kannst weiterhin deine gewohnten Funktionen verwenden.
 
Ich hätt' mir ja auch mal ein var_dump von $query ausgeben können. :)

Was gefehlt hat:
PHP:
mysqli_query($db_link, $query);

Vielen Dank!!
 
Zuletzt bearbeitet:
Nachtrag:
Für andere die sich auch mit XML schwer tun:
Wenn das XML extern geladen wird, muss
PHP:
foreach ( simplexml_load_string($xml) as $elems ) { usw.
ersetzt werden durch
PHP:
foreach ( simplexml_load_file('./meinPfad/meinXML.xml') as $elems ) { usw.
 

Neue Beiträge

Zurück