PDA

View Full Version : مبتدی: چرا توی php وقتی از echo استفاده می کنیم علامت ؟؟؟؟ میندازه؟



rrasheli
شنبه 12 بهمن 1392, 22:54 عصر
سلام
خواستم یه index با php بنویسم که توش نیاز دارم از دیتابیس بخونم و توی صفحه لود کنم اما متاسفانه خیلی وقتم رو گرفته و وقتی میخوام بعد از خوندن از دیتابیس با دستور echo چاپش کنم توی صفحه به جای عبارت فارسی که توی دیتابیس هست علامت ؟؟؟؟؟ نشون میده. البته این دستور رو به صورت زیر هم استفاده کردم ولی بازم فرقی به حالش نکرد.
echo "سلام";
در ضمن نوع collation پایگاه داده رو هم به صورت utf8_general_ci و هم به صورت utf8_persian_ci تنظیم کردم توی صفحه هم از تگ متا برای utf8 کردن استفاده کردم. اصلا نمیشه که نمیشه.
لطفا کمک کنید و اگه لطف کنید و یه صفحه ساده هم بذارید خیلی ممنون میشم.
راستی فرق این دو تا دستور چیه؟

<?php $row['Name'] ?>
و

<?=$row['Name'] ?>

Jarvis
شنبه 12 بهمن 1392, 23:15 عصر
اگه از PHP Designer استفاده می کنید این نرم افزار با فارسی مشکل داره
اگه هم که اشکال از نرم افزارتون نیست Encoding ـه مربوط به صفحه رو چک کنید.
اگه بازم مشکل داشتید شاید لینک زیر کارتون رو راه بندازه :
http://barnamenevis.org/showthread.php?356992-%D9%BE%D8%B1%D8%B3%D8%B4%D9%87%D8%A7%DB%8C-%D8%AA%DA%A9%D8%B1%D8%A7%D8%B1%DB%8C&p=1576424&viewfull=1#post1576424

موفق باشید.

metal gear solid 4
یک شنبه 13 بهمن 1392, 00:01 صبح
charset صفحتون رو به utf-8 تغییر بدید.
encoding فایل رو هم utf-8 کنید.

PHP Designer هم با فارسی مشکلی نداره.

rrasheli
یک شنبه 13 بهمن 1392, 10:09 صبح
اگه از PHP Designer استفاده می کنید این نرم افزار با فارسی مشکل داره
اگه هم که اشکال از نرم افزارتون نیست Encoding ـه مربوط به صفحه رو چک کنید.
اگه بازم مشکل داشتید شاید لینک زیر کارتون رو راه بندازه :
http://barnamenevis.org/showthread.php?356992-%D9%BE%D8%B1%D8%B3%D8%B4%D9%87%D8%A7%DB%8C-%D8%AA%DA%A9%D8%B1%D8%A7%D8%B1%DB%8C&p=1576424&viewfull=1#post1576424

موفق باشید.

خیلی ممنونم ازتون بابت لینکی که دادید خیلی به دردم خورد اما در مورد مسئله آخرم نگفتید چه فرقی دارن؟ من چند جا دیدم استفاده کردن ازش.




<?php $row['Name'] ?>
و

<?=$row['Name'] ?>

abdollahpor
یک شنبه 13 بهمن 1392, 11:12 صبح
این کد رو قبل از اینکه php رو باز کنید بالای کداتون اضاف کنید :



<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

sondar
دوشنبه 14 بهمن 1392, 01:39 صبح
با سلام برای بازیابی اطلاعات فارسی باید کد زیر رو قبل از کوئری اجرا کنیم
myqsl_query("SET NAMES 'utf8'");

rrasheli
دوشنبه 14 بهمن 1392, 10:09 صبح
از همه دوستان تشکر می کنم اما جوابم رو درباره مشکل فارسی از دوست خوبم XPATRIOT گرفتم اما سوال آخرم بی جواب مونده.

MMSHFE
دوشنبه 14 بهمن 1392, 13:00 عصر
استفاده از <? ...=?> معادل <? ;... php echo?> هست که البته به روش اول میگن Short Open Tag که چون توی برخی از هاستها بطور پیشفرض بسته است (فعال نیست) و ازطرفی در خیلی از هاستهای اشتراکی بخاطر مسائل امنیتی به شما اجازه دستکاری php.ini رو نمیدن، بهتره به روش استاندارد عادت کنید که همه جا کار میکنه.

rrasheli
دوشنبه 14 بهمن 1392, 13:02 عصر
ممنون از پاسختون من یه اسکریپت داشتم که توی xampp این دستورات رو نمیشناخت اما زمانی روی هاست استفاده کرده بودم.