lostyazilim
tr.link

PDO ilgili sorum

6 Mesajlar 985 Okunma
acebozum
tr.link

UmutWare UmutWare Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 24.03.2017
  • Yaş/Cinsiyet 26 / E
  • Meslek Ögrenci & Yazılım
  • Konum KKTC
  • Ad Soyad U** M**
  • Mesajlar 482
  • Beğeniler 26 / 80
  • Ticaret 3, (%100)
arkadaşlar PDO da prepare ile verileri dizi içinde gönderirsek ek bir filtreleme yapmamıza gerek var mı yoksa kendisi filtreler mi yani şu kullanımdan bahsediyorum

$sor = $db->prepare("select * from uye WHERE id = ?");
$db->execute(array($_GET["id"]));

bu kullanım tarzında ek olarak benim filteleme yapmama gerek var mı ?
tufanCPN

kişi bu mesajı beğendi.

elektronikssl
webimgo

tufanCPN tufanCPN WM Aracı Kullanıcı
  • Üyelik 03.06.2017
  • Yaş/Cinsiyet 31 / E
  • Meslek Yazılım
  • Konum Hatay
  • Ad Soyad T** Ç**
  • Mesajlar 34
  • Beğeniler 2 / 5
  • Ticaret 3, (%100)
Return değerini Array olarak almak istiyorsan bu şekilde çalışabilirsin


$id = $_GET['id'];
$sor = $db->prepare("select * from uye WHERE id = '{$id}'");
$sor->execute();
$result = $sor->fetch(PDO::FETCH_ASSOC);
print_r($result);

////////////YADA\\\\\\\\\\\\
$sor = $db->query("select * from uye WHERE id = '{$id}'")->fetch(PDO::FETCH_ASSOC);
print_r($sor);



Çıktısı
Array
(
[sütunAdi] => İçerik
[sütunAdi] => içerik
)


şeklinde olacaktır. (Kodu test etmedim hatalı yer varsa kusura bakmayın artık).

Daha fazlası için burayı incelemeni tavsiye ederim.
 

 

UmutWare UmutWare Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 24.03.2017
  • Yaş/Cinsiyet 26 / E
  • Meslek Ögrenci & Yazılım
  • Konum KKTC
  • Ad Soyad U** M**
  • Mesajlar 482
  • Beğeniler 26 / 80
  • Ticaret 3, (%100)
hacım anlamadınız demek istedigim bu degil sizin verdiginiz kodlarda güvenlik zaafiyeti var benim yazdıgım sorgu ile yani WHERE id = ? sql enj. korumaya çalışıyorum normalde öyle yapınca güvenli oluyor deniliyor dogru mudur
 

 

tufanCPN tufanCPN WM Aracı Kullanıcı
  • Üyelik 03.06.2017
  • Yaş/Cinsiyet 31 / E
  • Meslek Yazılım
  • Konum Hatay
  • Ad Soyad T** Ç**
  • Mesajlar 34
  • Beğeniler 2 / 5
  • Ticaret 3, (%100)
Doğru hocam malesef. Güvenlik kısmına dikkat etmeden yazdım ben. Siz filtreleme derken tam olarak neyi kastetmek istediniz?
 

 

wmaraci
wmaraci

UmutWare UmutWare Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 24.03.2017
  • Yaş/Cinsiyet 26 / E
  • Meslek Ögrenci & Yazılım
  • Konum KKTC
  • Ad Soyad U** M**
  • Mesajlar 482
  • Beğeniler 26 / 80
  • Ticaret 3, (%100)
örnegin getten bir veri geliyor id = 5 olması gerekirken adam id = 5' or 'x' select oninon gibi şeyler yazarak hata verdirmeye çalışarak sisteme sızmaya çalışıyor ve bunu pdo da prepare de yukarda verdigim kod satırılarıyla uygulandıgını hatırlıyorum tufanCPN
 

 

tufanCPN tufanCPN WM Aracı Kullanıcı
  • Üyelik 03.06.2017
  • Yaş/Cinsiyet 31 / E
  • Meslek Yazılım
  • Konum Hatay
  • Ad Soyad T** Ç**
  • Mesajlar 34
  • Beğeniler 2 / 5
  • Ticaret 3, (%100)
O bahsettiğin login olurken yani form submit olayında şifre alanına SQL dilinde 'bu veya bu' ise giriş yap mantıgını kullanarak yapılan birşey ve html'in onu önlemek için hali hazırda zaten fonksiyonları mevcut.

POST kullan böyle işlemlerde gereksiz veriler taşırken GET kullanırsın. Ben GET'i linki okutup parçalayıp kullanma gıbı bır ıslemler yapmadıgım sürece hiç kullanmam.
Koşul ve kontrollerlede güvenliği bir nebze de olsa arttırabilirsin
PDO - SQL INJ Stackoverflow incelemenin yararı olur.
 

 

wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al