Jump to content


Photo

[resolvido] Query String Com Subcategorias


  • Faça o login para participar
11 replies to this topic

#1 ulrich_52

ulrich_52

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado

Posted 11/07/2008, 19:19

Olá!
Esse é meu primeiro tópico desde que me cadastrei :assobio:

Eu estou com dificuldades para editar esse código que tenho de Query String (que por sinal peguei aqui no fórum :lol: ):
<?php
// Pega o nome do arquivo
// Algo como:  paginas.php?arquivo=games
$pagina = $_GET["go"];

// Verifica a existencia do mesmo (se existir inclue)
if (file_exists(($pagina . ".php"))) {
 include_once(($pagina . ".php"));
} else {
 // Caso o arquivo não exista inlue a padrão
 include_once("main.php");
}
?>

Não lembro onde foi, mas eu passei essas últimas semanas tentando achar um código que se encaixasse no que eu procurava, mas o máximo que achei foi um em que eu tinha que definir um ID para a página e depois ter que botá-la no código, o que deixou meu site muito artificial.

Eu gostaria de incluir subsessões nesse código que postei e também incluir uma página de erro sem ser a existente e deixar a existente como página principal, ou seja, adicionar um erro no local onde tah o "main.php" e deixar o main.php como página principal. Mas eu tentei unir códigos e até tentei criar uns, mas como não sou muito bom com php eu não consegui.

Eu queria que vocês, se desse, fizessem isso por mim ou pelo menos me mostrassem como fazer pq aew num pertubo mais vcs :unsure:

Ah, e também procurei em todo o fórum e o máximo que achei foi esse código de novo e um que usava uma página externa à de exibição da query, o que dificulta o que eu estou usando no meu site.

Obrigado por terem saco pra lerem isso :lol:

Edição feita por: ulrich_52, 12/07/2008, 20:13.


#2 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 12/07/2008, 00:14

http://forum.wmonlin...hl=query string ?
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#3 ulrich_52

ulrich_52

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado

Posted 12/07/2008, 17:11

Não era exatamente isso que procurava.
Eu consegui um código onde eu tenho que inserir toda categoria e a pagina inicial dessa categoria para poder ficar tipo /?go=CATEGORIA
e a sub fica /?go="CATEGORIA&id=SUB

mas tenho que fazer isso manualmente
Eu sei que existe Query string automatica. Tipo, ela identifica a terminação .php no final dos arquivos e apenas abre as paginas com essa terminação e eu naum preciso acrescentar no seu código a página nem o seu nome que ela identifica apenas com o nome do arquivo, sem a termina

ex:

o arquivo se chama "pagina.php"; ela identifica automaticamente ".php" e no link preciso apenas botar "?go=pagina" que ela sabe que me refiro a "pagina.php"


obrigado pela resposta "rápida e direta", lwirkk <_<

#4 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 12/07/2008, 18:17

Urrf :rolleyes:

Ulrich_52 seja bem-vindo ao fórum... =)

O link com base nele dava para ter bons resultados com implementações... (y)

Veja se isto lhe ajuda:
<?php
// Pega o nome do arquivo
// Algo como:  paginas.php?arquivo=games
$pagina = $_GET['go'];
$sub = $_GET['sub'];

// Verifica a existencia do mesmo (se existir inclue)
if (is_file($pagina.'/'.$sub.'.php')) {
 include($pagina.'/'.$sub.'.php');
}elseif(is_file($pagina.'.php')){
 include($pagina.'.php');
}else{
 // Caso o arquivo não exista inlue a padrão
 include('main.php');
}
?>

www.site.com/?go=PAGINA&sub=SUBPAGINA

->>
/site
/site/pagina.php
/site/pagina/subpagina.php

Edição feita por: lwirkk, 12/07/2008, 18:24.

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#5 ulrich_52

ulrich_52

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado

Posted 12/07/2008, 18:25

Vlw, era esse mesmo o codigo q tava querendo ;)
só mais uma coisa:
tem diferença entre o "&" e o "$"? qual é? como eu posso alternar entre esses dois?

Brigadão!

#6 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 12/07/2008, 18:33

o $ seria para variavel no codigo PHP e o & para a URL quando se tem mais de um $_GET[] nela.
Eu tinha colocado no exemplo o $, mas quando vi, já arrumei para o certo que é &. (y)
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#7 ulrich_52

ulrich_52

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado

Posted 12/07/2008, 18:43

unu, por isso perguntei, mas quando atulizou vi q mudou. obrigado!
vou ver se funciona e já já volto pra dá a resposta
Obrigado!

-------------
Editado:

Problema resolvido!
Graças ao lwirkk !!! (vlw cara :rolleyes: )

Posso te explorar mais um pouco? :assobio:
Como ficaria se eu incluisse uma página de erro e uma principal? (paginas diferentes)
Tipo, tem a de erro que é exibida a main.php no código atual, como ficaria se eu quisesse incluir a pagina main.php como principal (quando abrisse o site) e a erro.php quando a pagina naum existesse?

Edição feita por: ulrich_52, 12/07/2008, 18:48.


#8 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 12/07/2008, 19:08

Antes de começar aquela verificação se o arquivo existe coloca isso:
$pagina = $_GET['go'];
$sub = $_GET['sub'];

if($pagina{1}){

 // IF's de verificação aqui...

}else{
 include('main.php');
}

E naquela parte do script:
}else{
 // Caso o arquivo não exista inlue a padrão
 include('main.php');
}
Muda para isso:
}else{
 // Caso o arquivo não exista inlue a padrão
 include('erro.php');
}

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#9 ulrich_52

ulrich_52

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado

Posted 12/07/2008, 19:37

então fica assim?
<?php
// Pega o nome do arquivo
// Algo como:  paginas.php?arquivo=games
$pagina = $_GET['go'];
$sub = $_GET['sub'];

if($pagina{1}){

// Verifica a existencia do mesmo (se existir inclue)
if (is_file($pagina.'/'.$sub.'.php')) {
 include($pagina.'/'.$sub.'.php');
}elseif(is_file($pagina.'.php')){
 include($pagina.'.php');

}else{
 include('main.php');
}
}else{
 // Caso o arquivo não exista inlue a padrão
 include('erro.php');
}
?>


#10 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 12/07/2008, 19:51

No primeiro ELSE precisa ser o ERRO.PHP por que dará ele se as páginas não forem encontradas, e no segundo poderá ser o MAIN.PHP por que dará ele se nenhuma query string for postado na URL. (y)

<?php
// Pega o nome do arquivo
// Algo como:  paginas.php?arquivo=games
$pagina = $_GET['go'];
$sub = $_GET['sub'];

if($pagina{1}){

// Verifica a existencia do mesmo (se existir inclue)
if (is_file($pagina.'/'.$sub.'.php')) {
 include($pagina.'/'.$sub.'.php');
}elseif(is_file($pagina.'.php')){
 include($pagina.'.php');

}else{
 include('erro.php');
}
}else{
 // Caso o arquivo não exista inlue a padrão
 include('main.php');
}
?>

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#11 ulrich_52

ulrich_52

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado

Posted 12/07/2008, 20:12

atah, por isso que naum tava pegando quando eu testtei. tava aparecendo as duas paginas ou só a de erro XD

ok, resolvido completamente. vou mudar o titulo. obrigado!

---------
Código Funcionando 100%!

Edição feita por: ulrich_52, 12/07/2008, 20:32.


#12 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 12/07/2008, 20:24

Sem problemas! Qualquer coisa estamos aí! =)
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq