شباب هوه ازاي الواحد بيخزن array جوه ال mysql ويستخرجها على انها array مش على هيئة string حاولت استخدم ال serialize وافكو بس النتيجة اللي جاية من قاعدة البيانات بتبقى string حتى بعد ال unserialize وبالتالي الدوال الخاصة بالعمل على ال arrays زي مثلا in_array مش هتشتغل لانها هتتعامل مع نص وليس مصفوفة --- السؤال هنا بقى ازاي انهم تخزن array جوه ال mysql بدون ما تتحول ل string ... ياريت يا شباب تساعدوني ضروري وشكرا.
مشكلة اضافة array في قواعد mysql
حسوب I/O هو مجتمع عربي، رجاءً شارك باللغة العربية الفصحى فقط
ارجو منك الالتزام في ذلك لو سمحت
بالنسبة لموضوع الـ Serialize فهي تتعامل معها على أنها مصفوفة، وبإمكانك استخدام دوال التعامل مع المصفوفات دون مشاكل، ربما طريقة عملك لم تكن صحيح، وهذا مثال مجرب
$newArr = array('Feras','Allaou','تجربة','التعامل مع المصفوفات');
print_r($newArr); // Array ( [0] => Feras [1] => Allaou [2] => تجربة [3] => التعامل مع المصفوفات )
$sArr = serialize($newArr);
echo $sArr; //a:4:{i:0;s:5:"Feras";i:1;s:6:"Allaou";i:2;s:10:"تجربة";i:3;s:38:"التعامل مع المصفوفات";}
$Arr = unserialize($sArr);
$Arr[] = 'إضافة عنصر جديد ';
print_r($Arr); // Array ( [0] => Feras [1] => Allaou [2] => تجربة [3] => التعامل مع المصفوفات [4] => إضافة عنصر جديد )
انا اقصد لما اخزن مثلا المتغير $sArr في حقل من حقول الجدول ولما انفذ الاستعلام لاستخراج قيمة هذا الحقل وعمل unserialize لهذا المتغير
لا يمكن التعامل معها على انها array ولكنه يتعامل معها على اساس انها string كما تم تخزينها في قاعدة البيانات ... فهمتني ؟؟
أنا كتبت الطريقة في الأعلى للتأكد من أنك تقوم بخطوات العمل بشكل سليم، لكن انا استخدم هذه الطريقة دون مشاكل ويمكنني التعامل معها على أنها مصفوفة بعد عمل Unserialize، ما هي نسخة الـ PHP لديك ؟
حاول استخدام
ini_set('display_errors',1);
ini_set('display_startup_errors',1);
error_reporting(-1);
لنرى ماهي الأخطاء التي قد تكون موجودة.
التعليقات