Ir para conteúdo

Arquivado

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

wneo

Direcionando de um form para outra página - (wizard)

Recommended Posts

Pessoal,

preciso de uma ajuda no redirecionamento...

 

- Imaginem 5 paginas com um formulário em cada uma...

- Ao preencher o formulário da pagina clico no submit(realizo insert dos dados no banco) e aih vem uma janela confirm "ok" ou "cancel",

 

Preciso fazer o seguinte:

- Caso clico em ok, vai pra página 2 ou se clico em cancel fico na mesma pagina...

 

Estou tentando assim:

<form action = "enviar.php" method="post">
Cidade:<input type="text" name="" id="cidade" required>
UF:<input type="text" name="" id="uf" required>
Bairro:<input type="text" name="" id="bairro" required>

<br>

Domínio:<input type="text" name="" id="dominio" required>
Cód RF:<input type="email_smtp" name="" id="codref" required>
<br>

E-mail:<input type="email" name="" id="email_matriz" required>

<br>

Fone Principal:<input type="text" name="" id="fone1" required>

Celular:<input type="text" name="" id="fone2" required>

<br>

<input type="hidden" value="<?php echo $_SESSION['id_usuario']; ?>" name="id_usuario">

<input type="submit" id="gravar" value="Gravar">


</form>

<?php
$id_usuario = $_SESSION['id_usuario'];
$id_usuario = $_POST['id_usuario'];
$id_emp = $_POST['id_emp'];

$sql = "INSERT INTO empresa(id_emp,id_usuario,logomarca) VALUES('','$name','$id_usuario')";

$resultado = mysql_query($sql);

if($resultado == 1){
echo"
<script>
confirm(você deseja enviar o cadastro?);
window.location.href = 'paginaSeguinte.php'
</script>";
}
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente colocar assim na ultima parte:

if($resultado == 1){
echo"
<script>
var alerta = window.confirm('Você deseja enviar o cadastro?'); 
if(alerta){
  window.location.href = 'paginaSeguinte.php';
}else{
  return;
}
</script>";
}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mikael, valew o apoio, mas olha só, não funcionou, a janela de confirm não apareceu e tbm não houve direcionamento...

 

 

Olha só,

fiz assim, coloquei a condição na página do formulário, chamando a função quando clico no submit. Dessa forma consegui fazer com que quando clico em OK passe para outra página e quando clico em cancel fique na mesma...Porém, os dados não estão sendo inseridos no banco..=/ está faltando algo que não estou conseguindo...

<html><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><head><title>Matriz</title><link rel="stylesheet" type="text/css" href="form_matriz.css" /><style>#header{border:1px solid #bbb;background:#bbb;top:0;left:0;width:100%;height:50px;position:fixed;}#form_align{margin-left:30%;}</style><script>function escolha() { if (confirm('Você deseja salvar?')) { window.location.href = 'ftp_logo.php'; } return false; }</script></head><body><div id="header"></div><div id="form_align" action="matriz_insert" method="post"><form id="form_matriz" name="" action="matriz_insert.php" method="post"><ul class="titul_dados1"> - Dados da Matriz/Filial -</ul> <br>Cadastrados:<select id="cadastrado" name="cadastrado" onchange="location = this.options[this.selectedIndex].value;">				<?phpinclude("conecta.php");$id_usuario = $_SESSION['id_usuario'];$dobanco= "SELECT * FROM empresa WHERE id_usuario='$id_usuario'";$exibe = mysql_query($dobanco);while ($row= mysql_fetch_array($exibe)){$id_emp= $row['id_emp'];echo("<option value='matriz_lista.php?id_emp=$id_emp'>".$row['r_social']."</option>");}?>			</select><br>Razão Social:<input type="text" name="r_social" id="r_social" title="Informe a Razão social da sua Empresa"><span class="toolspan"><a href="#">  i  <span class="tooltip bottom">Informação sobre a razão social</span></a></span><br>Nome Fantasia:<input type="text" name="nome_fan" id="nom_fan"><br>Cnpj:<input type="text" name="cnpj" id="cnpj">Creci:<input type="text" name="creci" id="creci"><br>RG:<input type="text" name="rg" id="rg">  Iss:<input type="text" name="iss" id="iss"><br>Endereço:<input type="text" name="ender" id="ender">N°:<input type="text" name="numero" id="numero"><br>Complemento:<input type="text" name="comple" id="comple"><input type="submit" value="Cep" id="cep"><input type="text" id="cep_txt" placeholder="00000-000"><br>Cidade:<input type="text" name="cidade" id="cidade">UF:<input type="text" name="uf" id="uf">Bairro:<input type="text" name="bairro" id="bairro"><br>Domínio:<input type="text" name="dominio" id="dominio">Cód RF:<input type="email_smtp" name="codref" id="codref"><br>E-mail:<input type="email" name="email_matriz" id="email_matriz"><br>Fone Principal:<input type="text" name="fone1" id="fone1">Celular:<input type="text" name="fone2" id="fone2"><br><input type="hidden" value="<?php echo $_SESSION['id_usuario']; ?>" name="id_usuario"><input type="submit" id="gravar" value="Gravar" onclick =" return escolha();"></form></div></body></html>

<?phpinclude('conecta.php');$id_usuario = $_SESSION['id_usuario'];$r_social = $_POST['r_social'];$nome_fan = $_POST['nome_fan'];$cnpj = $_POST['cnpj'];$creci = $_POST['creci'];$rg = $_POST['rg'];$iss = $_POST['iss'];$ender = $_POST['ender'];$numero = $_POST['numero'];$comple = $_POST['comple'];$cidade = $_POST['cidade'];$uf = $_POST['uf'];$bairro = $_POST['bairro'];$dominio = $_POST['dominio'];$codref = $_POST['codref'];$email_matriz = $_POST['email_matriz'];$fone1 = $_POST['fone1'];$fone2 = $_POST['fone2'];$sql = "INSERT INTO matriz(id_matriz, id_usuario, r_social, nome_fan, cnpj, creci, rg, iss, ender, numero, comple, cidade, uf, bairro, dominio, codref, email_matriz, fone1, fone2) VALUES('','$id_usuario','$r_social', '$nome_fan', '$cnpj', '$creci', '$rg', '$iss', '$ender', '$numero', '$comple', '$cidade', '$uf', '$bairro', '$dominio', '$codref', '$email_matriz', '$fone1', '$fone2')";$resultado = mysql_query($sql);?>

Pessoal.. alguém sabe aí?... :pinch:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ainda não...

 

Tenho um form na pagina 1 e nele apliquei o javascript:

<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<head>
<title>Matriz</title>

<link rel="stylesheet" type="text/css" href="form_matriz.css" />
<style>
#header{
border:1px solid #bbb;
background:#bbb;
top:0;
left:0;
width:100%;
height:50px;
position:fixed;
}

#form_align{
margin-left:30%;
}
</style>

<script>
function escolha() { 
if (confirm('Você deseja salvar?')) { 
window.location.href = 'smtp_logo.php'; 
} 
return false; 
}
</script>

</head>
<body>
<div id="header">
</div>

<div id="form_align">

<form id="form_matriz" name="" action="matriz_insert.php" method="post">
<ul class="titul_dados1"> - Dados da Matriz/Filial -</ul> 
<br>

Cadastrados:
<select id="cadastrado" name="cadastrado" onchange="location = this.options[this.selectedIndex].value;">

				<?php

include("conecta.php");

$id_usuario = $_SESSION['id_usuario'];

$dobanco= "SELECT * FROM empresa WHERE id_usuario='$id_usuario'";

$exibe = mysql_query($dobanco);

while ($row= mysql_fetch_array($exibe)){

$id_emp= $row['id_emp'];

echo("<option value='matriz_lista.php?id_emp=$id_emp'>".$row['r_social']."</option>");

}


?>

			</select>
<br>

Razão Social:<input type="text" name="r_social" id="r_social" title="Informe a Razão social da sua Empresa"><span class="toolspan"><a href="#">  i  <span class="tooltip bottom">Informação sobre a razão social</span></a></span>
<br>
Nome Fantasia:<input type="text" name="nome_fan" id="nom_fan">
<br>
Cnpj:<input type="text" name="cnpj" id="cnpj">
Creci:<input type="text" name="creci" id="creci">
<br>
RG:<input type="text" name="rg" id="rg">
  
Iss:<input type="text" name="iss" id="iss">

<br>

Endereço:<input type="text" name="ender" id="ender">
N°:<input type="text" name="numero" id="numero">
<br>
Complemento:<input type="text" name="comple" id="comple">
<input type="submit" value="Cep" id="cep">
<input type="text" id="cep_txt" placeholder="00000-000">


<br>

Cidade:<input type="text" name="cidade" id="cidade">
UF:<input type="text" name="uf" id="uf">
Bairro:<input type="text" name="bairro" id="bairro">


<br>


Domínio:<input type="text" name="dominio" id="dominio">
Cód RF:<input type="email_smtp" name="codref" id="codref">
<br>

E-mail:<input type="email" name="email_matriz" id="email_matriz">

<br>

Fone Principal:<input type="text" name="fone1" id="fone1">

Celular:<input type="text" name="fone2" id="fone2">

<br>

<input type="hidden" value="<?php echo $_SESSION['id_usuario']; ?>" name="id_usuario">

<input type="submit" id="gravar" value="Gravar" onclick =" return escolha();">


</form>

</div>
</body>
</html>

O action dele, vai pra esse php abaixo, onde deve fazer a inserção dos dados no banco:

<?php

include('conecta.php');

$id_usuario = $_SESSION['id_usuario'];
$r_social = $_POST['r_social'];
$nome_fan = $_POST['nome_fan'];
$cnpj = $_POST['cnpj'];
$creci = $_POST['creci'];
$rg = $_POST['rg'];
$iss = $_POST['iss'];
$ender = $_POST['ender'];
$numero = $_POST['numero'];
$comple = $_POST['comple'];
$cidade = $_POST['cidade'];
$uf = $_POST['uf'];
$bairro = $_POST['bairro'];
$dominio = $_POST['dominio'];
$codref = $_POST['codref'];
$email_matriz = $_POST['email_matriz'];
$fone1 = $_POST['fone1'];
$fone2 = $_POST['fone2'];

$sql = "INSERT INTO matriz(id_matriz, id_usuario, r_social, nome_fan, cnpj, creci, rg, iss, ender, numero, comple, cidade, uf, bairro, dominio, codref, email_matriz, fone1, fone2) VALUES('','$id_usuario','$r_social', '$nome_fan', '$cnpj', '$creci', '$rg', '$iss', '$ender', '$numero', '$comple', '$cidade', '$uf', '$bairro', '$dominio', '$codref', '$email_matriz', '$fone1', '$fone2')";

$resultado = mysql_query($sql);


?>

Dessa forma que montei, quando clico em "ok" vai para página seguinte, e se clico em "cancel" fico na página q estou.. o problema é que se clico em ok, deveria além de ir para outra página, inserir os dados no banco...entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é no return do botão, no seu primeiro post aqui você coloca ele no lugar certo, só o script que está errado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é no return do botão, no seu primeiro post aqui você coloca ele no lugar certo, só o script que está errado.

Entendo, tô perdido msmo... no post1 eu não conseguia fazer o ok e o cancel distinguirem.... vc poderia me mostrar como seria o correto, como fica o script no form, e como fica no php?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fugindo da dúvida principal, eu não aconselharia fazer isso:

<input type="hidden" value="<?php echo $_SESSION['id_usuario']; ?>" name="id_usuario">

<?php
$id_usuario = $_SESSION['id_usuario'];
$id_usuario = $_POST['id_usuario'];
$id_emp = $_POST['id_emp'];

$sql = "INSERT INTO empresa(id_emp,id_usuario,logomarca) VALUES('','$name','$id_usuario')";

$resultado = mysql_query($sql);

Todos os navegadores atuais contam com a opção de inspecionar elemento, vou dar exemplo do google chrome, se eu pressionar F12, posso mudar o HTML da página até que um refresh aconteça. Agora, imagine que um usuário mal intencionado mude esse valor: <input type="hidden" value="<?php echo $_SESSION['id_usuario']; ?>". Esta feito, um usuário poderia inserir dados com o id de um outro usuário, pois você definiu $id_usuario como $_POST['id_usuario'].

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fugindo da dúvida principal, eu não aconselharia fazer isso:

<input type="hidden" value="<?php echo $_SESSION['id_usuario']; ?>" name="id_usuario">

<?php
$id_usuario = $_SESSION['id_usuario'];
$id_usuario = $_POST['id_usuario'];
$id_emp = $_POST['id_emp'];

$sql = "INSERT INTO empresa(id_emp,id_usuario,logomarca) VALUES('','$name','$id_usuario')";

$resultado = mysql_query($sql);

Todos os navegadores atuais contam com a opção de inspecionar elemento, vou dar exemplo do google chrome, se eu pressionar F12, posso mudar o HTML da página até que um refresh aconteça. Agora, imagine que um usuário mal intencionado mude esse valor: <input type="hidden" value="<?php echo $_SESSION['id_usuario']; ?>". Esta feito, um usuário poderia inserir dados com o id de um outro usuário, pois você definiu $id_usuario como $_POST['id_usuario'].

 

Obrigado pelo alerta... mas como resolvo isso? como faço para que isso não aconteça?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Concordo com a sessão do usuário... a sessão fica ativa sem precisar fazer isso...

Voltando a dúvida...

 

<form action = "enviar.php" method="post">
Cidade:<input type="text" name="" id="cidade" required>
UF:<input type="text" name="" id="uf" required>
Bairro:<input type="text" name="" id="bairro" required>


<br>
Domínio:<input type="text" name="" id="dominio" required>
Cód RF:<input type="email_smtp" name="" id="codref" required>
<br>


E-mail:<input type="email" name="" id="email_matriz" required>
<br>


Fone Principal:<input type="text" name="" id="fone1" required>
Celular:<input type="text" name="" id="fone2" required>
<br>


<input type="hidden" value="<?php echo $_SESSION['id_usuario']; ?>" name="id_usuario">
<input type="submit" id="gravar" value="Gravar">
</form>






<?php
$id_usuario = $_SESSION['id_usuario'];
$id_usuario = $_POST['id_usuario'];
$id_emp = $_POST['id_emp'];


$sql = "INSERT INTO empresa(id_emp,id_usuario,logomarca) VALUES('','$name','$id_usuario')";


$resultado = mysql_query($sql);


if($resultado == 1){
echo"
<script>
if (confirm("Você deseja enviar o cadastro?")){
      window.location.href = "pagina2.php";
}
else {
window.history.back(-1);
}
</script>";
}
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Cara Perfeito!!!! É isso mesmo, muito obrigado!!!! resolvido=D

 

Fugindo da dúvida principal, eu não aconselharia fazer isso:

Posso criar um tópico sobre isso, você me ajudaria?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cria na área de PHP cara, vai ser melhor!

Certo!=) vou criar lá...

 

 

Cria na área de PHP cara, vai ser melhor!

Criei o tópico com esse título=):

Segurança URL Formulário ID via input

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.