Zum Inhalt springen

Importscript


Dennis1488

Empfohlene Beiträge

Hi liebes Forum,

Ich habe die Aufgabe per Importscript in PHP eine CVS Datei in ein SQL zu importieren. Das soll bis heute abend sein....

Das ganze soll in etwa im SQL so aussehen:

ID Hersteller Produkt Preis Lieferzeit

Dazu könnten evtl. noch andere Spalten kommen. Unter ID, Hersteller, usw. sollen dann die entsprechenden Werte sein.

Jedoch habe ich noch nie etwas mit SQL und PHP am Hut gehabt....

Könntet Ihr einen Neuling erklären wie man das macht? :confused::confused:

Irgendetwas hat er auch noch gesagt von wegen kannst du per PHP oder auch NTF8 schreiben....Bei mir kommen dort nur Fragezeichen :floet:

Achso..Er hat noch etwas gesagt von wegen Primärschlüssel setzte :confused:

Könnt Ihr mir hier weiterhelfen?

Vielen Dank im vorraus

Bearbeitet von Dennis1488
Link zu diesem Kommentar
Auf anderen Seiten teilen

Das soll bis heute abend sein....

Dann würde ich mal zügig anfangen. Da Du nicht shreibst welches DBMS Du verwendest ist es schwer zu helfen.

DU musst Deine Tabelle anlegen, log Dich in das DBMS ein und erzeuge Datenbank und Tabelle: "create database" bzw "create table ..."

sind die SQL Statements, die Du benötigst. Den konkreten Syntax musst Du aber passend zu dem DBMS umsetzen.

Ggf hilft Dir das Tool DbVisualizer - The Universal Database Tool

Wenn Du Die Tabelle erzeugt hast (inkl PK) dann musst Du das PHP Script schreiben, mit dem Du entweder durch PHP: file - Manual und PHP: explode - Manual bzw PHP: implode - Manual die CSV Datei zerlegst (alternativ geht auch PHP: fgetcsv - Manual) und daraus ein "insert into <table> ...." Statement baust und über die Datenbankschnittstelle (PHP: Datenbankerweiterungen - Manual) von PHP an Deine Datenbank sendest.

Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi...

vielen Dank für deine Antwort.. =)

Hat geklappt.

Nun habe ich eine Tabelle jetzt ist aber in der CSV Lieferzeit nicht mit drin. Wie kann ich dem MySQL nun sagen er soll Lieferzeit auslassen? Er trägt dann natürlich Lieferkosten in Lieferzeit ein und Lieferkosten sind dann mit einer 0 versehen. Oder kann ich das irgendwie in der CSV machen?

Viele dank für eure Hilfe

Bearbeitet von Dennis1488
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hat geklappt.

Nun habe ich eine Tabelle jetzt ist aber in der CSV Lieferzeit nicht mit drin. Wie kann ich dem MySQL nun sagen er soll Lieferzeit auslassen? Er trägt dann natürlich Lieferkosten in Lieferzeit ein und Lieferkosten sind dann mit einer 0 versehen. Oder kann ich das irgendwie in der CSV machen?

Setze einfach das Feld auf "NULL" = leer, muss natürlich von der Tabelle her zulässig sein

Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du wirst irgendwo ein SQL Statement erzeugen, dort trägst für den Wert des Feldes, das eben keinen Inhalt bekommt den Wert "NULL" in das Statement ein.

Die CSV sollte nicht verändert werden. Wenn ich eine Tabelle mit 5 Spalten habe, dann kann ich auch nur die Spalten 1,2,5 setzen, indem ich sie über die Namen ansprechen "insert into <fields> VALUES <Werte>"

Man kann in der Tabelle auch Defaultwerte mitgeben.

Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

Habt Ihr eine Idee warum nicht?

Dir ist schon bewusst, dass die Informationen, die Du postet, absolut unzureichend sind. Welche Fehlermeldung tritt auf? Was steht in der Logdatei? Wo sind die Probleme? (Ggf musst Du in der php.ini auch das Logging einschalten)

Falls ja könntet Ihr ein Anleitung für Dummies beipacken? :D

Sicherlich nicht, denn Mitdenken wird von Dir erwartet.

Warum schreibst Du das Script nicht selbst?

Textdatei in Array einlesen, Das Array durchlaufen und jedes Element / Zeile mit "explode" in Spalten trennen. SQL Statement (Insert) mit den Spalten erzeugen und ausführen.

Phil

Link zu diesem Kommentar
Auf anderen Seiten teilen

Weil ich leider keine Ahnung von dem ganzen habe.

Ich bin auch schon eifrig dabei mich in SQL, PHP und alles ein zu lesen aber bis ich das drauf habe das ich mal eben ein script schreiben kann dauert es sicher noch eine weile...

Also Fehler ist folgender.

Ich gebe Ihm den Dateipfad und alles. Wird auch alles auf dem Webserver richtig angezeigt das klicke ich auf den Button "Und Los" aber es passiert leider nix. Der Pfad ist aber definitiv richtig....

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also nun hat alles geklappt ^^

Nun habe ich aber eine CSV Datei bekommen wo Preise enthalten sind die z.b so aussehen: 2,34

Wenn ich nun die CSV Datei Importiere dann sieht es so aus 2.00 ist das normal?

Wie kann ich die Preise so anzeigen lassen in der MySQL Tabelle: 2,34?

Wenn ich das auch noch weiss dann bin ich rundum glücklich ^^

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...