Então, estou criando uma aplicaçãozinha web e me bati com umas dúvidas que listo abaixo:
quando o usuário acessa a pagina “cadastro.jsp” um form exibe alguns campos para ele preencher. até ai tudo bem… quando eu clico no botão do submit, ele retorna para a mesma pagina (request.getRequestURI()) …
então na mesma pagina no começo existe uma parte que detecta se o usuário está voltando com valores de um request da seguinte forma: if (request.getParameter(“nome”) != null) …
Existe alguma forma mais elegante de verificar se o usuário está retornando com um formulário preenchido?
supondo que eu queira pegar apenas os valores do que vier em POST… o request.getParameter(“campo”) retorna o que tiver em Post e Get, certo? então, no PHP tem algo que é tipo $_POST[‘campo’] que retorna apenas o que vier de um Post… no JSP seria como?
Os campos que colocamos como hidden, tipo fica no cliente ou no servidor?
eu acredito que ficam no cliente, pq com javascript é possível alterar o que tiver nesse campo, certo? então se fica no cliente é possível “hackear” os valores desse campo certo? então é seguro usar ele para validações???
Qual a diferença entre o request.getParameter() e o request.getAttribute() ??
existe alguma função semelhante ao isset() do php? que verifica se um campo possui valor ou não? no jsp estou usando ifs para isso, gostaria de saber se tem alguma outra forma mais simples de fazer isso, semelhante ao isset do php!!
bom é isso, espero que não tenha sido muita coisa. agradeço a ajuda.
Não existe funcao em jsp semelhante para vc verificar se existe um valor num campo vc sempre tem que comparar com null (if(request,getParameter(campo)!=null)
getParameter pega um parametro passado pelo method POST ou GET, enquanto getAttribute vc pega de uma sessao => sessao.getAttribute("nome")
[quote=thiago.filadelfo]olá
Então com o request tem retorno uma string, aconselho a fazer esse if
if (!"".equals(request.getParameter("x")) && request.getParameter !=null)
Assim vc garante que tem algo como parametro!!
Blz… foi mais uma observação… já tive vários probleminhas por causa disto… srsrsr
Flwssss
espero ter ajudado[/quote]
Bem lembrado, tive que adaptar o código aqui conforme esse esquema também…
Agente observa as diferenças entre uma linguagem concebida para desenvolvimento web (php) e uma que não foi criada nessa intenção a priori nessas pequenas coisas!!! um “isset” ai pouparia muita re-digitação :(!
Então, estou criando uma aplicaçãozinha web e me bati com umas dúvidas que listo abaixo:
quando o usuário acessa a pagina “cadastro.jsp” um form exibe alguns campos para ele preencher. até ai tudo bem… quando eu clico no botão do submit, ele retorna para a mesma pagina (request.getRequestURI()) …
então na mesma pagina no começo existe uma parte que detecta se o usuário está voltando com valores de um request da seguinte forma: if (request.getParameter(“nome”) != null) …
Existe alguma forma mais elegante de verificar se o usuário está retornando com um formulário preenchido?
[/quote]
A maneira correta é você testar cada um, mas voce pode procurar por um só campo e ver se ele está preenchido.
Qualquer campo no HTML é do cliente, o servidor não os conhece até receber uma requisição. Um campo hidden é um campo onde o usuário não vê normalmente mas sabe que está lá. Se queres realmente validar algo, terás que validar tanto no cliente quanto no servidor.
Atributos são dados alheios ao cliente, não são criados por eles e sim passados do servidor ao cliente, como dados do certificado SSL que está sendo processado. Parametros são os dados que o cliente passa ao servidor.
Não, mas isso não impede de você o fazer se for tão necessário.
[quote=tiagomac]
bom é isso, espero que não tenha sido muita coisa. agradeço a ajuda.