Problamas No Sitema Q To Fazendu
#1
Posted 29/10/2004, 12:28
Bom seguinte to fazendu um sistema de cadastros divididos em categorias!
Bom meu problema é q nao consigo fazer o sistema exibir somente os cadastros da categoria selecionada, ou seja tenho la 2 categorias, Arquiterura e WebHost, blz ai quando clico em Arquitetura ele exibe os dados da arquitetura mais tbm mostra os do webhost!
Vo posta os codigos ai:
guaira.php (mostra as categorias)
PHP |
<? include "sistema/config.php"; $sql = mysql_query("SELECT * FROM $categorias ORDER BY id"); while ($row = mysql_fetch_array($sql)) { $categoria = $row['categoria']; $id = $row['id']; echo " <a href=ver_guaira.php?categoria=$id>$categoria</a><br>"; } ?> |
ver_guaira.php (mostra os cadastros da categoria escolhida na pagina acima)
PHP |
<? $id = $_GET['categoria']; include "sistema/config.php"; $sql = mysql_query("SELECT * FROM $cadastros"); $lpp = 3; // Especifique quantos resultados você quer por página $total = mysql_num_rows($sql); // Esta função irá retornar o total de linhas na tabela $paginas = ceil($total / $lpp); // Retorna o total de páginas if(!isset($pagina)) { $pagina = 0; } // Especifica uma valor para variavel pagina caso a mesma não esteja setada $inicio = $pagina * $lpp; // Retorna qual será a primeira linha a ser mostrada no MySQL $sql = mysql_query("SELECT * FROM $cadastros WHERE id='$categoria' LIMIT $inicio,$lpp"); // Executa a query no MySQL com o limite de linhas. while ($row = mysql_fetch_array($sql)) { $empresa = $row['empresa']; $endereco = $row['endereco']; $fone = $row['fone']; $email = $row['email']; $site = $row['site']; $descricao = $row['descricao']; $logo = $row['logo']; echo " <table width=450 border=0 cellspacing=0 cellpadding=0> <tr> <th width=178 rowspan=5 scope=col><img src=$logo width=100 height=100></th> <th width=68 class=texto_medio2 align=left>Empresa:</th> <th width=224 class=texto_medio align=left>$empresa</th> </tr> <tr> <td class=texto_medio2>Endereço:</td> <td class=texto_medio>$endereco</td> </tr> <tr> <td class=texto_medio2>Telefone:</td> <td class=texto_medio>$fone</td> </tr> <tr> <td class=texto_medio2>Email:</td> <td class=texto_medio><a href=mailto:$email>$email</td> </tr> <tr> <td class=texto_medio2>Site:</td> <td class=texto_medio><a href=http://$site target=_blank>$site</a></td> </tr> <tr> <td colspan=3 class=texto_medio2>Descrição: <span class=texto_medio>$descricao</span></td> </tr> </table> <br> <br> "; } ?> PAGINACAO: <?php // Agora o mais importante, gera os links.... if ($pagina > 0) { $menos = $pagina - 1; $url = "$PHP_SELF?pagina=$menos"; print "<a href=\"$url\"><span class=texto_pequeno2><< Anterior</span></a>"; } else { print "<span class=texto_pequeno2><< Anterior</span>"; } for($i = 0; $i < $paginas; $i++) { $linksp = $i + 1; if ($pagina == $i) { print " <span class=texto_pequeno2>| <b>$linksp</b></span>"; } else { $url = "$PHP_SELF?pagina=$i"; print " | <a href=\"$url\">$linksp</a>"; } } if($pagina < ($paginas - 1)) { $mais = $pagina + 1; $url = "$PHP_SELF?pagina=$mais"; print " | <a href=\"$url\"><span class=texto_pequeno2>Próxima >></span></a>"; } else { print " <span class=texto_pequeno2>| Próxima >></span>"; } ?> |
A pagina ver_guaira.php esta com um codigo de paginacao! Como vc's podem ver!
Eu consegui fazer exibir + ou - os dados referente a categoria escolhida so q ele so mostra um cadastro sendo q tem 3 cadastros!
Consegui fazer mostrar 1 pelo menos usando isso: WHERE id='$categoria' la nesta linha:
$sql = mysql_query("SELECT * FROM $cadastros WHERE id='$categoria' LIMIT $inicio,$lpp"); // Executa a query no MySQL com o limite de linhas.
Alguem sabe como faço pra resolver isso? vlw!
Hospedagem Profissional?
R: Layout WebHost - www.lwh.com.br
Desenvolvimento de sites e sistemas?
R: Layout - www.layoutweb.com.br
#2
Posted 29/10/2004, 16:29
Hospedagem Profissional?
R: Layout WebHost - www.lwh.com.br
Desenvolvimento de sites e sistemas?
R: Layout - www.layoutweb.com.br
#4
Posted 29/10/2004, 19:01
E ja tentei isso nao deu!
Hospedagem Profissional?
R: Layout WebHost - www.lwh.com.br
Desenvolvimento de sites e sistemas?
R: Layout - www.layoutweb.com.br
#5
Posted 29/10/2004, 22:06
eu fiz meio por cima.
Eu fiz com auxilio de um tuto aqu ido forum.
PHP |
<html> <head> <style type="text/css"> body { font-family: Verdana; font-size: 11px; } a { font-family: Verdana; font-size: 11px; color: #000000; text-decoration: none; } a:hover { font-family: Verdana; font-size: 11px; color: #FE5400; text-decoration: none; } </style> </head> <body> <? include "sistema/config.php"; $id = $_GET['categoria']; $link_p_pag = 5; $reg_p_pag = 12; $pag = $_GET['pag']; $busca = mysql_query("SELECT count(*) FROM $cadastros;") $registros = mysql_result($busca,0); $num_total_paginas = ($registros%$reg_p_pag==0)?$registros/$reg_p_pag:floor($registros/$reg_p_pag)+1; if ($pag>$num_total_paginas) echo "Error<br><br>"; else if (!$pag) $pag = 1; $inicio = ($reg_p_pag*$pag)-$reg_p_pag; $query = "SELECT * FROM $cadastros ORDER BY id='$categoria' DESC LIMIT $inicio, $reg_p_pag"; $result = @mysql_query($query); while ($row = mysql_fetch_assoc($result)) { $empresa = $row['empresa']; $endereco = $row['endereco']; $fone = $row['fone']; $email = $row['email']; $site = $row['site']; $descricao = $row['descricao']; $logo = $row['logo']; echo " <table width=450 border=0 cellspacing=0 cellpadding=0> <tr> <th width=178 rowspan=5 scope=col><img src=$logo width=100 height=100></th> <th width=68 class=texto_medio2 align=left>Empresa:</th> <th width=224 class=texto_medio align=left>$empresa</th> </tr> <tr> <td class=texto_medio2>Endereço:</td> <td class=texto_medio>$endereco</td> </tr> <tr> <td class=texto_medio2>Telefone:</td> <td class=texto_medio>$fone</td> </tr> <tr> <td class=texto_medio2>Email:</td> <td class=texto_medio><a href=mailto:$email>$email</td> </tr> <tr> <td class=texto_medio2>Site:</td> <td class=texto_medio><a href=http://$site target=_blank>$site</a></td> </tr> <tr> <td colspan=3 class=texto_medio2>Descrição: <span class=texto_medio>$descricao</span></td> </tr> </table> <br> <br> "; } echo "<hr>"; $anterior = $pag-1; if ($anterior<1) echo "Anterior - "; else echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=$anterior\">Anterior</a> - "; for($i=1; $i<$pag; $i++) if($i>=$pag-$link_p_pag) echo "<a href=\"{$_SERVER['PHP_SELF']}?pag=$i\">$i</a> - "; echo "<b>$pag</b>"; for($i=$pag+1; $i<=$num_total_paginas; $i++) if($i<=$pag+$link_p_pag) echo " - <a href=\"{$_SERVER['PHP_SELF']}?pag=$i\">$i</a>"; $proxima = $pag+1; if ($proxima>$num_total_paginas) echo " - Próxima"; else echo " - <a href=\"{$_SERVER['PHP_SELF']}?pag=$proxima\">Próxima</a>"; ?> </body> </html> |
NO seu script eu nã oachei a especifikação para $cadastrados.
Então pode ser isso que o seu script não funco
#6
Posted 29/10/2004, 23:30
Hospedagem Profissional?
R: Layout WebHost - www.lwh.com.br
Desenvolvimento de sites e sistemas?
R: Layout - www.layoutweb.com.br
#7
Posted 30/10/2004, 19:36
Poderia postar aqui os campos do seu banco de dados? Parece que são duas tabelas, estou certo? Se for, poste os campos de cada. Acho que estou quase podendo te ajudar, mas estou confuso com este detalhe.
Valeu, T+
Não sou expert... mas tento ajudar! Mas o que mais preciso é de ajuda! hehehe
#8
Posted 30/10/2004, 20:02
Cara, tu chega aqui larga meia dúzia de códigos e pede pra alguém consertar pra ti depois trata os caras que te ajudaram como uns bostas!! Se tu acha que eles não são bons porque a solução deles não serviu, eu acho que esse teu problema ridiculo também não é bom o suficiente para que alguém entendido te ajude!!
¬¬
Edição feita por: dokkalfr, 30/10/2004, 20:04.
=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Blog PHPClube
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Bookmarks
#9
Posted 30/10/2004, 20:09
[COLOR=red]ICQ: 211148633
[COLOR=blue]MSN: ricardosouza2@hotmail.com
[COLOR=blue]AIM: ricardobarrosce
#10
Posted 31/10/2004, 06:18
#11
Posted 31/10/2004, 07:33
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
#12
Posted 31/10/2004, 07:39
PHP |
<?php $cadastros = "CREATE TABLE cadastros (id int(10) auto_increment, empresa char(200), endereco char(200), fone char(200), email char(200), site char(200), descricao char(200), logo char(200), categoria char(200) PRIMARY KEY(id))"; mysql_query($cadastros); $categorias = "CREATE TABLE categorias (id int(10) auto_increment, categoria varchar(200) NOT NULL, PRIMARY KEY(id))"; mysql_query($categorias); ?> |
vlew
Hospedagem Profissional?
R: Layout WebHost - www.lwh.com.br
Desenvolvimento de sites e sistemas?
R: Layout - www.layoutweb.com.br
#13
Posted 31/10/2004, 07:58
PHP |
<?php //Aqui vai definir em qual categoria..... $categoria = "músicas"; $Consulta = mysql_query("SELECT * FROM cadastros WHERE categoria='$categoria'") or die (mysql_error()); while($x=mysql_fetch_array($Consulta)){ echo '» '.$x['email'].'<br />'; } ?> |
Implementa como queira.....
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
2 user(s) are reading this topic
0 membro(s), 2 visitante(s) e 0 membros anônimo(s)