PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Aus Textdatei in Datenbank schreiben (http://www.selfphp.de/forum/showthread.php?t=9598)

pyton 24.01.2005 19:56:32

Aus Textdatei in Datenbank schreiben
 
Ich habe hier ein Problem und komme echt nicht weiter.
Und zwar habe ich eine Sicherungsdatei (.txt) in der alle Datensätze mit dem Trennseperator "§" getrennt sind und die verschiedenen Datenblöcke stehen zeilenweise untereinander.

also etwa:
name§nachname§ort
name1§nachname1§ort1

Nun möchte ich die Daten mittel folgenden Quellcode wieder in die Datenbank lesen, geht aber nicht ...


$datenbank="test";
$tabelle="test";
$db=@mysql_connect() or die ("keine Verbidung zur Datenbank");
@mysql_select_db($datenbank, $db) or die ("keine Verbindung zur Datenbank");
$daten = file($userfile);

for($b=0; $b<count($daten); $b++)
{
$dat= explode("§",$daten[$b]);
$sql="INSERT INTO ".$tabelle."(anrede, vorname, name, ort) VALUES (";

for($c=0; $c<count($dat)-1; $c++)
{
$sql.="'".$dat[$c]."', ";
}

$sql.="'".$dat[$c]."');";
$res= mysql_query($sql, $db);
echo $sql . "<br><br>";
}

mysql_close($db);
if($res)
{
echo "Schreiben abgeschlossen";
}

else
{
echo "Bei dem Versuch, in die Tabelle zu schreiben ist ein Fehler aufgetreten: <br>nFehler-Nummer:
<b>".mysql_errno($db)."</b><br>Fehler-Ausgabe:
<br>".mysql_error($db)."</b>";
}
}



kann mir vielleicht mal jemand sagen wo der Fehler liegt?
Fehlermeldung:
Warning: 1 is not a valid MySQL-Link resource in test.php on line 78

Warning: 1 is not a valid MySQL-Link resource in test.php on line 79
Bei dem Versuch, in die Tabelle zu schreiben ist ein Fehler aufgetreten:

|Coding 24.01.2005 21:09:03

hi

schau dir mal an wie du "mysql_connect" ausführst und vergleich es mal hier mit:

mysql_connect($server, $username, $password)

pyton 24.01.2005 21:37:01

Hi Greetz,

der Fehler muss irgendwie in der Parameterübergabe für INSERT liegen, ich weiß nur nicht wo.

Die Ausgabe von $sql sieht übrigens so aus:

INSERT INTO kundendaten(anrede, vorname, name, ort) VALUES ('Herr', 'Tester', 'Mustermann', 'Musterstadt');


... hier ist für mich kein Fehler ersichtlich - trotzdem funktioniert es nicht.

xabbuh 24.01.2005 22:30:16

Zwischen dem Tabellennamen und der öffnenden runden Klammer sollte eigentlich ein Leerzeichen sein.
Fehler in MySQL-Abfragen findest du übrigens relativ einfach durch Benutzung der Funktion mysql_error():
PHP-Code:

<?php
    $result 
mysql_query($sql) or die(mysql_error());
?>



Alle Zeitangaben in WEZ +2. Es ist jetzt 14:59:58 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.