دیتالایف انجین فارسی

دیتالایف انجین فارسی

پشتیبان رسمی سیستم مدیریت محتوا

عدم نمایش مجدد لیست

عدم نمایش مجدد لیست نظرسنجی، برای کاربرانی که در نظرسنجی شرکت کرده اند

یکی از مشکلات همیشگی دیتالایف انجین در قسمت نظر سنجی این هست که اگر کاربری در یک نظر سنجی شرکت کرده باشد، هنگامی که صفحه را بارگزاری مجدد میکند، لیست نظر سنجی دوباره نمایش داده میشود. هرچند که کاربر نمیتواند دوباره رای دهد و رای آن محاسبه نمیشود، اما نشان دادن دوباره نظر سنجی زیاد مناسب نمیباشد. بوسیله هکی که برای شما آماده کردم، این مشکل برطرف میشود و هنگامی که کاربر در نظر سنجی شرکت کند، همیشه نتیجه نظر سنجی برای آن کاربر به نمایش گذاشته میشود.

آموزش نصب
۱. ابتدا فایل engine/modules/vote.php را باز کرده و کد زیر را پیدا کنید:
if( $vote_action == "vote" ) {
    $_IP = $db->safesql( $_SERVER['REMOTE_ADDR'] );
    
    if( isset( $member_id['name'] ) ) $nick = $db->safesql($member_id['name']);
    else $nick = '';

    if ($user_group[$member_id['user_group']]['allow_vote']) {
    
        if( $is_logged ) $row = $db->super_query( "SELECT count(*) as count FROM " . PREFIX . "_vote_result WHERE vote_id='$rid' AND name='$nick'" );
        else $row = $db->super_query( "SELECT count(*) as count FROM " . PREFIX . "_vote_result WHERE vote_id='$rid' AND ip='$_IP'" );
        
        if( !$row['count'] AND count( explode( ".", $_IP ) ) == 4 ) $is_voted = false;
        else $is_voted = true;

    } else $is_voted = true;
    
    $flag = 1;

۲. به جای کد بالا، کد زیر را قرار دهید:
$_IP = $db->safesql( $_SERVER['REMOTE_ADDR'] );    
    if( isset( $member_id['name'] ) ) $nick = $member_id['name'];
    else $nick = '';    
    if( $is_logged ) $row = $db->super_query( "SELECT count(*) as count FROM " . PREFIX . "_vote_result WHERE vote_id='$rid' AND name='$nick'" );
    else $row = $db->super_query( "SELECT count(*) as count FROM " . PREFIX . "_vote_result WHERE vote_id='$rid' AND ip='$_IP'" );    
    if( $row['count'] == 0 ) $is_voted = false;
    else $is_voted = true;
if ($is_voted )
  {
      $flag = 1;
  }
if( $vote_action == "vote" ) {    
    $flag = 1;

مراحل نصب در اینجا به اتمام رسید، اما دوستانی که هک نمایش نظر سنجی به صورت مدرن را نصب کرده اند، مرحله زیر را نیز انجام دهند تا ظاهر نظر سنجی آنها مثل گذشته باشد:
۱. در همان فایل vote.php کد زیر را پیدا کنید:
<div class=\"vote\" align=\"right\">$body[$i] - $num ($proc%)</div>
      <div class=\"vote\" align=\"right\">
        <img src=\"" . $config['http_home_url'] . "templates/" . $config['skin'] . "/dleimages/poll{$pn}.gif\" height=\"10\" width=\"".intval($proc)."%\" style=\"border:1px solid black\">
      </div>\n

۲. کد زیر را به جای کد بالا قرار دهید:
<div class=\"vote\" align=\"right\">$body[$i] - $num</div>
<div class=\"progress voted progress_{$pn}\"><span style=\"width: ".intval($proc)."%;\"><b>{$proc}%</b></span></div>\n
نظرات کاربران
hamde در 01 خرداد 1391 - 07:52 گفته:
عضو سایتنظرات: 39

سلام ، ممنون دوست عزیز ، خیلی کاربردی هستش ...

اما در سایت من برای کسی که قبلا نظر داده است، فقط نتایج نمایش داده می شود. من میخوام جمله " شما قبلا در نظر سنجی شرکت کرده اید " نمایش داده شود ....

IMP در 01 خرداد 1391 - 07:54 گفته:
مدیر بازنشستهنظرات: 917

متاسفانه فعلا امکان همچین کاری نیست.

معین راعی در 02 خرداد 1391 - 12:45 گفته:
عضو سایتنظرات: 62

اگه اینطور میشد عالی میشد

ولی در کل imp همیشه داره به ما وجه میاره
flower

شهاب در 02 خرداد 1391 - 23:02 گفته:
عضو سایتنظرات: 69

flower

--------------------

imamali در 09 خرداد 1391 - 16:40 گفته:
عضو سایتنظرات: 10

بسم الله
سلام
آیا امکان حذف نمایش از نظر سنجی هست
یعنی نتایج نظر سنجی خصوصی باشد.

hamde در 18 خرداد 1391 - 21:13 گفته:
عضو سایتنظرات: 39

imamali,
من از group استفاده کردم ، یعنی فقط خودم می تونم نتایج را ببینم ...

IMP در 18 خرداد 1391 - 21:24 گفته:
مدیر بازنشستهنظرات: 917

شما میتونید ۲ بار از group استفاده کنید، یعنی نتایج رو برای خودتون نمایش بده با استفاده از group=1 و یک بار دیگه از این تگ استفاده کنید برای سایر کاربران به صورت group=2,3,4,5 و داخل این تگ بنویسید که نتایج برای کاربران نمایش داده نمیشود.

ارسال نظر
نام:*
ایمیل:*
متن نظر:
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
کد را وارد کنید: *
عکس خوانده نمی‌شود؟ کلیک کنید!