Ir para conteúdo

Arquivado

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

Lucas Vinicius

[Resolvido] If, else e NULL

Recommended Posts

Gostaria de saber como faço a utilização do If,else e NULL para mostrar a informação X, caso a Y esteja vazia.

 

<?php
$rss=mysql_query("SELECT * FROM tbl_estagio ORDER BY dt DESC")or die(mysql_error());
?>
<h3>Vagas em Aberto</h3>
<ul class="avisos"><? 
while($lnn=mysql_fetch_array($rss)){
extract($lnn);
?>               
<li>
<?=gmcString($dt,'/')?> - <strong><?=$titulo?></strong>
<br /><br />
<?=nl2br($descritivo)?>
</li>
<? }?>
<!-- SE Não possuir vagas -->
<li> Nenhuma vaga disponível</li>
<!-- -->
</ul>

<?
$aviso = is_numeric($_GET['aviso']) ? $_GET['aviso'] : 0;
$res = mysql_query("SELECT * FROM tbl_avisos_gerais WHERE id = '$aviso'");
if (mysql_num_rows($res)) {
$row2 = mysql_fetch_array($res);
list($a,$m,$d) = explode('-',$row2['data_cadastro']);
} else {
header('Location: ./');
exit();
}
?>
<h2><strong>Avisos FADI</strong></h2>
<h3><?=$d.'/'.$m?> : <?=$row2['titulo']?></h3>
<?=nl2br($row2['descritivo'])?>
<p class="download">Downloads: <a href="downloads/<?=nl2br($row2['arquivo'])?>"><?=nl2br($row2['arquivo'])?></a></p>
<!-- se nenhum download não mostrar p class="download"-->

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quero fazer o seguinte:

 

Se houver vagas, mostra-las

Se não houver, mostrar a mensage:

- Nenhuma vaga disponível

 

 

E no segundo seria:

Se houver links para download, mostrar a linha:

- <p class="download">Downloads: <a href="downloads/<?=nl2br($row2['arquivo'])?>"><?=nl2br($row2['arquivo'])?></a></p>

Se não houver, não mostrar essa linha:

- <p class="download">Downloads: <a href="downloads/<?=nl2br($row2['arquivo'])?>"><?=nl2br($row2['arquivo'])?></a></p>

Compartilhar este post


Link para o post
Compartilhar em outros sites
mysql_fetch_array($rss)

retorna uma array com os valores de uma linha da consulta ou um array vazio.

$lnn = mysql_fetch_array($rss)
if($lnn) :
   while($lnn=mysql_fetch_array($rss)){
       #código
   }
else ?>
   <li> Nenhuma vaga disponível</li>
<?php endif; ?>

OK?

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php
               $rss=mysql_query("SELECT * FROM tbl_estagio ORDER BY dt DESC")or die(mysql_error());
			?>
               <h3>Vagas em Aberto</h3>
               <ul class="avisos"><? 
			$lnn = mysql_fetch_array($rss)
			if($lnn) :				
				while($lnn=mysql_fetch_array($rss)){
				extract($lnn);
		    ?>               
              		<li>
				<?=gmcString($dt,'/')?> - <strong><?=$titulo?></strong>
                   <br /><br />
                   <?=nl2br($descritivo)?>
                   </li>
               <? }else?>
               <!-- SE Não possuir vagas -->
               <li> Nenhuma vaga disponível</li>
               <!-- -->
               <? endif; ?>

 

Isso? está dando erro na linha if($lnn) :

Compartilhar este post


Link para o post
Compartilhar em outros sites

o erro é na linha de cima está faltando ';' ponto e vírgula

 

em relação a condição

 

veja se é o que você quer

$rss=mysql_query("SELECT * FROM tbl_estagio ORDER BY dt DESC")or die(mysql_error());
if(mysql_num_rows($rss) > 0){//verifica se a consulta retornou alguma linha
  while($lnn=mysql_fetch_array($rss)){
     //aki seu código
  }
}else{//se não existir linhas
  echo "<li> Nenhuma vaga disponível</li>";
}

mysql_num_rows()

Compartilhar este post


Link para o post
Compartilhar em outros sites

			<? 
			$rss=mysql_query("SELECT * FROM tbl_estagio ORDER BY dt DESC")or die(mysql_error());
			if(mysql_num_rows($rss) > 0){//verifica se a consulta retornou alguma linha
				while($lnn=mysql_fetch_array($rss)){
				extract($lnn);
		    ?>               
              		<li>
				<?=gmcString($dt,'/')?> - <strong><?=$titulo?></strong>
                   <br /><br />
                   <?=nl2br($descritivo)?>
                   </li>
               <? }else{
               echo "<li> Nenhuma vaga disponível</li>";
			}?>

 

Está assim, porem da erro na linha <? }else{ agora

Compartilhar este post


Link para o post
Compartilhar em outros sites

use a tag <?php em vez de <?

 

outra coisa você está abrindo e fechando essa quantidade de tags <? ?>

?>               
                       <li>
                                       <?=gmcString($dt,'/')?> - <strong><?=$titulo?></strong>
                   <br /><br />
                   <?=nl2br($descritivo)?>
                   </li>
               <? }else{

 

use assim com o operador de concatenação '.' ponto

fica mais limpo o código

echo "<li>".gmcString($dt,'/')."- <strong>".$titulo."</strong><br /><br />".nl2br($descritivo)."</li>";
}else{

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, o código nem é meu =p

 

Bem, continua dando erro no }else{ (PHP Parse error: syntax error, unexpected T_ELSE)

Esse

extract($lnn);

, está correto?

<?php 
$rss=mysql_query("SELECT * FROM tbl_estagio ORDER BY dt DESC")or die(mysql_error());
if(mysql_num_rows($rss) > 0){//verifica se a consulta retornou alguma linha
while($lnn=mysql_fetch_array($rss)){
extract($lnn);
echo "<li>".gmcString($dt,'/')."- <strong>".$titulo."</strong><br /><br />".nl2br($descritivo)."</li>";
}else{
echo "<li> Nenhuma vaga disponível</li>";
}?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

o erro é porque não foi fechada a chave '}' do while

se você identar bem o código fica mais fácil de observar esses erros, como segue abaixo

<?php 
$rss=mysql_query("SELECT * FROM tbl_estagio ORDER BY dt DESC")or die(mysql_error());
if(mysql_num_rows($rss) > 0){//verifica se a consulta retornou alguma linha
       while($lnn=mysql_fetch_array($rss)){
               extract($lnn);
               echo "<li>".gmcString($dt,'/')."- <strong>".$titulo."</strong><br /><br />".nl2br($descritivo)."</li>";
       }//final do while
}//final do if
else{
       echo "<li> Nenhuma vaga disponível</li>";
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

*burro*

Agora foi haha

 

<?
$aviso = is_numeric($_GET['aviso']) ? $_GET['aviso'] : 0;
$res = mysql_query("SELECT * FROM tbl_avisos_gerais WHERE id = '$aviso'");
if (mysql_num_rows($res)) {
$row2 = mysql_fetch_array($res);
list($a,$m,$d) = explode('-',$row2['data_cadastro']);
} else {
header('Location: ./');
exit();
}
?>
<h2><strong>Avisos FADI</strong></h2>
<h3><?=$d.'/'.$m?> : <?=$row2['titulo']?></h3>
<?=nl2br($row2['descritivo'])?>
<p class="download">Downloads: <a href="downloads/<?=nl2br($row2['arquivo'])?>"><?=nl2br($row2['arquivo'])?></a></p>
<!-- se nenhum download não mostrar p class="download"-->

 

Quanto a esse segundo código, para fazer a linha

<p class="download">Downloads: <a href="downloads/<?=nl2br($row2['arquivo'])?>"><?=nl2br($row2['arquivo'])?></a></p>

Aparecer apenas quando tiver os arquivos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quanto ao arquivo de download, você pode usar

   <?php if(!empty($row2['arquivo'])): ?>
       <p class="download">Downloads: 
           <a href="downloads/<?=nl2br($row2['arquivo'])?>">
               <?=nl2br($row2['arquivo'])?>
           </a>
       </p>
   <?php endif; ?>

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.