اذهب إلى المحتوى

Soluk Gulumseme

الأعضاء
  • المساهمات

    14
  • تاريخ الانضمام

  • تاريخ آخر زيارة

أجوبة بواسطة Soluk Gulumseme

  1. بتاريخ 50 دقائق مضت قال محمد_عاطف:

    الخطأ لديك هو انك تقوم بوضع رقم 0 دائما فى المصفوفة الاولى وبهذا سيتم ترجاع مصفوفة واحده فقط الى الخادم .

    والحل هو وضع ال id الخاص بالمستخدم row["teacher_number"]$  بدلا من ال 0

     

    قمت بالتعديل ومن ثم أحاول إرسال بيانات هذه المصفوفة إلى صفحة أخرى ولكنه يظهر خطأ 

    لا أستطيع تحديد ان كان الخطأ من صفحة الإرسال أو الاستقبال فهل تستطيع مساعدتي؟

    • أعجبني 1
  2. بتاريخ 17 ساعة قال محمد_عاطف:

     

    يمكنك تحقيق ذلك عن طريق تسمية ال input كمصفوفة وسوف يتم ارساله الى الخادم كمصفوفة هكذا.

    <input type="checkbox" name="name=name[0][0]" value="0">
    <input type="checkbox" name="name=name[0][0]" value="1">
    
    <input type="checkbox" name="name=name[0][1]" value="0">
    <input type="checkbox" name="name=name[0][1]" value="1">
    
    <input type="checkbox" name="name=name[0][2]" value="0">
    <input type="checkbox" name="name=name[0][2]" value="1">

    حيث ستكون المصفوفة الاولى هى الخاصة بحفظ القيم للسمتخدم والمصفوفة الثانية هى الخاصة بالايام .

    وسوف تصلك النتيجة هكذا الى الخادم .

    $data = [ [1,1,1,0,0] , [1,1,1,0,0] , [1,1,1,0,0] ,[1,1,1,0,0] ] // حيث ان المصفوفة الداخلية هى القيم الخاصة بالايام والخارجية الخاصة بالمستخدمين .

    جربت هذه الطريقة ولكنها لم تضبط جيداً هناك خطأ اقوم به، ربما أنه يجب تحديد عدد خانات المصفوفة قبل اعطائها القيم ولكني لا أعرف كيف اقوم بذلك 

     

    17133690422234087813733198358955.jpg

  3. في هذه الواجهة يتم استدعاء الأسماء من جدول في قاعدة البيانات باستخدام كود php حيث استخدمت while لعرض جميع الأسماء مع تكرار الcheckbox لكل سطر، حيث كل chechbox يمثل فترة في اليوم الذي يقع اعلاه، أريد بعد الانتهاء من اختيار مربعات النص جميعها أن احتفظ بقيمها في مصفوفة حيث تكون كل خانة في المصفوفة مكونه من رقم الاسم المذكور مع قيم الcheckbox كعدد واحد تم دمجة، مع العلم ان كل checkbox قيمته هي 1 عند الاختيار و 0 عند عدم الاختيار، أريد حفظ البيانات من الواجهة بعد الانتهاء من الاختيار

    كيف أقوم بذلك؟

    17132975891528029798200303804088.jpg

    • أعجبني 1
  4. بتاريخ 18 ساعة قال ياسر مسكين:

    نعم قد يكون ذلك هو السبب، يمكنك اتباع هذه الخطوات للتأكد:

    • فتح لوحة التحكم: من خلال فتح قائمة "ابدأ" والبحث عن "لوحة التحكم" ثم النقر على النتائج لفتحها.
    • البحث عن الإعدادات الإقليمية واللغة: عبر البحث عن الإعدادات الخاصة باللغة أو الإعدادات الإقليمية في لوحة التحكم.
    • تغيير الترميز: ابحث عن الخيار الذي يسمح لك بتغيير الترميز أو اللغة المستخدمة في النظام، وحدد UTF-8 إذا كان متاحًا كخيار.
    • إعادة تشغيل النظام: بعد تحديد الترميز الجديد، قد يُطلب منك إعادة تشغيل النظام لتطبيق التغييرات.

    خلاف ذلك ممكن أن يكون السبب وراء ذلك عدم تحديد ترميز النصوص في برنامج إدارة قاعدة البيانات ففي بعض الحالات، يجب تعيين الترميز بشكل صحيح في البرنامج نفسه.

    يمكنك تجربة استخدام أمر SET NAMES: قبل استيراد البيانات إلى قاعدة البيانات، جرب استخدام أمر SET NAMES لتعيين الترميز المناسب، من خلال هذا الأمر:

    SET NAMES 'utf8mb4';

    استخدام أمر CHARSET في الاستيراد فعند استيراد الملف إلى قاعدة البيانات، جرب استخدام أمر CHARSET مع تعيين الترميز المطلوب، من خلال:

    LOAD DATA INFILE 'file.csv' INTO TABLE table_name CHARACTER SET utf8mb4 FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS;

    هكذا سيتمكن نظام التشغيل الخاص بك من عرض البيانات بشكل صحيح بعد التحويل إلى UTF-8.

    قمت بتغيير ترميز نظام التشغيل ومن ثم استيراد البيانات كما قلت تماماً ولكنها إما تختفي أو تظهر كحروف ورموز انجليزيه 

  5. بتاريخ 3 ساعة قال Mustafa Suleiman:

    حاول تنفيذ الاستعلام التالي لتحويل قاعدة البيانات إلى UTF8:

    ALTER DATABASE db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

     

    نفذت الاستعلام ومن ثم قمت بالاستيراد ولكنه أخفى البيانات تماماً

    لقد جربت عدة طرق منذ مدة ولكن البيانات لا تظهر صحيحة في جهازي بينما جربها آخر بنفس الطريقة في جهازة وقام باستيرادها بشكل صحيح 

    الفرق هو أن نظام التشغيل ويندوز الخاص بي باللغة العربية بينما نظامه باللغة الإنجليزية هل من الممكن أن يكون هذا هو سبب ظهر البيانات بشكل غير صحيح

    • أعجبني 1
  6. بتاريخ 41 دقائق مضت قال ياسر مسكين:

    للتحقق من ترميز الملف باستخدام Notepad++، يمكنك البدء من خلال:

    فتح الملف في Notepad++:

    •    انقر بزر الماوس الأيمن على الملف.
    •    اختر "افتح باستخدام" (Open with).
    •    اختر Notepad++ من القائمة.

    مثلما هو موضح في الصورة:

    Capturedcran2024-03-02132750.thumb.png.a639af2f0799ccbb45322a37da85505c.png

    ثم التأكد من ترميز الحروف:

    •   انتقل إلى قائمة "تشفير" (Encoding) في شريط القوائم.
    •   ستظهر لك قائمة بخيارات الترميز المتاحة.
    •   اختر الخيار الذي تشتبه فيه، مثل "UTF-8" أو "UTF-8 without BOM" لملفات UTF-8.

    Capturedcran2024-03-02133403.thumb.png.e0a14fe1a75f5081c954064ff08415c5.png

    بعد اختيار الترميز المناسب، يمكنك التحقق من النصوص في الملف.

    قمت بالتحقق من الترميز ومن ثم تنفيذ الاستيراد بالأمر الذي أعطيتني إياه ولكنه لم يتغير

  7. بتاريخ 9 دقائق مضت قال Mustafa Suleiman:

    أثناء الاستيراد هل حددت الترميز كالتالي؟

    Snag_2dc7c6b.thumb.png.fd517eec3a82a14640a01ed3a6338ebf.png

    في حال قمت بذلك تأكد من أنّ قاعدة البيانات الترميز الخاص بها هو UTF8 من خلال الضغط على status and system variables من الجانب الأيسر.

    ثم في خانة البحث ابحث عن Collation وتأكد من أن الترميز بالكامل هو utf8 أيضًا ابحث عن character ثم تأكد من نفس الترميز.

    نعم فعلت كل ذلك ولكنه مازل يظهر البيانات على انها علامة استفهام 

    • أعجبني 1
  8. بتاريخ 5 دقائق مضت قال ياسر مسكين:

    عند استيراد ملف CSV إلى جدول في قاعدة بيانات MySQL، تظهر البيانات النصية باللغة العربية عادةً على أنها علامات استفهام بدلاً من النص الصحيح باللغة العربية، يجب أولا التحقق من ترميز الحروف في ملف CSV لهذا يجب عليك أن تقوم:
    بفتح الملف CSV باستخدام برنامج نصي مثل Notepad++ والتأكد من أن ترميز الحروف يتوافق مع اللغة العربية، ويفضل استخدام UTF-8.

    لكن عند استيراد الملف CSV إلى MySQL، تأكد من تحديد الترميز المناسب. يمكنك استخدام الأمر التالي:

    LOAD DATA INFILE 'file.csv' INTO TABLE table_name CHARACTER SET utf8 FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS;

    يجب عليك التأكد من أن ترميز الحروف للجدول في قاعدة البيانات MySQL معين بشكل صحيح.

    ALTER TABLE table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

    وقبل استيراد الملف CSV، استخدم أمر SET NAMES لتعيين الترميز المناسب.

    SET NAMES 'utf8';
    

    وهذا مثال لأشرح لك بشكل مبسط أكثر، لنفترض أن لدينا ملف CSV يُدعى `data.csv` ويحتوي على البيانات التالية:

    "اسم","عمر"
    "ياسر",25
    "مسكين",30

    ونريد استيراده إلى جدول يُدعى `users` في قاعدة البيانات نستخدم هذه الأوامر:

    SET NAMES 'utf8';
    
    LOAD DATA INFILE 'data.csv' INTO TABLE users CHARACTER SET utf8 FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS;
    
    ALTER TABLE users CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

    بهذا، يجب أن يتم استيراد البيانات العربية بشكل صحيح دون أي مشاكل في الترميز.

    كيف اتحقق من ترميز الملف بال notepad++

    • أعجبني 1
  9. بتاريخ 1 دقيقة مضت قال Mustafa Suleiman:

    يجب تحديد الترميز على أنه UTF8 عند الاستيراد، لكن ما هي الطريقة التي تقوم بالاستيراد من خلالها؟ هل من خلال الواجهة أم من خلال استعلام SQL؟

    نعم الترميز محدد على أنه UTF8 

    الاستيراد من خلال الواجهة

    • أعجبني 1
  10. عند استيراد ملف csv في جدول في قاعدة بياناتك mysql تظهر البيانات النصية المكتوبة باللغة العربية على أنها علامات استفهام، ماهو السبب في ذلك؟ 

    كما أن نظام التشغيل باللغة العربية فهل من الممكن أن يكون هو السبب

    • أعجبني 2
×
×
  • أضف...