Jump to content


Photo

Php + Html! Solução


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

#16 Crab

Crab

    Da paz, mas preparado para Guerra

  • Ex-Admins
  • 2521 posts
  • Sexo:Masculino
  • Localidade:Florianópolis - SC
  • Interesses:Desenvolvimento Gráfico e Web.

Posted 11/06/2008, 01:45

cara isso é errado

include "login.html";
header("Location: area_restrita.php");



se vc includa um file antes do header... se nesse file tiver saída html... que no caso tem ( o form de login) vai dar problema com o header.

Mas isso nem é o principal...

bom... pelo visto vc não entedneu a função session_checker()

se vc colocar a chamada para ela em todos os arquivos que vc quer tornar restrito, vai sempre redirecionar para o arquivo de login caso o cara não esteja logado...

Mas eu acho horrivel essa forma que estrutura que montou, na verdade isso é uma desestrutura... pois esse problema do cara acessar o arquivo php direto é o menor dos problemas...

incluindo em uma index vc não passaria por isso, pois os arquivos seriam chamados por parametros e esses parametros não necessariamente precisariam ser os mesmos nomes dos arquivos, assim nunca descobrem como chegar diretametne no arquivo...

Pensa nisso

(y)Até mais

#17 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 11/06/2008, 01:51

voce diz.. criar uma unica index? usando include "quando necessario"? ex: a pessoa faz o login errado! Dentro dessa index.. boto um else.. e do include no login.html

e assim para erros de gerar senhas.. e etc? tudo dentro de uma unica index.. sendo a resposta errada.. uso o else.. puxando o arquivo gerar_nova_senha.php

+- isso?

Edição feita por: Augusto Saggese, 11/06/2008, 01:59.

www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#18 Crab

Crab

    Da paz, mas preparado para Guerra

  • Ex-Admins
  • 2521 posts
  • Sexo:Masculino
  • Localidade:Florianópolis - SC
  • Interesses:Desenvolvimento Gráfico e Web.

Posted 11/06/2008, 16:54

aiaiaiaiaiai

hehehehe

não é isso...

teria que mudar a estrutura do que está fazendo.... movimentar-se... digamos... 45° graus

Deverá entender essa outra forma de estrutura que mencionei...

Vamos lá...

Do seu jeito:

Index.php contém toda a estrutura do teu site certo?
outroarquivo.php contém tudo que tem na index diferenciando apenas a área que o outroarqivo.php diz respeito.

Ou seja... vc não está incluindo o outroarquivo.php e sim indo para ele

Estou certo nisso? vc faz assim neh?

Se sim...

Digamos que se vc fizesse desse jeito:

Index.php contendo toda a estrutura do teu site...
outroarquivo.php contendo apenas o conteúdo dele sem maiores estruturas.. digamos que seja só textos e imagens

No index.php terá uma área que vc irá definir para aparecer o conteúdo de acordo com o link clicado (já já montaremos o link)...

Por exemplo uma div qualquer que esteja posicionada para exibir o conteúdo dos links

essa div estará assim na index

<div class="css"> <?php include "$include";?></div>

mas o que é essa variável $include?

Aí vc pode (se não tiver muitos arquivos no teu site a serem incluídos) fazer assim:

Vc cria um arquivo tipo... switch.php

Nesse arquivo vc pode montar a estrutura dos teus links com switch() e incluir ele na tua index no topo mas depois das funções de verificação de sessions, pois essas funções referentes as sessions devem estar antes de tudo e basta serem chamadas uma vez.

voltando ao arquivo switch.php

algo bem tosco como isso...

switch ($_GET['area']){

	case "outroarquivo" : 
		$include = "outroarquivo.php";
		break;

	case "outroarquivo2" :
		$include = "outroarquivo2.php";
		break;

	case "etc...
		etc...
		etc...

	default :
		$include = "main.php";
		break;

}

Porque eu atribui o arquivo a ser incluido à uma variável?

Para vc poder manipular aonde quer incluir ele na estrutura da index...

De outra forma vc teria que clocar toda a estrutura switch() dentro direto na index e no local a ser inserido... desta forma em um arquivo separado vc tem mais poder de manipulação em relação aos cases.

Tipo no case vc pode adicionar mais variáveis e mais ações para cada aérea do teu site, ações diferentes para cada ára ou iguais... de acordo com teu gosto.

Enfim... incluindo esse arquivo no topo da index, mas não bem no topo heheheh como disse antes... coloque ants da estrutura html que já resolve.

Quanto aos links do teu menu ficariam assim por exemplo

echo "<a href=\"?area=outroarquivo\">Link do teu menu para outro arquivo.php</a>";

No CASE da estrutura switch() eu coloquei igual ao nome do arquivo apenas para vc entender, mas o legal é que pode usar qualquer coisa ali.... assim a pessoa não descobre o nome do arquivo e não irá direto para ele pela url.

Continuando

Agora voltando ao verifica_usuario.php

Obviamente vc poderá atribuir um case para ele no switch() tipo

...

case "verifica" :
	$include ="verifica_usuario.php";
	break;

...
...

No action do form de login,

action="?area=verifica";

Mas veja que terá que editar o teu verifica_usuario.php, pois como eu disse .. dessa forma vc não precisa ter a mesma estrutura html em todos os arquivos ... apenas na index... os arquivos terão apenas seu conteúdo distinto... e a index terá um local posicionado pela estrutura html que vc montou específico para receber esse conteúdo.

sendo assim é sabido que se um arquivo está incluído à outro arquivo... este agora pertence ao outro arquivo... ou seja... se vc tem include "switch.php" no topo da tua index ... enão não há necessidade de ter ele incluso em outros arquivos que serão incluídos na index tornasse um arqivo dinâmico de acordo com o conteúdo incluso via case

sacou?

Retire os session_start() de todos os arquivos que serão incluidos... estrutura html tbm não precisa e assim vai... pois o arquivo quando for incluído ele assume a estrutura da index.

Bom... to me repetindo já...

Não altere o que já fez.... faça backup e tente desta forma... as coisas começarão a ficar mais fáceis

;)Até mais

#19 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 11/06/2008, 23:50

Grande crab rei! vo estudando aki novas duvidas eu posto! vo me esforçar uhauhaeae xD

[]s

Edição feita por: Augusto Saggese, 11/06/2008, 23:51.

www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#20 andreswd

andreswd

    Turista

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

Posted 12/06/2008, 09:16

como fez sua session?

#21 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 13/06/2008, 20:39

baseado no topic do tutorial do Crab.. da uma olhada la! :D

Crab fala irmao! se liga

switch.php

[codebox]<?php
switch ($_GET['area']) {

case "index" :
$include = "home.php";
break;

case "portfolio" :
$include = "portfolio.php";
break;

case "perfil" :
$include = "perfil.php";
break;

case "tutoriais" :
$include = "tutoriais.php";
break;

case "curriculo" :
$include = "curriculo.php";
break;

case "contato" :
$include = "contato.php";
break;

case "mapasite" :
$include = "mapasite.php";
break;

default:
$include = "home.php";
break;
}
?>[/codebox]

Ex: da index.php

[codebox]...

<?php include("switch.php"); ?>
<ul id="nav">
<li><a href="\?area=index\" title="Pagina Inicial" target="_parent"><strong class="bottom">&raquo;</strong> Home </a></li>
<li><a href="\?area=portfolio\" title="Portifólio" target="_parent"><strong class="bottom">&raquo;</strong> Portifólio </a></li>
<li><a href="\?area=perfil\" title="Meu Peril" target="_parent"><strong class="bottom">&raquo;</strong> Quem Sou </a></li>
<li><a href="\?area=tutoriais\" title="Tutoriais" target="_parent"><strong class="bottom">&raquo;</strong> Tutoriais </a></li>
<li><a href="\?area=curriculo\" title="Currículo" target="_parent"><strong class="bottom">&raquo; </strong> Currículo </a></li>
<li><a href="\?area=contato\" title="Entre em ontato" target="_parent"><strong class="bottom">&raquo; </strong> Contato </a></li>
<li><a href="\?area=mapasite\" title="Mapa do Site" target="_parent"><strong class="bottom">&raquo; </strong> Mapa do Site </a></li>
</ul>

...[/codebox]

não entendi o seu echo acima! ai no caso vo ter q abrir <?php e fechar no final da /ul?

Entendi tudo q me explicou !! ficou tudo mais facil e claro.. só me tira essa pekena duvida!

tks mesmo Crab! parceirao! :]
www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#22 Crab

Crab

    Da paz, mas preparado para Guerra

  • Ex-Admins
  • 2521 posts
  • Sexo:Masculino
  • Localidade:Florianópolis - SC
  • Interesses:Desenvolvimento Gráfico e Web.

Posted 13/06/2008, 22:36

Não se confuda apenas pela forma que eu faço... heheheh

é que eu montei o link dentro do php mesmo, dando saída à ele com php

Mas se vc está escapando do php... beleza... não precisa o echo e tbm não precisaria escapar as aspas como vc fez.

ops... vc não está escapando as aspas... fez errado mesmo hehehe

o que é isso?

<a href="\?area=mapasite\" title=...


se quisesse escapar as aspas por estar gerando o link com php era uma coisa e ainda assim estaria errado... a barra de escape é antes das aspas e não depois.

Mas como está no html direto, então não precisa barras

tipo

<a href="?area=blabla">

e não
<a href=\"?area=blabla\">

No mais era isso... reveja seus links em relação ao que falei ali...

;)Até mais

#23 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 14/06/2008, 17:01

opa sakei sim Crab! :] no caso o echo.. como se os links estivessem dentro da tag <?php

sakei oq vc disse! é só pra mim entender mesmooo!!! Tanto q consegui estudando como foi me ajudando! fica bem mais simples

e logicamente cada link n carrega a index inteira e sim o conteudo.. correto? :DDD

esse case do switch.. seria tipo um if?

entao eu posso por um else caso ele n ache a pagina n posso?

Brigadaoooooooooooooooooooooo Crab! []s! :]
www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#24 dgt

dgt

    diego^SCFC

  • Usuários
  • 281 posts
  • Sexo:Masculino
  • Localidade:Recife-PE
  • Interesses:Java, Delphi, PHP, SQL, Modelagem de Dados, CSS, Lógica de Programação (Algoritmos), Teoria em Banco de Dados

Posted 14/06/2008, 17:27

esse case do switch.. seria tipo um if?

entao eu posso por um else caso ele n ache a pagina n posso?

É tipo if sim, mas o else dele é default.
ex:
switch($numero) {
case 1:
echo "o número é 1";
break;
default:
echo "número não é 1";
break;
}

Posted Image

#25 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 14/06/2008, 18:05

Ex pus um default no final ve se ta correto! :DD

[codebox]<?php
switch ($_GET['area']) {

case "index" :
$include = "index.php";
break;

case "portfolio" :
$include = "portfolio.php";
break;

case "perfil" :
$include = "perfil.php";
break;

case "tutoriais" :
$include = "tutoriais.php";
break;

case "curriculo" :
$include = "curriculo.php";
break;

case "contato" :
$include = "contato.php";
break;

case "mapasite" :
$include = "mapasite.php";
break;

default:
$include = "home.php";
break;
}
?>[/codebox]

tks mesmo lek!
www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#26 Crab

Crab

    Da paz, mas preparado para Guerra

  • Ex-Admins
  • 2521 posts
  • Sexo:Masculino
  • Localidade:Florianópolis - SC
  • Interesses:Desenvolvimento Gráfico e Web.

Posted 15/06/2008, 01:46

é isso aí...

Quer ver um link maneiro que tem tudo explicadinho isso aí de if, else, switch e outros?

http://www.php.net/m...-structures.php

:D

(y)Até mais

#27 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 16/06/2008, 00:06

Crab.. consegui tudo! fiz todos os links.. criei a case pro verifica.. porem o verifica so funciona sem usar include!

www.augustosaggese.com

Ex: switch.php

...case "verifica" :         $include = "verifica_usuario.php"; break;...


Form login.html

<?echo "<form action=\"?area=verifica\" method=\"post\" name=\"\" class=\"conteudo\" id=\"\">  <p>Usu&aacute;rio:<br />    <input name=\"usuario\" type=\"text\" id=\"usuario\" size=\"17\" />  </p>  <p>      <br />    Senha:<br />        <input name=\"senha\" type=\"password\" id=\"senha\" size=\"17\" />        <br />        <input name=\"Submit\" type=\"submit\" class=\"conteudo\" value=\"Login\" />  </p>  <p>&nbsp;</p>  <p><a href=\"?area=torecouppass\" title=\"Recupere sua senha!\" target=\"_parent\">Esqueceu a senha? </a></p>  <p><br />    <a href=\"?area=formcadastro\" title=\"cadastre-se agora mesmo!\" target=\"_parent\">Cadastre-se! </a></p></form>";?>

Obs: ele n aceita o case pro verifica.. ! não adianta tentei de tudo e n consigo.. sobre os case dos outros links, todos feitos! me ajuda.. :/ perdendo folego já! :/

abraços Crab!

Edição feita por: Augusto Saggese, 16/06/2008, 00:10.

www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#28 Crab

Crab

    Da paz, mas preparado para Guerra

  • Ex-Admins
  • 2521 posts
  • Sexo:Masculino
  • Localidade:Florianópolis - SC
  • Interesses:Desenvolvimento Gráfico e Web.

Posted 16/06/2008, 01:02

O que acontece quado tu envia o form...???
algum erro, alguma mensagem... aí ajuda mais na hora de te ajudar...

E o verifica como tu deixou o cod dele... cola ae...

a mensagem de erro e/ou a descrição do que ocorre e o cod do verifica

(y) Até mais

#29 Augusto Saggese

Augusto Saggese

    12 Horas

  • Usuários
  • 218 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro
  • Interesses:(X)HTML, CSS, PHP, MySQL, ASP, JAVASCRIPT entre outros!

Posted 16/06/2008, 15:24

Tipo ele n verifica o usuario.. apenas abre a ?area=verifica em branco.. sem nada includado.. ou seja sem nada dentro da index!

Estranho.. ai fui tirar da case.. testar direto... na form de login... o arquivo puro.. ai funciona.. ! testei com a form em php tb e nada!

o problema é ao includar o arquivo ! ele n funciona!
www.augustosaggese.com - "Na batalha da vida, só existem homens fortes, e um homem forte, sempre determina o seu destino".

#30 dgt

dgt

    diego^SCFC

  • Usuários
  • 281 posts
  • Sexo:Masculino
  • Localidade:Recife-PE
  • Interesses:Java, Delphi, PHP, SQL, Modelagem de Dados, CSS, Lógica de Programação (Algoritmos), Teoria em Banco de Dados

Posted 16/06/2008, 16:23

Sem o código não dá nem pra ter uma idéia.. põe o verifica_usuario.php.
Posted Image




2 user(s) are reading this topic

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

IPB Skin By Virteq