منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : ماهي دالة الوصول الى كل قيمة على حدة من بين مجموعة قيم مفصولة عن ابعضها بفاصلة ؟
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته
 
المشكلة التي اواجهها تتلخص بالتالي:
عندي قاعدة بيانات files فيها حقل نصي وهو خاص بأسماء الملفات المرفوعة حيث يتم تخزين مجموعة اسماء الملفات التي رفعت في الجلسة الواحدة يتم تخزينها في (خانة واحدة) تفصل بين كل اسم والاخر فاصلة يعني file1.jpg, file2.pdf, file3.png وهكذا  نفس الطريقة في كل صف في الجدول كما في الصورة المرفقة


 
وعندي الكود التالي 

 
PHP كود :
$q="select count(*) \"total\" from files";
    
$ros=mysqli_query($link,$q);
    
$row=(mysqli_fetch_array($ros));

    while(
$row=mysqli_fetch_array($ros))
    {
        echo 
'<tr>';
        echo 
"<td align=center><a title='Click here to download in file.'  
        href='download.php?id=
{$row['profile_image']}'>{$row['profile_image']} </a>";       
        
echo '</tr>';
       } 


عند رفع ملف واحد وتطبيق الدالة السابقة فإنه الكود سيقوم بعمل ارتباط تشعبي على كل خانة في الجدول لربط اسم الملف مع الملف المخزن على الجهاز والكود يعمل تمام مع الملف الواحد لكن عندما يكون هنالك اكثر من اسم ملف في نفس الخانة وهو ماتوضحه الصورة المرفقة فإن الكود يعمل ارتباط تشعبي للخانة كلها وليس لكل اسم على حدة .. اريد عند تطبيق الكود السابق ان يربط كل اسم داخل الخانة برابط تشعبي مفصول عن الاسم الذي يليه
استخدم الأمر explode
[b]rnmr [/b]  معلش اخي الكريم ممكن توضح ماتفضلت به على الكود لاني لازلت مبتدئ في عام الـ php
جرب هذا

كود :
//$q = "select count(*) \"total\" from files";
$q = "select * from files";
$ros = mysqli_query($link, $q);
//$row = (mysqli_fetch_array($ros));

while ($row = mysqli_fetch_array($ros)) {
    echo '<tr>';

    echo "<td align=center>";  
        $profiles = explode(',', $row['profile_image']);
        foreach ($profiles as $prof) {
            echo "<a title='Click here to download in file.'"
            . "href='download.php?id=" . trim($prof) . "'"
            . ">" . trim($prof) . "</a>" . ' | ';
        }
    echo '</td>';
    
    echo '</tr>';
}
ماشاء الله عليك أخي الكريم rnmr الكود يعمل بنجاح تام .. كنت اتمنى لو تشرح الكود لكي تعم الفائدة فنحن المبتدئين يصعب علينا فهم ماتفضلت به
تم تقسيم النص باستخدام الأمر explode بدلالة الفاصلة(,) وأصبح الناتج على شكل مصفوفة في المتغير profiles$
تم المرور على المصفوفة profiles$ باستخدام الأمر foreach وقراءة كل عنصر منها ووضعه في المتغير prof$
تم عمل echo للرابط a مع قيمة المتغير prof$
شكراً لك استاذنا rnmr الآن اصبح الكود واضح .. تحية لك