Jump to content
Sign in to follow this  
adriano

Hilfe PHP Array einlesen in MySQL

Recommended Posts

Hallo zusammen,


ich habe ein sehr großes Array mit über 1000 Elementen und ich möchte diese Elemente nun in eine MySQL Datenbank ablegen.

Array sieht folgendermaßen aus:


$array = array ( 

	      0 => array(

			"1" => "Test",

			"2" => "20%",

			"3" => "3000"

			.................................		 

                                            )

	);




Zur Info: In dem Array ist eine HTML Tabelle abgelegt und ca. 200 Elementen sind in eine Zeile in der Tabelle.


Ich möchte gerne das Array so auslesen, dass diese richtig in der Datenbank abgelegt werden.


Hoffe dass mir jemand helfen kann bzw. mir Tipps geben kann wie man so etwas sinnvoll löst.


Vielen Dank im Voraus.


Gruß

Nano

Share this post


Link to post
Share on other sites

Sinnvoll lösen? Na an sich bin ich grad am überlegen, ob sowas überhaupt sinnvoll ist, in der Datenbank abzulegen, aber ok. Scheint so, als parst du ein bestehendes (x)HTML-Dokument, oder? Wenn ja, dann beschäftige dich mal mit XPath und XSL glaub ich, kann aber auch so ähnlich heißen.


Das mit dem direkten Einlesen von HTML-Dokumenten hatten wir hier schon einmal und es wurde immer geraten, nicht direkt mit PHP diese zu parsen und dann einzulesen.


Was machst du eigentlich dann mit den eingelesenen Daten? Werden die dann einfach wieder als reines HTML ausgegeben?



Grüße

Share this post


Link to post
Share on other sites
Guest

So lange Du ein echtes Array mit Werten hast, kannst Du daraus auch bequem SQL erzeugen. Das geht mit den absoluten Grundlagen von PHP.

Share this post


Link to post
Share on other sites

Hi,


danke für deine Antwort.


Also das Array beninhaltet eine HTML Tabelle, d.h. ich habe eine HTML Tabelle geparst und die Werte in ein Array abgespeichert.

Jedes Element entspricht einem Wert in der Tabelle und eine Tabellenzeile entspricht im Array 267 Element.


Eine Tabllenzeile ist wie folgt im Array abgelegt:

Es fängt an mit einer Datumsangabe also z.B. "März 2007" und dann kommen nur Zahlenwerte z.B. 1000, 20 %, 0,012 usw.


Beispiel:

PHP-Code:

Array (

1 => "März 2007",

2 => "1000",

3 => "20%",

......

268 => "Februar 2007",

269 => "4000",

270 => "15%",

......

usw.

)

Ich möchte nun immer so eine Zeile aus dem Array ausschneiden und die Werte in den richtigen Datentyp parsen und diese in der Datenbank abspeichern.


Hoffe ich habe es dir einwenig verständlicher erklären können, was ich meine??


Vielen Dank für deine Hilfe.


Gruß

Nano

Share this post


Link to post
Share on other sites

wilst du das array speichern, oder werte aus dem array in einzelne spalten der tabelle.

zu ersterem:

serialize()

zu zweitem:

durch was wird ein neuer datensatz gekennzeichnet? immer wenn ein datum follgt, ist es ein neuer datensatz?

foreach()


oder anders zu ereg() , wenn du weist, nach wieviel indizes ein neuer datensatz beginnnt, kannst da ja auch eine zählvar verwenden;

if($i==0 || $i=='wert für nächsten datensatz'). als beispiel habe ich jetz mal datum + 2 weitere werte wie in deinem beispiel aufgezeigt.


so, nun musste halt nur noch dein sql-statement schreiben und fertig!


gruß raiser

Share this post


Link to post
Share on other sites
Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...