Ir para conteúdo

POWERED BY:

Arquivado

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

4.b

gravar informação apenas se tiver uma virgula no meio

Recommended Posts

Olá Pessoa,

 

criei um sistema que importa uma lista em .txt com nomes e emails para um sistema de newsletter.

Estou com o seguinte problema, algumas pessoas estão tentando importar listas que os nomes não estejam separados por virgula...

 

CORRETO: Joaquin Silva, jojo@globo.com

ERRADO: Joaquin Silva jojo@globo.com

 

Como fazer um if para identificar isso heim?

 

Abaixo eu faço o loop usando um array para pegar cada nome e email que estão em cada linha do arquivo e gravar no banco. A categoria vem pelo request.

Pensei em colocar um IF que verifique se tem a bendita irgula mas nao consegui...

 

Do While f.AtEndOfStream = False
  arrayLinha=split(f.ReadLine,",",-1,1)
  Conexao.Execute "INSERT INTO Informativo_assinantes (nome, email, categoria) VALUES ('"&arrayLinha(0)&"', '"&arrayLinha(1)&"', '"&Request("categoria")&"')"
Loop

Alguem poderia me dar uma dica?

Valeu heim

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que o correto aí seria você verificar se o e-mail é válido ou não. Se não tiver vírgula ele não será válido.

 

Porque vírgula pode ter, mas em lugar errado... aí daria no mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado Hargon,

 

mas é que o usuario importa uma lista em TXT, por isso somente consigo fazer a validação lendo cada registro do txt.

precisava de um if mesmo que verificasse se existe essa virgula.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dê uma olhada na função InStr.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode fazer assim..

 

Dim ObjAbreArq, ObjFso, Var_Caminho 
Var_Caminho = Server.MapPath ("texto.txt") 
Set ObjFso = Server.CreateObject("Scripting.FileSystemObject") 
Set ObjAbreArq = ObjFso.OpenTextFile(Var_Caminho, 1, True, False) 

If ObjAbreArq.AtEndOfStream = True Then 
Response.Write "Não existe informações no arquivo!" 
Else 

contador = 0 

Do While Not ObjAbreArq.AtEndOfStream 
linha = ObjAbreArq.ReadLine 
icampo=Split(linha,",",-1,1)

você pode usar o SLPIT

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.