Ankündigung

Einklappen
Keine Ankündigung bisher.

DB Daten mit .txt Daten abgleichen und auswerten

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • DB Daten mit .txt Daten abgleichen und auswerten

    Moin moin,

    Mit folgendem Code überprüfe ich, ob die Werte, die in einer Datenbank stehen, auch in einer .txt Datei vorhanden sind. Zum Schluss möchte ich ein Ergebnis ausgeben was mir sagt Test war erfolgreich oder Test war nicht erfolgreich.

    PHP-Code:
          if (strpos($score$CHNR) !== false) {

            
    $identid "ok";
            
    $score substr($zerlegen[0], 04);
            
    $prozent $score/10;
            
    // PEAK Prüfen
            
    $abfrage "SELECT * FROM ident_db WHERE chargennummer ='$CHNR'";
            
    $ergebnis mysql_query($abfrage);
            
            while (
    $row mysql_fetch_object($ergebnis)) {

              
    $PEAK "$row->peak1";
              
    $PEAK2 "$row->peak2";
              
    $wb1 "$row->wb1";
              
    $wb1_2 "$row->wb1_2";
              
    $wb2 "$row->wb2";
              
    $wb2_2 "$row->wb2_2";
            }
            
             
    // PEAK1
              
    if ($PEAK != "") {
              
                
    $handle fopen("../test/peak_$dateiname""r");
                
                while (!
    feof($handle)) {

                  
    $buffer fgets($handle);
                  
                  if (
    strpos($buffer$PEAK) !== false) {

                     
    $peaktrue="ok";
                     
                  } else{ 
    $peakfalse="nichtok";}
                }           
              } else{ 
    $peakempty="leer"; }
              
              
    // PEAK2
              
              
    if ($PEAK2 != "") {
              
                
    $handle fopen("../test/peak_$dateiname""r");
                
                while (!
    feof($handle)) {

                  
    $buffer fgets($handle);
                  
                  if (
    strpos($buffer$PEAK2) !== false) {

                     
    $peak2true="ok";
                     
                  } else{ 
    $peak2false="nichtok"; }
                }           
              } else{ 
    $peak2empty="leer"; }
              
              
              
    //WB1
              
              
    if ($wb1 != "" && $wb1_2 != "") {
              
                
    $handle fopen("../test/peak_$dateiname""r");
                
                while (!
    feof($handle)) {

                  
    $buffer fgets($handle);
                  
    $buffer = (float)str_replace(",""."trim($buffer));
                  
    $wb1 = (float)str_replace(","".""$wb1");
                  
    $wb1_2 = (float)str_replace(","".""$wb1_2");
                  
                  if (
    $wb1 $buffer && $wb1_2 $buffer) {

                    
    $wb1true="ok";
                    
                  }else{ 
    $wb1false="nichtok"; }
                }
              }else{ 
    $wb1empty="leer"; }
              
              
    // WB2
              
              
    if ($wb2 != "" && $wb2_2 != "") {
                echo
    "wb2<br>";
                
    $handle fopen("../test/peak_$dateiname""r");
                
                while (!
    feof($handle)) {

                  
    $buffer fgets($handle);
                  
    $buffer = (float)str_replace(",""."trim($buffer));
                  
    $wb2 = (float)str_replace(","".""$wb2");
                  
    $wb2_2 = (float)str_replace(","".""$wb2_2");
                  
                  if (
    $wb2 $buffer && $wb2_2 $buffer) {
                     
                     
    $wb2true="ok";
                    
                  }else{ 
    $wb2false="nichtok";  }
                }
              }else{ 
    $wb2empty ="leer";}
              
            }
          }
        }
      }

    wenn peak, peak2, wb1 und wb2 leer sind dann war der test nicht erfolgreich. Das bekomme ich auch noch hin

    Nun muss ich aber ja noch auf alle anderen Fälle eingehen, die eintreten können.

    Das Problem ist, das in der .txt Datei ca. 30 -35 Unterschiedliche Werte stehen die abgeglichen werden. Mit den while schleifen kann ich zwar herausfinden ob der gesuchte Wert in der txt vorkommt jedoch werden ja auch alle nicht übereinstimmenden Werte durchlaufen, geprüft ...

    Wie kann ich das am besten anstellen das ich alle möglichen Fälle überprüfen kann?

    Wäre sehr froh wenn mir hierbei jemand helfen kann.

    danke

  • #2
    Dann logge doch einfach mit ... stelle ein Array auf, was die Daten aus der DB enthält. Was Du in der TXT findest, streichst Du aus dem DB-Array und schreibst es in ein eigenes (für die spätere Neuspeicherung) ...

    Alles, was dann noch im DB-Array ist, fehlt in der TXT ... das Modell geht auch anders herum ...

    Also je peak, peak2 usw. ein eigenes Array mit eigenem temp. Array, was später - bei Bedarf - den Datenbestand anpasst.

    Kommentar

    Lädt...
    X