[Funktion] Daten aus Textdatei in die DB schreiben

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

  • #16
    habs probiert aber es werden keine datensätze gesepeichert:

    PHP-Code:


    <html>
        <body>
            
          <input class="button" type="submit" name="submit" value="Speichern" />         <br /><br /><br />

    <?php
            
        
    include "conf.php";

    $dbConn = @mysql_connect($dbHost$dbUser$dbPass$dbDB);
     if (
    mysql_select_db(DB8950) OR die(mysql_error()));
    $string "mittelfeld.csv";
    $erg =    str_replace(";"","$string);
    $filenum=fopen($string"r");
    $filesize=filesize($string);
          
    $id $row["id"];
            
    $name $row["name"];  
            
    $vorname $row["vorname"];
            
    $spitzname $row["spitzname"];
            
    $spiele $row["spiele"];
            
    $tore $row["tore"];
            
    $vorlagen $row["vorlagen"];  
            
    $beruf $row["beruf"];
            
    $hobbys $row["hobbys"];
            
    $ziel $row["ziel"];
            
    $erfolge $row["erfolge"]; 
    echo(
    $row["name"]);
        
    while( ( 
    $row  =  fgetcsv $filenum$filesize"," ))!== FALSE ) {
    if (
    $submit == "Speichern") {    
    $sql "INSERT INTO spieler SET name ='$name',  vorname ='$vorname', 
    spiele ='
    $spiele', 
    tore = '
    $tore', 
    vorlagen  = '
    $vorlagen', 
    beruf = '
    $beruf', 
    hobbys = '
    $hobbys',  
    ziel = '
    $ziel', 
    erfolge = '
    $erfolge', 
    position = '
    $position'";
    }
    if(@
    mysql_query($sql)){
    } else {
    echo
    " . mysql_error()";
    }  
     
    $erg = @mysql_query("SELECT * FROM spieler");
        if (!
    $erg){
       echo
    "Fehler" mysql_error();
    }                                
    }
    while(
    $row mysql_fetch_array($erg)) {

    echo
    "<table class = 'tab3'>" .  "<td class = 'tab4'>" $row["name"] . "</td>" .
     
    "<td class = 'tab4'>" $row["vorname"] . "</td>" 
     
    "<td class = 'tab4'>" 
    $row["spitzname"] . "</td>" 
     
    "<td class = 'tab4'>" .  
    $row["spiele"] .
      
    "</td>" "<td class = 'tab4'>" .  
    $row["tore"] . "</td>" .  
    "<td class = 'tab4'>" $row["vorlagen"] .     
    "</td>" "<td class = 'tab4'>" .  
    $row["beruf"] . "</td>" "<td class = 'tab4'>" .  
    $row["hobbys"] .  
    "</td>" "<td class = 'tab4'>" .  
    $row["ziel"] . "</td>" "<td class = 'tab4'>" .  
    $row["erfolge"] . "</td>" .  "</table>";      
                          
    }
    fclose ($string);    


    ?>
    Zuletzt geändert von nate10; 23.11.2005, 13:27.

    Kommentar


    • #17
      Oh Mann, selten so viel sinnfreien Code gesehen.
      Kann das sein, dass Du einfach wild rumprobierst, statt mal Doku zu lesen und dann Schritt für Schritt Deinen Code aufzubauen?

      Vielleicht solltest Du erst mal bei jeder Zeile einen Kommentar drüber schreiben, der erklärt, was Du Dir dabei gedacht hast bzw. meinst, was dabei rauskommen soll. Dann fällt Dir vielleicht der eine oder andere Unsinn auf.

      Was soll, um mal ein Beispiel zu nehmen, das hier
      PHP-Code:
      $string "mittelfeld.csv";
      $erg =    str_replace(";"";"$string); 
      Du speicherst den Namen der Datei, die Du einlesen willst, ok, auch wenn ich die Variable anders genannt hätte, z.B $datenDatei oder $datei.

      Dann ersetzt Du in dieser Variablen alle ; mit ; (was ausser reiner (Rechen-)Zeitverschwendung nix bewirkt und speicherst das in $erg (wieder so ein nichtsagender Variablenname). D.h. die Zeile ist komplett überflüssig.

      Und so geht das weiter. z.B.
      PHP-Code:
      while( ( $row  =  fgetcsv $filenum$filesize"," ))!== FALSE 
      Soll die Datei zeilenweise einlesen und dabei die kommagetrennten Werte in ein Array schreiben. Dummerweise gibt es in Deiner Datei mittelfeld.txt aber kein einziges Komma.

      Dann steht der Teil, wo Du die Werte aus $row in Variablen umwandest, VOR der while Schleife und nicht IN der Schleife. Und, und, und ...

      So, und bevor ich jetzt nen Koller kriege, weil Du mit 26 noch so einen Müll zusammcodest, höre ich lieber auf.
      Die zehn Gebote sind deswegen so kurz und logisch, weil sie ohne Mitwirkung von Juristen zustande gekommen sind. (Charles de Gaulle)

      Kommentar


      • #18
        sorry hab leider den falschen code erwischt, muss mal ein wenig aufpassen ich hantiere mit zu viel datein rum, das script funtzt schon ich lass mir in zukunft zeit bis ich was poste mein fehler!!!

        Kommentar

        Lädt...
        X