Jump to content


Photo

Existe Alguma Funçao Para Incluir Apenas O Php


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

#31 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 12/11/2005, 17:31

We mas se voce fizer uma QueryString não resolve por que::::::

<?php
switch ($_GET[pagina]) {
   case "pagina":
       $titulo = "pagina";
       $include"pagina.php";
       break;
   case "teste":
       $titulo = "pagina caramba";
       $include"pagina.php";
       break;
   default:
       echo "Funciona assim num funciona";
}
?>

Coloca isso antes de todo o HTML da sua pagina e onde as pagianas seram includidas coloque
include"$include";

no titulo coloque
echo $titulo;


Aposto que a QueryString resolve seu problema


Falopa!

#32 Marcelo Amaral

Marcelo Amaral

    Aprendendo sempre!

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

Posted 12/11/2005, 17:38

Hostdesigner, não dá por que existe codigos em cada pagina que precisam ser interpretados, e e eu também não queria usar switch, eu tenho uma Query String muito boa e segura sem usar switch... :D

Eclesiastes, nesse caso eu teria que usar os marcadores que você sugeriu não é? Não entendi bem como isso pode me ser util. Usar esses marcadores não é o ideal, mas se for o unico jeito, usarei, mas continuarei decepcionado com o php.

Obrigado pela atenção de todos.

[]´s

Marcelo

Edição feita por: Marcelo Amaral, 12/11/2005, 17:39.


#33 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 12/11/2005, 17:42

Só pra constar... O PHP consegue fazer varias coisas mas o que o impede de fazer sempre é o programador

a linguagem em si nao faz nada sozinha ela apenas recebe as ordens e as executa...


Falopa!

#34 Marcelo Amaral

Marcelo Amaral

    Aprendendo sempre!

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

Posted 12/11/2005, 17:49

Hostdesigner, sinto em discordar, a linguagem não oferece suporte a uma funçao muito util e importante. Se não há suporte nem o melhor programador do mundo poderá resolver!

Continua a dúvida, e me enterresei pelo assunto do OOP, alguem pode dar mais detalhes?

Desde já agradeço a ajuda e atenção de todos!

[]´s

Marcelo

#35 LucasMS

LucasMS

    Super Veterano

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

Posted 12/11/2005, 17:50

OOP é programação orientada a objetos não é? Não sei nada disso, mas se alguem me der certeza de que isso resolve meu problema posso aprender num minuto! :D

Ou melhor se alguem souber como isso pode me ajudar, já vai melhorar muito, pois já vou saber por onde tenho que começar.

Ps.: mas não sei nada mesmo sobre isso, a unica vez que eu vi achei parecido com css :D  :D classes e tals...

[]´s

Marcelo

cara, uma estrutura simples de OOP, q eu to usando muito em meus sites:

index.php
class Site {
var $titulo = "Site.com";

function Site() {
switch($_GET["pagina"]) {
case "pagina": include("pagina.php");
}

$modulo = new Modulo;
$this->titulo .= $modulo->titulo; // aqui resolve seu problema

echo "Headers do site, como <head> etc., a variavel $this->titulo será o titulo do site";
$modulo->toString();
echo "rodapé";
}
}

new Site;

pagina.php
class Modulo {
var $titulo = "Nome desta pagina/modulo";
function Modulo() {
$this->html = "conteudo deste modulo";
}
function toString() {
echo $this->html;
}
}

ai você faz todas as paginas como se fossem modulos, sempre com a estrutura da pagina.php , vc nunca colocará dois modulos numa pagina só, entao nao há problema em colocar um monte de arquivos com a mesma classe.
qualquer duvida posta ai

Edição feita por: Ch4cal, 12/11/2005, 17:51.


#36 Marcelo Amaral

Marcelo Amaral

    Aprendendo sempre!

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

Posted 12/11/2005, 17:57

Ih... acho que agora vai! Finalmente! :D :lol:

Mas eu não entendi nada :wacko: . Se não for pedir muito, tem como explicar melhor para eu usar entendendo, e não usar sem nem saber doque se trata. Acho que vai ajudar se você simplificar o script, tipow eu não preciso de uma função para fazer o foot do site nem o header. Tem como fazer isso mais simples, pra ver se eu entendo melhor?

Mas não desisti, continuo aqui tentando entender melhor. :D Obrigado pela ajuda e atneção de todos, e muito obrigado pela ideia e pela paciencia Ch4cal. (y)

[]´s

Marcelo

#37 LucasMS

LucasMS

    Super Veterano

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

Posted 12/11/2005, 18:02

aqui vai alguns conceitos:
note que nas classes criadas, tem uma funcao com o mesmo nome da classe. essa funcao se chama Construtora, ela é automaticamente chamada na hora que a instancia da classe é criada. ex:

class classe {
function classe() {
echo "Oba! classe(); foi chamada";
}
}

$class = new classe;
$class->classe();

isso resultará em :
Oba! classe(); foi chamada
Oba! classe(); foi chamada

pois classe foi chamada na hora em que $class foi criada, e outra em $class->classe();


a variavel $this é a referencia para a propria classe para dentro dela mesma.
ex:

class Site {
var $variavel; // declarando uma variavel para uso dentro da classe
function setVariavel($valor) {
$this->variavel = $valor;
}
function getVariavel() {
echo $this->variavel;
}
}
$classe = new Site;
$classe->setVariavel("valor qualquer");
$classe->getVariavel(); // imprime "valor qualquer";


:P

#38 Marcelo Amaral

Marcelo Amaral

    Aprendendo sempre!

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

Posted 12/11/2005, 18:10

Humm... Tá melhorando, desculpa, mas ainda não entendi tudo :D
Qual a necessidade de se usar essa class? Não poderia ser só funções?

$modulo = new Modulo;
O que faz exatamente o comando 'new'?
$this->titulo .= $modulo->titulo; // aqui resolve seu problema
Como este sistema consegue pegar o valor da variavel dentro do arquivo sem inclui-lo? Acho que não preciso mudar completamente para OOP, mas dá pra pegar as ideias que resolvem meu problema e adequa-las ao meu codigo não é?

Vixe, ainda tó confuso, mas daqui a pouco passa... :D
Agradeço sua atenção.

[]´s

Marcelo

#39 Marcelo Amaral

Marcelo Amaral

    Aprendendo sempre!

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

Posted 12/11/2005, 18:12

Outra coisa que não entendi:
$modulo->toString();

[]´s

Marcelo

#40 LucasMS

LucasMS

    Super Veterano

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

Posted 12/11/2005, 18:21

o comando new cria uma nova instancia de uma classe

o arquivo foi incluido sim, no meu post ante-anterior:

function Site() {
switch($_GET["pagina"]) {
case "pagina": include("pagina.php");
}
.

o "->" é um sinal de referencia, posso referenciar variaveis (aquelas declaradas com "var " depois do "class Classe {" ) e funcoes de uma classe.

ex:

$site->variavel;
$site->funcao($argumento);

a vantagem de usar classes e nao só as funcoes dela, é que você tem mais facilidade de manutenção, resolver problemas como o seu, etc.

Se vc começar a programar em OOP, nunca mais vai querer sair :P

a funcao toString ali é para dar o "echo" no conteudo HTML da classe ...

Edição feita por: Ch4cal, 12/11/2005, 18:26.


#41 Marcelo Amaral

Marcelo Amaral

    Aprendendo sempre!

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

Posted 12/11/2005, 18:27

Me referia ao ToString, do que se trata?
Só isso mesmo o resto vou ver se "desenrolo" aqui, pra não dar muito trabalho :D
Muito obrigado pela ajuda. A medida que as duvidas forem aparecendo vou postando. Valeu pela ajuda de todos...

[]´s

Marcelo :D

#42 Marcelo Amaral

Marcelo Amaral

    Aprendendo sempre!

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

Posted 12/11/2005, 18:31

Opa... apareceu uma duvida, ou melhor um obstaculo de 200 metros de altura :D Não posso interromper a class não é? Tipo meu html todo vai ter que ficar dentro de um echo?? Vixe ai é problema, e dos graves... :(

[]´s

Marcelo

#43 LucasMS

LucasMS

    Super Veterano

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

Posted 12/11/2005, 18:38

nao!

é só um exemplo o meu. vc pode fazer com quantos echos vc quiser :D

o toString eu editei e respondi na ultima msg.

vc nao precisa interromper a classe pra jogar HTML, exemplo:

index.php
class Site {
funcao Menu {
echo "<ul><li>Menu</li><li>Link 1</li></ul>";
}
funcao conteudo() {
echo "Meu conteudo";
}
}

echo "<html> ...";
$site = new Site;
echo "menu:";
$site->menu();
echo "conteudo:";
$site->conteudo();


acho melhor criar um topico explicando OOP :D
[/code]

#44 Marcelo Amaral

Marcelo Amaral

    Aprendendo sempre!

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

Posted 12/11/2005, 18:45

Eu sei, o que eu quis dizer é que não tem como eu separar o html do php, todo o conteudo tem que ficar dentro de um echo.

Como eu disse eu pretendo adaptar, não quero usar tudo em OOP. Eu gostei da ideia de separar o conteudo por funçoes, estou tentando bolar uma funçao em cada pagina minha, assim eu poderei inclui-la e pegar o valor das variaveis fora da funçao, e na funçao só o html...

Alguem tem uma ideia de uma forma facil de fazer isso? Por exemplo criar um funçao chamda 'html' e colocar o conteudo lá pra só aparecer quando a funçao for chamda. Mas tem que ter como fechar a tag php no meio da funçao para separar o conteudo...

Não usarei OOP, por que acredito que é desnecessario, isso é para sites grandes, no meu caso que é só um include bem simples, acho que dá pra adptar. Pleo menos espero que dê!

Mais uma vez obrigado pela ajuda.

[]´s

Marcelo

#45 LucasMS

LucasMS

    Super Veterano

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

Posted 12/11/2005, 18:53

"Não usarei OOP, por que acredito que é desnecessario, isso é para sites grandes, no meu caso que é só um include bem simples, acho que dá pra adptar. Pleo menos espero que dê!"

Olhe bem, OOP é o "pai" da programação, qualquer script maior ou outra lingaugem de programação usa OOP. Como disse antes, se aprender, nao larga nunca mais, vc certamente nao vai mais querer passar esses sufocos para arrumar um problema pequeno como o seu.

"Alguem tem uma ideia de uma forma facil de fazer isso? Por exemplo criar um funçao chamda 'html' e colocar o conteudo lá pra só aparecer quando a funçao for chamda. Mas tem que ter como fechar a tag php no meio da funçao para separar o conteudo..."

sabe argumentos de funcao?
nao precisa fechar o PHP pra botar HTML. (bom eu uso o chamado PHP Máximo, todo o site é fechado por tags <?php , os HTMLs sempre passam por echo, mas nao necessariamente UM echo.).

vc pode:
$html_do_meio = "html ...";
funcao Funcao($html) {
echo "ahahah alguma coisa";
echo $html;
echo "ahahah outra coisa";
}
Funcao($html_do_meio);

Edição feita por: Ch4cal, 12/11/2005, 18:54.





1 user(s) are reading this topic

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


    Bing (1)
IPB Skin By Virteq