php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.10.2005, 00:22  
Gast
 
Beiträge: n/a
Standard csv import per php

hallo leute

habe bei mir lokal eine access-db, in welche ich täglich daten einpflege. für meine website arbeitet im netz eine mysql datenbank. nun ist es jeweils etwas aufwendig, die daten aus access zu mysql zu transferieren.

kann mir hier jemand eine gangbare möglichkeit nennen, wie ihr die daten am schnellsten aus access ins mysql importieren würdet?

ich kopiere jeweils die access-tabellen ins excel, speichere da alles als CSV-File ab und dann kann ich das CSV-File in phpmyadmin importieren.

da es aber 21 tabellen sind, ist es etwas aufwendig, immer 21 x exportieren und 21 x importieren

gäbe es evtl eine code-variante, mit welcher ich alle 21 csv files mit einer php-datei uploaden kann (sobald die datei im browser aufgerufen wird, importiert php meine csv files in mysql?

<?php
mysql_select_db($database_edmoil, $edmoil);
$query_edm_standings = "SELECT * FROM edm_standings";
$edm_standings = mysql_query($query_edm_standings, $edmoil) or die(mysql_error());
$row_edm_standings = mysql_fetch_assoc($edm_standings);
$totalRows_edm_standings = mysql_num_rows($edm_standings);
$sql = 'LOAD DATA LOCAL INFILE ''\csv\edm_standings.csv'' REPLACE INTO TABLE `edm_standings` FIELDS TERMINATED BY '';'' ENCLOSED BY ''"'' ESCAPED BY ''\\\\'' LINES TERMINATED BY ''\\r\\n''';
?>

<body>
Update erfolgreich!
</body>
</html>
<?php
mysql_free_result($edm_standings);
?>

das hier hab ich mal versucht, um EIN csv-file zu importieren... will aber irgendwie nicht

Parse error: parse error in D:\test\db_update.php on line 7

sowas hab ich dann als meldung

herzlichen dank für eure hilfe.
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 08.10.2005, 00:29  
Gast
 
Beiträge: n/a
Standard

http://de3.php.net/manual/de/function.fgetcsv.php

mfg
 
Alt 20.10.2005, 20:55  
Gast
 
Beiträge: n/a
Standard

hi leute... nochmals ich hab jetzt eine version, welche soweit funktioniert...

NUR: ist euch das problem bekannt, dass beim import durch ein skript in der letzten spalte der mysql-tabelle jeweils noch ein leerschlag hinter den letzten buchstaben des wortes gesetzt wird?

dies hat nämlich jetzt einen schwerwiegendes problem aufgedeckt: auf der website fragt die page ab, ob "SRC LIKE 'Ja' ist. wenn jetzt der wert in der DB nicht 'Ja' sondern 'Ja ' ist, so gibt er keine resultate zurück!!

wie kann ich das korrigieren?

hier der quellcode des skripts... wie gesagt, funktioniert alles bestens, bis dass der sack in der letzten spalte noch einen leerschlag einfügt...

p.s.: wenn ich das csv in einem text-editor öffne, hats KEINEN leerschlag da hinten!! füge ich das file mit phpmyadmin ein, so klappt es ebenfalls OHNE diesen leerschlag... ist am skript was falsch oder warum generiert der pc diesen zusätzlichen leerschlag?

<?php

$db_MenuTitle[0] = "Name im Pulldown-Menü";
$db_Hostname[0] = "hostname";
$db_UserName[0] = "UserName";
$db_Password[0] = "Password";
$db_Database[0] = "Database";
$db_Table[0] = "Table";
$db_File[0] = "File";
$db_Terminated[0] = ";";

if (isset ($select_db)) {

// Connect zur Datenbank

mysql_connect($db_Hostname[$select_db], $db_UserName[$select_db], $db_Password[$select_db]) || die("Can't Connect to Database: ".mysql_error());
mysql_select_db($db_Database[$select_db]);

// Bisherige Daten aus der Datenbank l&ouml;schen
$del = "DELETE FROM ".$db_Table[$select_db];

// CSV-Datei in die Datenbank &uuml;bertragen
$sql = "LOAD DATA INFILE '$db_File[$select_db]' REPLACE INTO TABLE ".$db_Table[$select_db]." FIELDS TERMINATED BY '$db_Terminated[$select_db]'";

// MySQL-Statements ausf&uuml;hren
if (mysql_query ($del) and mysql_query ($sql)) {
$message = "&Uuml;bertragung erfolgreich";
}
else {
$message = "&Uuml;bertragung fehlgeschlagen. Grund: ". mysql_error ();
}


}




// Generierung des DropDown-Menues

function generate_dropdown () {

global $db_MenuTitle, $db_Hostname, $db_UserName, $db_Password, $db_Table, $db_File, $db_Terminated;


if (is_array ($db_MenuTitle)) {

reset ($db_MenuTitle);

while (list ($key, $val) = each ($db_MenuTitle)) {
echo "<option value=\"".$key."\">".$val."</option>";
}

}

}


?>



<html>
<head>
<title>CSV Import nach MySQL</title>
</head>
<body bgcolor="#EAEAEA">
<form action="<?php echo $PHP_SELF; ?>" method="POST">
<table border="0" cellspacing="0" cellpadding="5" bgcolor="#C0C0C0" width="50%">
<tr>
<th>CSV Import nach MySQL</th>
<th></th>
</tr>
<tr valign="bottom">
<td>
<select name="select_db" size="<?php echo count ($db_MenuTitle); ?>">
<?php generate_dropdown (); ?>
</select>
</td>
<td>
<input type="Submit" name="submit" value="Und los!">
</td>
</tr>
</table>
</form>



<?php echo $message; ?></p>

</body>
</html>
 
Alt 21.10.2005, 06:39  
Gast
 
Beiträge: n/a
Standard

SELECT * FROM [db_table] WHERE SRC REGEXP 'Ja' ORDER BY DATUM DESC, ID ASC

das wär dann die Lösung trotzdem komisch, dass einfach noch ein leerzeichen reingehauen wird. wenn doch jemand weiss, warum das passiert, wärs natürlich super, das zu erfahren.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Umlaute nach CSV Import in MySQL Javahasser Datenbanken 4 25.07.2008 19:43
Umlaute ä,ö,ü und ß werden beim SQL Import nicht übernommen Plague Datenbanken 7 17.09.2007 17:28
[Erledigt] Import von Textdatei nicht möglich Datenbanken 6 16.02.2006 14:21
MySQL-DB export mit anschl. import in neue DB Heart Datenbanken 1 15.12.2005 12:11
*.csv Import in Firebird 1.5 DB mit php PHP Tipps 2007 1 08.12.2005 16:18
[Erledigt] csv import PHP-Fortgeschrittene 1 03.10.2005 20:22
Timeout - SQL-Server Fehlermeldung beim Import bendigo PHP Tipps 2005-2 3 08.07.2005 20:41
[Erledigt] Import einer *.sql-Datei über den mysql-client Datenbanken 2 25.05.2005 19:03
Import von Netscape Mail nach Outlook Express Off-Topic Diskussionen 6 10.05.2005 09:12
Wie lautet die Variable für den Import von Dateien? MerlinderZauberer Datenbanken 2 29.03.2005 13:39
IMPORT von UPDATE Anweisungen aus txt-File... Datenbanken 1 05.11.2004 08:48
MySQL Import über txt-File... PHP Tipps 2004 2 03.11.2004 22:46
[Erledigt] phpMyAdmin Problem - Nach import immer Fehlermeldung Datenbanken 6 29.09.2004 15:55
[Erledigt] csv datei in tabelle import. Datenbanken 0 24.09.2004 15:58

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
csv import php, csv in access importieren php, import csv table to a text editor, csv via php importieren, access web import php, access import php, set locale centos 6, problem datenimport php umluat 1. buchstabe, php einlesen csv in mysql auswahl menü, mittels php csv importieren und parsen, csv via php parsen, phpmyadmin import csv datumformat, load data local infile äöü, csv php import formular, load data local infile phpmyadmin import csv umlaute, mysql csv import erster buchstabe umlaut, csv access täglich aktualisieren, parsing import csv with umlauts php, server liest umlaute aus csv falsch php, csv import php timeout

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:53 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.