Anfänger braucht Hilfe bei PHP und mysql

eichi2

Grünschnabel
Hallo zusammen,
ich bin leider Neuling in PHP und mysql und bräuchte dringend einen Rat.
Meine Firma macht einen Webshop. Ich habe den Auftrag bekommen, einen Abgleich der Werte einer csv-Datei mit den Eigenschaften der Felder in einer mysql-Tabelle zu machen. Also, ob diese Werte den Feldeigenschaften entsprechen.
Also etwas genauer:
Die Tabelle kommt als csv-Datei daher und enthält Werte, mit denen eine mysql-Tabelle aktualisiert werden soll.
Auf Rat meines Chefs habe ich die Einträge dieser csv-Datei mittels explode() in ein array geschrieben.
Ferner habe ich eine config.ini geschrieben, inder die Feldeigenschaften der mysql-Tabelle von Hand eingetragen werden sollen.
Mittels parse_ini_file() bekomme ich ein weiteres (assoziatives) Array, das besagte Feldeigenschaften als Strings enthält.
So habe ich jetzt 2 Arrays, die beide Strings enthalten.
Im 1. stehen die Werte , im 2. die Eigenschaften.
Und jetzt habe ich keine Idee, wie es weiter gehen könnte.
Wie könnte ich von diesem Punkt aus feststellen, ob diese Werte für die mysql-DB korrekt sind.
Hoffentlich konnte ich mich überhaupt verständlich ausdrücken. Bin mir da gar nicht so sicher.
Ich wäre für jeden Rat sehr dankbar.
 
Leider durchschau ich deine Beschreibung nicht ganz :) , aber ist es nicht ganz einfach möglich die MySQL-Tabelle in ein Array einzulesen (reichen ja nur die Spalten welche mit dem CSV-File ident sind).

Danach das CSV-File in ein Array.

Danach die beiden Arrays vergeleichen und alle doppelten aus dem CSV-Array löschen. Bleiben die übrig welche noch nicht in MySQL sind.

Aber vielleicht habe ich dich nicht ganz verstanden. Spätestens beim INI File verstehe ich nur mehr Bahnhof :)
 
eichi2 hat gesagt.:
Hallo zusammen,
ich bin leider Neuling in PHP und mysql und bräuchte dringend einen Rat.
Meine Firma macht einen Webshop. Ich habe den Auftrag bekommen, einen Abgleich der Werte einer csv-Datei mit den Eigenschaften der Felder in einer mysql-Tabelle zu machen. Also, ob diese Werte den Feldeigenschaften entsprechen.
Also etwas genauer:
Die Tabelle kommt als csv-Datei daher und enthält Werte, mit denen eine mysql-Tabelle aktualisiert werden soll.
Auf Rat meines Chefs habe ich die Einträge dieser csv-Datei mittels explode() in ein array geschrieben.
Ferner habe ich eine config.ini geschrieben, inder die Feldeigenschaften der mysql-Tabelle von Hand eingetragen werden sollen.
Mittels parse_ini_file() bekomme ich ein weiteres (assoziatives) Array, das besagte Feldeigenschaften als Strings enthält.
So habe ich jetzt 2 Arrays, die beide Strings enthalten.
Im 1. stehen die Werte , im 2. die Eigenschaften.
Und jetzt habe ich keine Idee, wie es weiter gehen könnte.
Wie könnte ich von diesem Punkt aus feststellen, ob diese Werte für die mysql-DB korrekt sind.
Hoffentlich konnte ich mich überhaupt verständlich ausdrücken. Bin mir da gar nicht so sicher.
Ich wäre für jeden Rat sehr dankbar.


Du kannst noch so ein Anfänger sein trozdem ist der Threadtitel "Anfänger..." nicht aussagekräftig...

-.-

Na zu deinem Problem: Wieso musst du das überhaupt variabel haben? Ansonsten würd ich hier ne Funktion schreiben, die für jede Eigenschaft guckt ob die Werte korrekt sind. Vorallem preg_match dürfte dir da weiterhelfen. zb. int beinhaltet nur zahlen also einfach /\d?/ <<oder so ähnlich ;-)
 
Erst mal danke für Eure Mühe.
Ich habe schon befürchtet, daß ich mein Problem nicht klar formulieren konnte.
Un die Sache mit dem Anfänger werd' ich mir merken - bestimmt.
Es ist so. Wenn der Anbieter eine neue Artikelliste hat liegt die als csv vor.
IN der DB gibt es eine Tabelle für diese Artikel. Und in dieser Tabelle kann der Admin doch für die einzelnen Felder festlegen, wie der Typ sein soll oder die Attribute, ob Null und wie der Standart ist.
Dann gibt es da glaube ich noch Extra und Aktion.
Ich soll nun prüfen, ob diese csv-Artikelliste diesem entspricht. Wenn also ein Feld in der DB z.B. int(11) sein soll, muß in der csv_datei dafür auch ein numerischer Wert stehen.
Die csv habe ich bereits in einem Array.
Die Eigenschaften sollen (das wird so gewünscht) von Hand in eine ini-Datei geschrieben und an das script geliefert werden, das mache ich mit parse_ini_file().
Und so habe ich ein Array mit diesen Eigenschaften.

Jetzt weiß ich leider nicht, wie weiter machen.
Ich weiß auch nicht,warum das so gemacht werden soll.

THX für Eure Zeit und Mühe
 
Zurück