النتائج 1 إلى 3 من 3

الموضوع: مشكلة برمجية بسيطة :)

  1. #1
    Banned
    تاريخ التسجيل
    Jan 2005
    المشاركات
    154

    مشكلة برمجية بسيطة :)



    السلام عيلكم والرحمة

    المشكلة هي كالتالي:
    كود PHP:
    $SF date("m"); 
    اخذ االـ$SF واحطها هنا :
    كود PHP:
        imagejpeg ($im2,"./pics/$SF/$imagesavefile.jpg",100); 
    ويتم تخزين الصورة بـمجلد pics وليس بمجلد الشهر ... حسب الدالة فوق
    يعني يتم رفع الصور الى مجلد pics وتصبح وصلة الصورة هكذا
    http://name.com/pics//05-200.jpg
    لاحظ السلاشين بعد pics مع العلم بأني قمت بعمل 12 ملف ورخصهم بـ777

    حاولت يمين فوق تحت ولا هي راضية تصلح ...

    الكود بالكامل:
    كود PHP:
    <?
    //عنوان موقعك او النص الذي تريده ان يضهر في اسفل الصوره
    //ملاحظه لايدعم العربي
    $websitename "www.NAME.com";
    ///لون اسم الموقع على الصورة
    $textcolor "#FFFFFF";
    $SF date("m");
    ///////////////////////////////////////////////////////////////////
    //                    لا تغير شيء تحت                            //
    //////////////////////////////////////////////////////////////////
    if($image)
    {
        
    //التأكد من ان الملف صوره
        
    $ift =  substr($image_name, -3);
        if((
    $ift=="jpg") or ($ift=="gif") or ($ift=="png"))
        {
            
    //انشاء اسم للصوره وهو عباره عن وقت تحميل الصوره زائد رقم عشوائي
            
    $tow date("d-m-y"). - rand(0,5000);
            
    //نسخ الصوره الى الموقع لاجرائ التعديلات عليها
            
    if(copy($image,$image_name)){
                
    //استدعاء داله الدمج
                
    daifimage($image_name,$websitename,$tow,$ift,$textcolor);
                
    //انشاؤ الارتباط
                
    $imageurl ="http://www.NAME.com/pics/$SF/$tow.jpg";
                
    //طباعت ارتباط الصوره للزائر
                
    print str_replace("imageurl",$imageurlimplode (''file ("url.html")));
            }else{
                print
    "غير قادر على نسخ الصوره";
            }
        }
    }else{
        if(
    $daif){
            
    $daif "$daif.jpg";
            if(
    file_exists($daif)){
                
    readfile($daif);
            }else{
                
    readfile("notfound.jpg");
            }
        }else{
            
    //صندوق التحميل
            
    include("upload.html");
        }
    }
    //دالة تكون اللون
    function mkcolor($image,$color){
     
    $color str_replace("#","",$color);
     
    $red   hexdec(substr($color,0,2));
     
    $green hexdec(substr($color,2,2));
     
    $blue  hexdec(substr($color,4,2));
     
    $out   ImageColorAllocate($image$red$green$blue);
     return(
    $out);
    }
    //هذه الداله تقوم بوضع اسم الموقع في اسفل الصوره التي تمررها لها
    function daifimage($imagefilename,$websitename,$imagesavefile,$imagefilename_type,$textcolor="#FFFFFF")
    {
        
    //انشاء صوره من الملف المعطى
        
    if($imagefilename_type=="jpg"){$im imageCreateFromjpeg($imagefilename);}
        if(
    $imagefilename_type=="gif"){$im imageCreateFromGIF($imagefilename);}
        if(
    $imagefilename_type=="png"){$im imageCreateFromPNG($imagefilename);}
        
    //انشاء صوره فارغه للرسم عليها
        
    $im2imagecreatetruecolor(imageSX($im),imageSY($im)+22);
        
    //وضع لون للنص
        
    $text_color mkcolor($im2,$textcolor);
        
    //تحديد مكان كتابة النص حسب طول وعرض الصوره وحسب عدد احرفه
        
    $start_text = (imageSX($im2)/2)-9*(strlen($websitename)/2);
        
    //كتابة النص في اسفل الصوره
        
    ImageString ($im25$start_text, (imageSY($im)+3), $websitename$text_color);
        
    //دمج الصوره التى الفارغه مع الصوره المعطاه
        
    imageCopyMerge($im2$im,0,0,0,0,(imageSX($im)),(imageSY($im)),100);
        
    //حفظ الصوره في ملف
        
    imagejpeg ($im2,"./pics/$SF/$imagesavefile.jpg",100);
        
    //مسح الصوره من الذاكره
        
    imagedestroy($im2);
        
    //مسح الصوره القديمه
        
    unlink($imagefilename);
    }
    ?>
    ملاحظة تم عمل 12 مجلد حسب شهور السنة داخل مجلد pics
    ملاحظة: الملف الذي به هذا الكود موضوع بمجلد آخر بنفس مكان مجلد pics ... يعني index.php

    اعذروني اخوكم عليمي يحاول يتعبث









  2. السلام عليكم ..


    آسف ما قرأت الكود كامل لكني تصفحته بسرعه و أعتقد إن المشكلة هي التالي :

    المتغير $SF معرف خارج الدالة daifimage ، لذلك لايمكن الوصول لقيمته من داخل الدالة ...

    الحلول الممكنة :
    - إعادة تعريف المتغير داخل الدالة .
    - تجعل المتغير global ، هكذا :
    كود:
    function daifimage($imagefilename,$websitename,$imagesavefile,$imagefilename_type,$textcolor="#FFFFFF") 
    { 
     global $SF;
    .
    .
    بحيث يمكن الوصول لمحتوياته من داخل الدالة .
    - أو إنك تستخدم المتغير بالشكل :
    كود:
    $GLOBALS["SF"]
    و جميع المسارات تؤدي إلى روما





    __________________
    مدونتي الشخصية :
    http://www.mazen.ws
    عن البرمجة و تطوير المواقع و علوم الحاسب
    ماسنجر :
    desclub@hotmail.com
    بريد الكتروني :
    mazen@mazen.ws

  3. #3
    Banned
    تاريخ التسجيل
    Jan 2005
    المشاركات
    154


    شكرا جزيلا لك اخي مازن ... اشتغل تمام ...


    شكرا مرة اخرى ..










ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض