Ir para conteúdo

POWERED BY:

Arquivado

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

tigredonorte

[Resolvido] Problema ao utilizar if else dentro de html

Recommended Posts

bem... meu problema é o seguinte:

tenho o arquivo banner.php

 

Neste arquivo, se o usuario estiver logado, aparecerá no banner do site uma mensagem de boas vindas, se não estiver logado, um formulário para ele preencher os campos com login e senha.

 

fiz o seguinte para implementar:

 

<div id="banner-main">
//parte do codigo omitida
       <div id="banner-login">
 	 <? if(!session_is_registered("nome_usuario")) {?>
 	    <form id="form1" name="form1" method="post" action="<? echo $dir_Main ."login/cria_cookies.php"?>" class="ImageBackground">
            <label>Usuário<input name="usuarioSite" type="text" class="ImageBackground" id="usuarioSite"/></label>
            <label>Senha<input name="senhaSite" type="password" class="ImageBackground" id="senhaSite" /></label>
            <label><input name="Logar" type="submit" class="descricao" id="Logar" value="Entrar" /></label>
            <a href="<? echo $dir_Main ."compra/comprarJuridico.php"?>" class="LoginStyle">Sou Pessoa Jurídica</a>
            </form> 
  	<? }else{ $nome_usuario = $_SESSION["nome_usuario"];?>
            <p class="ImageBackground"> Bem Vindo 
            <span class="TituloVendas"><? echo $nome_usuario; ?></span>                   
            <a href="<? echo $dir_Main ."login/logout.php"?>" class="LoginStyle" >Logout </a> 
            <a href="<? echo $dir_Main . "login/alteraCadastro2.php"?>" class="LoginStyle"> Alterar Cadastro</a>
            </p>
         </div>
     <? }?>
</div>

acontece que se o usuario estiver logado (caso else), ocorrerá uma quebra de linhana div. Como faço para evitar essa quebra de linha?

Compartilhar este post


Link para o post
Compartilhar em outros sites

feche a div após feechar as chaves do else.

 

E use isset($_SESSION['var']) em vez de session_is_registered

 

alterei o codigo como voce disse. Mas o problema era outro: no codigo anterior eu utilizava a tag <p>, ai so substituí.

Vlw pela ajuda... mas aqui, qual a diferença de usar

<? if(!isset($_SESSION['nome_usuario'])) {?>
e
<? !session_is_registered('nome_usuario')?>
?

 

<div id="banner-login">
 	<? if(!isset($_SESSION['nome_usuario'])) {?>
 	    <form id="form1" name="form1" method="post" action="<? echo $dir_Main ."login/cria_cookies.php"?>" class="ImageBackground">
            <label>Usuário<input name="usuarioSite" type="text" class="ImageBackground" id="usuarioSite"/></label>
            <label>Senha<input name="senhaSite" type="password" class="ImageBackground" id="senhaSite" /></label>
            <label><input name="Logar" type="submit" class="descricao" id="Logar" value="Entrar" /></label>
            		<a href="<? echo $dir_Main ."compra/comprarJuridico.php"?>" class="LoginStyle">                                                               Sou Pessoa Jurídica</a>
         </form> 
  	<? }else{ $nome_usuario = $_SESSION["nome_usuario"];?>
         <p class="ImageBackground"> Bem Vindo 
         <span class="TituloVendas"><? echo $nome_usuario; ?></span>                   
         <a href="<? echo $dir_Main ."login/logout.php"?>" class="LoginStyle" >Logout </a> 
         <a href="<? echo $dir_Main . "login/alteraCadastro2.php"?>" class="LoginStyle"> Alterar Cadastro</a>
         </p>
    	 <? }?>
  </div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vlw pela ajuda... mas aqui, qual a diferença de usar

<? if(!isset($_SESSION['nome_usuario'])) {?>
e
<? !session_is_registered('nome_usuario')?>
?

 

Cuidado

 

Se você quer que seu script funcione independentemente do uso de register_globals, você precisa usar a matriz $_SESSION já que $_SESSION é automaticamente registrada. Se o seu script usa session_register(), ele não irá funcionar em ambientes onde a diretiva de configuração register_globals esteja desabilitada.

 

 

fonte: http://www.php.net/session_register

 

 

Nota: Se $_SESSION (ou $HTTP_SESSION_VARS para PHP 4.0.6 ou inferior) é usada, use isset() para checar se uma variável está registrada em $_SESSION.

 

 

Cuidado

 

Se você está usando $_SESSION (ou $HTTP_SESSION_VARS), não utilize session_register(), session_is_registered() e session_unregister().

 

fonte: http://www.php.net/session_is_registered

 

 

 

Outra nota de portabilidade: use <?php em vez de <?

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.