مشكله فاظهار كود اتش تي ام ال فالمقال ..
السلام عليكم ورحمه الله وبركاته ..
فالبدايه انا مركب عندي محرر bbcode وهو MarkItUp عندما اقوم باضافه مقال والمقال يحتوي علي كود والكود به كود فورم <?php $code = "<form action='' method=''> <input type='text' name='test'> </form>"; ?> وبعد الاضافه اذهب الي المقال يظهر لي الفورم وليس كود الفورم ياريت حل ياشباب ..
5 إجابات
ياريت الكود الناتج يا MacOs
واسف ياشباب تعبتكم معايا :( بواسطة: Wolvrine 0 من 0 أشخاص وجدو هذه الاجابة مفيدة. هل وجدتها؟ نعم لا
صوره علي ماظهر لي
بواسطة: Wolvrine 0 من 0 أشخاص وجدو هذه الاجابة مفيدة. هل وجدتها؟ نعم لا اها ، بالفعل انا بدلت الدوال .. اعزرنى .. انظر للاجابة مرة اخرى فقمت بتعديل الكود .. لتحويل الاكواد اولا ومن ثم تحويله الى بى بى كود
هتكون كدة .. وخلى بالك من الترتيب حاسب تستعمل دالة htmlspecialchars فى الاخر .. لانك لازم تستعملها قبل ما تحول البى بى كود الى html لانك لو عملت كدة هتحول الhtml ال حولته لنص ومش هيظهر فحاول تمشى مع الطريقة دى بالظبط
<?php $code = "<input type='text' name='test'>"; $code = htmlspecialchars($code); $code = ToHtml($code); echo $code; ?>طبعا انا فرضت ان فى دالة اسمها html2bbcode ال هى الدالة ال بتحول بيها بواسطة: علاء تعديل: علاء 2 من 2 أشخاص وجدو هذه الاجابة مفيدة. هل وجدتها؟ نعم لا مافيه اي حل ياشباب ؟ تحويل الكود الى نص عن طريق htmlspecialchars وبعد ذلك تطبق دالة تحويل ما تبقى من النص واكواد بى بى كود ال هتمل
انا استعمل عند الادخال هذه الداله
function anti_xss($content) { $content = htmlentities($content); $content = mysql_real_escape_string($content); if(get_magic_quotes_gpc()) { $content = stripslashes($content); } return $content ; }وعند العرض $content = ToHtml(nl2br($row['content'])); بواسطة: Wolvrine 1 من 1 أشخاص وجدو هذه الاجابة مفيدة. هل وجدتها؟ نعم لا $content = ToHtml(nl2br(htmlspecialchars($row['content'])));
الامر فى غاية السهولة .. عند استعمال البى بى كود لابد من تمرير الكود على دالة htmlspecialchars()
بواسطة: MacOS 2 من 2 أشخاص وجدو هذه الاجابة مفيدة. هل وجدتها؟ نعم لا |
جرب تمرير المقال قبل عرضه على htmlspecialchars حتى لا يتم تفعيل الفورم
19 / يناير / 2012 الساعة 20:29