

Php Öğrenmeye Başladım, Takıldığım Noktalarda Beginner Düzey Sorular
-
Arkadaşlar sıfırdan başladım, üniversitede 7 yıl önce seçmeli ders olarak aldığım c dersi dışında yazılıma dair bir bilgim yok, kurmam gereken programları kurdum,
burdan sırayla gidiyorum: https://www.phpr.org/php-dersleri/
bazen bi hata ile karşılaşıyorum, bazen mantığı anlamıyorum, size danışırım diye düşündüm.
mesela şu an bu konudayım: https://www.phpr.org/php-session-oturum-yonetimi/
sayfanın sonunda "session kullanımı hakkında bir örnek" dediği kısmı yaptım olmadı bende.
www klasörü içine session1.php açtım içine bunu yerleştirdim:
<?php
session_start();
$_SESSION["info"]="oldu mu lan";
echo $_SESSION["info"];
?>
browser'da localhost/session1.php'ye girdim "oldu mu lan" yazdı. sorun yok.
sayfa açık, www klasörü içine bir de sessiondeneme.php açtım, içine bu kodu girdim:
<?php
session_start();
echo $_SESSION["info"];
?>
ama browser'da localhost/sessiondeneme.php hata veriyor. ben bu session olayını yanlış mı anladım, browser'da session1.php açıkken, sessiondeneme.php de "oldu mu lan" yazmalı değil mi?
muaythaist tarafından 28/Nis/16 02:13 tarihinde düzenlenmiştir -
Tanımladığın başka sayfada olduğu için çekemiyorsun.
sessiondeneme.php içine
include 'session1.php' ;ekle
Mr_Dark tarafından 28/Nis/16 01:58 tarihinde düzenlenmiştir -
Include ederek diğer php sayfadaki bilgileri kullanabilirsin.
-
dediğiniz şekilde yaptım, teşekkürler.
sayenizde include olayını anladım da, bu elemanın şu linkte anlattığı: https://www.phpr.org/php-session-oturum-yonetimi/
aşağıdaki mevzu neyse, onu yapamadım ben:
-----
Hemen anlattıklarımızı pekiştirip pratik yapmak üzere basit bir örnek gösterelim;
Öncelikle ilk.php adında bir php dosyası oluşturalım ve içinde bir session oluşturup bir başka php sayfasında o veriyi okutmayı deneyelim.
ilk.php: 123456<?php session_start();$_SESSION['isim'] ='Musa';echo'Sessionumuzu oluşturduk.';?>Bu sayfayı oluşturup çalıştırdıktan sonra 2. php sayfamızıda yapalım. Bunun adıda
son.php olsun. son.php: 12345<?phpsession_start();echo'Daha önceden kaydedilmiş isim: '.$_SESSION['isim'];?>ilk.php yi ziyaret ettikten sonra bu sayfaya geldiğimizde ekranda
muaythaist tarafından 28/Nis/16 02:35 tarihinde düzenlenmiştirDaha önceden kaydedilmiş isim: Musa yazacaktır. Eğer ilk.php ye uğramadan yani sessionumuzu oluşturmadan son.php ye girmeye çalışırsak böyle bir session oluşturulmadığı için kod hata verecektir. -
dediğin gibi çalışması lazım. Include a gerek yok normalde.
localhost/session1.php adresine girdikten sonra sessiondeneme.php adresinde hata veriyorsa muhtemelen $_SESSION["INFO"] localhost ayarlarından dolayı silindiğinde, veriye ulaşılamıyor felandır. Aldığın hata nedir?
-
Sessionlarda include etmene gerek yok. Sessionlar sunucuda tutulduğu için yazması gerekirdi. Hata olarak ne veriyor? Hatayı yazarsan daha iyi olacaktır.
-
Mr_Dark bunu yazdı
Tanımladığın başka sayfada olduğu için çekemiyorsun.
sessiondeneme.php içine
include 'session1.php' ;ekle
Bu senin dediğin session mantığına ters zaten. @muaythaist sen bu yorumu dikkate alma. Senin yaptığın şekilde doğru, çalışması gerekli.. PHP yorumlayıcında bir problem olabilir. Mesela /tmp klasörünün yazma izinlerini kontrol et.
Para verip aldığım server'da çalışmadığı oluyor bu session'ın :D
-
gece yatarken bilgisayarı kapatmıştım, az önce açtım,
şimdi sizin yorumları görünce aldığım hatayı buraya kopyalamak üzere kodlarda bir değişiklik yapmadan açtım browser'ı,
hata yok !? geceden sabaha bilgisayar kapalıyken kodlar bi dinlenmiş kendine gelmiş heralde =))
neyse ilgilenen arkadaşlara çok teşekkür ediyorum,
daha yolun başındayım, takıldığım anlamadığım noktalar oldukça burdan yazacağız artık :)
-
muaythaist bunu yazdı
gece yatarken bilgisayarı kapatmıştım, az önce açtım,
şimdi sizin yorumları görünce aldığım hatayı buraya kopyalamak üzere kodlarda bir değişiklik yapmadan açtım browser'ı,
hata yok !? geceden sabaha bilgisayar kapalıyken kodlar bi dinlenmiş kendine gelmiş heralde =))
neyse ilgilenen arkadaşlara çok teşekkür ediyorum,
daha yolun başındayım, takıldığım anlamadığım noktalar oldukça burdan yazacağız artık :)
Sessionların belirli bir zamanı vardır. Zaman dolunca silinmiştir. Büyük ihtimalle de sıkıntı şu. İlk sayfayı açtınız, oturuma info eklendi fakat ikinci sayfayı çalıştırdığınızda oturum düşmüştü.
-
beyler şuradan sırayla ilerliyordum: https://www.phpr.org/php-dersleri/
başlangıç derslerinde en son "php fonksiyon kullanımı ve örnekleri" isimli konuyu bitirdim.
sonraki ders "checkbox kullanımı" ama ben bu dersten hiçbirşey anlamadım, sanki arada öğrenmem gereken birşeyler eksik bırakılmış gibi.
https://www.phpr.org/php-ile-checkbox-kullanimi/
mesela pek bi esprisi yok şöyle yapıyorsun demiş:
<formaction="kontrol.php"method="post"><label><inputtype="checkbox"name="onay"/> Onaylıyorum</label><inputtype="submit"value="Tamam"></form>form action nedir method nedir label nedir input nedir !? kaldım. neyi yapıyoruz, nerde yapıyoruz, niye yapıyoruz, onları niye yazıyoruz oraya..
bu zamana kadar ki derslerde else, if, return, global, switch, session, cookie, for, while, echo, function, break vb terimleri anlatarak yaptı hepsini anladım, kendi çapımda örnekler yapıp aşinalık kazanmaya da çalıştım ama bi hönk dedim bunda. neyi kaçırıyorum ben :) biriniz beni bi aydınlatsında eğitim hayatıma devam edebileyim :)
-
bir yorum gördüm konunun altında: Database Yani Mysql Öğren Ondan Sonra Tek Başına Bile Yaparsın Kardeş.
benim soruma cevap bu sanırım? benim mysql mi öğrenmem lazım şimdi bu derslern devamını anlamak için?
öyleyse, öneri kaynak alabilir miyim? phpr.org'u da burada önermişlerdi, gayet iyi gidiyordum, lazımsa bi de mysql öğrenebileceğim online bir kaynak makbule geçer :)