Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Dodo15

[Resolvido] Enviar nomes para um bd

Recommended Posts

Boa tarde

Gostaria de saber se tem como eu enviar varios nomes para um banco de dados, que estejam em 1 lista, por exemplo:

João;

Maria;

Roberto;

Luisa;

....;

(tudo isso 1 arquivo texto, com todos nomes juntos)

 

Gostaria de inserir de 1 por 1 nome em uma linha nova da tabela.

Tem como fazer isso no PHP?

 

Obrigado pela atenção

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde

Gostaria de saber se tem como eu enviar varios nomes para um banco de dados, que estejam em 1 lista, por exemplo:

João;

Maria;

Roberto;

Luisa;

....;

(tudo isso 1 arquivo texto, com todos nomes juntos)

 

Gostaria de inserir de 1 por 1 nome em uma linha nova da tabela.

Tem como fazer isso no PHP?

 

Obrigado pela atenção

 

Você pode estar lendo o arquivo.txt usando o fopen() e o fgets().

 

Após conseguir recuperar o conteudo do arquivo.txt, joga tudo em uma variável e usa o explode() pra separar os nomes.

Depois cria um foreach() pra fazer o cadastro no banco de dados.. ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos por partes.

 

names.txt

João;
Maria;

Roberto;
Luisa;

 

parser que irá construir as instruções(queries)

<?php

$names = file( 'names.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );

array_walk( 
   $names,
   function( &$sql )
   {
$sql = sprintf( 'INSERT INTO `table` ( `name` ) VALUES ( "%s" )', rtrim( $sql, ';' ) );
   } 
);

var_dump( $names );

 

Saída

array
 0 => string 'INSERT INTO `table` ( `name` ) VALUES ( "João" )' (length=48)
 1 => string 'INSERT INTO `table` ( `name` ) VALUES ( "Maria" )' (length=49)
 2 => string 'INSERT INTO `table` ( `name` ) VALUES ( "Roberto" )' (length=51)
 3 => string 'INSERT INTO `table` ( `name` ) VALUES ( "Luisa" )' (length=49)

 

:thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

MUITO OBRIGADO!

 

a minha ultima dúvida é: como eu posso mostrar esses nomes a partir do codigo em PHP, sem ter q buscar os nomes do db?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fica mais fácil ainda :P

 


<?php

foreach( preg_replace( '/;$/', null, file( 'names.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES ) ) as $name )
{
   echo $name, '<br/>';	
}

 

Saída

João
Maria
Roberto
Luisa

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse é um código de exemplo, para você entender como funciona.

 

 

Alias, deu certo sim, funciona, basta você editar a saída.

 

 

Estude o código.

 

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.