Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Engine strony....
Forum PHP.pl > Forum > Gotowe rozwiązania
lucek
Witam. Mam engine strony.
Kod podany nizej to kod pliku index.php - odpowiada on za utworzenie tabel : gora, lewa, prawa, srodek , dol.
Linki zarowno prawej jak i lewej tabeli wyswietlane sa zawsze w tabeli srodkowej - za pomoca linkow index.php?go= nazwa_dzialu .

Niestety mam problem gdy na stronie stosuje skrypt ktory sklada sie z wielu plikow.

[php:1:fbc9c7e53e]<?
session_start();
?>[/php:1:fbc9c7e53e]
[xml:1:fbc9c7e53e]<html>
<head>
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=iso-8859-2">
<title>xxx</title>
<link REL="stylesheet" HREF="scr1.css" TYPE="text/css">
</head>

<body leftmargin="0" topmargin="5" marginwidth="0" marginheight="0" bgcolor="#000000">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="800 ">
<tr><td valign="top" width="800" colspan="3"><? include("gora.inc");?></td></tr>
<tr><td width="800" colspan="3"><? include("m_gora2.inc");?></td></tr>
<tr><td valign="top" width="125" height=100% ><? include("menu_lewa.inc");?></td>
<td valign="top" width="550" height=100% bgcolor="#EFEFEF" bordercolor="#C0C0C0">[/xml:1:fbc9c7e53e]
[php:1:fbc9c7e53e]
<?
if(!isset($go)){
include("news.php");}

else if($go==info){
include("info.inc");}

else if($go==privmsg){
include("privmsg.php");}

else if($go==pomoc){
include("pomoc.inc");}

else if($go==ksiega){
include("ksiega.php");}
else

echo "<br> &nbsp;&nbsp;&nbsp;&nbsp;DZIAŁ w budowie. Zagl&plusmn;dnij za jaki&para; czas</br>";
?>
[/php:1:fbc9c7e53e][xml:1:fbc9c7e53e]
</td>
<td valign="top" width="125" height=100% border="1" bordercolor="#C0C0C0><? include("menu_prawa.inc");?></td>
</tr>
<tr>
<td valign="top" width="800" colspan="3"><? include("dol.inc");?></td>
</tr>
</table>
[/xml:1:fbc9c7e53e]

No i wlasnie:
-gdy odaple jakis skrypt w taki sposob: www.abc.net/skrypt.php - to wtedy jest wyswietlona zawartosc samego skryptu - a nie ma szablonu strony (tabel) i wiadomo skrypt nie jest wyswietlony w srodkowej tabeli.
A przeciez bez sensu by bylo, ze jak skrypt sklada sie z kilkudziesieciu plikow musialbym za kazdym razem pisac w pliku index.php : [php:1:fbc9c7e53e]else if($go==xxqq){
include("xxqq.php");} [/php:1:fbc9c7e53e]

Co zmienic i gdzie questionmark.gif - w podanym enginie czy cos dopisac to kodu skryptow.
Ogolnie chodzi - ze po kliknieciu kazdego linku na stronie kod skryptu bedzie wyswietlany w srodkowej tabeli.
Za wyjatkiem tego jak w prawym menu umieszcze formularz logowania to po wcisnieciu przycisku LOGUJ rezultat (czyli Witaj $login) bedzie wyswietlony w tej samej czyli lewej tabeli.

Mysle ze problem opisalem w miare wyczerpujaco - i bardzo prosilbym o pomoc.
menic
Najpierw to trzeba cos zroobic z twoim postem bo phpbb znou sie wysypało :?
raf2001
Radze troche poczytać o pisaniu enginów
1. http://webcity.php.pl/webcity/artykuly.php/t/18 (część 1)
2. http://webcity.php.pl/webcity/artykuly.php/t/22 (część 2)
3. http://webcity.php.pl/webcity/artykuly.php/t/23 (część 3)
4. http://webcity.php.pl/webcity/artykuly.php/t/25 (część 4)
może ci się przyda i pomoże w dalszej tworzeniu stronki
lucek
Juz czytalem te artykulu - ale niestety ie bardzo cos z nich rozumie.

Moze dales mi taka odpiwedz bo uzylem slowa "engine" - a prawda jest taka ze moj kod to taki "engine" ze .......

Prosze o pomoc.
menic
Z konstrukcji twego silniczka winksmiley.jpg nie da sie bezpośrednio.
Tam gdzie masz includowanie wpisz:[php:1:6113941a75]<?php
if(isset$_GET['go'])
{
if( file_exists($_GET['go'].'php') )
{
include( $_GET['go'].'php' )
}
else
{
echo 'Nie ma takiej strony';
}
}
else
{
//domyslna strona
}
?>[/php:1:6113941a75]
Linki teraz wyglądają tak
index.php?go=ksiega

[EDITED]:Nie zauważyłem ze masz rózne rozszerzenia plikow...
Albo pozmieniaj wszystkie rozszerzenia na takie samo (.php), albo popraw skrypt co ci podałem i odwołuj sie index.php?go=ksiega.php
lucek
O kurcze. To mam duzy problem - najbardzije zalezy mi na logowaniu ?!? sad.gif

A gdzie mozna znalezsc jakis prosty engine aby rozwiazal moje problemy questionmark.gif?
Albo tutaj wrzucici jakis kodzik. ?!?
raf2001
he ja mam krótszy, moze się przyda jeszcze
[php:1:c649c4d518]<?php
if (!$name) {
include('brak.php');
} elseif (@file_exists($name.'.php')) {
include($name.'.php');
} else {
include('404.php');
}
?>[/php:1:c649c4d518]
Linki dajesz typu index.php?name=jakas_strona
ps. co do logowania poszukaj w wyszukiwarce lub poszukaj w niej o sesjach
dob
W Waszych sposobach można otworzyc index w indexie


[php:1:1bad85dc3d]<?php
if(!isset($_GET['mode']) || !file_exists("includes/".$_GET['mode'].".inc.php")){
include("includes/start.php");
}else{
include("includes/".$_GET['mode'].".inc.php");
}

?>[/php:1:1bad85dc3d]

Dzieki takiemu rozwiazaniu będziesz mogl wyswietlic tylko istniejace pliki z rozeszeniem .inc.php z katalogu includes, wtedy nikt nie bedzie ci mogł wrzucic jakiejs innej stronki do środka twojej

link bedzie wyglądał index.php?mode=nazwapliku
menic
Z tym logowaniem to nie rozumiem :?
Przecież w index.php masz umieszczone session_start() wiec bedzie ono równiez istaniało w includowanych plikach.
I to aby sie zmianiało w tym menu to zależy tylko od jego budowy winksmiley.jpg
I napisz dokladniej o co z tym chodzi
lucek
Z tym logowaniem juz sobie poradze.

TYlko ze mam wiekszy problem:

Jak do lewj albo prawej tabeli wstawiam linki recznie to wszystko jest OKI, lecz jak to ktorejs z tyhc table zaincluduje plik .php np. taki ktory wysietla mi kategorie i jak ten skrypt utworzy linki do po kliknieciu w ten link rezutlat jest wyswietlany zarowno w lewej lub prawej tabeli JAK I w srodekowej - a powinno sie wyswietlac tylko w srodkowej tak jak przy robieniu linkow recznie.
raf2001
Morze mnie zrozumiesz.
Mój "engine" jest taki że napewno nigdzie (oprócz tam gdzie wkleiłeś ten kod) niepokaże się nic innego. Odwołuje się tak jak napisałem i includuje np. w środkowej tabeli. co do innych to niewiem bo nietestowałem. Pokombinuj z odwołaniami (w zależności który wybrałeś) na moim bedzie to index.php?name=jakas_strona&zmienna=costam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.