CSV import

  • #1
T

Thomas22

Guest
HAllo,

ich habe mal ne frage und hoffe hier fündig zu werden.

Ich will eine CSV in eine Tabelle importieren.
Hm hört sich einfach an, aber da sollte etwas spezieles dazukommen.

Ich habe 2 Tabellen.
In der ersten sind die Felder identisch mit der aus der CSV die ich genau in diese TAbelle importieren will.
Diese Tabelle hat 2 spezielle Felder PREIS und ARTIKEL!
Dann habe ich eine 2 Tabelle die hat genau 2 Felder, ARTIKEL und RATE !

So nun möchte ich die CSV importieren, die wiederum im feld PREIS was stehen hat.
Bei Importieren sollte er dann den Artikel aus der CSV mit dem der 2. Tabelle vergleichen und die Rate duch den Preis aus der CSV dividieren und mit 100 multiplizieren und anschließend in die 1. Tabelle importieren.

So, ich hoffe es versteht jemand mein PRoblem. Was hat das für einen Sinn? Ich habe für jeden Artikel eine Rate (5% etc.)
In der CSV stehen die Fixen PReise. Das ganze will ich nun importieren, aber er soll halt meine 5% von Preis wegrechnen!

Also ganz logisch!

Danke! Thomas
 
  • #2
  • #3
Hallo Conny,

beispiele dazu , naja das wird schwierig.

Aber kurz zusammengefasst. Ich suche etwas, mit dem man eine CSV Datei in eine Tabelle importieren kann, wo man aber davor daten vergleichen und ändern kann!

Beispiel:

CSV:

NAME;ARTIKEL;PREIS


Tabelle1 (hier kommt die CSV rein)

NAME;ARTIKEL;PREIS


Tabelle2:

ARTIKEL;RABATT


So, es soll die CSV hergenommen werden, und abgearbeitet werden. Also 1. Zeile Artikel soll mit dem Artikel von tabelle 2 verglichen werden. Bei übereinstimmung, soll der rabatt aus tabelle 2 mit dem Preis der CSV dividiert werden und mit 100 multipliziert werden. Anschließend wird diese Zeile in tabelle 1 geschrieben.
und dann gehts immer so weiter ... bis zu xx Zeile!
 
  • #4
Code:
<?php
$handle = fopen (test.csv,r);       
while ( ($data = fgetcsv ($handle, 1000, ;)) !== FALSE ) {
	// Prüfen ob der Artikel vorhanden ist
	$sql = SELECT * FROM tabelle_2 WHERE artikel='.$data[1].' LIMIT 1;
	$res = mysql_query($sql);
	if($row = @mysql_fetch_row($res)) {
		// Preis berechnen und in tabelle 1 schreiben
		$preis = (($row[1] / $data[2])*100);
		$sql = INSERT INTO tabelle_1 SET name='.$data[0].', artikel='.$data[1].', preis='.$preis.';
		mysql_query($sql);
	}               
}
fclose ($handle);
?>
 
  • #5
Hallo Conny,

das sieht doch super aus. verstehe zwar nichts aber ich werde das morgen mal testen!

Vielen Dank einmal!

lg thomas
 
  • #6
Tolles Script, hab mir erlaubt das für mich zu kürzen :)

Code:
$handle = fopen (user.csv,r);       
while ( ($data = fgetcsv ($handle, 1000, ;)) !== FALSE ) {
	mssql_query(INSERT INTO tbl_mitarbeiter (nachname) VALUES ('.$data[0].'));
}
fclose ($handle);
 
Thema:

CSV import

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.838
Beiträge
707.959
Mitglieder
51.491
Neuestes Mitglied
haraldmuc
Oben