ben php yi yeni öğrenen biriyim ama sanırım şu kısımda if sorgunun bir şeyi kontrol etmesi ve sonrasında buna göre çalışması gerekmiyor mu?
if ($kullanici_mail && $kullanici_sifre) {
!=null gibi
Düzeltme:
yorumu geri alıyorum. link vermiştim belki işine yarar diye ama işine yaramayacakmış sonradan fark ettim. senin istediğin daha farklıymış.
sorun çözülürse son halini paylaşır mısınız? bende güvenlik önlemi olarak kullanmak istiyorum. yapabilirsem 5 denemeden sonra ip ban nasıl yaptırırım onu araştıracağım.
arama ile zor çünkü il adlarını mgm de nasıl kayıtlıysa onu yazmak zorundasın yoksa eşleşmez.
mesala mgm de il: k.maras
senin arama: maraş yada kahraman maraş
olursa eşleşmez aynısı gaziantep, şanlıurfa, afyon vs içinde geçerli.
MGM nin ifadesi:
... Merkez isimleri büyük harflerle ve Türkçe karakter kullanılmadan yazılmalıdır. Afyonkarahisar için AFYON değil AFYONKARAHISAR kullanılmalıdır.
Kahramamaraş içinse K.MARAS kullanılmaktadır...
Ya aramaları düzelteceksin (arama önerisi fonksiyonu kullanabilirsin) ya da option ile mgm uyumlu doğru değerleri kendin option olarak sunacaksın.
bir selectbox yaparsın şehirleri seçtirirsin bu seçimi javascirpt ile post edersin $_post["il"] ile koddaki şehiri değiştirirsin.
ama yazımını ben yapamam ajax dı javascriptti hiç çakmıyorum.
sen burda
$parola = base64_decode($_POST['sifre']);
ile kulanıcın forma yazdığı parolanın şifresini çözüyorsun. kullanıcı parolasını şifrelenmiş yazmadı ki!
kullanıcı parolasını yazar sen bunu şifreli olarak okur, tablondaki şifreli parola ile eşleştirirsin.
yada tablondan $_post["kullanıcı_adi] ile eşleşen veriyi çeker ve çektiğin kullanıcı parolasını çözersin
if(base64_decode($sonuc["kullanıcı_parola]) == $_post["sifre"] ) { //giriş izni verirsin}else{//hatakodu gösterirsin}
kullanıcı tablonda kullanıcı_sifre alanındaki şifreyi encode ile kaydedip $query ile veri çekerken neden decode olarak eşleştiriyorsun ki?
Kısaca şifreli alanı şifresi çözülmüş parola ile eşleştirirsen veri çekmez.
$parolayı decode değil encode yapıp dener misin?
bu linkteki kodları görünce aklıma geldi. Acaba panoya kopyalanan içerikteki metnin javascript ile tüm boşlukları alınmış ve noktalama işaretleri kaldırılmış şekilde trim fonksiyonu kullanılarak kopyalatılamaz mı? Bu şekilde tüm metin tek bir kelimeye dönüşür, yapıştır dediğinde işi zorlaşır ve caydırıcı olur diye düşünüyorum.
Ya da ctrl+c dediğinde "izinsiz içerik kopyalamaz" diye sadece uyarıyı kopyalamış olsa çok güzel olurdu, acaba mümkün mü?
böyle bir değişiklik sitede zararlı kod gibi algılanır mı?
bende biraz araştırdım. kopyalamaya engel bir çözüm yok gibi :(
bu github işini görür mü diye bak istersen. enson 2014 de güncelemiş ama bak yinede fikir verir.
birde php tarafında böyle basit bir kod buldum. denemedim.
$iphone = strpos($_SERVER[‘HTTP_USER_AGENT’],”iPhone”);
$android = strpos($_SERVER[‘HTTP_USER_AGENT’],”Android”);
$ipad = strpos($_SERVER[‘HTTP_USER_AGENT’],”iPad”);
if ($iphone || $android || $ipad == true)
{
echo “<script>window.location=’http://m.site.com'</script>”;
}