Sadece bir güvenlik sorunu hakkında merak. Şu anda benim veritabanından filmleri silmek için aşağıdaki işlevi kullanarak ediyorum:
function deleteVideo(video_id){
function mycallbackform(v,m,f){
if(v=="yes"){
$.ajax({
type: "POST",
url: "delete.php?action=video",
data: "video_id=" + video_id,
success: function(html){
if(html == "1"){
//$("#result").html(html);
$("#row_"+video_id).fadeOut("slow");
$("#result").show();
$("#result").html("<div class='notification success png_bg'> <div><?php echo $LANG_video_succesfull_delete; ?> </div></div>");
setTimeout(function(){ $('#result').fadeOut('slow'); }, 5000);
}else{
$("#result").show();
$("#result").html(html);
}
}
});
}
}
$.prompt('Are you sure?',{ buttons: { Ok: 'yes', Cancel: 'no'}, callback: mycallbackform});
}
Arkada aşağıdaki kod yürütülür sonlandırmak:
/*** DELETE data ***/
/*** prepare the SQL statement ***/
$stmt = $dbh->prepare("DELETE FROM videos WHERE username=:username AND videos_id=:video_id");
$stmt->bindParam(':username', $currUser);
$stmt->bindParam(':video_id', $video_id);
/*** execute the prepared statement ***/
$stmt->execute();
Adı bu durumda bir oturumda saklanır.
Kullanıcı A, bu kod ile kullanıcı B verilerini silmek mümkün olacak herhangi bir yolu var mı?
Ben geçerli kullanıcı veritabanında video ekledi aynı kullanıcı olup olmadığını kontrol etmek için bir sorgu eklemek thinkinig edildi. Eğer değilse o verileri silemezsiniz. Ama bu gerekli veya bu kod yeterince güvenli mi?
Şimdiden teşekkürler.