تالار گفتمان nCIS.ir

نسخه‌ی کامل: فرق mysql_real_escape_string با addslashes
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام ، داشتم در مورد تابع  mysql_real_escape_string سرچ می کردم تا اینکه در نتایج جست و جو به سوالای برخوردم که جواب یکی از کاربرا  برام عجیب بود :

سوالی که مطرح شده :
" نظر به مای اسکیو ال منسوخ شده به جای تابع mysql_real_escape_string که برای فیلتر کردن کاراکتر ها برای جلوگیری از sql injection بود حالا ما از چه تابعی باید استفاده کنیم ؟ "
 و جواب :  « شما می تونید به جای استفاده از mysql_real_escape_string از تابع addslashes استفاده کنید .  »

دلیل تعجبم اینکه من فکر می کردم چون mysql_real_escape_string  کاراکترهای بیشتری رو رو فیلتر می کنه استفاده از اون بهتره ، سوالم اینکه این دو تا چه فرقی دارن و از کدوم استفاده کنیم بهتره ؟!
اون جواب بدرد خود کسی که جواب داده میخوره. باید با افزونه MySQLi یا PDO کار کنید. توی MySQLi میتونین از mysqli_real_escape_string استفاده کنید و توی PDO با Prepared Statements کار کنید یا از متد quote استفاده کنید.