Ir para conteúdo

POWERED BY:

Arquivado

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

vb6

[Resolvido] variáveis

Recommended Posts

tenhu uma pagina onde algumas variaveis recebem valores de campo text, porém toda vez q dou um refresh na pagina a variavel nao limpa fica o ultimo valor recebido...

 

tem como fazer com q cada vez que atualize a pagina a variavel fique limpa??

 

flw...

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao, o navegador simplesmente atualiza a pagina e a variavel continua com o mesmo valor..

 

ja tentei limpar com empty, = '' e tbm com unset()

 

e nao funcionou...

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa é a pagina onde tenho as variaveis e as funcoes em php...

 

<?php
session_start();

$_SESSION[logou] = $_GET['logou'];
$_SESSION[login] = $_GET['login'];
$_SESSION[senha] = $_GET['senha'];
$_SESSION[operacao] = $_GET['operacao'];

$desc = $_GET['txtnovacat'];
echo $desc;
switch ($_SESSION[operacao])
{
	case 'cad':
		if ($desc != ''){
			include "conecta.php";

			$sql = "insert into categorias(descricao)values('".$desc."')";
			$resultado = mysql_query($sql) or die(mysql_error());
			$linhas = mysql_affected_rows() or die(mysql_error());

			mysql_close($conexao);
		}
		break;

	case 'login':
		if ($_SESSION[logou] == 'S'){
			if (($_SESSION[login] != 'arrobatec') OR ($_SESSION[senha] != 'monolito')){
				echo "<script>alert('Acesso negado')</script>";
				$_SESSION[login] = '';
				$_SESSION[senha] = '';
			}
		}
		else{
			$_SESSION[login] = '';
			$_SESSION[senha] = '';
		}
		break;
}

?>
<html>
<head>

<title>Nara Crochês</title>

<link href = "estilo.css" rel = "stylesheet" type = "text/css">
<script language = "javascript" src = "script.js"></script>

</head>

<body background = "Índice.jpg">
<table align = "center" width = "920px" class = "teste" cellspacing = "0">
	<tr>
		<td><a href = "index.html"><img src = "topo.jpg" border = "0"></a></td>
	</tr>
	<tr>
		<td>
			<table width = "100%">
				<tr>
					<td width = "200px" align = "center" valign = "top">
						<div id = "menutot">
							<a href = "arearestrita.php?resposta=N&operacao=login">Área restrita</a>
							<ul>
							<li><a href = "arearestrita.php?resposta=N">Área restrita</a>
							<ul>
								<li><a href = "">Produtos</a></li></li>
								<li><a href = "">Produtos</a></li></li>
								<li><a href = "">Produtos</a></li></li>
								<li><a href = "">Produtos</a></li></li>
								<li><a href = "">Produtos</a></li></li>
							</ul>
							</li>
							</ul>
						</div>
					</td>
					<td align = "center">
						<div id = "conttot">
						<?php
							switch ($_SESSION[operacao])
							{
								case 'login':
									if(($_SESSION[login] == '') OR ($_SESSION[senha] == '')){
										include 'login.inc';
									}
									else
									{
										include 'admin.inc';
									}
									break;

								case 'cad':
									include 'admin.inc';
									break;
							}
						?>
						</div>
					</td>
				</tr>
			</table>
		</td>
	</tr>
	<tr>
		<td class = "cor">@Tecinformatica copyright©all right reserved</td>
	</tr>
</table>
</body>
</html>

 

 

essa é a pagina onde passo o parametro para a variavel...

<div id = "loginadmin">
<div id = "erro"></div>
<script language = "javascript" src = "script.js"></script>
<form id = "upaimagem" name = "upaimagem" method = "GET">
<fieldset>
	<fieldset>
		<legend>Imagem</legend>
		<input type = "file" name = "image" id = "image" size = "50px">
		<input type = "button" name = "limpar" id = "botao" value = "Limpar" onclick = "return limpaimagem()">
	</fieldset>
	<br>
	<fieldset>
		<legend>Código</legend>
		<input type = "text" id = "codigo" name = "codigo" size = "20px">
	</fieldset>
	<br>
	<fieldset>
	<legend>Categoria</legend>
		<select name= "cat">
			<?php
				include "conecta.php";
				$desc = '';
				$sql = "select * from categorias";
				$resultado = mysql_query($sql);
				$linhas = mysql_num_rows($resultado);

				for($i=0;$i<$linhas;$i++){
					$reg = mysql_fetch_row($resultado);

					echo "<option>".$reg[1]."</option>";
				}

				mysql_close($conexao);
			?>
		</select>
			<input type = "button" id = "btnnovacat" value = "nova" onclick = "return novacat()">
		<div id = "divnovacat">
			<form id = "categoria" method = "GET" action = "arearestrita.php">
				<input type = "hidden" id = "operacao" name = "operacao" value = "cad">
				<input type = "text" id = "txtnovacat" name = "txtnovacat">
				<input type = "submit" name = "cadastrar" value = "cadastrar">
			</form>
		</div>
	</fieldset>
	<br>
	<fieldset>
		<legend>Descrição</legend>
		<input type = "text" id = "descricao" name = "descricao" size = "50px">
	</fieldset>
	<br>
	<fieldset>
		<legend>Preço</legend>
		<input type = "text" id = "preco" name = "preco" size = "20px">
	</fieldset>
	<br>
	<fieldset>
		<input type = "image" id = "botao" name = "gravar" src = "enviar.jpg" onclick = "return validacampos('upload')">
	</fieldset>
</fieldset>
</form>
</div>

 

detalhe... tenhu um campo <select> que mostra as categorias se eu kiser cadastrar uma nova cliko no botao novo e abre um campo tetx para eu digitar a nova categoria, esse é o parametro que eu mando pra executar o sql, porém se eu cadastro uma e depois dou um refresh na pagina cadastra denovo a categoria...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Está usando Ajax? Ou quando você opta por adicionar uma nova categoria ele simplesmente aparesce o form, ai preenche os dados e ele manda para outra página Peagape?

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao estou usando ajax, ele abre um form eu digito a categoria e ele xama a mesma pagina onde é feito o cadastro da nova categoria como mostrei nos codigos acima...

 

 

tenhu a pagina "arearestrita.php" e tenho duas paginas login.inc e admin.inc, dai uso o include para adicionar estas paginas, dependendo do momento...

 

na pagina admim eu tenho o form onde tem os campos para serem adicionados mas em um determinado momento q eu queira adicionar uma nova categoria, apenas cliko em um botao nova ele abre um novo campo e um novo botao com efeitos de css, isso tudo na mesma pagina, dai eu escrevo a nova categoria e cliko no botao, isso vai xamar a mesma pagina com os parametros que eu mandar, dai entro no switch e vejo se é cad entra no cadastro da nova categoria...

 

logo abaixo eu carrego esses dados da tabela do banco...

 

ai vem todo o problema, se eu cadastro uma nova categoria e dou um F5 ele entra no switch novamente e cadastra novamente a categoria...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Troque isso:

if ($desc != ''){
        include "conecta.php";

        $sql = "insert into categorias(descricao)values('".$desc."')";
        $resultado = mysql_query($sql) or die(mysql_error());
        $linhas = mysql_affected_rows() or die(mysql_error());
        
        mysql_close($conexao);
}
break;
Por isso:

if ($desc != ''){
        include "conecta.php";

        $sql = "insert into categorias(descricao)values('".$desc."')";
        $resultado = mysql_query($sql) or die(mysql_error());
        $linhas = mysql_affected_rows() or die(mysql_error());
        unset($_GET['txtnovacat']);
        mysql_close($conexao);
}
break;

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

bah manin, nao deu certo, ja tentei de varias maneiras limpar o campo e o objeto, mas nao da, se você sabe como se faz com ajax pode me dar uma dica???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Colocaremos um Token então:

Primeiro altere isso:

<form id = "categoria" method = "GET" action = "arearestrita.php">
        <input type = "hidden" id = "operacao" name = "operacao" value = "cad">
        <input type = "text" id = "txtnovacat" name = "txtnovacat">
        <input type = "submit" name = "cadastrar" value = "cadastrar">
</form>

Por isso:

<form id = "categoria" method = "GET" action = "arearestrita.php">
      <input type = "hidden" id = "operacao" name = "operacao" value = "cad">
      <?php 
      	$token = md5(date('dmYHis'));
      	$_SESSION['token'] = $token;
       ?>
      <input type = "hidden" id = "token" name = "token" value = "<?php echo $token; ?>">
      <input type = "text" id = "txtnovacat" name = "txtnovacat">
      <input type = "submit" name = "cadastrar" value = "cadastrar">
</form>

E isso:

if ($desc != ''){
        include "conecta.php";

        $sql = "insert into categorias(descricao)values('".$desc."')";
        $resultado = mysql_query($sql) or die(mysql_error());
        $linhas = mysql_affected_rows() or die(mysql_error());
        
        mysql_close($conexao);
}
break;

Por isso:

if ($desc != '' and $_POST['token'] == $_SESSION['token']){
        include "conecta.php";

        $sql = "insert into categorias(descricao)values('".$desc."')";
        $resultado = mysql_query($sql) or die(mysql_error());
        $linhas = mysql_affected_rows() or die(mysql_error());
        
        mysql_close($conexao);
}
break;

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

bah manin deu certo, brigadao, tava a dias ja buscando uma solução pra isso...

 

como coloko o topico como resolvido??

Compartilhar este post


Link para o post
Compartilhar em outros sites

bah manin deu certo, brigadao, tava a dias ja buscando uma solução pra isso...

 

como coloko o topico como resolvido??

 

apenas os moderadores colocam o topico como resolvido

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.