Ir para conteúdo

POWERED BY:

Arquivado

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

Jonatã Cioni

tem como passar valores de varias variaveis por href?

Recommended Posts

bom galera... estou querendo fazer o seguinte...

 

meu caso eh o seguinte...

 

estou tentando passar valores de varias variaveis por um unico link <action="pagina.php?acao=nomedaacao&valorum=$variavel1&valordois=$variavel2&valortres=$variavel3&valorquatro=$variavel4">

 

isso tem como fazer msmo ou eu estou tentando fazer uma coisa que é impossivel???

 

me ajudem ai... :S

 

códigos:

 

verificaduplicacao.php(que verifica no BD primeiramente se algumas das informações digitadas já esta cadastrada no BD antes de prosseguir)

<?php
$novocpf = utf8_decode($_POST['novocpf']);
$novorg = utf8_decode($_POST['novorg']);
$novologin = utf8_decode($_POST['novologin']);
$novoemail = utf8_decode($_POST['novoemail']);

if($_GET['acao'] == "verificarcadastro"){

$consultaCPF = mysql_query("SELECT * FROM clientes WHERE cpf='$novocpf'") or die(mysql_error());
$verificaCPF = mysql_num_rows($consultaCPF);

$consultaRG = mysql_query("SELECT * FROM clientes WHERE rg='$novorg'") or die(mysql_error());
$verificaRG = mysql_num_rows($consultaRG);

$consultaLOGIN = mysql_query("SELECT * FROM clientes WHERE login='$novologin'") or die(mysql_error());
$verificaLOGIN = mysql_num_rows($consultaLOGIN);

$consultaEMAIL = mysql_query("SELECT * FROM clientes WHERE email='$novoemail'") or die(mysql_error());
$verificaEMAIL = mysql_num_rows($consultaEMAIL);

if($novocpf == ""){
echo ("<META HTTP-EQUIV=REFRESH CONTENT='0; URL=verificarduplicacao.php'>
                         <script type=\"text/javascript\">
                         alert(\"O Campo CPF é Obrigatório!\");
                         </script>");
} else if($verificaCPF >= 1){
echo ("<META HTTP-EQUIV=REFRESH CONTENT='0; URL=verificarduplicacao.php'>
                         <script type=\"text/javascript\">
                         alert(\"O CPF digitado já esta cadastrado\");
                         </script>");
} else if($novorg == ""){
echo ("<META HTTP-EQUIV=REFRESH CONTENT='0; URL=verificarduplicacao.php'>
                         <script type=\"text/javascript\">
                         alert(\"O Campo RG é Obrigatório!\");
                         </script>");
} else if($verificaRG >= 1){
echo ("<META HTTP-EQUIV=REFRESH CONTENT='0; URL=verificarduplicacao.php'>
                         <script type=\"text/javascript\">
                         alert(\"O RG digitado já está cadastrado!\");
                         </script>");
} else if($novologin == ""){
echo ("<META HTTP-EQUIV=REFRESH CONTENT='0; URL=verificarduplicacao.php'>
                         <script type=\"text/javascript\">
                         alert(\"O Campo LOGIN é obrigatório\");
                         </script>");
} else if($verificaUSUARIO >= 1){
echo ("<META HTTP-EQUIV=REFRESH CONTENT='0; URL=verificarduplicacao.php'>
                         <script type=\"text/javascript\">
                         alert(\"O LOGIN digitado já está em uso, por favor escolha outro\");
                         </script>");
} else if($novoemail == ""){
echo ("<META HTTP-EQUIV=REFRESH CONTENT='0; URL=verificarduplicacao.php'>
                         <script type=\"text/javascript\">
                         alert(\"O Campo E-MAIL é Obrigatório!\");
                         </script>");
} else if($verificaEMAIL >= 1){
echo ("<META HTTP-EQUIV=REFRESH CONTENT='0; URL=verificarduplicacao.php'>
                         <script type=\"text/javascript\">
                         alert(\"O E-MAIL já está cadastrado!\");
                         </script>");
} else {
header("Location: cadastrar.php");
}
}
?>
<div id="cadastrousuario">
	<table width="250" align="center" border="0" cellpadding="1" cellspacing="3" bordercolor="#0066FF">
		<form id="form2" name="form1" method="post" action="?acao=verificarcadastro?cpfinserido='.$novocpf.'?rginserido='.$novorg.'?logininserido='.$novologin.'?emailinserido='.$novoemail'">
			<tr>
				<td height="30" colspan="2"><div align="center"> <strong><em>Faça seu Cadastro</em></strong> </div></td>
			</tr>
			<tr>
				<td width="58"><div align="right" class="style13"><strong><em>CPF:</em></strong></div></td>
				<td width="185"><input type="text" name="novocpf" id="novocpf" />
				</td>
			</tr>
			<tr>
				<td><div align="right" class="style13"> <strong><em>RG:</em></strong> </div></td>
				<td><input type="text" name="novorg" id="novorg" />
				</td>
			</tr>
			<tr>
				<td><div align="right" class="style13"> <strong><em>Login:</em></strong> </div></td>
				<td><input type="text" name="novologin" id="novologin" />
				</td>
			</tr>
			<tr>
				<td><div align="right" class="style13">E-mail:</div></td>
				<td><input type="text" name="novoemail" id="novoemail" />
				</td>
			</tr>
			<tr>
				<td height="60" colspan="2"><div id="btn" align="center">
						<input class="send2" type="submit" name="cadastrar" id="cadastrar" value="Continuar Cadastro..." />
				</div></td>
			</tr>
		</form>
	</table>
</div>

 

e a pagina de cadastro:

 

cadastrar.php(o formulario de cadastro em si... que quero que se as informações digitadas na pagina anterior não forem duplicadas elas sejam copiadas automaticamente para seus respectivos campos para evitar que o cliente digite as informações novamente)

<?php
$novocpfreg = $_GET['cpfinserido'];
$novorgreg = $_GET['rginserido'];
$novoemailreg = $_GET['emailinserido'];
$novologinreg = $_GET['logininserido'];

//Grava os Dados Pessoais nas variaveis
$nome = utf8_decode($_POST['nome']);
$cpf = $_POST['cpf'];
$rg = $_POST['rg'];
$sexo = $_POST['sexo'];
$ddndia = $_POST['ddndia'];
$ddnmes = $_POST['ddnmes'];
$ddnano = $_POST['ddnano'];
$datadenascimento = $ddndia."/".$ddnmes."/".$ddnano;
$email = utf8_decode($_POST['email']);

//Grava os Dados para Localização nas variaveis
$endereco = utf8_decode($_POST['endereco']);
$numero = utf8_decode($_POST['numero']);
$complemento = utf8_decode($_POST['complemento']);
$bairro = utf8_decode($_POST['bairro']);
$cidade = utf8_decode($_POST['cidade']);
$estado = $_POST['estado'];
$cepnum = $_POST['cepnum'];
$cepdig = $_POST['cepdig'];
$cep = $cepnum."-".$cepdig;
$bairro = utf8_decode($_POST['bairro']);
$dddtelum = $_POST['dddtelum'];
$numtelum = $_POST['numtelum'];
$telefoneum = $dddtelum."-".$numtelum;
$dddteldois = $_POST['dddteldois'];
$numteldois = $_POST['numteldois'];
$telefonedois = $dddteldois."-".$numteldois;
$dddteltres = $_POST['dddteltres'];
$numteltres = $_POST['numteltres'];
$telefonetres = $dddteltres."-".$numteltres;
$dddcel = $_POST['dddcel'];
$numcel = $_POST['numcel'];
$celular = $dddcel."-".$numcel;

//Grava os Dados de Login nas variaveis
$login = utf8_decode($_POST['login']);
$senha = utf8_decode($_POST['senha']);

if($_GET['acao'] == "gravarcadastro"){
//testa para ver se tem algum campo obrigatório vazio
if($nome == ""){
   echo ('<span class="style17">O Campo <em>NOME</em> é obrigatório</span>');
} else if($cpf == ""){
   echo ('<span class="style17">O Campo <em>CPF</em> é Obrigatório</span>');
} else if($rg == ""){
   echo ('<span class="style17">O Campo <em>RG</em> é Obrigatório</span>');
} else if($sexo == ""){
   echo ('<span class="style17">O Campo <em>SEXO</em> é Obrigatório</span>');
} else if($ddndia == "" || $ddnmes == "" || $ddnano == ""){
   echo ('<span class="style17">O Campo <em>DATA DE NASCIMENTO</em> é Obrigatório</span>');
} else if($email == ""){
   echo ('<span class="style17">O Campo <em>E-MAIL</em> é Obrigatório</span>');
} else if($endereco == ""){
   echo ('<span class="style17">O Campo <em>ENDEREÇO</em> é Obrigatório</span>');
} else if($numero == ""){
   echo ('<span class="style17">O Campo <em>NUMERO</em> é Obrigatório</span>');
} else if($bairro == ""){
   echo ('<span class="style17">O Campo <em>BAIRRO</em> é Obrigatório</span>');
} else if($cidade == ""){
   echo ('<span class="style17">O Campo <em>CIDADE</em> é Obrigatório</span>');
} else if($estado == ""){
   echo ('<span class="style17">O Campo <em>ESTADO</em> é Obrigatório</span>');
} else if($cepnum == "" || $cepdig == ""){
   echo ('<span class="style17">O Campo <em>CEP</em> é Obrigatório</span>');
} else if($dddtelum == "" || $numtelum == ""){
   echo ('<span class="style17">Você tem que inserir pelo menos um <em>TELEFONE</em> e o seu <em>DDD</em></span>');
} else if($login == ""){
   echo ('<span class="style17">O Campo <em>LOGIN</em> é Obrigatório</span>');
} else if($senha == ""){
   echo ('<span class="style17">o Campo <em>SENHA</em> é Obrigatório</span>');
} else {
	//insere os dados no banco de dados
	$sql_inserir = "INSERT INTO clientes(nivel,nome,cpf,rg,datadenascimento,email,sexo,endereco,numero,complemento,bairro,cidade,estado,cep,telefoneum,telefonedois,telefonetres,celular,login,senha) VALUES('cliente','$nome','$cpf','$rg'	,'$datadenascimento','$email','$sexo','$endereco','$numero','$complemento','$bairro','$cidade','$estado','$cep','$telefoneum','$telefonedois','$telefonetres','$celular','$login','$senha')";

	//verifica se os dados foram inseridos com sucesso
	$testa_inserir = mysql_query($sql_inserir) or die( mysql_error() );

	//Se sim, manda uma mensagem de inserção bem sucedida
	if($testa_inserir == true){
		echo ('Seu Cadastro foi Realizado com sucesso, se quiser <a href="logar.php">Faça Login</a>');
	} else {
		echo ("Ocorreu algum erro ao realizar o cadastro, tente novamente");
	}//Fim do IF / ELSE
}//Fim do IF / ELSE IF / ELSE
}//Fim do comando IF inicial
?>
<div id="cadastrousuario">
	<table width="613" border="0" align="center" cellspacing="4">
		<form id="form1" name="form1" method="post" action="?acao=gravarcadastro">
			<tr>
				<td colspan="6">
				<div align="center" class="style20">Complete seu Cadastro:</div>
				</td>
			</tr>
			<tr>
				<td colspan="6">
				<div align="center" class="style9">************************************************************************************</div>
				</td>
			</tr>
			<tr>
				<td colspan="6">
				<span class="style18"><em>Dados Pessoais:</em></span>
				</td>
			</tr>
			<tr>
				<td width="141">
					<div align="right" class="style13">Nome: </div>
				</td>
				<td colspan="5">
					<label>
						<input name="nome" type="text" id="nome" size="56" maxlength="255" />
						<span class="style11">*</span>
					</label>
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13"><strong>CPF:</strong></div>
				</td>
				<td width="111">
					<label>
						<input name="cpf" type="text" id="cpf" size="9" maxlength="15" value="<?php echo "$novocpfreg";?>" />
						<span class="style11">*</span>
					</label>
				</td>
				<td width="56">
					<div align="right" class="style13"><strong>RG:</strong></div>
				</td>
				<td width="129">
					<label>
						<input name="rg" type="text" id="rg" size="9" maxlength="14" value="<?php echo "$novorgreg";?>" />
					</label>
					<label>
						<span class="style11">*</span>
					</label>
				</td>
				<td width="52">
					<div align="right" class="style13"><strong>Sexo:</strong></div>
				</td>
				<td width="98">
					<input name="sexo" type="text" id="sexo" size="2" maxlength="1" />
					<span class="style11">*</span>
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13">Data de Nascimento:</div>
				</td>
				<td colspan="2">
					<input name="ddndia" type="text" id="ddndia" size="1" maxlength="2" />
					<input name="ddnmes" type="text" id="ddnmes" size="1" maxlength="2" />
					<input name="ddnano" type="text" id="ddnano" size="2" maxlength="4" />
					<span class="style11">*</span><strong></strong>
				</td>
				<td colspan="3">
					<label>
						<strong class="style13">E-mail:</strong>
						<input name="email" type="text" id="email" size="27" value="<?php echo "$novoemailreg";?>" />
						<span class="style11">*</span>
					</label>
				</td>
			</tr>
			<tr>
				<td colspan="6">
					<div align="center" class="style9">************************************************************************************</div>
				</td>
			</tr>
			<tr>
				<td colspan="6">
					<em class="style18">Dados para Localização:</em>
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13"><strong>Endereço:</strong></div>
				</td>
				<td colspan="5">
					<label>
						<input name="endereco" type="text" id="endereco" size="56" maxlength="255" />
						<span class="style11">*</span>
					</label>
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13"><strong>Numero:</strong></div>
				</td>
				<td>
					<label>
						<input name="numero" type="text" id="numero" size="5" maxlength="8" />
						<span class="style11">*</span>
					</label>
				</td>
				<td colspan="2" class="style2">
					<div align="right" class="style13">Complemento(apto, casa):</div>
				</td>
				<td colspan="2">
					<input name="complemento" type="text" id="complemento" size="13" maxlength="100" />
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13"><strong>Bairro:</strong></div>
				</td>
				<td>
					<input name="bairro" type="text" id="bairro" size="10" maxlength="100" />
					<span class="style11">*</span>
				</td>
				<td>
					<div align="right" class="style13"><strong>Cidade:</strong></div>
				</td>
				<td>
					<input name="cidade" type="text" id="cidade" size="13" maxlength="100" />
					<span class="style11">*</span>
				</td>
				<td>
					<div align="right" class="style13"><strong>Estado:</strong></div>
				</td>
				<td>
					<input name="estado" type="text" id="estado" size="2" maxlength="2" />
					<span class="style11">*</span>
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13"><strong>CEP:</strong></div>
				</td>
				<td colspan="5">
					<label>
						<input name="cepnum" type="text" id="cepnum" size="5" maxlength="5" />
						-
						<input name="cepdig" type="text" id="cepdig" size="3" maxlength="3" />
						<span class="style11">*</span>
					</label>
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13"><strong>Telefone 1:</strong></div>
				</td>
				<td colspan="2">
					<label>
						<input name="dddtelum" type="text" id="dddtelum" size="1" maxlength="3" />
						-
						<input name="numtelum" type="text" id="numtelum" size="6" maxlength="8" />
						<span class="style11">*</span>
					</label>
					</td>
				<td>
					<div align="right" class="style13"><strong>Telefone 2:</strong></div>
				</td>
				<td colspan="2">
					<input name="dddteldois" type="text" id="dddteldois" size="1" maxlength="3" />
					-
					<input name="numteldois" type="text" id="numteldois" size="6" maxlength="8" />
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13"><strong>Telefone 3:</strong></div>
				</td>
				<td colspan="2">
					<input name="dddteltres" type="text" id="dddteltres" size="1" maxlength="3" />
					-
					<input name="numteltres" type="text" id="numteltres" size="6" maxlength="8" />
				</td>
				<td>
				<div align="right" class="style13"><strong>Celular:</strong></div>
				</td>
				<td colspan="2">
					<input name="dddcel" type="text" id="dddcel" size="1" maxlength="3" />
					-
					<input name="numcel" type="text" id="numcel" size="6" maxlength="8" />
				</td>
			</tr>
			<tr>
				<td colspan="6">
					<div align="center" class="style4 style9">***************************************************************************</div>
				</td>
			</tr>
			<tr>
				<td colspan="6">
					<em class="style18">Dados para Login:</em>
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13"><strong>Login:</strong></div>
				</td>
				<td colspan="5">
					<label>
						<input name="login" type="text" id="login2" size="20" maxlength="20" value="<?php echo "$novologinreg";?>" />
						<span class="style11">*</span>
					</label>
				</td>
			</tr>
			<tr>
				<td>
					<div align="right" class="style13"><strong>Senha:</strong></div>
				</td>
				<td colspan="5">
					<label>
						<input name="senha" type="password" id="senha" size="20" maxlength="20" />
						<span class="style11">*</span>
					</label>
				</td>
			</tr>
			<tr>
				<td colspan="6"> </td>
				</tr>
			<tr>
				<td height="44" colspan="3">
						<input class="send2" type="submit" name="fazercadastro" id="fazercadastro" value="Fazer Cadastro" />
				</td>
				<td colspan="3">
						<input class="send2" type="reset" name="limpartudo" id="limpartudo" value="Limpar Tudo" />
				</td>
			</tr>
			<tr>
				<td colspan="6" class="style11">* = Dados Obrigatórios</td>
			</tr>
		</form>
	</table>
</div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

estou tentando passar valores de varias variaveis por um unico link <action="pagina.php?acao=nomedaacao&valorum=$variavel1&valordois=$variavel2&valortres=$variavel3&valorquatro=$variavel4">

 

isso tem como fazer msmo ou eu estou tentando fazer uma coisa que é impossivel???

sim, isso tem como fazer..

 

porém existe um limite de 255 caracteres.

Qndo passar disso, o restante será ignorado.

 

No teu caso, como são muitas variaveis, te aconselho a já trocar de estratégia, pois tudo indica que você teria que ultrapassar este limite.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom, brother... no meu caso seria essa action:

 

<form id="form2" name="form1" method="post" action="?acao=verificarcadastro&cpfinserido='.$novocpf.'&rginserido='.$novorg.'&logininserido='.$novologin.'&emailinserido='.$novoemail'">

 

consegui achar um lugar pra contar os caracteres e deu 128... mais será que essa seria a sintaxe certa??? se naum, quel seria a certo??

Compartilhar este post


Link para o post
Compartilhar em outros sites

abre o código HTML, Ctrl + U (Exibir > Código Fonte), e veja como ficou esse teu action ai.

 

no caso, de onde estão vindo essas variaveis php?

qndo você for abrir o código fonte, verifique se aparece o valor delas, e não a variavel em si.

Compartilhar este post


Link para o post
Compartilhar em outros sites

abre o código HTML, Ctrl + U (Exibir > Código Fonte), e veja como ficou esse teu action ai.

 

no caso, de onde estão vindo essas variaveis php?

qndo você for abrir o código fonte, verifique se aparece o valor delas, e não a variavel em si.

 

 

bom... as variaveis estão vindo da primeira pagina que coloquei o código... a "verificaduplicacao.php"... mais nesta pagina tenhu que colocar o método POST pra poder verificar no BD se há os dados no BD... e passo os valores das variaveis pela action e pego na pagina "cadastro.php" pelo método GET... mais naum esta dando certo... os msmos campos que coloco pra aparecer os valores, ficam em branco... :S não aparece nem o valor da variavel e nem a variavel em si... :S... errozinhu confuso... :S

Compartilhar este post


Link para o post
Compartilhar em outros sites

É só passar através de $_GET.

Se recebe por $_POST e quer passar para $_GET é só definir as variaveis do $_POST e passar em uma url, depois pegar em outro arquivo php por $_GET

 

brother... se você observar o código... foi exatamente isso que eu fiz... mais naum tah dando certo naum sei pq...

Compartilhar este post


Link para o post
Compartilhar em outros sites

veja esse trecho de código

?>
       <div id="cadastrousuario">
               <table width="250" align="center" border="0" cellpadding="1" cellspacing="3" bordercolor="#0066FF">
                       <form id="form2" name="form1" method="post" action="?acao=verificarcadastro?cpfinserido='.$novocpf.'?rginserido='.$novorg.'?logininserido='.$novologin.'?emailinserido='.$novoemail'">
                               <tr>

 

você está usando variável php fora das tags

 

<?php
?>

 

outra coisa, você só usa '?' para especificar q está inserindo variáveis, se você for inserir mais de uma variável usa o separador '&'

tenta assim

?>
       <div id="cadastrousuario">
               <table width="250" align="center" border="0" cellpadding="1" cellspacing="3" bordercolor="#0066FF">
<?php 
echo "<form id='form2' name='form1' method='post' action='?acao=verificarcadastro
&cpfinserido={$novocpf}
&rginserido={$novorg}
&logininserido={$novologin}
&emailinserido={$novoemail}'>";
?>
                               <tr>

 

foi apenas uma olhada superficial

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual a lógica deste código? você quer receber ou enviar os valores dos campos do form via $_GET ?

 

Pois achei que você queria passar as $vars através de um href (a) ...

 

no titulo eu acabei digitando errado... o certo seria "PASSAR VALORES DE VARIAS VARIAVEIS PELA ACTION DO FORM"

 

veja esse trecho de código

?>
       <div id="cadastrousuario">
               <table width="250" align="center" border="0" cellpadding="1" cellspacing="3" bordercolor="#0066FF">
                       <form id="form2" name="form1" method="post" action="?acao=verificarcadastro?cpfinserido='.$novocpf.'?rginserido='.$novorg.'?logininserido='.$novologin.'?emailinserido='.$novoemail'">
                               <tr>

 

você está usando variável php fora das tags

 

a abertura desse codigo php esta no inicio do código...

 

outra coisa, você só usa '?' para especificar q está inserindo variáveis, se você for inserir mais de uma variável usa o separador '&'

tenta assim

 

isso depois que eu postei o topico eu corrigi... e tb naum era por issu

 

?>
       <div id="cadastrousuario">
               <table width="250" align="center" border="0" cellpadding="1" cellspacing="3" bordercolor="#0066FF">
<?php 
echo "<form id='form2' name='form1' method='post' action='?acao=verificarcadastro
&cpfinserido={$novocpf}
&rginserido={$novorg}
&logininserido={$novologin}
&emailinserido={$novoemail}'>";
?>
                               <tr>

 

foi apenas uma olhada superficial

 

acabei de testar... tb naum deu certo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kra de uma olhada no codigo que fiz aqui para ilustra um problema semelhante ao seu, no caso você passaria campos ocultos(hidden) via $_POST, assim nao teria a necessidade de criar uma URL gigante cheia de parametros.

 

<form name="nome" method="post" action="pagina.php">
  <input name="nome" type="text" /> <!-- CAMPOS DO FORM -->

  <!-- A jogada está aqui, crie campos ocultos com os valores e depois pegue-os via $_POST, assim nao precisa passar nenhum parametro via $_GET -->
  <input type="hidden" name="acao" value="aterar" />
  <input type="hidden" name="nome" value="Nome da pessoa" />
  <!-- ... etc ... -->
</form>

 

E na pagina que você inseriu na action (pagina.php), você faria assim

<?php
$acao = $_POST['acao']; // campo oculto com o valor da ação
$nome = $_POST['nome']; // campo oculto com o valor do nome
// etc...

if($acao == "alterar") {
echo $acao;
echo "<br>Aqui você faz o UPDATE no banco de dados ou o que você quizer<br>";
echo $nome;
}
?>

 

:thumbsup:

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.