مشاهده نسخه کامل
: مشکل در جلوگیری اجرای HTML
سلام
من یک سایت راه انداختم برای دوستیابی از آی دی هست
مشکلش اینه که اگه طرف موقع ثبت نام ، نام خودش رو با کد HTML وارد کنه ، کد HTML اجرا میشه !!!!
من میخوام جلوی این کار رو بگیرم
یکی میتونه کمکم کنه؟:11:
L u K e !
25-11-2010, 10:46
خوب می تونی با استفاده از تابع strip_tag وارد کردن تگ ها رو محدود کنی یا با استفاده از تابع html entities چک کنی که اصلا کد html توش نیست
به نظر من اجازه ی استفاده کردن از هیچ تگی رو نده و همه ی ورودی هاتو با تابع htmlentite چک کن
خوب چطوری این کار رو بکنم؟ :دی
مشکل من همینه
نمیدونم چطور این کار رو بکنم
hamedvahedi
25-11-2010, 12:23
در زمان درج در دیتابیس، مقدار نام رو با تابع htmlentities($name) پاس کن. اما باید توجه داشته باشي که این تابع کاراکترهای ويژه مثل > < رو تبديل ميکنه و نامي که در ديتابيس ذخيره ميشه با آنچيزي که کاربر وارد کرده از نظر ارزش رشته ای متفاوت ميشه. و فقط مرورگر در زمان نمايش نام، عبارتي را نمايش مي دهد که در ظاهر مشابه نامي است که کاربر وارد کرده.
به همين دليل اگر سيستم جستجو روي نام ميخواهي داشته باشي، بايد آنجا هم نام هايي که کاربر وارد مي کند را از اين رشته عبود بدهي.
<?php
$myCon = mysql_connect("Your-Server-Name","Your-Login-User","Your-Login-Password");
mysql_select_db("myDb", $myCon);
mysql_query("INSERT INTO myTbl (FirstName, LastName) VALUES ('".htmlentities($firstname)."', '".htmlentities($lastname)."')");
mysql_close($myCon);
?>
Bill Gates
25-11-2010, 13:47
سلام
قبل از ثبت مقدار رو به صورت زیر بگیر :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
تشکر//
ممنون حل شد
اگه بخوام لینک فعال سازی بفرستم چی ؟ :دی
vBulletin , Copyright ©2000-2024, Jelsoft Enterprises Ltd.