Ir para conteúdo

POWERED BY:

Arquivado

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

fabiosc80

Como separar Valores

Recommended Posts

Uma vez perguntei uma coisa aqui mas nao cheguei ao fundo da resposta e gostaria por favor que me ajudassem.

 

tenho um formulario aonde um campo é o seguinte:

 

 <select multiple size="8" name="CodCliente">     <%   	 if NOT TB.EOF then       	 While NOT TB.EOF             	 response.write "<option value='"&TB("CodCliente")&"'>"&TB("Email")&"</option>"              TB.MoveNext       	 Wend   	 end if    %>  </select>

Ele é Multiple entao quando eu recupero o valor na outra pagina para enviar e-mail o valor vem assim...:

 

3, 4, 7

Sempre com uma virgula no meio.

 

Eu tinha que separar individualmente porem nao estou conseguindo. eu estou fazendo assim:

 

CodCliente     = Request("CodCliente")SepararCli = Split(CodCliente,",")

Porem esta dando esse erro aqui:

 

Response object error 'ASP 0106 : 80020005' Type Mismatch /corujato/admin/enocliente2.asp, line 0 An unhandled data type was encountered.

Alguem sabe oque é isso?

 

Agradeço a ajuda desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

provavelmente por causa dos espaços...tente antes de tudo remover os espaçosCodCliente = REPLACE(Request("CodCliente")," ","")SepararCli = Split(CodCliente,",")

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mario,

 

Fiz oque você falou e na hora de dar o response.write deu isso aqui:

Response object error 'ASP 0106 : 80020005' Type Mismatch /corujato/admin/enocliente2.asp, line 0 An unhandled data type was encountered.
Isso acontece mesmo se eu selecionar um registro só

 

Será que é pq preciso fazer um do while?

 

 

 

 

provavelmente por causa dos espaços...

 

tente antes de tudo remover os espaços

 

CodCliente = REPLACE(Request("CodCliente")," ","")

 

SepararCli = Split(CodCliente,",")

<{POST_SNAPBACK}>

Compartilhar este post


Link para o post
Compartilhar em outros sites

pra escrever os valores usa um forFOR I = LBOUND(SepararCli) TO UBOUND(SepararCli)response.write(SepararCli(I))NEXT

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro tente identificar em qual linha tá dando o erro, se na primeira ou na segunda.Após isto ficará mais fácil.1 - Caso seja na primeira linha, a variável CodCliente não suporta receber a string do Request.2 - Caso seja na segunda linha é a variável Separarcli que não suporta receber o array que vem do Split. Lembrando que erro de "type mismath" é como se fosse "tipo inválido" sei lá... sakou?Olha aí pra ficar mais fácil da gente te ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mario deu quase tudo certo.

Alias oque você falou até deu o problema esta sendo depois no select.

 

To com esse código aqui que esta dando erro na linha 18:

 

<!--#include file="conexao.asp"--><!--#include file="espiaoadm.asp"--><%Session.LCID = 1046Session.timeout = 30%><%Dim CodCliente,Assunto,Descricao,Sql,TB,BC,SepararCliCodCliente = REPLACE(Request("CodCliente")," ","")Assunto       = Trim(Replace(Request("Assunto"),"'",""))Descricao       = Trim(Replace(Request("Descricao"),"'",""))SepararCli = Split(CodCliente,",")FOR I = LBOUND(SepararCli) TO UBOUND(SepararCli)Sql = "Select * from Clientes where CodCliente="&SepararCli(I)Set TB = BC.Execute(Sql)	Set Mail = Server.CreateObject("Persits.MailSender")	Mail.isHtml = true	Mail.Host = "mail.buscaempresarial.com.br"	Mail.From = "admin@buscaempresarial.com.br"	Mail.FromName = "Corujato"		Mail.Addbcc Email	Mail.Subject = Assunto  Mail.Username = "admin@buscaempresarial.com.br"  Mail.Password = "251276"			mail.body = "Olá "&TB("Nome")&"<br><br>"&Descricao		if not mail.Send then    Response.Write " Ocorreu um erro no envio do email: <br>"    Response.Write mail.Response  Response.Write "<br><br><a href=""#"" onClick=""window.history.go(0);"">Tentar novamente</a>"  Response.End	end ifNEXT%>
A linha 18 é:

Set TB = BC.Execute(Sql)

 

que a Query é:

 

Sql = "Select * from Clientes where CodCliente="&SepararCli(I)

 

o erro que ta dando é esse aqui:

 

Microsoft VBScript runtime error '800a01a8'

 

Object required: ''

 

/corujato/admin/enocliente2.asp, line 18

Sabe o porque disso?

 

 

 

pra escrever os valores usa um for

 

FOR I = LBOUND(SepararCli) TO UBOUND(SepararCli)

response.write(SepararCli(I))

NEXT

<{POST_SNAPBACK}>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá.1-A variavel BC foi inicializada com o objeto connection??2-A variável TC foi declarada como uma recordset??3-Seria bom voce separar o 'CodCliente="&SepararCli(I)' pra ficar 'CodCliente=" & SepararCli(I)'. Separar o '&' dos campos. ok?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá.

 

1-A variavel BC foi inicializada com o objeto connection??

2-A variável TC foi declarada como uma recordset??

3-Seria bom voce separar o 'CodCliente="&SepararCli(I)' pra ficar 'CodCliente=" & SepararCli(I)'. Separar o '&' dos campos. ok?

fabio estas seriam as minhas perguntas tb...

 

o BC ta mesmo naquele include??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Descobri o erro aqui.

Foi mal.

 

Eu abro a conexao num arquivo a parte:

 

"conexao.asp"

 

Eu chamo ele por include e esqueci de carregar a variavel na tela que abre o banco...Desculpem.

 

Alias o sisteminha ficou perfeito.

Valeu pela ajuda de vcs.

Agora to indo pra uma loja virtual simples aqui. Se eu precisar de algo(oque não é dificil) vou abrir outro tópico beleza?

 

Olá.

 

1-A variavel BC foi inicializada com o objeto connection??

2-A variável TC foi declarada como uma recordset??

3-Seria bom voce separar o 'CodCliente="&SepararCli(I)' pra ficar 'CodCliente=" & SepararCli(I)'. Separar o '&' dos campos. ok?

<{POST_SNAPBACK}>

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok então fabio...

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.