tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
629
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von supercat1510
    supercat1510 supercat1510 ist offline Mitglied Gold
    Registriert seit
    Nov 2002
    Ort
    Nähe Altötting (Bayern)
    Beiträge
    128
    Folgende Problematik:

    Ich hab eine Exportierte CSV-Datei aus einem Warenwirtschaftssystem.
    Da ist jetzt das Problem, das Produkte öfters auftauchen da verschiedene Größen vorhanden sind, die Artikelnummer ist jedoch immer gleich.

    Beispiel (stark vereinfacht):
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    
    $test = array (  
         array( 
              shop = "1",
              artikelnummer = "12345",
              groesse = "36"
         ),
         array(
              shop = "1",
              artikelnummer = "12345",
              groesse = "37"
         ),
         array(
              shop = "1",
              artikelnummer = "12345",
              groesse = "38"
         ),
         array(
              shop = "1",
              artikelnummer = "abcdef",
              groesse = "37"
         ),
         array(
              shop = "1",
              artikelnummer = "abcdef",
              groesse = "38"
         ),

    Das ganze muss jetzt in eine Datenbank eingetragen werden, allerdings nur 1 Eintrag pro Artikelnummer.

    Hat jemand einen Denkanstoß für mich wie man das am besten realisieren kann.
     
    ^-_-^Mata ne
    Supercat1510

  2. #2
    Avatar von Bratkartoffel
    Bratkartoffel Bratkartoffel ist offline gebratene Kartoffel
    tutorials.de Premium-User
    Registriert seit
    Jun 2007
    Ort
    Passau (Niederbayern)
    Beiträge
    1.394
    Hallo,

    wenn du dich an die Datenbanknormalformen halten willst, dann wirst du wohl mehrere Einträge auf deiner Datenbank erzeugen müssen (Atomarität).
    Wenn dir das allerdings egal ist, so kannst du auch bei dem Datenbankfeld der Größe die ganzen Zahlen eintragen, z.B. per Kommata getrennt.

    Gruß
    BK
     
    Über eine gute Bewertung freut sich jeder ;)
    Bitte erledigte Threads als "Erledigt" markieren.

    "Though a program be but three lines long, someday it will have to be maintained.''
    -- Geoffrey James, "The Tao of Programming"

  3. #3
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Die Grösse musst du fallen lassen (oder nachher in eine eigene Tabelle eintragen

    Code PHP:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    
    <?php 
    $test = array (  
         array( 
              'shop' => "1",
              'artikelnummer' => "12345",
              'groesse' => "36"
         ),
         array(
              'shop' => "1",
              'artikelnummer' => "12345",
              'groesse' => "37"
              ),
         array(
              'shop' => "1",
              'artikelnummer' => "12345",
              'groesse' => "38"
              ),
         array(
              'shop' => "1",
              'artikelnummer' => "abcdef",
              'groesse' => "37"
         ),
         array(
              'shop' => "1",
              'artikelnummer' => "abcdef",
              'groesse' => "37"
         ));
     
    $artikeliste = array();     
    foreach($test as $artikel){
        $key = "{$artikel['shop']}#{$artikel['artikelnummer']}";
        if(!array_key_exists($key, $artikeliste)){
            //Entferne die groesse aus dem artikel
            array_pop($artikel);
            //Füge ihn der neuen Liste hinzu
            $artikeliste[$key] = $artikel;    
        }
    }     
     
    var_dump($artikeliste);
    ?>

    ergibt
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    
    array(2) {
      ["1#12345"]=>
      array(2) {
        ["shop"]=>
        string(1) "1"
        ["artikelnummer"]=>
        string(5) "12345"
      }
      ["1#abcdef"]=>
      array(2) {
        ["shop"]=>
        string(1) "1"
        ["artikelnummer"]=>
        string(6) "abcdef"
      }
    }
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  4. #4
    Avatar von supercat1510
    supercat1510 supercat1510 ist offline Mitglied Gold
    Registriert seit
    Nov 2002
    Ort
    Nähe Altötting (Bayern)
    Beiträge
    128
    Das ist eh geplant, das die Größen in eine eigene Tabelle kommen.
     
    ^-_-^Mata ne
    Supercat1510

  5. #5
    Avatar von supercat1510
    supercat1510 supercat1510 ist offline Mitglied Gold
    Registriert seit
    Nov 2002
    Ort
    Nähe Altötting (Bayern)
    Beiträge
    128
    Danke übrigens @yaslaw.

    Habs dank des Snippets hinbekommen
     
    ^-_-^Mata ne
    Supercat1510

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 05.12.07, 04:56
  2. Antworten: 0
    Letzter Beitrag: 27.10.07, 04:50
  3. Kombination von doppelten Werten finden
    Von Marnie im Forum Relationale Datenbanksysteme
    Antworten: 6
    Letzter Beitrag: 18.06.07, 08:22
  4. Array nach best. Wert durchsuchen
    Von Naisetsu im Forum PHP
    Antworten: 5
    Letzter Beitrag: 10.02.06, 10:39
  5. Array nach mehreren bestimmten Werten durchsuchen
    Von christoph lindtner im Forum Java
    Antworten: 5
    Letzter Beitrag: 14.01.05, 11:50

Stichworte