Ir para conteúdo

POWERED BY:

Arquivado

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

cauetc

[Resolvido] problema com variavel....

Recommended Posts

sou iniciante em php, e estou fazendo um site onde eu possa oferecer meus servicos....

 

a questao eh a seguinte, tenho um menu.... gostaria de que cada link do menu fosse uma variável que mudasse o include da pagina principal.... assim quando eu acessar o link Contato por exemplo(index.php?link=contato) ele da o include da pagina de contato na mesma pagina ....

 

sera que alguem pode me ajudar?? hehe

valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Simples! Use Query Strings:

 

if(is_file($_GET['link'].'.php')) {

include $_GET['link'].'.php';

}
else {

include "idx.php";

}

Aqui ele verifica se o que está depois de 'link' é uma página .PHP válida. Se for, ele inclui a página. Caso contrário, ele inclui uma página padrão que chamei de idx.php.

 

Ae é só colocar onde você quiser incluir sua página.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza cara, mas tipo... nao teria q ter uma parte q diria que por exemplo se link = a contato a variavel no include abrira o contato.php, caso o link seja Servicos por exemplo vai ter q ter uma variavel dizendo q servicos = talarquivo.php

 

entende? como posso fazer isso?

abraço man!

 

 

Simples! Use Query Strings:

 

if(is_file($_GET['link'].'.php')) {

include $_GET['link'].'.php';

}
else {

include "idx.php";

}

Aqui ele verifica se o que está depois de 'link' é uma página .PHP válida. Se for, ele inclui a página. Caso contrário, ele inclui uma página padrão que chamei de idx.php.

 

Ae é só colocar onde você quiser incluir sua página.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tipo,

 

Você teria seu index.php com os menus e tudo mais.

 

Ae, na parte que quiser, você põe o código que te passei. Ae ele vai verificar se contato('link=contato') equivale a contato.php.

 

Ae é só você criar os arquivos com o conteudo de cada sessão:

 

contato.php

servicos.php

portfolio.php

 

Na hora do link, nao precisa por o .php, é somente o some do arquivo

 

Exemplo,

 

você quer incluir os dados de servicos.php, então ficaria index.php?link=servicos

Compartilhar este post


Link para o post
Compartilhar em outros sites
include 'outrapasta/'.$_GET['link'].'.php';
Basta concatenar as pastas..

Compartilhar este post


Link para o post
Compartilhar em outros sites

ou um bem sinples...use switch

 

 

switch($_GET['pagina']){

 

case 'contato':

include('contato/'.$_GET['pagina'].".php");

break;

case 'servicos':

include("servicos".$_GET['pagina'].".php");

break;

...por ae vai....

 

//o default serve para quando nenhuma pagina for chamada

default:

include('home/'.$_GET['pagina'].".php");

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

seguinte.....

estoufazendo a pagina da seguinte maneira.... no topo do index tem um include xamado MENU, dos menos... logo abaixo tem o include da parte principal aonde aparece o que clicaram nos links do menu(onde esta esses codigo de aparecer os *.php)...

 

bom..

o que estou tentando fazer é o seguinte....

 

ao clicar em um dos itens do menu, eu pesso para ele abrir uma pagina que tem outro código desse estilo.... , esse codigo diz que ?artistas= alguma coisa... esse alguma coisa sao arquivos .php que estao dentro da pasta ARTISTAS, o que acontece é que nao esta dando certo... esta dando erro no include... oq posso fazer?

qual o melhor meio de fazer esse tipo de sistema...

quero fazer esse tipo pois é o modo mais facil de ir administrar o site com o tempo, seja o design ou os links....

oq posso fazer? abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não achou o arquivo?

você indicou o caminho correto?

 

Precisamos ver e conhecer o teu sistema de pastas para sugerir algo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom.. seguiinte.... consegui corrigir o defeito. hehehhee agora tem um porem...

 

<? if(is_file("producoes/".$_GET['artista'].".php")) {

include("producoes/".$_GET['artista'].".php");

}

else {

include("producoes/index.php");

} ?>

 

esse é o codigo atual... o arquivo producoes.php é esse e está localizada na raiz...

agora pra ficar mais organizado o sistema, gostaria de organizar em pastas com o nome de cada artista.... entao pra eu fazer ele ler esse codigo pela pasta do artista tentei por:

 

<? if(is_file("producoes/".$_GET['artista']./.$_GET['artista'].".php")) {

include("producoes/".$_GET['artista']./.$_GET['artista'].".php");

 

ou seja ele tenta abrir o arquivo q esta em producoes/ARTISTA/ARTISTA.php ... mas nao está dando certo...

 

maiis uma vez alguem pode me dar uma luz?

 

foi mal encomoda com tantas respostas ae gurizada hehehe vcs tao sendo mto uteis!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

você precisa concatenar as barras tb, afinal você precisa que o php entenda elas como uma string para só depois aplicar a função final

<? if(is_file('producoes/'.$_GET['artista'].'/'.$_GET['artista'].'.php')) {
include('producoes/'.$_GET['artista'].'/'.$_GET['artista'].'.php');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como você está passando o link?

faz isso antes dos includes para a gente ver:

echo 'producoes/'.$_GET['artista'].'/'.$_GET['artista'].'.php';

Compartilhar este post


Link para o post
Compartilhar em outros sites

tentei, aparentemente n mudo nada estranho pois nem apareceu o echo.. da uma olhada!.... estou passando o link como ?link=producoes&artista=onose por exemplo.... mas nao muda :\

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom... se ele está no include padrão.. então é porque não está entrando no IF.

faz o seguinte:

<?php 
echo 'producoes/'.$_GET['artista'].'/'.$_GET['artista'].'.php';
if(file_exists('producoes/'.$_GET['artista'].'/'.$_GET['artista'].'.php')) {
	include('producoes/'.$_GET['artista'].'/'.$_GET['artista'].'.php');

[...]
Realmente existe esse arquivo?

citando o teu exemplo.. existe o:

producoes/onose/onose.php ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu cara consegui! agora soh estou com otro probleminha hehehehe

 

olha lá, ele tenta abrir a img mas nao dá, ela logo some...

 

no onose.php q esta na pasta onose eu botei assim

 

<p><img src="prudocoes/onose/onose1.JPG" width="640" height="480"><br /></p>

 

só...

Compartilhar este post


Link para o post
Compartilhar em outros sites

na verdade fiz varias contas em alguns servidores free ateh achar um do meu gosto e notei q em todos demorava muuuuito pra carregar as imgs..

vcs acham q pode ser o jeito que eu botei minhas tags(sendo que acho dificil pois 1o que nao sou tao ignorante em html.. segundo que as vezes a img aparece....)

será que demora pro servidor processar os arquivos de imagem? tem algo a ver?

valeu rapazeada!

 

-----------------------------------------------

 

 

 

 

->>>>>> resolvi parte do problema, acontece que ao mandar os arquivos e pastas para o ftp ele mandava com letras maiusculas, e no codigo estava em minusculas, como o linux diferencia maiuscula de minuscula........

 

bom, mas o onose.php continua sem carregar a imagem....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo,

 

O include não causa esse tipo de problema. Ele funciona como se o código estivesse dentro da página em questão:

 

include.php

<?php

 

echo "Oi Mundo";

 

?>

index.php

<html>

<head>

<title>oi</title>

</head>

<body>

<?php include ("include.php"); ?>

</body>

</html>

Quando essa página for exibida no navegador, ele vai lê-la assim:

 

index.php

<html>

<head>

<title>oi</title>

</head>

<body>

Oi Mundo

</body>

</html>

O que estou querendo dizer é que o problema das imagens não está no include e sim no seu servidor. Acredito que este seja GRÁTIS, por isso o problema. Aconselho usar o 000webhost para testes em servidores FREE.

 

Quanto ao upload, desconheço o seu erro. Mas tente usar o FileZilla como cliente FTP.

 

Abraços

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.