Ir para conteúdo

POWERED BY:

Arquivado

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

adrena

Sou leigo em php

Recommended Posts

ola amigos

poderia me dar uma força nesse código aqui

aqui na primeira conexão banco de dados 01categoria ele não me da o nome da categoria se ela conter espaço Ex(Campeonato Brasileiro) que esta no BD, nao aparece nada na tela
ele so aparece se o nome for simples Ex(Campeonato ou CampeonatoBrasileiro ou Campeonato_Brasileiro)
O que esta acontecendo pode me falar?
não intendo nada de programação apenas fico fuçando e alguma coisa sai mais isso ai ta me quebrando a cabeça. se puder me ajudar ficarei muito grato

 

Mais ou menos o que quero fazer é o seguinte
essa pagina pega a categoria pelo get e mostra a categoria que estrou Categoria: xxxx
e depois lista todos os dados da tabela $cat.

 

*so a parte de escrever a Categoria: Ex(Campeonato Brasileiro) não esta escrevendo com espaço.

 

 

DB assim

CREATE TABLE IF NOT EXISTS `01categoria` (
`idcat` int(11) NOT NULL auto_increment,
`nome_cat` varchar(250) NOT NULL default '',
`nome_cat_amigavel` varchar(250) NOT NULL default '',
`image` varchar(250) NOT NULL default '',
`link` varchar(250) NOT NULL default '',
`linkdesc` varchar(500) NOT NULL default '',
`click` int(11) NOT NULL default '0',
PRIMARY KEY (`idcat`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 ;

 

INSERT INTO `01categoria` (`nome_cat`,`nome_cat_amigavel`, `image`, `link` ) VALUES

exc.. valores



<?php require_once('../conecta/duo_conexao.php');
$cat = $_GET['cat'];
$sqlC = "SELECT * FROM 01categoria where nome_cat_amigavel = '$cat' ";
$resulta = mysql_query($sqlC) or die ("Não foi possível realizar a consulta!!!");
while($array_result=mysql_fetch_array($resulta)){

$resul10 = $array_result["nome_cat_amigavel"]; //defina o parâmetro desejado para o resultado.
$resul11 = $array_result["nome_cat"];
}
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo "Uhull Categoria $resul10 "  ?></title>
</head>

<center>
<img src="../image/uhullonline900x350.png" width="900" height="350" align="baseline" />

</center>

<?php




$pg = $_GET['pg'];
if (!isset($pg))
{
$pg = 1;
}

$sql = "SELECT * FROM $cat ";
$resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta!!!");



$lpp = 30; // defina o número de resultados por página.
$total = mysql_num_rows($resultado);
if ($total <= $lpp)
{    
$total_paginas = 1;
} else {
$total_paginas = ceil($total/$lpp);
}
$inicio = ($pg - 1) * $lpp;
$final = $inicio + $lpp - 1;
$ponteiro = 0;
$i = "1";

echo "<p>Encontrado(s): "."<b>"."$total"."</b>"." registros"." Você esta na pagina "."<b>"."$pg"."</b>"."</p>";
echo ""."<center><b><h1>Categoria: ".$resul10." ".$resul11." "."$resul5"."".($resul5)."</b></h1></center>"."";

$colunas="3"; // defina o número de colunas desejado.
$total="1";
print "<div id=categoria>";
print "<table align=center callpadding=8 cellspacing=10 border=0 width=100%>";

$sql = "SELECT DISTINCT * FROM $cat order by click desc LIMIT $inicio, $lpp";
$resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta!!!");

while($array_result=mysql_fetch_array($resultado)){

$resul = $array_result["image"]; //defina o parâmetro desejado para o resultado.        
$resul2 = $array_result["id"]; //defina o parâmetro desejado para o resultado.
$resul3 = $array_result["link"]; //defina o parâmetro desejado para o resultado.    
$resul4 = $array_result["linkdesc"]; //defina o parâmetro desejado para o resultado.

if($total==1){
print"<tr>";
}
print"<td align=center class=efeito2>";
print "<a href=../click.php?id=".($resul2)."&cat=".($cat)."&link=".($resul3)." alt=".($resul3)."  target=_blank><img  src=".($resul)." width=320 height=240></a> ";               
//print "$resul"; // retorna o resultado.  
//print "<img src=".($resul2)." width=".($resul3).">";
print"</td>";

if($total==$colunas){
print"</tr>";
$total=0;
}
$total=$total+1;
}

if(!$total==$colunas){
print"</tr></table>";

} else {
print"</table>";
print"</div>";
}
?>
<center>  

<?php

if ($pg == 1) {
//echo "<div align=center id=paginacao>";
//echo "<table align=center callpadding=8 cellspacing=10 border=0 width=100%>";
//echo "<tr>";
//echo "<td>";
echo "<font size=2><span class=botao>";    
echo " Anterior ";    
echo "</span></font>";
}
else
{    
echo "<font size=2><span class=botao>";    
echo "<a href=\"?cat=".$cat."&pg=".($pg - 1)."\" targe=\"_self\"> Anterior </a> "; // troque (pagina) pela link de sua página.    
echo "</span></font>";

}
$i = 1;
while ($i <= $total_paginas) {    
if ($i == $pg)
{   
echo "<font size=2><span class=botao>";        
echo " <b>|<u>   $i   </u>|</b> ";        
echo "</span></font>";
}
else
{
echo "<strong><font size=2><span class=botao>";        
echo " <a href=\"?cat=".$cat."&pg=".$i."\" target=\"_self\">  ".$i."  </a> "; // troque (pagina) pela link de sua página.        
echo "</span></font></strong>";
}
$i = $i + 1;
}
if ($pg == $total_paginas)
{    

echo "<font size=2><span class=botao>";    
echo "Proxima";    
echo "</span></font>";
}
else
{    
echo "<font size=2><span class=botao>";    
echo "<a href=\"?cat=".$cat."&pg=".($pg + 1)."\" targe=\"_self\"> Proxima </a>\n"; // troque (pagina) pela link de sua página.    
echo "</span></font>"; }
//echo "</td>";
//echo "</tr>";
//echo "</table>";
//echo "</div>"

?>
</center>



</center>

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

teu problema esta aqui:

 

 

$sqlC = "SELECT * FROM 01categoria where nome_cat_amigavel = '$cat' ";

 

faça assim:

 

 

$sqlC = "SELECT * FROM 01categoria where nome_cat_amigavel like  '%$cat%' ";

Compartilhar este post


Link para o post
Compartilhar em outros sites

continuo a mesma coisa aqui.

Meu site fica assim

 

http://site/categoria.php?cat=sorvete

 

ele pucha a categoria sorverte e me exibe so os nomes que estão na coluna nome_cat_amigavel

dentro do site tem o titulo Categoria: Sorvete Morango ou seja nao esta exibindo o Sorvente Morango agora se estivar cadastrado no banco de dados como o mesmo nome q a $cat ele exibe

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom eu te intendi, mas sinceramente nao sei... mas,

o nome da categoria no banco nao pode conter espaços em brando entre os nomes... entao se tu quer ter uma categoria Sorvete Morango... essa categoria no banco tem que ser Categoria_Sorvete ou CategoriaSorvete.. o valro apresentado para o usuário pode ser Categoria Sorvete, mas o id tem que ser CategoriaSorvete...

 

Tenta o seguinte, na mao mesmo... http://site/categoria.php?cat=sorvete&morango

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja os comentários que inseri no código:

<?php
$cat = $_GET['cat']; // Aqui você pega a URL amigável
$sqlC = "SELECT * FROM 01categoria where nome_cat_amigavel = '$cat'"; // Aqui você pesquisa se tem algum valor com essa URL
$pg = isset($_GET['pg']) ? $_GET['pg'] : 1;
$sql = "SELECT * FROM $cat";  // Tem alguma tabela no banco com o mesmo nome da URL amigável?
$resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta!!!");

Acredito que o erro está a segunda query que postei.

 

Veja a forma que validei a $pg, estava dando erro na validação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja os comentários que inseri no código:

<?php
$cat = $_GET['cat']; // Aqui você pega a URL amigável
$sqlC = "SELECT * FROM 01categoria where nome_cat_amigavel = '$cat'"; // Aqui você pesquisa se tem algum valor com essa URL
$pg = isset($_GET['pg']) ? $_GET['pg'] : 1;
$sql = "SELECT * FROM $cat";  // Tem alguma tabela no banco com o mesmo nome da URL amigável?
$resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta!!!");

Acredito que o erro está a segunda query que postei.

 

Veja a forma que validei a $pg, estava dando erro na validação.

a parte que nao esta me entrando e essa

 

http://site/categoria.php?cat=sorvete

$cat = $_GET['cat'];

Coloca na variavel $cat 'Sorvete'

 

sqlC = "SELECT * FROM 01categoria where nome_cat_amigavel = '$cat'"; // Aqui você pesquisa se tem algum valor com essa URL

a consulta a 01categoria seria para buscar o que esta escrito dentro da linha que tem a categoria apresentada e pegar a coluna nome_cat_amigavel tudo que tem escrito nela.

 

Apareça para usuário Você esta na categoria: nome_cat_amigavel -> Você esta na categoria: Sorvete Morango

 

não sei se confundi mais ainda ou se me entenderam mais ou menos o que queria.

 

a parte $pg pra baixo ja seria outra consulta onde $pg vai me dar em que pagina estou na paginação

e outra consulta me inseri todos os registros citado no $cat nome_categoria acho que seria isso pois to intendendo aos poucos php indo de leve.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, acho que intendi... me diz uma coisa... no teu banco tu tem uma tabela chamada "sorvete morango"?

porque nessa linha voce esta procurando por ela..... $sql = "SELECT * FROM $cat";

ou seja, se $cat for "sorvete morango" o select seria.. "select * from sorvete morango" kkkk

Compartilhar este post


Link para o post
Compartilhar em outros sites

tabela esta assim

 

CREATE TABLE IF NOT EXISTS `01categoria` (
`idcat` int(11) NOT NULL auto_increment,
`nome_cat` varchar(250) NOT NULL default '',
`nome_cat_amigavel` varchar(250) NOT NULL default '',
`image` varchar(250) NOT NULL default '',
`link` varchar(250) NOT NULL default '',
`linkdesc` varchar(500) NOT NULL default '',
`click` int(11) NOT NULL default '0',
PRIMARY KEY (`idcat`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 ;

 

INSERT INTO `01categoria` (`nome_cat`,`nome_cat_amigavel`, `image`, `link` ) VALUES

( 'sorvete', 'Sorvete Morango', '15.jpg', 'http://site.etc'),

tem a nome_cat q é a que o $cat pega e p que eu quero que apareça e nome_cat_amigavel

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pera.. acho que te intendi...deixa eu pensar direito...

 

 

$sql = "SELECT * FROM $cat ";
//troca por
$sql = "SELECT * FROM $result11 ";

 

testa ai

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema deve estar por ai

 

$cat = $_GET['cat'];
$sqlC = "SELECT * FROM 01categoria where nome_cat_amigavel = '$cat' ";
$resulta = mysql_query($sqlC) or die ("Não foi possível realizar a consulta!!!");
while($array_result=mysql_fetch_array($resulta)){

$resul10 = $array_result["nome_cat_amigavel"]; //defina o parâmetro desejado para o resultado.
$resul11 = $array_result["nome_cat"];
}
?>

as outras conexões abaixo estão fazendo tudo o que pede certinho.

dentro deste mesmo banco de dados tenho tabelas com os nomes das categoria nome_cat e dentro dessa tabela tem os registros.

 

acho que compliquei na explicação

agora minha explicação vai ficar melhor

tenho $cat

quero fazer uma conexão a tabela 01categoria pegar a linha que esteja o mesmo que esteja escrito na $cat e escrever na tela a linha nome_cat_amigavel

 

:D

Compartilhar este post


Link para o post
Compartilhar em outros sites

entao vejamos...

 

 

$cat = $_GET['cat'];
 
$sqlC = "SELECT * FROM 01categoria where nome_cat_amigavel = '$cat' ";
 
$resulta = mysql_query($sqlC) or die ("Não foi possível realizar a consulta!!!");
 
while($array_result=mysql_fetch_array($resulta)){
    $resul10 = $array_result["nome_cat_amigavel"]; //defina o parâmetro desejado para o resultado.
    $resul11 = $array_result["nome_cat"];
}
?>

Bom,

$resul10 = nome_cat_amigavel;

$result11 = nome_cat

Para fazer a busca na tabela 01categoria agora seria entao...

 
$sqlNovo = "SELECT * FROM 01categoria where nome_cat like '%$resul11%' ";
 
$novoResultado = mysql_query($sqlNovo) or die ("Não foi possível realizar a consulta 2!!!");
 
while($array_novo=mysql_fetch_array($NovoResultado)){
    $listacampos = $array_novo['nome'];
    ....
}

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.