• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل با تابع htmlspecialchars
#1
دوستان به این کد یه نگاه بندازین
کد:
<?php
$new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo $new; // &lt;a href='test'&gt;Test&lt;/a&gt;
?>
خروجی باید این باشه
کد:
&lt;a href='test'&gt;Test&lt;/a&gt;

اما خروجی اینه .

کد:
<a href='test'>Test</a>

نمیدونم چرا اینطوری داره خروجی میده . پارامتر دیگه هم واسه تابع htmlspecialchars بکار بردم اما اتفاق خاصی نیوفتاد
  پاسخ
تشکر شده توسط :
#2
خب در واقع همین اتفاق میفته دوست عزیز !
برو page source رو ببین و بعد خروجی رو میبینی که چطوری شده !
اونی که ظاهرا میبینی کاریه که مرورگر میکنه و اون کدها رو دوباره به شکل علایم در میاره !
شما یک بار قبل از استفاده از تابع همین متن رو چاپ کن متوجه منظورم میشی !
کد پی‌اچ‌پی:
<?php
$new 
"<a href='test'>Test</a>";
echo 
$new// test -> link chap mikone
$new htmlspecialchars("<a href='test'>Test</a>"ENT_QUOTES);
echo 
$new// &lt;a href='test'&gt;Test&lt;/a&gt;
?>
  پاسخ
تشکر شده توسط : Padideh
#3
آره دیدم جالب بود راستی چرا تو صفحه اصلی تبدیل به کاکرکترهای .یژه نمیکنه .
این تابع به چه دردی میخوره یعنی کجا به کارمون میاد ؟
  پاسخ
تشکر شده توسط :
#4
تو صفحه اصلی ؟
منظورت کجاست ؟
اما این که این تابع به چه دردی میخوره!
مثلا ببین من اگه اینجا کد بنویسم چی میشه ؟
<a href='test'>Test</a>
کد من رو اجرا نمیکنه !
برای وقتیه که بخوای از کاربر ورودی بگیری ! با این تابع میتونی جلوی اجرا شدن کدهاشو بگیری و دقیقا همون متن رو چاپ کنی !
  پاسخ
تشکر شده توسط : Padideh


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان