منتدى دعم PBBoard الرسمي
(نسخة قابلة للطباعة من الموضوع)
https://pbboard.info/forums/t18677
أنقر هنا لمشاهدة الموضوع بهيئته الأصلية

مشكلة عدم دعم الترميزات في دوال mysqli الاعتيادية
أبو العصافير 13-01-2016 11:49 مساءً
السلام عليكم ورحمة الله وبركاته

قمت ولله الحمد بإستئجار إستضافة مواقع ولي رغبة ببناء موقع بسكربت PBBoard
على اي حال انا لا اريد استخدام دوال mysql العادية وخاصة انه تم الإستغناء عنها بالفعل في الإصدار PHP7
لذلك اود الإعتماد على mysqli
ولكن لاحظت عدم تعرف الإستضافة على الترميز في هذه الدوال بالكود الإعتيادي
CODE
mysqli_query("set character_set_server='utf8'");
        mysqli_query("set names 'utf8'");


ولكن للأسف هذا الكود غير محبذ من PHP وقد تم ذكر ذلك هنا :
http://php.net/manual/en/mysqli.set-charset.php

وهذا نص التنبيه :
اقتبـاس ،،

Note:


This is the preferred way to change the charset. Using mysqli_query() to set it (such as SET NAMES utf8) is not recommended. See the MySQL character set concepts section for more information.

على العموم بعد البحث ظهر لي ان استخدم الدالة الخاصة بالترميز المذكورة هنا :
http://php.net/manual/en/mysqli.set-charset.php

والدالة بالطريقة الكائنية هي :
CODE
$mysqli->set_charset("utf8")


أو بالطريقة الإجرائية :
CODE
mysqli_set_charset($mysqli, "utf8")


مع مراعاة ان $mysqli هو دالة تعريف الإتصال ..

بأي حال انا جربت دوال mysql العادية وكان الترميز يعمل بدون مشاكل
ولكن حين تجربة mysqli تغير الموضوع .. حاولت استخدام كلا الطريقتين ولكن لم تفلح
رغم اني جربت دوال mysqli في إستضافة hostinger وكانت تعمل بدون اي مشاكل

اعتقد والله اعلم ان استخدامي خاطئ ..
هذه هي الأكواد التي جربتها :
CODE
​/* change character set to utf8 */
        mysqli_query("set character_set_server='utf8'");
        mysqli_query("set names 'utf8'");
        mysqli_set_charset($this->sql_connect(),"utf8");
        $this->sql_connect()->set_charset("utf8");


اعتقد ان الخطأ في $this->sql_connect()
قد لا يكون هو المتغير الصحيح .. رغم انه لا يوجد اي رسائل خطأ يتم طباعتها

ممكن ارسل لك رابط الموقع بالرسائل الخاصة لأن ملفات التنصيب ما زالت موجودة ولا اريد ان يعبث بها بعض الزوار


تحديث :
اصدار PHP هو 5.5.30
إصدار MySQL هو 5.5.45-cll-lve


منتدى دعم PBBoard الرسمي

Copyright © 2009-2024 PBBoard® Solutions. All Rights Reserved