Ne karakterler mysqli hazırlanmış deyimi ile kaçtı DEĞİLDİR?

0 Cevap php

Benim PHP kodu bazı sertleşmesine ve mysqli iyi kullanıcı girişi doğrulamak ve enjeksiyon saldırıları önlemek için tablolarını kullanmaya çalışıyorum.

Ben uzakta mysqli_real_escape_string geçti as it does not escape % and _. Ben bir mysqli hazırlanan ifadesi olarak benim sorgu oluşturduğunuzda, ancak, aynı kusur hala mevcut. Sorgu kendi kullanıcı adı dayalı kullanıcıların salt değerini çeker. Ben şifreleri ve diğer aramaları için benzer bir şey yaparım.

Kod:

$db = new sitedatalayer();

if ($stmt = $db->_conn->prepare("SELECT `salt` FROM admins WHERE `username` LIKE ? LIMIT 1")) {

  $stmt->bind_param('s', $username);
  $stmt->execute();
  $stmt->bind_result($salt);


  while ($stmt->fetch()) { 
    printf("%s\n", $salt);
  } 

  $stmt->close();    

}

else return false;
  • Ben doğru deyimi oluşturan muyum?
  • Ben diğer karakterler incelenmesi gerekir neyim varsa? Başka hangi kusurları vardır?
  • Seçtiği bu tür yapmak için en iyi yöntem nedir?

Teşekkürler,

0 Cevap