91,325 Mesaj - 11,682 Konu - 56,376 Üye - Son üye: yunus020
[TIKLAYIN] ReklamStore ile sitenizden para kazanın!


KAPAT
Hosting Hizmetleri TOPlist
Sayfa: [1] |   Aşağı git
 
Gönderen Konu: PHP Kodları, İpuçları, Hataları , Sebepleri  (Okunma Sayısı 822 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
FreeKans
VIP
*****

İtibarı : 2022
Offline

Mesaj Sayısı: 1,701


FreeKans











« : Temmuz 14, 2007, 01:37:47 ÖS »



Soru : Benim bir e-mail değişkenim var buraya girilen e-mail'in
Linklerin ve Resimlerin Görülmesine izin Verilmiyor
Linki veya Resmi Görebilmek için [[ Tıkla ÜYE OL ]] veya [[ Giriş Yap ]]
isim@siteadı.com
formatında olduğunu nasıl kontrol ederim ?

if (!eregi ("^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}$", $email))
die ("E-Mail Adresiniz Geçersiz");

Soru :
Kod yazıyorum fakat bazen hatalar veriyor ama ben bu hataları  ekrana yazdırmasını istemiyorum?

@mysql_connect('localhost','kullanıcı_adı','şifre');
Soru : Ben sitemi hem ingilizce hem de türkçe yaptım. Gelen ziyaretçinin diline göre, sitenin otomatik olarak, o dil ile açılmasını nasıl sağlarım?

$lisan = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
if ( $lisan == "tr") {
header("Location:index_tr.php");
} else {
header("Location:index_en.php");
}
Soru : PHP ile mail gönderirken, kullanılan ana fonksiyon nedir ve nasıl kullanılır?

mail("isim@gönderilecekadres.com", $konu ,stripslashes($mesaj), $mailtanim);
Soru : Değişkeni index.php?deger=4 şeklinde göndermeme rağmen index php de bu değeri okutamıyorum.

Her metod için farklı okutma yöntemi vardır. Eğer veriyi index.php?deger=4 şeklinde göndermişseniz veriyi aşağıdaki gibi alabilirsiniz.

$degisken = $_GET['deger'];
Eğer veriyi POST metodu ile göndermişseniz ( POST metodu genelde buton ile kullanılır ) veriyi aşağıdaki gibi alabilirsiniz.

$degisken = $_POST['deger'];
Soru : Bazı sitelerde
Linklerin ve Resimlerin Görülmesine izin Verilmiyor
Linki veya Resmi Görebilmek için [[ Tıkla ÜYE OL ]] veya [[ Giriş Yap ]]
www.siteadı.com/index.php?p=sayfa
şeklinde değil de 
Linklerin ve Resimlerin Görülmesine izin Verilmiyor
Linki veya Resmi Görebilmek için [[ Tıkla ÜYE OL ]] veya [[ Giriş Yap ]]
www.siteadı.com/?p=sayfa
şeklinde değişken kullanıldığını gördüm bunu nasıl yapabilirim ?


Bunun için yapmanız gereken birşey yok. ?p=sayfa şeklinde olan kullanımda sayfa adı belirtilmemiştir çünkü bu durumda değişken index.php dosyasına gönderilecektir. Bunun sebebi ise serverda varsayılan sayfa adının index.php olmasıdır. Eğer index.php dışında sayfa.php veya iletisim.php gibi sayfalara değer gönderecekseniz bunu belirtmeniz gerekir (Örn :
Linklerin ve Resimlerin Görülmesine izin Verilmiyor
Linki veya Resmi Görebilmek için [[ Tıkla ÜYE OL ]] veya [[ Giriş Yap ]]
www.siteadı.com/iletisim.php?p=deger
) . Çünkü belirtmezseniz değişken varsayılan sayfa olan  index.php ye gönderilecektir.
Logged

"j@k@l_lebron"  Turkche Konushma, Türkçe Konuş ! |͇̿C͇̿¤̿ ͇̿|
FreeKans
VIP
*****

İtibarı : 2022
Offline

Mesaj Sayısı: 1,701


FreeKans











« Yanıtla #1 : Temmuz 14, 2007, 01:38:30 ÖS »

Soru : Bir formum var ve ben bu formla beraber güvenlik kodu kullanmak istiyorum bunu nasıl yaparım?

<?
session_start();
$imagekod = '';

for ($i = 0; $i < 6; $i++)
{
$imagekod .= chr(mt_rand(100,120));
$imagekod  = strtoupper($imagekod);
}

$_SESSION["guvenlikkodu"] = $imagekod;
$height = 20;
$width = 80;
$im = ImageCreate($width, $height);
$white = ImageColorAllocate ($im, 255, 255, 255);
$black = ImageColorAllocate ($im, 255,0,0);
ImageFill($im, 0, 0, $black);
ImageString($im, 300, 15, 3, $imagekod, $white);
Header ("Content-type: image/gif");
ImageGif($im);
ImageDestroy($im);
?>
Veriyi çıkartma

<?php
    session_start();
?>
<form method="POST" action="veri.php" id=form1 name=form1>
Güvenlik Kodu :   <img src="guvenlik_kodu.php">
<input type="text"  size="6" name="guvenlikkodu" value="">
</form>


Veri.php

<?php
   $orjinalguvenlikkodu = $_SESSION["guvenlikkodu"];

     if($orjinalguvenlikkodu!=BuyukHarf(@$_POST["guvenlikkodu"]))
      {
           session_unset();
           HataSayfasiniGoster();
           exit();
       }
?>

kolay gelsin (özellikle iletişim formu kullananlar sunucunuzda flood ddos koruması yok ise güvenliyi hostingciniz yerine siz alabilirsiniz bu şekilde..)

Soru: PHP ile MySQL'e bir türlü bağlanamadım ne gibi çözümler olabilir?

Bunun iki sebebi olabilir.

1. İmla hataları: ";" işaretinin uygun yerlerde konulup konulmadığına dikkat edin. Ve bütün kelimeleri inceleyin.

2. MySQL bilgilerinin yanlışlığı: phpMyAdmin e girdiğinizde üst köşede bütün bilgiler yazar Örneğin kayyonun Server adı "localhost" değil "mysql01.**********" dur.

Soru : Serverdaki PHP, MySQL,Apache'nin sürümlerinin kaç olduğunu, server detaylarını nasıl öğrenirim?

Not defterini açın ve içine

<?php
phpinfo();
?>

yazın ve farklı kaydet deyip info.php olarak kaydedin. Daha sonra da sitenize upload edip ,
Linklerin ve Resimlerin Görülmesine izin Verilmiyor
Linki veya Resmi Görebilmek için [[ Tıkla ÜYE OL ]] veya [[ Giriş Yap ]]
www.siteadı.com/info.php
şeklinde adresinizi girin. Tüm server detayları ekrana gelecektir.

Soru : Harici bir siteyi kendi siteme nasıl include ederim?

<?php
readfile("http://www.siteadı.com");
?>

Soru : Ekrana şöyle bir uyarı çıkıyor , site sorunsuz çalışıyor ama nedense bu uyarıyı da veriyor. Bu uyarı ne demektir ve nasıl önlenir?
Çıkan Uyarı :



Notice : Bu hata kodunuzda bir bug olduğunu gösterir. Fakat bu hata çoğu zaman bir değişkene değer atamadan çağırdığımız zaman çıkabiliyor ( Bu çıkan hatada toplam değişkenine değer verilmemiş) . Bu yüzden hangi durumda çıktığına dikkat edin. Bu hatadan kurtulmak için ya o değişkene değer verin veya php.ini dosyanızı açıp içindeki

error_reporting  =  E_ALL
satırını bulun. ( Dikkat edin başında ; olmayacak ) .  Daha sonra bu satırı aşağıdaki gibi değiştirip kaydedin ve apache'yi yeniden başlatın.

error_reporting = E_ALL & ~E_NOTICE

Soru : Sizce EasyPHP gibi bir hazır kurulum programı ile yetinmelimiyim yoksa, Apache, MySQL ve PHP nin en son sürümleri ile kendim mi kurayım?

Eğer amaç kodlama yapmak ise EasyPHP gibi hazır kurulum programları bu iş için yeterlidir. Boşuna manuel kurulum ile uğraşıp da vakit kaybetmenize gerek yok. Manuel kurulum sunucu yönetimi yapan kişilerin bilmesi gerekn bilgiler kısmına girer.

Soru : Php yi Apache üzerine CGI olarak mı yoksa modül olarak mı kurmak daha iyidir?

                      PHP, müstakil yorumlayıcı (CGI) olarak kurulduğunda, Web sunucusu, her ihtiyaç halinde PHP yorumlayıcısının bir örneğini çalıştırır. Bu, bir süre sonra Web sunucusunun bulunduğu işletim sisteminin yükünün artmasına ve işleyişinde yavaşlamaya yol açabilir.
Oysa PHP, sunucunun bir modülü olarak kurulduğunda, bu sakınca ortaya çıkmaz. (Bu özelliği ile PHP, klasik CGI/Perl'ün çalışma tarzından ayrılır, ASP'nin ve ColdFusion'ın çalışma tarzına yaklaşır.)
Bununla birlikte kötü niyetle veya beceriksizce yazılmış PHP programları modül olarak kurulmuş PHP'yi çökertirlerse, Web sunucusunu da çökertmiş olurlar; oysa müstakil PHP yorumlayıcı çökerse, Web sunucusuna bir şey olmaz.

Soru : Siteme gelen ziyaretçinin IP adresini sitemde nasıl gösterebilirim ?

<?php
echo $_SERVER['REMOTE_ADDR'];
?>

Konu Alıntıdır..
Logged

"j@k@l_lebron"  Turkche Konushma, Türkçe Konuş ! |͇̿C͇̿¤̿ ͇̿|
FreeKans
VIP
*****

İtibarı : 2022
Offline

Mesaj Sayısı: 1,701


FreeKans











« Yanıtla #2 : Temmuz 14, 2007, 01:42:26 ÖS »

Soru: b.php sayfama a. php den form ile geliniyor; b.php ye a.php den gelinmemişse sayfayı nasıl durdururum?

Yöntem 1:
`b.php` dosyasının başına şu kodlar eklenir.

$expected_ref /* Gonderici sayfanin tam adresi */;
if(
$_SERVER['HTTP_REFERER'] != $expected_ref) exit();

Yöntem 2:
Örnek `a.php` dosyası:

<?
session_start
();
$_SESSION['this_id'] = session_id();
?>
<form method="post" action="b.php">
<input type="text" name="param1"><br>
<input type="hidden" name="form_id" value="<?=$_SESSION['this_id']?>">
<input type="submit" value="Submit">
</form>
`b.php` dosyasının başına şu kodlar eklenir:
session_start();
if(
$_SESSION['this_id']!=$_POST['form_id']) exit();



Soru: formdaki her değişkeni nasıl zararlı kodlardan ayıklarım?


1. addslashes() ile bazı özel karakterlerin başına `\` karakteri eklenerek işlevsiz hale getirilebilir.
- Tersi stripslashes()
2. htmlspecialchars() ile özel karakterler zararsız kodlara dönüştürülebilir.
- Tersi htmlspecialchars_decode()
3. strip_tags() ile html ve php imleri atılabilir.
4. Düzenli deyim kontrolleri ile form verilerinin tipi, karakter düzeni, karakter sayısı vs.  test edilebilir ve değiştirilebilir.
5. Select, checkbox, radio gibi giriş verileri alıcı sayfada tekrar kontrol edilip, belirtilen seçenekler dışında veriler için işlem yapılması engellenebilir.
vs. vs.
Logged

"j@k@l_lebron"  Turkche Konushma, Türkçe Konuş ! |͇̿C͇̿¤̿ ͇̿|
[ÁĎМĨŃ]
Webmaster
*

İtibarı : 5187
Offline

Mesaj Sayısı: 1,736


[Kişisel bir ileti]











« Yanıtla #3 : Nisan 30, 2008, 01:22:18 ÖÖ »

teşekkürler FreeKans..
Güzel bir döküman.
Logged

Hayırlısı..
Sayfa: [1] |   Yukarı git
 

 
Gitmek istediğiniz yer:  

Benzer Konular
Konu Başlığı Başlatan Yorum Okunma Sayısı Son Mesaj
Holywood'a özel çekim hataları Komik Resimler « 1 2 » Tılsım 10 699 Ocak 13, 2008, 07:26:58 ÖS
Gönderen: p!nK
Max Payne Hileleri, Hile Kodları, Hile Kodu, Hilesi, Teknikleri, İpuçları, İpucu Oyun Hileleri Nymphetamine 0 347 Ağustos 22, 2007, 10:54:16 ÖÖ
Gönderen: Nymphetamine
Dizilerin çekim hataları Her Telden p_kilicarslan 0 299 Eylül 04, 2007, 01:20:49 ÖS
Gönderen: p_kilicarslan
Hata Kodları // Sunucu Hataları Tasarım Dünyasından Haberler αℓρєяєи 0 229 Mayıs 06, 2008, 10:37:52 ÖÖ
Gönderen: αℓρєяєи
ünlülerin tutukluluk resimleri ve sebepleri Resim Galerisi bloodforblood 1 83 Ağustos 02, 2008, 09:30:59 ÖÖ
Gönderen: Matkap