Importera en fil från en beräkningsmall till Mysql med php

Innehållsförteckning
Vissa webbprojekt kräver hantering av stora datalistor som produkt-, försäljnings-, användar- och nyhetslistor.
Många tycker att det är lättare att ha denna data offline i ett kalkylblad.
Målet med denna handledning är att kunna utföra importen oavsett program, oavsett om det är Excel eller Libreoffice eller ett annat alternativ som är tillgängligt för användaren.
När du har skapat en MySQL -databas måste du fylla i den med information. Databasdata finns vanligtvis i en kommagränsad fil, eller CSV, och måste importeras till MySQL-databasen. Detta är en mycket enkel uppgif.webpt med PHP: s inbyggda funktioner som gör det enkelt att importera från en CSV-fil och exportera den till en MySQL-databas.
I det här fallet har vi en prislista för tjänster och datordelar.

Oavsett kalkylblad och vilket operativsystem vi arbetar med, letar vi efter alternativet att exportera till text -csv -format åtskilda av semikolon; Detta genererar en enkel textfil där kolumnerna kommer att ersättas av; och vi kan läsa den från valfri plattform eller språk.

Vi ska nu skapa i en mysql -databas, anta Tjänster och skapa priser där vi lägger till informationen från csv -filen
[color = # 0000cd] SKAPA TABELL OM DET INTE GÅR 'priser' ([/ färg]
[color = # 0000cd] `id` int (10) NOT NULL AUTO_INCREMENT, [/ color]
[color = # 0000cd] `concept` varchar (255) DEFAULT NULL, [/ color]
[color = # 0000cd] `price` decimal (10,2) DEFAULT NULL, [/ color]
[color = # 0000cd] PRIMÄR KEY (`id`) [/ color]
[color = # 0000cd]) ENGINE = MyISAM DEFAULT CHARSET = utf8 AUTO_INCREMENT = 1; [/ color]
Nu är php -koden som gör allt arbete
[color = # 0000cd] <? // vi ansluter till databasen [/ color]
[color = # 0000cd] $ connect = mysql_connect ('localhost', 'user', 'password'); [/ color]
[color = # 0000cd] if (! $ connect) {[/ color]
[color = # 0000cd] die ('Kan inte ansluta till MySQL:'. mysql_error ()); [/ color]
[color = # 0000cd]} [/ color]
[color = # 0000cd] $ connectdb = mysql_select_db ('Services', $ connect); [/ color]
[color = # 0000cd] // Vi laddar upp csv -filen som kommer från formuläret [/ color]
[color = # 0000cd] move_uploaded_file ($ _ FILES ["file"] ["tmp_name"], $ upload_dir. "/". $ FILES ["file"] ["tmp_name"]); [/ color]
[color = # 0000cd] $ cvs = $ upload_dir. "/". $ _FILES ["file"] ["name"]; [/ color]
[color = # 0000cd] // rad räknar antalet rader i filen börjar med 0 [/ color]
[color = # 0000cd] $ rad = 0; [/ color]
[color = # 0000cd] $ fp = fopen ($ cvs. "", "r"); [/ color]
[color = # 0000cd] medan (! feof ($ fp)) {// jag läste filen en rad i taget [/ color]
[color = # 0000cd] $ rad ++; [/ color]
[color = # 0000cd] // Jag hoppar över den första raden eftersom den har titlarna och jag är inte intresserad av att infoga dem i databasen [/ color]
[color = # 0000cd] if ($ rad> 1) {[/ color]
[color = # 0000cd] // Linjen som jag läser separerar den med explode och jag anger att den är åtskild med; [/ color]
[color = # 0000cd] $ data = explode (";", fgets ($ fp)); [/ color]
[color = # 0000cd] $ id = $ data [0]; [/ color]
[color = # 0000cd] $ concept = $ data [1]; [/ color]
[color = # 0000cd] $ price = $ data [2]; [/ color]
[color = # 0000cd] $ query = "SKRIV IN I priser (id, koncept, pris) VÄRDEN ($ data [0], '$ data [1]', '$ data [2]')"; [/ color]
[color = # 0000cd] mysql_query ($ query, $ connect); [/ color]
[color = # 0000cd] // slutet av medan loop [/ color]
[color = # 0000cd]} [/ color]
[color = # 0000cd]} [/ color]
[color = # 0000cd] // stäng filen [/ color]
[color = # 0000cd] fclose ($ csv); [/ color]
[color = # 0000cd] eko "Importen klar !!"; [/ color]
[color = # 0000cd] mysql_close ($ connect); [/ color]
[color = # 0000cd]?> [/ color]
Du kan också använda detta skript och göra det mer flexibelt, så att användaren kan registrera filen i en html -form med
[color = # 0000cd] [/ color]
[color = # 0000cd] [/ color]
[color = # 0000cd] [/ color]
och därmed kunna ladda upp CSV -filer och importera data från den CSV -filen till valfri mysql -databas eller till och med flera från en enda fil. Det finns många justeringar som kan göras med detta skript och använda det på önskat sätt.

Det kan också användas när många användare måste ladda upp information till en webbplats, klientuttalanden eller konton, var och en kan använda den programvara som passar dem bäst och sedan ladda upp dem alla i samma kompatibla format för alla.Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave