Ir para conteúdo

POWERED BY:

Arquivado

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

zoeira

Dados do formulário por open.window

Recommended Posts

Pessoal!Tem como enviar todos os dados de um formulário por open.window (mas tem que ser por metodo post!)?Agradeço desde já a ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

pq você naum coloca no action do form assim:<form name="frm" action="pagina.asp" target="_blank" method="post">no fim das contas funciona do msm jeito!beleza?

Compartilhar este post


Link para o post
Compartilhar em outros sites

pq você naum coloca no action do form assim:<form name="frm" action="pagina.asp" target="_blank" method="post">no fim das contas funciona do msm jeito!beleza?

Ae amigo! Muito obrigado pela sua atenção!Eu não expliquei direito antes:É uma página de geração de boletos.1ª página - monte um formulário com todos os campos que são necessários para a geração de boletos.Nesta página o usuário verifica esses dados e clica no botão "Confirmar e gerar boletos".2ª página - aqui é o problema. Eu preciso que, quando o usuário cair nesta página, o php envia para o banco de dados a informação de que o usuário já gerarou o boleto e ao mesmo tempo abra uma nova janela que vá para o site do banco e gere este boleto.Se eu simplesmente mandar o link pelo action do form, ele cairá direto na página do banco, sem me dar a oportunidade de enviar a informação para o banco de dados.OBS: O banco não me retorna a informação de que o usuário já gerou o boleto.Espero que tenha explicado melhor o meu problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

perai, deixa ve se entendi, você tem uma pag com um form e quando é submetido você qr q além d gravar no BD, abra uma janela confirmando q foi gravado no BD, naum é isso?OBS: BD(Banco de Dados)intaum você faz um submit, normal e quando chegar na outra pag, após o comando INSERT você abre a outra janela, naum é isso q você qr?veja se é o q t disse, ok?

Compartilhar este post


Link para o post
Compartilhar em outros sites

perai, deixa ve se entendi, você tem uma pag com um form e quando é submetido você qr q além d gravar no BD, abra uma janela confirmando q foi gravado no BD, naum é isso?OBS: BD(Banco de Dados)intaum você faz um submit, normal e quando chegar na outra pag, após o comando INSERT você abre a outra janela, naum é isso q você qr?veja se é o q t disse, ok?

Isso amigo! Logo após o comando INSERT eu quero que abra uma nova janela enviando todos os dados do form. O problema é que tem que ser com o metodo post.Já tentei fazer o open.window gravando, depois do .php?, as variaveis, porém a página do banco não aceita.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O banco me gera dos tipos de boletos: a 1ª via (que é gerado quando o cliente gera o boleto pela primeira vez e a 2ª via que é gerado sempre depois de ter gerado a 1ª via).O que ocorre é o seguinte:Na tabela do banco de dados existe um campo que se chama 'gerou'. Quando lançamos todos os boletos na base de dados, eles estão com o valor 'N' neste campo.O cliente entra na página do site, digita o CNPJ e o sistema busca, com base do CNPJ, todos os dados do boleto:Nome: XXXXXCNPJ: XXXXXXXVencimento: XXXXXXXValor: XXXXXXNumero do boleto: XXXXXX.....E ocultamente a página monta um form com todas as variaveis necessarias, com base nas informações do banco de dados, para enviar pra página do banco de gerar o boleto.Se o boleto está com 'N' no campo 'gerou', o script envia para o banco o código '2' (que é para o banco gerar a 1ª via). Se estiver 'S', significa que não é a primeira vez que o cliente está gerando este documento, então envia o código '21', para o banco gerar a 2ª via.Então qual é o problema?Em qual momento devo atualizar o banco de dados com um 'S'?Atualmente, quando o cliente entra na página, o php já atualiza o banco de dados com o 'S', mas isso é arriscado, pois muitas vezes o cliente entra na página e não clica no submit para gerar o boleto. E quando ele voltar, num outro momento, o banco de dados vai ver que está 'S' e vai mandar gerar uma 2ª via, mas ae na página do banco dá um erro, informando que não se pode gerar uma 2ª via sem ter gerado a 1ª via.Como farei então a atualização do banco de dados? O ideal seria que, no momento que o cliente clicar no submit do form (clique aqui e gere o seu boleto), atualizaria com o 'S' no banco de dados e já abriria a página com o boleto. Isso garante que ele gerou o boleto e não haverá erros.Muito obrigado pela sua atenção, amigo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho q entendi seu problema, ms naum estou entendo o q você precisa na prática fazer, você poderia ser um pouco + claro?...e q isso estamo aki pra isso msm, tá?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho q entendi seu problema, ms naum estou entendo o q você precisa na prática fazer, você poderia ser um pouco + claro?...e q isso estamo aki pra isso msm, tá?

Resumindo, eu preciso que, quando o cliente clicar no botão submit do formulário, ele faça a instrução SQL (de atualizar o campo 'gerou' com o 'S' e logo em seguida abrir a página do banco com todos os dados do formulário para gerar o boleto).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho intaum...você poderia na nova pag fazer um SELECT e criar um RECORDSET e nos campos do from você coloca no value="" deles o recordset dos campos, entendeu?assim:<input type="text" name="txt" value="rst("campo1")">assim você terá o msm valor na tabela(BD) e nos campos do form!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho intaum...você poderia na nova pag fazer um SELECT e criar um RECORDSET e nos campos do from você coloca no value="" deles o recordset dos campos, entendeu?assim:<input type="text" name="txt" value="rst("campo1")">assim você terá o msm valor na tabela(BD) e nos campos do form!

Acho que você não entendeu amigo.O form com os dados do banco de dados eu já tenho.Atualmente o que ocorre é o seguinte:<form action="http://www16.bancodobrasil.com.br/...." method="post" target="_blank><input type="hidden" name="idConv" value="38445"><input type="hidden" name="valor" value="45,00"><input type="hidden" name="vencimento" value="15112006"><?php if ($gerou == 'S') { ?> //variável que contém a informação do banco de dados se o cliente já gerou o boleto<input type="hidden" name="tipo" value="21"> //se já gerou este boleto antes, gera a 2ª via<?php } else { ?><input type="hidden" name="tipo" value="2"> //senão gera a 1ª via....<input type="submit" value="Gerar boleto"></form>O que ocorre com este form? Ele está perfeito! Ele me leva para a página do banco do brasil e me gera o boleto bancário!Mas o problema é o seguinte:Na primeira vez que o cliente chega para gerar este boleto, na base de dados consta um 'N' para ele, indicando que ele ainda não gerou este boleto, portando o banco gerará a 1ª via.Suponhamos que seja a minha primeira vez de gerar este boleto.1º - Entro na página2º - O script faz a busca no banco de dados pelo meu CNPJ que eu digitei antes.3º - Verifica que nunca gerei este boleto, então variável $gerou = 'N'.4º - Monta o form com as suas tags hidden, entre elas a hidden "tipo" envia para o banco do brasil o valor 2, para indicar que nunca gerei este boleto.5º - Clico no submit "Gerar boleto", vai numa nova página e me gera o boleto.PERFEITO.Mas em qual momento eu informei pro banco de dados que eu gerei um boleto? Eu preciso, no momento que eu clicar no submit, antes de sair gerando o boleto, atualizar o campo 'gerou' com um 'S', para que na outra vez que eu aparecer nesta página, o banco de dados jogue na variávei $gerou = 'S', para montar o form com o hidden "tipo" = 21 para gerar 2ª via.O banco do brasil me gera um erro: Se o cliente já gerou um boleto, e eu mandar novamente o form com o valor 2, (1ª via), ele acusa que o cliente já gerou este boleto e só é possível gerar 2 ª via. Mas ele só gera 2ª via se eu informar isso no form.Resumindo: o meu dilema é, depois de montado o form, como fazer duas coisas ao mesmo tempo: atualizar a base de dados e gerar o boleto?Será que ficou mais claro? Vamos tentando, uma hora vai dar certo isso! Valeu pela sua paciência amigo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo vamo ve se agora vai...você naum tá atribuindo valores diferentes p / o hidden d acordo com o resultado do if?pq naum faz um UPDATE com o novo valor do hidden?

Compartilhar este post


Link para o post
Compartilhar em outros sites

PRA RESUMIR TUDO ISSO QUE VCS ESTÃO FALANDO, você FAZ DA SEGUINTE FORMA:COLOCA O COMANDO java script: open.window() no comando onclick do botão do formulario, ou seja,onclick="java script: open.window();"OU SEJA, DAI ELE VAI CHAMAR A FUNÇÃO open.window que deverá estar na <head> da pagina.O QUE ACONTECERÁ?ACONTECERÁ QUE O INSERT SERA EXECUTADO NA PROPRIA PAGINA POP-UP QUE ABRIU E A MENSAGEM TB "CADASTRO INSERIDO COM SUCESSO" TB SERÁ EXIBIDO NESTA MESMA PAGINA.SACOU??WEBROGER

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.