Índice
Alguns projetos da web requerem o gerenciamento de grandes listas de dados, como produtos, vendas, usuário e listas de notícias.Muitas pessoas acham mais fácil ter esses dados off-line em uma planilha.
O objetivo deste tutorial é poder realizar a importação independente do programa, seja Excel ou Libreoffice ou outra opção disponível ao usuário.
Depois de criar um banco de dados MySQL, você precisa preenchê-lo com informações. Os dados do banco de dados geralmente estão contidos em um arquivo limitado por vírgulas, ou CSV, e precisam ser importados para o banco de dados MySQL. Esta é uma tarefa muito simples, usando as funções integradas do PHP que facilitam a importação de um arquivo CSV e a exportação para um banco de dados MySQL.
Neste caso, temos uma lista de preços de serviços e peças de computador.
Agora, independentemente da planilha e do sistema operacional em que estamos trabalhando, procuraremos a opção de exportar para o formato csv de texto separado por ponto-e-vírgula; Isso irá gerar um arquivo de texto simples onde as colunas serão substituídas por; e podemos lê-lo em qualquer plataforma ou idioma.
Vamos agora criar em um banco de dados mysql, supor Serviços e criar preços onde adicionaremos as informações do arquivo csv
[color = # 0000cd] CRIAR TABELA SE NÃO EXISTIR `preços` ([/ color]
[color = # 0000cd] `id` int (10) NOT NULL AUTO_INCREMENT, [/ color]
[color = # 0000cd] `concept` varchar (255) DEFAULT NULL, [/ color]
[cor = # 0000cd] `preço` decimal (10,2) PADRÃO NULL, [/ cor]
[cor = # 0000cd] CHAVE PRIMÁRIA (`id`) [/ cor]
[cor = # 0000cd]) MOTOR = CHARSET PADRÃO MyISAM = utf8 AUTO_INCREMENT = 1; [/ color]
Agora, o código php que faz todo o trabalho
[color = # 0000cd] <? // nos conectamos ao banco de dados [/ color]
[color = # 0000cd] $ connect = mysql_connect ('localhost', 'usuário', 'senha'); [/ color]
[color = # 0000cd] if (! $ connect) {[/ color]
[color = # 0000cd] die ('Não é possível conectar ao MySQL:'. mysql_error ()); [/ color]
[cor = # 0000cd]} [/ cor]
[color = # 0000cd] $ connectdb = mysql_select_db ('Services', $ connect); [/ color]
[color = # 0000cd] // Fazemos upload do arquivo csv que vem do formulário [/ color]
[color = # 0000cd] move_uploaded_file ($ _ FILES ["file"] ["tmp_name"], $ upload_dir. "/". $ FILES ["file"] ["tmp_name"]); [/ color]
[color = # 0000cd] $ cvs = $ upload_dir. "/". $ _FILES ["arquivo"] ["nome"]; [/ cor]
[color = # 0000cd] // linha contará o número de linhas no arquivo que começa em 0 [/ color]
[color = # 0000cd] $ row = 0; [/ color]
[color = # 0000cd] $ fp = fopen ($ cvs. "", "r"); [/ color]
[color = # 0000cd] while (! feof ($ fp)) {// Eu li o arquivo uma linha de cada vez [/ color]
[color = # 0000cd] $ row ++; [/ color]
[color = # 0000cd] // Eu pulo a primeira linha, pois ela contém os títulos e não estou interessado em inseri-los no banco de dados [/ color]
[color = # 0000cd] if ($ row> 1) {[/ color]
[color = # 0000cd] // A linha que li eu separo com explode e indico que está separada por; [/ color]
[color = # 0000cd] $ data = explode (";", fgets ($ fp)); [/ color]
[color = # 0000cd] $ id = $ data [0]; [/ color]
[color = # 0000cd] $ concept = $ data [1]; [/ color]
[cor = # 0000cd] $ preço = $ dados [2]; [/ cor]
[color = # 0000cd] $ query = "INSERT INTO prices (id, concept, price) VALUES ($ data [0], '$ data [1]', '$ data [2]')"; [/ color]
[color = # 0000cd] mysql_query ($ query, $ connect); [/ color]
[color = # 0000cd] // fim do loop while [/ color]
[cor = # 0000cd]} [/ cor]
[cor = # 0000cd]} [/ cor]
[color = # 0000cd] // feche o arquivo [/ color]
[color = # 0000cd] fclose ($ csv); [/ color]
[color = # 0000cd] echo "Importação concluída !!"; [/ color]
[color = # 0000cd] mysql_close ($ connect); [/ color]
[color = # 0000cd]?> [/ color]
Você também pode usar este script e torná-lo mais flexível, permitindo ao usuário registrar o arquivo em formato html com
[cor = # 0000cd] [/ cor]
[cor = # 0000cd] [/ cor]
[cor = # 0000cd] [/ cor]
e, portanto, ser capaz de fazer upload de arquivos CSV e importar dados desse arquivo CSV para qualquer banco de dados mysql ou mesmo para vários de um único arquivo. Muitos ajustes podem ser feitos com este script e utilizá-lo da maneira desejada.
Também pode ser usado quando muitos usuários devem fazer upload de informações para um site, extratos de clientes ou contas, cada um pode usar o software que mais lhe convier e, em seguida, fazer o upload de todos no mesmo formato compatível para todos.Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo