korvo Postado Abril 8, 2004 Denunciar Share Postado Abril 8, 2004 Se eu fazer uma validação no formulário de registro, terei menos problemas com brechas no bd?respondam aqui. não aguento mais ficar indo em tópicos e ficar boiando Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Bicicleta Postado Abril 8, 2004 Denunciar Share Postado Abril 8, 2004 ãh?você não faz validação no formulário???Explica melhor ai fio! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Abril 8, 2004 Denunciar Share Postado Abril 8, 2004 que tipo de validação você esta falando?As brechas do campo autonumeração, que foi abordado em outros tópicos, é a seguinte:- você tem uma tabela, no banco, com um campo de autonumeração. - você cria um formulario, que cadastre registros na tabela.- A cada novo registro, o campo de autonumeração é incrementado em 1.- E se você tiver 50 registros.- A estrutura será: 1,2,3,4,5,6,... (no campo autonumeração).- Se você apagar toda a linha 2, por exemplo. (usando o DELETE).- Sua estrutura ficará: 1,3,4,5,6... (sem o numero 2, que é ali a brecha)Entendeu do que estavamos falando naquele tópico (que o guto criou)?abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Victor Postado Abril 8, 2004 Denunciar Share Postado Abril 8, 2004 Como assim validação no formulario de registro, você fala para não perder os dados...isso?? []'sVictor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 korvo Postado Abril 9, 2004 Autor Denunciar Share Postado Abril 9, 2004 validação feita com javascript, só pra checar se os campos foram todos preenchidos. acho q é isso que ta dado brechas no bd. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Victor Postado Abril 9, 2004 Denunciar Share Postado Abril 9, 2004 Ai você quer fazer isso em ASP certo??? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 korvo Postado Abril 9, 2004 Autor Denunciar Share Postado Abril 9, 2004 java script mesmo. fica melhor pra mim, porque o usuário não ta afim de fica voltando toda vez pra corrigi alguma coisa.eu tenho já o código aki.eu acho q com uma validação antes, vai evitar o problema de brechas no bd.Afinal, qual o q ocasiona brechas no bd? algum campo requerido no meu bd que o usuário não informou no cadastro? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Victor Postado Abril 9, 2004 Denunciar Share Postado Abril 9, 2004 cara to perdido no q você ta falando, não entendi nadica de nada, pode ser um pouco mais claro?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Abril 9, 2004 Denunciar Share Postado Abril 9, 2004 cara to perdido no q você ta falando, não entendi nadica de nada, pode ser um pouco mais claro?? Você perdido? Não mesmo!Olha o korvo.. hehehe, esse sim tá viajando, perdido..Brincadeira!!!Aí korvo, nem eskenta, aki todo mundo se ama Assim, o que causa a tal brecha no BD na qual falamos é assim:digamos q nosso bd tem 3 registros, ou seja, existem 3 pessoas cadastras.Você, o Victor e Eu, correto.Sendo que você foi o segundo a se cadastrar; O vitor foi o último e eu o primeiro.Então, eu tenho o ID = 1Você o ID = 2o Victor o ID = 3Logo temos uma contagem de 1 à 3.Assim: 1, 2 e 3.Dae você sentia-se perdido (hehe) no nosso site, e resolveu remover seu cadastro, cancelou-o.Então eu como admin fui lá e apaguei o seu registro.então agora o nosso BD tem apenas dois registros.Então, ele se encontra assim agora:1 e 3Nota-se que falta o ID de nº igual a 2.O que parece ser uma falha na contagem, dae isso é que chamei de "brecha" no BD.Sacou?Dae nakele tópico estamos discutindo em como fazer o repreenchimento deste ID, ou seja, para que o próximo cara que for se cadastrar, ao invés de ocupar o ID = 4, ele ocupar o da brecha, então receber o ID = 2, sacou maninho?Essa função eu já fiz e tenho no pc, só quero ajudar a galera a saber fazer isso e tudo mais.Mas no mais o pessoal pelo jeito já sabe fazer.Dae o nosso amigo URSÃO, brother, citou em fazer algo diferente.De não precisar esperar o próximo visitante a se cadastrar pra preencher a "brecha", mas sim, quando o cara remover o seu cadastro, autoticamente fazer a re-indexação da tabela, ou seja, remontar a ordem dos ID's sem deixar uma falha na contagem.Vamos fazer um novo exemplo.Temos um banco de dados com 100 registros, ou seja, 100 pessoas cadastradas.O cara com o ID = 50 resolve remover o seu cadastro, então ficamos com uma brecha no ID de nº50.De 1 a 100, falta o 50 então.Dae na hora que isso acontecer, transformarmos o ID 51 em 50, e o 52 em 51, 53 em 52 e assim por diante, sacou?É isso a tal brecha no BD.Quanto a sua dúvida.Faça uma validação em javascript e depois em asp no seu formulário.Pois o javascript só proteje no cliente, e caso o cliente não tenha suporte a javascript ou edite seu código, você estará vulnerável.Então se você fazer a proteção com o asp também, dae tudo ficará beleza. 99,9% protegido! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 korvo Postado Abril 9, 2004 Autor Denunciar Share Postado Abril 9, 2004 entendi tudo agora. o q seria uma boa resposta para o meu poblema é fazer como o URSÃO, de fazer uma re-indexação.mas o meu problema anterior, das brechas, não foram ocasionadas por eu ter removido o registro. estão acontecendo "sozinhas". eu acho q é porque, como tinha falado antes, do usuário não digitar um campo requerido, fazendo q não seja salvo o registro todo. Será isso o problema de não criar o registro completo e não ser exibido no bd? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Abril 9, 2004 Denunciar Share Postado Abril 9, 2004 Cara, você tá falando do cara não preencher o campo e dae ficar o campo em branco?Se for isso, não é uma "brecha"!Forçe o cara a preencher os campos usando condiçõesIf request("campo") = "" or IsNull(rsquest("campo")) Then Response.Write "campo inválido, volte e corrija else 'deixa o cara continuar o processo End if" Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 korvo Postado Abril 9, 2004 Autor Denunciar Share Postado Abril 9, 2004 Não só o campo como todo o registro fica em branco.no caso, esta validação eu colocaria no "enginer" q vai gravar no bd?tipo, o meu tem o formulario, e envia com o action=envia.asp<form action=envia.asp> aí tem o "enginer" q é o envia.asp <% StrName = replace(Request("Name"),"'","''") StrEmail = replace(Request("Email"),"'","''") StrComment = replace(Request("Comment"),"'","''") dbfile=Server.MapPath("guestbook.mdb") Set OBJdbConnection=Server.CreateObject("ADODB.Connection") OBJdbConnection.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&dbfile sql_ins="INSERT into Comment (Name, Email, Comment) VALUES " & _ "('" & StrName & "', '" & StrEmail & "', '" & _ StrComment & "') " Set rs1 = Server.CreateObject("ADODB.Recordset") rs1.Open sql_ins, OBJdbConnection, 3, 3 Response.Redirect("guestbook.asp") %> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Victor Postado Abril 9, 2004 Denunciar Share Postado Abril 9, 2004 Deixa eu ver se entendi, você quer q quando alguém envia um email grava no bd também??? []'sVictor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 korvo Postado Abril 9, 2004 Autor Denunciar Share Postado Abril 9, 2004 Não, eu só quero saber onde coloco aquele código do GUTOIf request("campo") = "" or IsNull(rsquest("campo")) Then Response.Write "campo inválido, volte e corrija else 'deixa o cara continuar o processo End if"no meu código q tá no meu ultimo post. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Abril 10, 2004 Denunciar Share Postado Abril 10, 2004 <% StrName = replace(Request("Name"),"'","''") StrEmail = replace(Request("Email"),"'","''") StrComment = replace(Request("Comment"),"'","''") If strName = "" or IsNull(strName) or strEmail = "" or IsNull(strEmail) or strComment = "" or IsNull(strComment) Then Response.Write "campos inválidos... todos os campos tem de ser preenchidos, volte e corrija" Else dbfile=Server.MapPath("guestbook.mdb") Set OBJdbConnection=Server.CreateObject("ADODB.Connection") OBJdbConnection.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&dbfile sql_ins="INSERT into Comment (Name, Email, Comment) VALUES " & _ "('" & StrName & "', '" & StrEmail & "', '" & _ StrComment & "') " OBJdbConnection.Execute(sql_ins) Response.Redirect("guestbook.asp") End If %>Brother, vi que você tem um nível de ASP bem básico, recomendo á você que faça um curso de ASP no site http://www.iPED.com.br e também pegue alguns tutorias e tente aprender.Tente criar alguns códigos e vá testando.É a melhor forma de aprender. Lembre-se: "Se você quer bem feito, faça você mesmo" Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
korvo
Se eu fazer uma validação no formulário de registro, terei menos problemas com brechas no bd?
respondam aqui. não aguento mais ficar indo em tópicos e ficar boiando
Link para o comentário
Compartilhar em outros sites
14 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.