Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] include (2 pytania)
Forum PHP.pl > Forum > Przedszkole
filgra
mam dwa problemy dotyczace include

chodzi o moja strone (www.slask-wroclaw.com/wks)

1) zastosowalem na niej include, ale mam pewien problem wynikajacy z budowy laya. chodzi o to, ze jak sie wchodzi na dowolną podstrone ( w tym wypadku http://www.slask-wroclaw.com/wks/index.php?id=redakcja) to w belce pod bannerem zawsze widnieje napis AKTUALNOŚCi (tak jak jest to na glownej stronie). I teraz moje pytanie: Czy da się jakos zrobic zeby napis na tej belce zmienial sie w zaleznosci od nazwy podstrony? czyli ze jak jest index.php?id=redakcja to na belce byl napis Redakcja.

2) jak wchodzi sie na dowolna podstrone (np. http://www.slask-wroclaw.com/wks/index.php?id=redakcja) to php zaczyna sie glubic dajac po lewej stronie w menu wszedzie te same odnosniki odpowiadajace adresowi strony na jakiej sie znajdujemy. mozna to jakos naprawic?

na koniec daje kod include ktory zastosowalem na tej stronie:

Cytat
<?php
$id=$_GET['id'];
if(isset($id)){
if(file_exists($id.".php")){
$plik = $id.".php";
include($plik);
}else{
echo "<center>Przykro mi, ale nie ma takiej strony</center>";
}
}else{
include("news.php");
}
?>
tumeks
ad.1
Możesz to zrobić na takiej zasadzie:

  1. <?php
  2. if($_GET['id'] == 'redakcja')
  3. echo '<h2>Redakcja</h2>;
  4. elseif($_GET['id'] == 'aktualnosci')
  5. echo '<h2>Aktualnosci</h2>;
  6. ?>


ad.2
Musisz mieć coś w linkach pokopane.

co do kodu to lepiej zamienic na taki:
  1. <?php 
  2. $page = strip_tags($_GET['page']);
  3. if(!$page ) $page = 'news';
  4. if(file_exists($page )) 
  5. include ('news.php'); 
  6. else 
  7. include_once (''.$page .'.php'); 
  8. ?>


Pozdro
filgra
czyli co? mam dac oba skrypty? opisz dokladnie co mam zrobic bo zupelnie sie na tym nie znam ;P
tumeks
Ten pierwszy działa na tej zasadzie że jeśli wpsizesz index.php?page=redakcja to w naglowku bedzie napis "Redakcja",a jak wpiszesz index.php?page=aktualnosi to będziesz widział w nagłówku "Aktualnosci" poźniej tylko sobie dopisujesz, reszte.

Jesli korzystasz z mojego kodu to zmien ten kod na taki

  1. <?php
  2. if($_GET['page'] == 'redakcja')
  3. echo '<h2>Redakcja</h2>;
  4. elseif($_GET['page'] == 'aktualnosci')
  5. echo '<h2>Aktualnosci</h2>;
  6. ?>


Mój sposób includowania działą na takiej zasadzie
index.php?page=info
index.php?page=redakcja
itp.
filgra
no ok. mam taki kod ktory dziala:

  1. <?php
  2. if($_GET['page'] == 'redakcja')
  3. echo '<p><font size="2">Redakcja</font></p>';
  4. ?>


ale nie wiem jak teraz dodac nastepna pozycje. bo jak daje:

  1. <?php
  2. if($_GET['page'] == 'redakcja')
  3. echo '<p><font size="2">Redakcja</font></p>';
  4. elseif($_GET['page'] == 'index')
  5. echo '<p><font size="2">Aktualności</font></p>';
  6. ?>


to na glownej stronie w belce nie ma zadnego napisu. macie jakis pomysl?
siemakuba
Ja mam pomysł! Ha! Zaglądnij do manuala!

podpowiedź:

if (zajrzysz do manuala teraz)
{
dowiesz się szybko o co chodzi
}

elseif (zajrzysz do manuala później)
{
dowiesz się później
}

else
{
nie dowiesz się wcale
}


pozdr.
filgra
w manualu nie ma nic o tym napisane...
nospor
a czy Twoja strona glowna ma parametr ?page=index

@siemakuba bardzo fajnie pokazane dzialanie if podoba mi sie, hihi, niedosc ze odniesienie do manuala to jeszcze podanie gotowca. brawo smile.gif

ps: przenosze bo to nie temat na Gotowe skrypty
filgra
Cytat(nospor @ 20.07.2006, 18:42 ) *
a czy Twoja strona glowna ma parametr ?page=index


nie ma
nospor
no to czemu robisz warunek:
elseif($_GET['page'] == 'index')
przeciez on nigdy nie bedzie prawdziwy
Gość
to jak trzeba zrobic?
filgra
to jak trzeba zrobic?
nospor
Cytat
to jak trzeba zrobic?
Nie duplikowac postow bo mozna za to "zarobic".

rozumiem ze ten index to strona glowna. No to siemakuba ci napisal wszystko jak na dloni:
  1. <?php
  2. if($_GET['page'] == 'redakcja')
  3.  echo '<p><font size="2">Redakcja</font></p>';
  4. elseif($_GET['page'] == 'aktualnosci')
  5.  echo '<p><font size="2">Aktualności</font></p>';
  6. else
  7. echo '<p><font size="2">Strona glowna</font></p>';
  8. ?>

elseif moze byc wiecej jesli masz wiecej podstron
Gość
dziala, wielkie dzieki.

a jak zrobic jeszcze zeby byly polskie znaki? bo mi sie krzaczki robią...
nospor
Cytat
bo mi sie krzaczki robią...

Uzyj wyszukiwarki i wpisz: krzaki
filgra
no dalem cos takiego:

  1. <?php
  2. <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2">
  3. <meta http-equiv="Content-Language" content="pl">
  4. ?>


ale nie zadzialalo...
nospor
jakbys przejrzal topici co ci podalem (wyszukiwarka) to bys wiedzial ze pliki rowniez mają byc zapisane w iso...
zamykam bys mial czas w spokoju przejrzec wyszukiwarke. temat jest tak popularny ze bez problemu znajdziesz przy odrobinie wysilku
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.