[]

php include sayfa geçiş ?

merhaba arkadaşlar

sayfa.php sayfamın içine icerik1.php sayfası include ettim. ama icerik1.php sayfasının altında 1 2 3 4 diye numaralar var bu numaralardan icerik2.php - icerik3.php .... sayfalarına link verdim.

ama sorun şu normal olarak direk icerik2.php açılıyor. yani benim istediğim sayfa.php icinde icerik2.php açılsın. sayfalar arası içerikler arası geçiş muhabbeti

bunu nasıl yapabilirim ? include olayını linkte kullanamıyomuyuz yada başka bir yolu ? yardımlarınızı bekliyorum teşekkür ederim

 
icerik2.php'nin üstüne sayfa.php'yi eklemen gerekiyor. yani icerik2.php'yi include ettiğinde otomatik olarak sayfa.php'nin de eklenme durumu yok.

Bunun yerine sayfa.phpyi biraz değiştirip.
sayfa.php?id=1 yapıldığında
sayfa.php'yi içinde icerik1.php
sayfa.php?id=2 yapıldığında
sayfa.php'yi içinde icerik2.php'yi include edilmiş şekilde çağırabilirsin.
  • bir kac yazar once  (01.01.13 22:41:26) 
sayfa.php içinde hangi sayfanın include edileceğini kendin belirleyeceksin. bunu da mesela querystring ile yapabilirsin.

<?php
if (isset($_GET["icerik"]) {
$icerik = $_GET["icerik"];

if (icerik == 1)
include "icerik1.php"
else if (icerik == 2)
include "icerik2.php"
.....
}
?>


örneğin

/sayfa.php?icerik=1 çağrıldığı zaman icerik1.php include edilecek
/sayfa.php?icerik=2 çağrıldığı zaman icerik2.php include edilecek

bu yüzden mesela icerik1.php icerisinde verdiğin linkleri de yukarıdakine uygun olarak değiştireceksin,

icerik1.php yerine sayfa.php?icerik=1 yazacaksın.
  • ocanal  (01.01.13 22:41:43) 
@ocanal hocam yazdığınız kodu sayfama uyarlamaya çalıştım ama hata verdi

Parse error: syntax error, unexpected..............on line 78

kodu şu şekilde değiştirdim biryerde hata yaptım sanırım baya bi denedim araştırdım ama olmadı

<?php
if (isset($_GET["hastaneekipmanlari"]) {
$hastaneekipmanlari = $_GET["hastaneekipmanlari"];

if (hastaneekipmanlari == 1)
include "hastaneekipmanlari1.php"
else if (hastaneekipmanlari == 2)
include "hastaneekipmanlari2.php"
}
?>
  • gramofon  (01.01.13 23:50:15) 
<?php
if (isset($_GET["hastaneekipmanlari"])) {
$hastaneekipmanlari = $_GET["hastaneekipmanlari"];

if (hastaneekipmanlari == 1)
include "hastaneekipmanlari1.php";
else if (hastaneekipmanlari == 2)
include "hastaneekipmanlari2.php";
}
?>
  • ocanal  (02.01.13 00:11:40) 
eğer yanlış görmediysem şimdi de undefined constant tarzı bir hata vermesi lazım şu şekilde de yapabilirsin dilersen.

<?php
if (isset($_GET["hastaneekipmanlari"])) {
$hastaneekipmanlari = $_GET["hastaneekipmanlari"];

if ($hastaneekipmanlari > 3 || !is_int($hastaneekipmanlari))
echo "default";
else
echo "hastaneekipmanlari$hastaneekipmanlari.php";
}
?>
  • bir kac yazar once  (02.01.13 16:37:07) 
artık sormaya utanıyorum ancak yapamadım.

bir kac yazar once@ hocam sizin verdiğiniz kodu denedim hastaneekipmanlari1.php dosyasını include etmiyor sayfada sadece default yazıyor.

ocanal@ hocam sizin kodu koyuyorum hiç birşey göstermiyor sayfa içeriği boş kalıyor.

medikal-urunler.php?hastaneekipmanlari=2 diye link verdim ancak açmıyor sayfayı

ben kodları mı yanlış yere yazıyorum anlamadım.

medikal-urunler.php içindeki içeriği göstereceğim divin içinde verdiğiniz kodları yazıyorum
hastaneekipmanlari1.php ve hastaneekipmanlari2.php de ürünler var altınd 1 2 diye sayfa numaralı var o numaralara link veriyorum medikal-urunler.php?hastaneekipmanlari=2 şeklinde ama zaten hiç include gerçekleşmiyor. ben direk php incule kodu yazarak gösteriyorum içeriği sayfa 2 ye tıklıyorum ama 2 ye geçmiyor.

nerde hata yapıyorum acaba bir kaç gündür araştırıyorum halledemedim.

teşekkür ederim
  • gramofon  (05.01.13 21:59:07) 
@bir kac yazar once'nin dediği gibi benim yazdığım son kodda birkaç syntax hatası vardı, sen tick atınca yapmışsındır diye düzeltme ihtiyacı hissetmedim.

site online'mı görebileceğimiz bir link filan varsa belki kontrol edebiliriz.

bir de tam olarak son yazdığın kodları görebilir miyiz?
  • ocanal  (05.01.13 22:14:50) 
<?php include('hastaneekipmanlari1.php'); ?> bu konu ekledim içerik geliyor bunu kaldırınca içerik yok oluyor default yazıyor


<?php
if (isset($_GET["hastaneekipmanlari"])) {
$hastaneekipmanlari = $_GET["hastaneekipmanlari"];

if ($hastaneekipmanlari > 3 || !is_int($hastaneekipmanlari))
echo "default";
else
echo "hastaneekipmanlari$hastaneekipmanlari.php";
}
?>
  • gramofon  (05.01.13 22:19:27 ~ 06.01.13 19:55:43) 
o zaman şunu deneyin, @bir kac yazar once'nin verdiği kodda da ufak bir hata var, düzelttim. ayrıca kendisi örnek olması açısından echo yazmış siz onu da düzeltmemişsiniz.

echo "default" yazan yer aslında eğer parametre yanlış girildiyse veya yoksa eklemesi gereken dosya.

<?php
if (isset($_GET["hastaneekipmanlari"])) {
$hastaneekipmanlari = $_GET["hastaneekipmanlari"];

if ($hastaneekipmanlari > 3 || !ctype_digit($hastaneekipmanlari)) {
//include "default.php";
} else {
include "hastaneekipmanlari$hastaneekipmanlari.php";
}
}
?>
  • ocanal  (05.01.13 22:37:14 ~ 22:37:47) 
çok teşekkür ederim oldu hocam çok sağolun


  • gramofon  (05.01.13 22:46:50) 
dediğim gibi eğer bu link'te www.tur-med.com
default olarak hastaneekipmanlari1.php sayfasının görüntülenmesini istiyorsan,

//include "default.php";

yerine

include "hastaneekipmanlari1.php";

yazmalısın.

rica ederim, kolay gelsin.
  • ocanal  (05.01.13 22:51:04) 
evet ben gelen verinin string, int olayını atlamışım.
@ocanal'ın verdiği gibi ctype_digi kontrolü ile işlemi gerçekleştirebilir veya
$hastaneekipmanlari = (int) $_GET["hastaneekipmanlari"];

if (($hastaneekipmanlari > 3 || $hastaneekipmanlari<=0) || !is_int($hastaneekipmanlari))

şeklinde modifiye edebilirsin.

Şu anki hali ile id değeri 3'ü geçtiğinde veya id kısmına 1 -2 yerine a b vs.. yazıldığında default kısmı geçerli olacaktır.

bunu göz önünde bulundurup sayfa sayın 3'ten fazla ise if kısmını ona göre modifiye etmelisin.
  • bir kac yazar once  (05.01.13 23:00:42) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler angelus, Artibir, aychovsky, baba jo, basond, compumaster, deckard, duyulmasi gerektigi kadar, fader, fraise, groove salad, kahvegibi, kaymaktutmayansicaksut, kibritsuyu, monstro, pandispanya, robin, ron dennis
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.