Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: strona w php
Forum PHP.pl > Forum > Przedszkole
Gość_sic
Witam.
Jestem poczatkującym "programista" php i właśnie próbuje stworzyć prostą stronke w php na webdiary znalazłem taki kod

Kod:
Kod
<?
if(isset($dzial)){
if(file_exists($dzial.".php")){
$plik = $dzial.".php";
include($plik);
}else{
echo "Wystąpił błąd - brak pliku";
}
}else{
include("newsy.php");
}
?>



że to trzeba wstawić w index.php stworzyć plik dział.php i newsy.php i tam wrzucić zawartośc,niestety po zrobieniu tego localhost mam krasnala wsyakuje mi

Cytat:
include
Warning: main(newsy.php) [function.main]: failed to open stream: No such file or directory in c:\php\cwiczenia\include\index.php on line 16

Warning: main() [function.include]: Failed opening 'newsy.php' for inclusion (include_path='.') in c:\php\cwiczenia\include\index.php on line 16

domyślam się ze nie widzi pliku newsy.php

w php.ini ustawiłem include_path = ";. " aby apache widział pliki wystepujące w tym samym katalogu niestety chyba to nie działa albo coś innego robie żle.


Nie rozumiem też do końca kodu który tu występuje
Kod:
if(isset($dzial)){

jeśli zmienna dział istnieje ale ona tu nie istnieje i jak wogle ma istnieć nie kapuje:P
Kod:

if(file_exists($dzial.".php")){
$plik = $dzial.".php";
include($plik);


jeśli plik $dział.php istniej co to ma być ta zmienna php i skąd ma być przekazywana.Bardzo proszę o szczegółową i zrozumiała odpowiedz.
Jak to się wogle odbywa użytkownik klika w link i co wtedy zmienna jakaś zostaje wysłana??
aha i czemu nie wpisało nie ma takieg bliku skoro nie znalazło pliku:/
Z góry dzięki.
TomASS
Otóż:
Cytat
domyślam się ze nie widzi pliku newsy.php

Tak jest smile.gif sprawdź czy w katalogu c:\php\cwiczenia\include\ na pewno zdajduje się plik newsy.php. Z tego co widać taki plik jak newsy.php nie istnieje.

Pewnie to widzialeś smile.gif Przed tym kodem, w kórymś miejscu powinna właśnie być ustawiana zmienna $dzial, np:
  1. <?php
  2.  
  3. $dzial = $_GET['dzial'];
  4.  
  5. ?>


Zapis:
  1. <?php
  2.  
  3. if(isset($dzial)){ 
  4.  
  5. ?>

Znaczy tyle co "jeśli zmienna $dzial istnieje to..."

Cytat
if(file_exists($dzial.".php")){
$plik = $dzial.".php";
include($plik);


jeśli plik $dział.php istniej co to ma być ta zmienna php i skąd ma być przekazywana.

Załóżmy, że zmienna $dzial='produkty', wtedy:
1. linijka sprawdzay czy plik produkty.php istnieje, jeśli istnieje to...
2. linijka utwórz zmienną $plik o wartości produkty.php
3.załącz plik produkty.php



Cytat
aha i czemu nie wpisało nie ma takieg bliku skoro nie znalazło pliku:/

Przyjżyj się jeszcze raz:
Cytat
if(isset($dzial)){

Nie wchodzi dalej - bo taka zmienna nie istnieje i kolejną operacją jest:
  1. <?php
  2. else{ 
  3. include("newsy.php"); 
  4. } 
  5. ?>

Plik newsy.php nie istnieje


Cytat
Jak to się wogle odbywa użytkownik klika w link i co wtedy zmienna jakaś zostaje wysłana??

Masz link np. jakas_strona.php?zmienna=wartosc
Gdy użytkownik na nią kliknie, to do pliku jakas_strona.php zostanie wyslana (jesli plik istnieje) zmienna o nazwie 'zmienna' o wartosci 'wartosc'. W pliku jakas_strona dajesz w ten czas:
  1. <?php
  2.  
  3. $zmienna = $_GET['zmienna'];
  4. echo $zmienna;
  5. ?>
Gość_sic
Hello.Chyba zrozumiałem biggrin.gif i dodatkowo okazało się że plik newsy.php rzeczywiście nie był w tym katalogu, haha,co robi zmęczenie z człowiekiem rolleyes.gif
Czyli tak mamy jakiś plik powiedzmy np.index.php mam nim w menu
<a href="index.php?dzial=new> gdzie index.php będzie plikiem do ktorego zmienna dzial zostanie wyslana o wartosci new
za pomoca get pobieramy dzial i zamieniamy na zmienną dzial
Kod
$dzial = $_GET['dzial'];

jeżeli zmienna zostala wyslana to idziemy dalej
if(isset($dzial)){
jesli plik o podanej wartosi w tym wypadku new czyli jesli plik new.php istnieje to
Kod
zmienna plik=new.php i zalczamy ja za pomoca funkcji include
if(file_exists($dzial.".php")){
$plik = $dzial.".php";
include($plik);

jesli zmienna zostala wyslana ale nie ma pliku new.php to wypisze komunikat
}else{
echo "Wystąpił błąd - brak pliku";
}
}
jesli zmienna nie zostala wyslana to zalaczy plik newsy.php
else{
include("newsy.php");
}

Napiszcie czy co napisalem jest ok

teraz tak
Czy moge < a href=... zamieścić w pliku index.php potem
Kod
$dzial = $_GET['dzial'];

if(isset($dzial)){
if(file_exists($dzial.".php")){
$plik = $dzial.".php";
include($plik);
}else{
echo "Wystąpił błąd - brak pliku";
}
}else{
include("newsy.php");
}

w ten sposob

Kod
<?
echo '<a href="index.php?dzial=dzial">dzial</a>';

$dzial = $_GET['dzial'];

if(isset($dzial)){
if(file_exists($dzial.".php")){
$plik = $dzial.".php";
include($plik);
}else{
echo "Wystąpił błąd - brak pliku";
}
}else{
include("newsy.php");
}
?>


żeby to działało? chodzi mi poprostu żeby wszystko było wykonywane w jednym pliku np.mam menu i zawartosc po klinieciu na link zawartosc bedzie includowana
czyli po klinieciu na link zmienna zostanie wyslana do spowrotem do index i tam juz odpowiednio pokierowana?
TomASS
Cytat
<a href="index.php?dzial=new>

zjadłeś " na przedostatnim znaku.

To:
  1. <?php
  2.  
  3. zmienna plik=new.php
  4.  
  5. ?>

powinno wyglądać tak:
  1. <?php
  2.  
  3. $zmienna plik='new.php';
  4.  
  5. ?>

Cytat
Napiszcie czy co napisalem jest ok

OK guitar.gif

Cytat
Czy moge .....

Tak. Zawsze możesz sam sprawdziź, nie bądź Leniuszkiem tongue.gif
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.