php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 09.03.2009, 14:54  
Erfahrener Benutzer
 
Benutzerbild von Sniper_Kotaro
 
Registriert seit: 04.03.2009
Beiträge: 303
PHP-Kenntnisse:
Anfänger
Sniper_Kotaro ist zur Zeit noch ein unbeschriebenes Blatt
Standard [Erledigt] Daten in MySQL einfügen (von XML aus)

Hey Leute

Ich habe folgendes Problem:
Aus einer XML-Datei lese ich Daten aus, die ich in eine MySQL-Datenbank packe.
Das klappt auch eigentlich soweit......EIGENTLICH...
Nun gibt es aber folgendes Problem:
Damit ich die ausgelesenen Daten (von der XML) einlesen kann (in die MySQL-DB) muss ich sie in einer temp-Variabel speichern.
Bei ~60 Spalten ist das natürlich eine unschöne Angelegenheit.
Passt auf, ich poste mal das Problem:

PHP-Code:
                for ($i 0$i<count($node_id); $i++) 
                {
                    
$id $node_id[$i];
                    
$nick $node_nick[$i];
                    
$pw $node_pw[$i];
                    
                    
$sql "INSERT INTO $table (Accountname, Passwort) VALUES ('utf8_decode($nick->get_content())', 'utf8_decode($pw->get_content())')";

                    
$ergebnis = @mysql_db_query('s0.alpha',$sql$dbconnect);
                } 
So würde es ohne temp-Variablen gehen, aber so wird irgendwie nichts in die DB geschrieben (es liegt aber auch nicht an den ' ', denn ich habe es auch schon ohne versucht und so...)

Macht man es aber so:
PHP-Code:
                for ($i 0$i<count($node_id); $i++) 
                {
                    
$id $node_id[$i];
                    
$nick $node_nick[$i];
                    
$pw $node_pw[$i];

                    
$nicktemp utf8_decode($nick->get_content());
                    
$pwtemp utf8_decode($pw->get_content());
                    
                    
$sql "INSERT INTO $table (Accountname, Passwort) VALUES ('$nicktemp', '$pwtemp')";

                    
$ergebnis = @mysql_db_query('s0.alpha',$sql$dbconnect);
                } 
dann geht es zwar, aber wie gesagt, wenn man das für ~60 statt nur dieser 2 Spalten machen muss....
Kennt jemand eine elegantere Lösung dafür als 60 temp-Variabeln?
Ich versteh das auch nicht, $nicktemp & $pwtemp stehen doch für das gleiche wie im 1. Beispiel.....aber scheinbar kommt MySQL mit der Funktion utf8_decode() und/oder get_content() nicht klar...
__________________
Sniper_Kotaro ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 10.03.2009, 01:17  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Naja keine Ahnung woher und wie du die Daten beziehst. Aber wenn du sie einfach in ein Array speicherst, ohne dafür jetzt einzelne Variablennamen zu verwenden kannst du die einzelnen Werte natürlich auch wieder aus dem Array rausholen und zusammenfügen.

PHP-Code:
<?php
// array sollte etwas so aussehen
array(
  
=> array(
    
user_id => 1,
    
sonstige => 2,
    
daten => 3)
  
=> array(...)
);

foreach (
$array as $key => $value) {
    
// erstmal decode drüber laufen lassen
    
foreach ($value as $key2 => $value2) {
        
$array[$key][$key2] = utf8_decode($value2);
    }

    
// jetzt den String für den Query erstellen
    
$insert "'".implode("', '"$value);

    
$query "INSERT INTO table (spalte1, spalte2, ....) VALUES ($insert)";
}
So ungefähr könnte das aussehen damit du die Variablen nicht einzeln schreiben musst.

Naja musst dir eben eine Struktur mit Arrays ausdenken. Vielleicht hilft es auch im Array als "key" immer den Spaltennamen zu verwenden (und genauso in der XML Struktur).
Flor1an ist offline   Mit Zitat antworten
Alt 10.03.2009, 08:14  
Erfahrener Benutzer
 
Benutzerbild von Sniper_Kotaro
 
Registriert seit: 04.03.2009
Beiträge: 303
PHP-Kenntnisse:
Anfänger
Sniper_Kotaro ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ah ok, danke für den Hinweis!
Ich werd das mal ausprobieren.
Vielen Dank nochmal
__________________
Sniper_Kotaro ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Anfänger: Daten in MySQL Datenbank einfügen DerPaul PHP Tipps 2008 12 20.10.2008 10:12
[Erledigt] MySQL, Daten in Tabelle einlesen, Struktur funktioniert nicht ganz MasterChief PHP Tipps 2008 3 13.10.2008 11:39
Daten aus Mysql Tabelle über Arrays in Variabeln schreiben Toby PHP Tipps 2008 8 22.08.2008 10:01
MySql - Daten übers Formular einfügen? Toby PHP Tipps 2008 9 07.11.2007 09:51
Zugriff auf eine ORACLE DB die Daten in eine MYSQL schreiben Cheesy PHP Tipps 2007 5 12.06.2007 15:36
MySQL Server startet nicht mehr richtig... Datenbanken 16 03.03.2006 19:40
Daten aus MYSQL nach Datum filtern Datenbanken 3 19.09.2005 16:09
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
[Erledigt] Daten aus MySQL in einer zufälligen Reihenfolge ausgeben PHP-Fortgeschrittene 2 31.07.2005 12:42
[Erledigt] Daten in Mysql eingeben und auf warteliste setzen. PHP Tipps 2005 7 05.05.2005 04:04
mysql daten ohne html formatierung ausgeben wizzardxx PHP Tipps 2005 2 28.03.2005 00:56
Auslesen von Daten aus einer mysql Datenbank + Editieren vampsoftchef PHP Tipps 2004-2 5 15.11.2004 08:31
Multiple Select in einen Feld in MYSQL einfügen Datenbanken 4 22.09.2004 18:15
Spalte anlegen und in diese Daten einfügen Anuschka PHP Tipps 2004 11 09.08.2004 00:43
Excel Daten einfügen PHP Tipps 2004 3 08.07.2004 09:44

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
http://www.php.de/datenbanken/52723-erledigt-daten-mysql-einfuegen-von-xml-aus.html, struktur hinzufügen mysql, xml mit php in mysql einfügen, xml in mysql datenbank einfügen, mysql einfügen, mysql insert php mit xml, mysql daten xml auslesen php, php in mysql und xml einfügen, mysql daten einfügen beispiel, php variable in mysql einfügen, dbconnect mit variable geht nicht, xml in mysql per php einfügen, mysql tabelle xml, xml einlesen und in db einfügen, xml datenbank in sql 2005 anfügen, xml insert into mysql, xml auslesen php in mysql, xml auslesen und in mysql einfügen, xml insert into mysql php, xml daten nach mysql

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:30 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum