Jump to content
adalton

erro com variavel

Recommended Posts

adalton

ola galera td bem

olha estou começando agora nest area

to seguindo um video tutorial que encina como fazer um site

ja aprendi algumas coisa com ele

mas estou com problema com variavel nao definida

ja usei o isset mas nao funciono

o erro e o seguinte;;

Notice: Undefined variable: contar in C:\wamp\www\portal_noticias\functions.php on line 329

Call Stack

# Time Memory Function Location

1 0.0550 365528 {main}( ) ..\exibir.php:0

2 0.0689 499968 get_exibe_materias( ) ..\exibir.php:18

linha 329  e  esta  if ($contar <='0'){

o outro erro e ;;

Notice: Undefined variable: rep in C:\wamp\www\portal_noticias\functions.php on line 110

Call Stack

# Time Memory Function Location

1 0.0550 365528 {main}( ) ..\exibir.php:0

2 0.0699 503136 include( 'C:\wamp\www\portal_noticias\sidebars.php' ) ..\exibir.php:31

3 0.0699 503136 get_ultimas_noticias( ) ..\sidebars.php:2

linha 110 e essa .;<p><?php echo strip_tags(trim(str_truncate($texto, 150, $rep)));?><a href=

deu em outras linha tbm mas e o msm error

engraçado e que no video tutorial deu td certo

mas aqui nao ta dando sera alguma configuraçao no meu pc que

tenho que fazer se for qual seria;

me ajudem ai

desde ja agradeço

um abraço e fiquem com deus

t ++++++ :D

Share this post


Link to post
Share on other sites
softklin

Tens que ajudar a ser ajudado. Ninguém consegue dizer-te o problema sem ver o código atual. Pelas mensagens de erro, a variável parece estar a ser usada sem nunca lhe ter sido atribuído um valor. Tens de garantir que o valor existe, antes de trabalhar com ele, por exemplo:

if( !isset($variavelImportante) ) {
  die('A variável importante não está definida');
}

Isto irá terminar a execução do script naquele ponto (die) com uma mensagem de erro e não faz mais nada. Ou se quiseres ser um pouco mais permissivo, podes assumir um valor por omissão, caso a variável não esteja definida:

if( !isset($variavelImportante) ) {
  // definir o valor por omissão desta variável, se nenhum for definido
  $variavelImportante = 'super valor';
}

Assim, se a variável não tiver nenhum valor prévio, ela será inicializada com um valor definido por ti. Há uns tempos atrás o PHP não fazia essas verificações, e isso criou maus hábitos nos programadores, que hoje vêm ao de cima, sob forma de mensagens de erro. Inicializa sempre as variáveis nos teus programas :D


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites
adalton

o amigo me descup

<?php

    $db = mysql_connect("localhost","root","");
    $dados = mysql_select_db("portal_noticias",$db);
?>

<?php include "scripts/limita_palavras.php";?>

<?php  
   
   function get_exibe_categorias(){
   
           switch ($_GET['categoria']){
		   
		   case 'eventos';
		   include "paginas/eventos.php";
	       break;
		   
		   case 'politica';
		   include "paginas/politica.php";
	       break;
		   
		   case 'policia';
		   include "paginas/policia.php";
	       break;
		   
		   case 'administracao';
		   include "paginas/admin.php";
	       break;
		   
		   case 'contato';
		   include "paginas/contato.php";
		   break;
		   
		   case 'saude';
		   include "paginas/saude.php";
	       break;
		   
		   case 'geral';
		   include "paginas/geral.php";
	       break;
		   
		   case 'esportes';
		   include "paginas/esportes.php";
	       break;
		   
		   case 'administracao';
		   include "paginas/admin.php";
	       break;
		   
		   case 'chat';
		   include "paginas/chat.php";
	       break;
		   			   			   
		   default;
		   include ("index.php");
		   break;
  }
}

?>
<!---configuraçao da home destaque--->
<?php function get_destaque() {
     $sql = mysql_query("SELECT * FROM site_posts ORDER BY id DESC LIMIT 1 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<h1><?php echo $titulo; ?></h1>
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=233&w=510&zc=1&q=90" />
<p><?php echo strip_tags(trim(str_truncate($texto, 320, $rep)));?><a href="exibir.php?site=exibir&id=<?php echo $id;?>"> «Leia mais</a></p>

<?php			
	}
}
}
?>
<!---configuraçao da home destaque --->

<!--ultimas noticias--->
<?php function get_ultimas_noticias() {
     $sql = mysql_query("SELECT * FROM site_posts ORDER BY RAND() DESC LIMIT 2,3 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=100&w=185&zc=1&q=90" />
<p><?php echo strip_tags(trim(str_truncate($texto, 150, $rep)));?><a href="exibir.php?site=exibir&id=<?php echo $id;?>"> «Leia mais</a></p>

<?php			
	}
}
}
?>
<!--ultimas noticias--->

<!--policia--->
<?php function get_policia() {
     $sql = mysql_query("SELECT * FROM site_posts WHERE categoria = 'policia' ORDER BY RAND() DESC LIMIT 4 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<li>
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=75&w=100&zc=1&q=90" />
<p><?php echo strip_tags(trim(str_truncate($texto, 90 , $rep)));?><a href="exibir.php?site=exibir&id=<?php echo $id;?>"> «Leia mais</a></p>
</li>
<?php			
	}
}
}
?>
<!--policia--->

<!--politica--->
<?php function get_politica() {
     $sql = mysql_query("SELECT * FROM site_posts WHERE categoria = 'politica' ORDER BY RAND() DESC LIMIT 4 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<li>
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=75&w=100&zc=1&q=90" />
<p><?php echo strip_tags(trim(str_truncate($texto, 90 , $rep)));?><a href="exibir.php?site=exibir&id=<?php echo $id;?>"> «Leia mais</a></p>
</li>
<?php			
	}
}
}
?>
<!--politica--->

<!--saude--->
<?php function get_saude() {
     $sql = mysql_query("SELECT * FROM site_posts WHERE categoria = 'saude' ORDER BY RAND() DESC LIMIT 4 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<li>
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=75&w=100&zc=1&q=90" />
<p><?php echo strip_tags(trim(str_truncate($texto, 90 , $rep)));?><a href="exibir.php?site=exibir&id=<?php echo $id;?>"> «Leia mais</a></p>
</li>
<?php			
	}
}
}
?>
<!--Saúde--->

<!--geral--->
<?php function get_geral() {
     $sql = mysql_query("SELECT * FROM site_posts WHERE categoria = 'geral' ORDER BY RAND() DESC LIMIT 4 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<li>
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=75&w=100&zc=1&q=90" />
<p><?php echo strip_tags(trim(str_truncate($texto, 90 , $rep)));?><a href="exibir.php?site=exibir&id=<?php echo $id;?>"> «Leia mais</a></p>
</li>
<?php			
	}
}
}
?>
<!--geral--->

<!--esportes--->
<?php function get_esportes() {
     $sql = mysql_query("SELECT * FROM site_posts WHERE categoria = 'esportes' ORDER BY RAND() DESC LIMIT 4 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<li>
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=75&w=100&zc=1&q=90" />
<p><?php echo strip_tags(trim(str_truncate($texto, 90 , $rep)));?><a href="exibir.php?site=exibir&id=<?php echo $id;?>"> «Leia mais</a></p>
</li>
<?php			
	}
}
}
?>
<!--esportes--->

<!--materias antigas--->
<?php function get_materias_antigas() {
     $sql = mysql_query("SELECT * FROM site_posts ORDER BY id ASC LIMIT 6 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>

<p><a href="exibir.php?site=exibir&id=<?php echo $id;?>"><?php echo $titulo;?></a></p>

<?php			
	}
}
}
?>
<!--materias antigas--->

<!--materias mais vistas--->
<?php function get_materias_mais_vistas() {
     $sql = mysql_query("SELECT * FROM site_posts ORDER BY visitas LIMIT 6 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>

<p><a href="exibir.php?site=exibir&id=<?php echo $id;?>"><?php echo $titulo;?></a></p>

<?php			
	}
}
}
?>
<!--materias mais vistas--->

<!---exibir noticias arquivo exibir.php--->
<?php function get_exibe_materias (){
    
if ($_GET['site']== "exibir"){
   
   $id = $_GET['id'];
   
   $sql = mysql_query ("SELECT * FROM site_posts WHERE id = 'id'");
   
   if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<h1><?php echo $titulo;?></h1>
<div class="info">Postado por:<?php echo $autor;?> | Categoria:<?php echo $categoria;?> | Data:<?php echo $titulo;?></div>
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=233&w=510&zc=1&q=90" />
<p><?php echo $texto;?></p>
<?php			
}
   }
}
}

?>
<!---exibir noticias arquivo exibir.php--->

<!---exibir categorias policia--->
<?php function get_categoria_policia() {


     $sql = mysql_query("SELECT * FROM site_posts WHERE categoria = 'policia' ORDER BY id DESC LIMIT $inicio, $maximo ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<li>
<a href="exibir.php?site=exibir&id=<?php echo $id;?>">
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=75&w=100&zc=1&q=90" />
<p><?php echo strip_tags(trim(str_truncate($texto, 300 , $rep)));?></a></p>
<li>
<?php			
	}
}
}
?>


<!---exibir categorias policia--->

<!---exibir categorias politica--->
<?php function get_categoria_politica() {
     $sql = mysql_query("SELECT * FROM site_posts WHERE categoria = 'politica' ORDER BY id DESC LIMIT 10 ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<li>
<a href="exibir.php?site=exibir&id=<?php echo $id;?>">
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=75&w=100&zc=1&q=100" />
<p><?php echo strip_tags(trim(str_truncate($texto, 300 , $rep)));?></a></p>
</li>
<?php			
	}
}
}
?>
<!---exibir categorias politica--->

este e o script

Share this post


Link to post
Share on other sites
softklin

Na tua função get_exibe_materias, esqueceste-te de contar o número de linhas, para decidir se mostras uma mensagem a dizer que o site está a ser alimentado, ou se mostras os resultados. Basta, depois da query e como tens feito para todas as funções, adicionar a linha que conta o total de registos. Algo assim:

$sql = mysql_query ("SELECT * FROM site_posts WHERE id = 'id'");
$contar = mysql_num_rows($sql);

if( $contar <= 0 ) {
  ...

Quanto ao segundo erro, tu estás a usar uma variável chamada $rep, que não é inicializada em lado nenhum. Pelo que estive a ver dessa função (aparentemente não é standard do PHP), parece que o 3º parâmetro é para limitar o total de carateres que queres devolver na descrição de cada produto/artigo. Podes criar uma variável chamada $rep no inicio do script PHP com o valor pretendido, ou substituir todas as ocorrências de $rep pelo valor que pretendes.

EDIT: A propósito, a função mysql_num_rows devolve um inteiro. Nas tuas comparações com o if, deverias usar também o 0 (zero) como inteiro, ou seja

if( $contar <= 0 )

em todas as tuas funções. Usar o tipo de dados correto ajuda a evitar warnings deste tipo no futuro.


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites
adalton

o meu amigo muito obrigado

caraca que erro meu no primeiro erro eu nao vi issu

agora no segundo descup minha ignorancia mas to começando agora

nao intendi direito

olha so no video que estou seguindo este $rep e deste script

limitar_palavras.php

<?php
define("TRUNC_BEFORE_LENGHT", 0);
define("TRUNC_AFTER_LENGHT", 1);
function str_truncate($str, $length, $rep=TRUNC_BEFORE_LENGHT)
{
if(strlen($str)<=$length) return $str;
if($rep == TRUNC_BEFORE_LENGHT) $oc = strrpos(substr($str,0,$length),' ');
if($rep == TRUNC_AFTER_LENGHT) $oc = strpos(substr($str,$length),' ') + $length;
return substr($str, 0, $oc);
}
?>

este codigo interfere no que estou fazendo nue

um abraço te mais

Share this post


Link to post
Share on other sites
softklin

Ok, se percebi bem, essa função mostra-te um excerto de tamanho "$length", com opção de começar no início, ou não. Partindo do princípio que queres começar o texto desde o inicio, podes tirar a variável $rep do código, ou seja, a linha fica algo do género:

<p><?php echo strip_tags(trim(str_truncate($texto, 150)));?><a href="exibir.php?site=exibir&id=<?php echo $id;?>"> «Leia mais</a></p>

(passo só dois argumentos, porque o terceiro é definido dentro da função, com o valor 0 por omissão)

ou se quiseres passar um valor:

<p><?php echo strip_tags(trim(str_truncate($texto, 150, 0)));?><a href="exibir.php?site=exibir&id=<?php echo $id;?>"> «Leia mais</a></p>

(passa o valor 0 explicitamente)


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites
adalton

obrigado amigo pela ajuda

o erro sumiu

mas tem outra coisa

quando a pessoa clika no link leimais ele tinha que abrir o noticia toda na integra

mas nao ta abrindo so aparece o aviso de que estamos alimentado o site

tem algu errado nesta funçao.

porque sera que no video deu tudo certo e

aqui nao ta dando oque sera

muito obrigado amigo

um abraço

Share this post


Link to post
Share on other sites
softklin

Na tua função get_exibe_materias a tua query tem um erro (que na altura também não dei por ele, e acabei por dar o código errado). Tens de passar o id para a tua query, de modo a que ele apresenta a notícia consoante o id:

$sql = mysql_query ("SELECT * FROM site_posts WHERE id = 'id'");

Como não tens nenhum artigo com o id = 'id', dá uma mensagem de erro a dizer que o site está a ser alimentado. Tens de substituir esse valor pelo $id numérico do artigo para o apresentar, assim:

$sql = mysql_query ("SELECT * FROM site_posts WHERE id = '$id'");

(usar a variável $id que contém o número do artigo).

Por curiosidade, que vídeo-tutorial é esse?


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites
adalton

e um que encina passo a passo a criaçao de um portal de noticias

e eu achei bacana os video to aprendendo um pouco

mas me diz ai poque que la da certo e aqui da erros sendo

que eu fiz de acordo com o video isto que nao intendo

porque se os codigos sao os mesmos deveria dar o mesmo resultado num e

o site e este ;http://www.dimarsantos.com/ns/web/

obrigado amigo

t mais


puts cara dei uma olhada aqui no codigo da video aula

este id = '$id'  eu dei uma vacilada cara na vi issu me descup  :wallbash:

agora ta puxando a noticia toda

sera que por causa desde erro meu aquele $rep nao funcionava.

ou nao tinha nada a ver . porque eu deixei como voce me dissi  coloquei  0 no lugar do $rep

muito obrigado amigo pelos

esclarecimentos

um abraço

t mais

--

Edit(brunoais):2x post removido

Share this post


Link to post
Share on other sites
softklin

Estive a ver a video-aula sobre o str_truncate (

https://player.vimeo.com/video/36148894

) e acho que aquele $rep tem de ter o valor 0 ou 1. Como em versões antigas do PHP, podias colocar uma variável não declarada e o PHP não te lançava nenhum aviso: assumia o 0. Agora convém corrigir esses pequenos facilitismos que o PHP permitia, mas estão incorretos.

Se reparares na função str_truncate, podes usar apenas dois valores no $rep: 0 ou 1. Se não indicares nada, por omissão ele escolhe o 0. Acho que é esse o caso que pretendes, por isso podes deixar o 0. Mas se vires que não é esse o resultado pretendido, experimenta trocar por 1, para veres a diferença. O erro do $id não está relacionado com este, era outro problema (apenas mostrava a mensagem de que estavam alimentado o site).


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites
adalton

muito obrigado pelas ajudas amigo

depois das correcoes que vc me ajudo a fazer

por enquanto aqui ta funcinando bem

um abraço

e mais uma ves muito obrigado

um abraço

fica com deus..


descup de encomoda dinovo

Notice: Undefined index: pag in C:\wamp\www\portal_noticias\functions.php on line 368

Call Stack

# Time Memory Function Location

1 0.0015 365464 {main}( ) ..\categorias.php:0

2 0.0057 511464 get_exibe_categorias( ) ..\categorias.php:19

3 0.0060 512584 include( 'C:\wamp\www\portal_noticias\paginas\policia.php' ) ..\functions.php:30

4 0.0060 512584 get_categoria_policia( ) ..\policia.php:1

olha so este script de paginaçao que ele passou na aula 17

ele esta dando um erro com a variavel $pag

aprentemente ta certo mas ta mostrando erro

<!---exibir categorias policia--->
<?php function get_categoria_policia() {


//paginação
$pag = "$_GET[pag]";
if ($pag >= '1'){
$pag = $pag;
}else{
$pag = '1';
}

$maximo = '10'; //RESULTADOS POR PÁGINA
$inicio = ($pag * $maximo) - $maximo;

     $sql = mysql_query("SELECT * FROM site_posts WHERE categoria = 'policia' ORDER BY id DESC LIMIT $inicio, $maximo ");
 $contar = mysql_num_rows($sql);

 if ($contar <='0'){
	 echo "<p>Estamos alimentado o nosso site. Volte mais tarde por favor!</p>";
 }else{
	 while ($rs = mysql_fetch_array($sql)){
	    $id = $rs ['0'];
		$foto = $rs ['1'];
		$titulo = $rs ['2'];
		$texto = $rs ['3'];
		$categoria = $rs ['4'];
		$data = $rs ['5'];
		$autor = $rs ['6'];
		$visitas = $rs ['7'];
?>
<li>
<a href="exibir.php?site=exibir&id=<?php echo $id;?>">
<img src="timthumb.php?src=upload/posts/<?php echo $foto; ?>&h=75&w=100&zc=1&q=90" />
<p><?php echo strip_tags(trim(str_truncate($texto, 300, 0 )));?></p></a>
<li>
<?php			

}
}
?>
<?php

//USE A MESMA SQL QUE QUE USOU PARA RECUPERAR OS RESULTADOS
//SE TIVER A PROPRIEDADE WHERE USE A MESMA TAMBÉM
$sql_res = mysql_query("SELECT * FROM site_posts
					WHERE categoria = 'policia'");
$total = mysql_num_rows($sql_res);

$paginas = ceil($total/$maximo);
$links = '5'; //QUANTIDADE DE LINKS NO PAGINATOR

echo "<a href=\"categorias.php?categoria=policia&pag=1\">Primeira Página</a>   ";

for ($i = $pag-$links; $i <= $pag-1; $i++){
if ($i <= 0){
}else{
echo"<a href=\"categorias.php?categoria=policia&pag=$i\">$i</a>   ";

}
}echo "$pag    ";

for($i = $pag +1; $i <= $pag+$links; $i++){
if($i > $paginas){
}else{
echo "<a href=\"categorias.php?categoria=policia&pag=$i\">$i</a>   ";
}
}
echo "<a href=\"categorias.php?categoria=policia&pag=$paginas\">Última página</a>   ";
?>
<?php
}
?>


<!---exibir categorias policia--->

--

Edit(brunoais):2x post removido

Share this post


Link to post
Share on other sites
HappyHippyHippo

não parece não ... apesar de mandares a indentação pela janela, vesse claramente que a variável $pag não está declarada a nível global antes da primeira utilização :

for ($i = $pag-$links; $i <= $pag-1; $i++){


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
softklin

Sim, isto que o HappyHippyhippo apontou é um problema, embora não seja isso que causa esse erro. Sobre esse erro, não deves obter o número de página desta maneira:

//paginação
$pag = "$_GET[pag]";
if ($pag >= '1'){
$pag = $pag;
}else{
$pag = '1';
}

mas algo do género:

//paginação
$pag = 0;
if (!empty($_GET['pag'])) {
  $pag = $_GET['pag'];
}
if ($pag >= '1'){
$pag = $pag;
}else{
$pag = '1';
}

A função empty verifica se a variável está definida e não está vazia. o ! significa not.

Agora, o erro apontado pelo HappyHippyhippo tem a ver com o escopo/alcance de variáveis. Tu estás a obter o número de página dentro da função get_categoria_policia( ) , e por isso, não podes aceder a esses dados fora dela. Para isso, podes, antes da query SQL, colocar as mesmas instruções (estas) para obter o número da página.


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites
adalton

cara esta video aula ta dando muito erro aqui no meu pc

olha so o erro que deu agora

Notice: Undefined index: $id_do_post in C:\wamp\www\portal_noticias\admin\post_editar.php on line 29

Call Stack

# Time Memory Function Location

1 0.0173 382088 {main}( ) ..\post_editar.php:0

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

<?php include "config.php";?>
<link href="scripts/css.css" rel="stylesheet" type="text/css" />
<div id="conteudo">
<h1>Editar postagens</h1>

<?php
   if (isset ($_POST['cadastrar_posts']) && $_POST['cadastrar_posts']== 'cad'){
    $id_a_editar = $_POST['$id_do_post'];
	$img = $_FILES['foto'];
	$titulo = $_POST['titulo'];
	$texto = $_POST['texto'];
	$autor = $_POST['autor'];
	$categoria = $_POST['categoria'];
	$data = $_POST['data'];

	if (empty($_POST['foto']['name'])){
	    $editar_posts = mysql_query("UPDATE site_posts SET titulo = $titulo, texto = $ texto, autor = $autor, categoria = $categoria, data = NOW() WHERE id = '$id_a_editar'") or die (mysql_error());

		if ($editar_posts >='1'){
		    echo "Atualizado com sucesso!";	
		}else{
		    "Não foi possivel atualizar";
		}
	}
   }
   
$editar_post_id = $_POST['$id_do_post'];
$noticias = mysql_query("SELECT * FROM site_posts WHERE id ='$editar_post_id'") or die (mysql_error ());

 if (mysql_num_rows($noticias) <='0'){
	   echo "Não encontramos postagens neste momento";
	 }else{
	   while ($res_noticias = mysql_fetch_array($noticias)){
		     $id_do_post = $res_noticias [0];
			 $thumb = $res_noticias [1];
			 $titulo = $res_noticias [2];
			 $texto = $res_noticias [3];
			 $categoria = $res_noticias [4];
			 $data = $res_noticias [5];
			 $autor = $res_noticias [6];
?>
<table width="800" border="1">
  <tr>
    <td width="117"> </td>
    <td width="667"> </td>
  </tr>
  <tr>
    <td> </td>
    <td>
    <form name="editar_posts" id="editar_posts" method="post" action="" enctype="multipart/form-data">
    <label>
      <input type="file" name="foto" size="50"/>
    </label>
    
    <label>
      <input type="text" name="titulo" value="<?php echo $titulo;?>"/>
    </label>
    
    <label>  
      <textarea name="text" rows="5"><?php echo $texto;?></textarea>
    </label>
    
    <label>  
      <input type="text" name="autor" value="<?php echo $autor;?>"/>
    </label>
    
    <label>  
      <input type="text" name="categoria" value="<?php echo $categoria;?>"/>
    </label>
    
    <label>  
      <input type="text" name="data" value="<?php echo $data;?>"/>
    </label>  
        
    </form>
    </td>
  </tr>
  <tr>
    <td> </td>
    <td> </td>
  </tr>
</table>
<?php }};?>
</div>

Share this post


Link to post
Share on other sites
adalton

o cara achei o erro

foi falta de atenção minha

mesmo assim obrigado pelas

ajudas que tens me dado

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.