1. sayfa
headerdan önce başa ob_start(); getir post ve get kullnımıda gayet basit örneğin input name=fegabj post methoduyla alırken $_POST['fegabj'] diye değeri alırsın get ile alırken de $_GET['fegabj'] şeklinde alırsın bu şekilde kullanabilrsin ama birden çok post değeri alıp kullanman gerekebilir bu durumda bu $_POST veya $_GET'i tek tek yazmak zorundamısın tabiki hayır bunların yerine kısa olarak tüm post ve get değerlerini alman için extract($_POST); post değerleri için extract($_GET); ise get değerleri için kullanabilrsin böylece her post veya get değerini ayrı ayrı almana gerek kalmaz.Biraz uzun oldu ama yardımcı olabildiysem ne mutlu Sevgi,Saygı |
Verdiğin bilgiler için teşekkürler ama. bu ob_start(); tı yazmaya yazarım, ama ne işe yaradığınıda öğrenmek isterim körü körüne yazmak istemiyorum ne işe yaradığını tam olarak anlatabilirmisin. Bide örnek: if($_POST['onay']==1)// İnput dan gelen bole yaziliyo anladıysam $degisken=$_GET['DEGER']; sayfa içindeki değişkenler fonsiyona sokulunca değerini unuturmuş onun için Böylemi yazcam anlayamadı. |
yönlendirme yapıcağın zaman ob_start(); fonksiyonu kullanılır yönlendirmenin bitiş noktası da ob_startı bitirmek için ob_end_flush(); kullanabilirsin evet inputtan gelen değer o şekilde yani
tabiki get sadece bu şekilde kullanılmaz örneğin yine bir veri düzelticeksin ve datandan verinin primary keyini okuttun örneğin <form method=post action=onay.php?veri=<?=$id?>> o zaman get methoduyla burdaki id'yi şu şekilde alacaksın
|
Arkadaşlar header("Location: index.php"); bu kodu bende kullanıyorum aynı şekilde benimde localde çalışıyor ama server da çalışmıyor. Ancak bu ob_start(); dan ben hiçbirşey anlamadım. Ne işe yarar nasıl kullanılır bir örnek verirseniz çok sevinirim. |
yönlendirme yapıcağın zaman ob_start(); fonksiyonu kullanılır yönlendirmenin bitiş noktası da ob_startı bitirmek için ob_end_flush(); kullanabilirsin evet inputtan gelen değer o şekilde yani fegabj arkadaş bole açıkladı sağolsun,emme daha ayrıntılı açıklayacak varsa iyi olur çünkü kaç tane php kitabına baktım hiç bir hitapda bu başlama bitirme olayına deyinmemişler. |
Madem bu kadar üzerinde durdunuz başka türlü anlatalım ob_start(); kullanmak size ne kazandırırır yada ne kaybettirir? Aslında hiçbişey kaybettirmez header ile yönlendirme yapıcağınız zaman illaki dosyaya ob_start() ile başlamanız gerekmez.Ancak header ile yapılan yönlendirmede header komutunun yukarısında echo, print veya html kodlarını kullanırsanız header çalışmayacaktır.Tek başına sayfanın ilk satırına bir header ile yönlendirme yapın bu sefer çalıştığını göreceksiniz ancak bu her zaman mümkün olmamaktadır.İşte bu noktada devreye ob_start() girer.ob ingilizce Obi nehri diye geçer belkide duymuşsunuzdur.Yani Türkçesi Nehir başlangıcı demektir.Bu fonksiyonu kullandığınız yerlerde header komutunun üstünde herhangi bir html gönderimi print,printf,echo olması önemli değildir.Rahatça yönlendirme yapabilirsiniz.Hadi ob_start() anladım bu komutun neden birde bitişi var?Bİr örnek verelim aynı sayfada hem session_start hemde ob_start kullandınız.session değişkenler ve cookie değişkenleriniz var ob_end_flush kullanmazsanız şayet, başa ob_start() kullandığınız takdirde sadece cookie değişkenlerini başa session_start() kullandığınız takdirde session değişkenlerini aldığını göreceksiniz bunu önlemenin yolu header fonksiyonunun kullanımının bittikten sonra hemen altına ob_end_flush yazıp ob_start() ile işinizin kalmadığını sisteme bildirmektir. |
Anlaşıldı ama yine bi soru takıldı kafama hiç bişey yapmadan ilk satırına direk yazsam olur dedin benim hodları aynen koyuyorum ne ariza var sence; İNDEX:PHP
USTSAYFALAR:PHP
BURADA Bİ SORU DAHA SORAYIM, yukarıda anasayfa 1 gelirse haber_ekle den giris sayfasını yükle diyorum yüklemiyor o dizinin gerisine index.sayfasının olduğu yere çekiyorum normal çalışıyor . hem yukardaki kod hemde bu klasörden sayfa gösterme nasıl oluyor. Senide yorduk ama idare et işte ![]() |
<?php header("Location:ustsayfalar.php?anasayfa=1") ?> bu satır 1. satır olması gerek ama hiçbişey yazma üstüne bu şekilde dene ikinci soruna gelince get methodu ile almamışsın eğer böle rahatça kullanmak istiyorsan şu şekilde yap <?php extract($_GET); // Giris Sayfasi if($anasayfa==1) // bu kısmı if($anasayfa == '1') şekilde yazmanda yarar var { include"tavan.php"; include"haber_ekle/giris_sayfasi.php"; include"taban.php"; } ?> |
Ayrıca bir ek bilgi include yada require kullanmak yerine require_once yada include_once kullanman performansına katkıda bulunur. |
Performansdan kastın nedir, ve bunu if() içinde kullanınca bi arıza çıkarırmı. include ile başına once diye bişeyi koyma amaçları nedir. birinde şu olur bunda olmaz gibi bi açıklaması varmı. |
http://www.php.org.tr/index.php?option=com_content&task=view&id=39&Itemid=28 burdaki yazıyı okursan daha iyi anlarsın |
teşekkürler Arkadaşlar.. |
1. sayfa
ÖRNEK:
index.php__
1.
2.
Buraya kadar sorduğum iki soruda aynı zaten bunlar local de çalışıp host da çalışmıyırlar Bu neden Çalışmıyor 1. SOrum budur.
2.si ise ben kontrol panelde tinymce kullanıyorum ve local de yine düzgün bir şekilde çalışıyor ama hostda çalışmıyor.
Bu arada ben php yi daha yeni kavrıyorum ve hocamız bilgisayarda bize gösterirken register_global ayarını açtırdı. Bu sebeplede get post gibi köşeli parentezlere alıp kullanmıyorum. Sebebi bu olabilirmi ve get post globasl gibi veri yollama şekillerini bana açıklayabilirmisiniz.
Edeceğiniz yardımlardan dolayı çok teşşekkür ederim.
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.