اخطار براي ننوشتن نام در كامنت ها؟

شروع موضوع توسط nima_khaneyedoo ‏19 فوریه 2004 در انجمن MovableType - مووبل تایپ

  1. nima_khaneyedoo

    nima_khaneyedoo کاربر تازه وارد

    تاریخ عضویت:
    ‏27 دسامبر 2003
    نوشته ها:
    19
    تشکر شده:
    0
    اگه توي ام تي اجازه نظر دادن به صورت ناشناس رو تيك بزنيم حتي بدون نوشتن نام هم ميشه نظر داد..من ميخواستم بدونم يه تابع ميشه بدين كه مثه پرشين بلاگ حداقل نوشتن نام رو تو اين حالت اجباري كنه؟...يه دنيا ممنونم.
     
  2. بازدیدیار - افزایش بازدید سایت و سیگنال های برندخرید بک لینک
  3. Mashaheer

    Mashaheer مدیر بازنشسته کاربر فعال

    تاریخ عضویت:
    ‏5 می 2003
    نوشته ها:
    1,972
    تشکر شده:
    17
    محل سکونت:
    UAE
    براي اينكار برو به بخش تنظيمات و اين رو درستش كن به صورت زير:
    Web Configuration > Preferences > Comment Configuration > Allow anonymous comments رو اگر تيك خورده، تيك رو بردار.
     
  4. nima_khaneyedoo

    nima_khaneyedoo کاربر تازه وارد

    تاریخ عضویت:
    ‏27 دسامبر 2003
    نوشته ها:
    19
    تشکر شده:
    0
    ميدونم..من خودم عمدا اونو فعال كردم كه بدون وارد كردن اي ميل هم بشه كامنت داد..من يه كامنت ميخوام مثه پرشين بلاگ كه فقط اگه طرف نام رو وارد كرده بتونه نظر بده....كسي نبود؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
     
  5. sina1808

    sina1808 Registered User

    تاریخ عضویت:
    ‏11 سپتامبر 2003
    نوشته ها:
    1,564
    تشکر شده:
    5
    ببينيد اين مشكل رو حل ميكنه؟

    <script language="JavaScript">
    <!--
    function CheckForm(formID) {
    if (formID.name.value == "") { alert("Please enter your name!"); formID.name.focus(); return false; }
    if (formID.email.value == "") { alert("Please enter your email address!"); formID.email.focus(); return false; }
    if (formID.message.value == "") { alert("Please enter your message!"); formID.message.focus(); return false; }
    return true;
    }
    //-->
    </script>

    چنانچه تو باكس ميل چيزي نوشته نشه پيغام ميده كه Please enter your email address
    البته ميتوني چيزي هايي بهش اضافه يا كم كني . . .
     
  6. Mashaheer

    Mashaheer مدیر بازنشسته کاربر فعال

    تاریخ عضویت:
    ‏5 می 2003
    نوشته ها:
    1,972
    تشکر شده:
    17
    محل سکونت:
    UAE
    به نظر شما فايده اون كار چيه؟ به نظر من بايد اين اختيار رو به نويسنده كامنت داد كه اگر دوست داشت مشخصاتش رو بنويسه در غير اينصورت هركسي كه دوست نداشته باشه مي توني آدرسهاي به اشتباه هم بنويسند....
    به هر صورت اون مي توني از اون كدي كه سيناي عزيز نوشته استفاده كني...
     
  7. nima_khaneyedoo

    nima_khaneyedoo کاربر تازه وارد

    تاریخ عضویت:
    ‏27 دسامبر 2003
    نوشته ها:
    19
    تشکر شده:
    0
    در جواب شما اين كه اگر كسي نه ميل داشت و نه آدرس وب و ميخواست نظر بده تو ام تي چي بايد بكنه ها ؟ يه كي كمك كنه :
    اينم مفصلش :
    ببين توضيح کليش اينه:
    اين تابع زيري تابعيه که کامنت شما رو تو پرشين بلاگ چک ميکنه که نام و متن نظرت رو وارد کرده باشي(من

    قسمت هاي مربوط به ماکزيمم طول پيغام و درست بودن اي ميل رو برداشتم):
    اين توي
    head
    قرار ميگيره
    function comment_submit(el) {
    if (el.commentName.value=='') {
    alert ('!نام خالى است');
    el.commentName.focus();
    return false;
    }

    if (el.commentEmail.value!='' && !validate_email(el.commentEmail.value)) {
    alert ('!پست الکترونيکى مجاز نمى باشد');
    el.commentEmail.focus();
    el.commentEmail.select();
    return false;
    }

    if (el.commentBody.value=='') {
    alert ('!متن پيام خالي است');
    el.commentBody.focus();
    return false;
    }

    if (el.commentBody.value.length > 1024) {
    alert ('!حداكثر متن پيام 1024 حرف ميباشد');
    el.commentBody.focus();
    return false;
    }

    el.sendcom.disabled=true;

    return true;
    }
    </script>

    اين تابع موقعي که کاربر روي دکمه فرستادن کليک ميکنه نام و اينارو اينجوري چک ميکنه
    يعني تگ فرم پرشين بلاگ اين شکليه
    :
    <form method="post" action="/ucomments.asp?...." onsubmit="return

    comments_submit(this)">

    من اين تابع رو براي تنظيم کردم که با توجه به اين که فيلد هاي ذخيره شده تو ام تي فرق ميکنه وقتي که به صورت

    ناشناس ميشه نظر داد حتما از وارد شدن نام و متن کامنت مطمئن بشه..اونم با يه پيغام خطا
    اين توي
    head
    قرار ميگيره
    :
    <script language="JavaScript">
    function comments_submit(el) {
    if (el.author.value=='') {
    alert ('وارد کردن نام ضروري است');
    el.author.focus();
    return false;
    }

    if (el.text.value=='') {
    alert ('چيزي ننوشتي که');
    el.text.focus();
    return false;
    }

    el.post.disabled=true;

    return true;
    }
    </script>
    اما تنها مشکل همينجاست که موقعي که کاربر فرم رو پر کرده و کليد فرستادن رو ميزنه از چه جوري بايد اين تابع
    مقادير نام و متن رو چک کنه چون تگ فرم ام تي از اول اين شکليه
    :
    <form method="post" action="<$MTCGIPath$><$MTCommentScript$>"

    name="comments_form" onsubmit="if (this.bakecookie[0].checked) rememberMe(this)">
    يعني من اونجا که مي خوام مثه پرشين بلاگ تابع رو چک کنم يعني توي
    on submit
    از قبل يه کوکي چک ميشه...اگه هم اينو مثلا اين شکلي اضافه کنيم
    onsubmit="if (this.bakecookie[0].checked) rememberMe(this);return

    comments_submit(this)">
    اون موقه کار ميکنه اما ديگه نظر داده شده نمي آد و ثبت نميشه...
    حالا کسي بازم نيست که کمک کنه که من اين تابع رو چه جوري چک کنم؟
    آقا احسان شما هستين؟
     
  8. nima_khaneyedoo

    nima_khaneyedoo کاربر تازه وارد

    تاریخ عضویت:
    ‏27 دسامبر 2003
    نوشته ها:
    19
    تشکر شده:
    0
    آقا چي شد؟كسي موضوع به اين راحتي رو بلد نيست؟
     
  9. ehsan

    ehsan Administrator

    تاریخ عضویت:
    ‏5 دسامبر 2002
    نوشته ها:
    7,924
    تشکر شده:
    3,620
    محل سکونت:
    Internet
  10. nima_khaneyedoo

    nima_khaneyedoo کاربر تازه وارد

    تاریخ عضویت:
    ‏27 دسامبر 2003
    نوشته ها:
    19
    تشکر شده:
    0
    احسان جان من اك تي رو تنظيم كردم كه بشه به صورت ناشناس كامنت داد....اما مي خوام طرف اگه اسمش رو يادش رفت بنويسه يه alert بده كه نماتونو مثلا بنويسين و پستم نشه تا نامش رو بده....چون در حالت ناشناس فقط با نوشتن متن ميشه پست كرد...به زبان ساده من فقط ميخوام نوشتن نام رو اجباري كنم..دقيقا مثه پرشين بلاگ..همين ..متوجه شدين....منتظر كمكم ها..مخلص همه ...آقا كمك كنيد.
     
  11. ehsan

    ehsan Administrator

    تاریخ عضویت:
    ‏5 دسامبر 2002
    نوشته ها:
    7,924
    تشکر شده:
    3,620
    محل سکونت:
    Internet
    آها فهميدم. اينجوري كن:

    اين رو بذار توي head:
    HTML:
    <script language="JavaScript">
    // check name field
    function checkName()
    {
    	// if empty, pop up alert
    	if (document.forms[0].name.value == "")
    	{
    		alert("Please enter a valid name");
    		return false;
    	}
    	else
    	{
    		return true;
    	}
    }
    
    // function to check all form data
    function checkForm()
    {
    	if (checkName())
    	{
    		return true;
    	}
    	else
    	{
    		return false;
    	}
    }
    
    </script>
    
    بعدش این رو هم بذار اونجا که فرم شروع میشه. یعنی تگ فرم اینجوری بشه:

    HTML:
    <form action="submit.php" method="post" onSubmit="return checkForm()">
    دقت کن که فقط یه "()onSubmit="return checkForm به تگ فرم اضافه شده و ممکنه بقیه قسمتهاش چیزهای دیگه ای باشن.

    موفق باشی :)
     
  12. nima_khaneyedoo

    nima_khaneyedoo کاربر تازه وارد

    تاریخ عضویت:
    ‏27 دسامبر 2003
    نوشته ها:
    19
    تشکر شده:
    0
    احسان عزيز منونم كه كمك ميكني اما مشكل دقيقا همين جاست يعني ميدوني توي تگ فرم كامنت هاي ام تي از قبل يه تابع ديگه چك ميشه اين:
    خوب وقتي هم به جاش همون تابه شما رو ميذاري پيغام خطا رو ميده و پست ميشه اما ديگه كامنت ها ور نمي آره...يعني كامنت تازه رو ثبت نميكنه..من خيلي ور رفتم باهاش نميدونم .....ببخشيد من اينقده مزاحم ميشم اما به نظر شما حالا چي كار بايد كرد...ممنون همگي علي الخصوص احسان عزيز سينا خان و مشاهير جان..بازم كمك!
     
  13. black_jack_of_black_city

    black_jack_of_black_city Registered User

    تاریخ عضویت:
    ‏19 سپتامبر 2003
    نوشته ها:
    1,449
    تشکر شده:
    62
    محل سکونت:
    با قلبی شکسته در انتظار مرگ گوشه ای نشستم . به آرز
    من هر وقت بخوام جايي كامنت بذارم ايميلم رو ميذارم[email protected]

    سايتم رو هم ميذارم http://www.microsoft.com

    چرا مته به خشخاش بذاريم؟
     
  14. nima_khaneyedoo

    nima_khaneyedoo کاربر تازه وارد

    تاریخ عضویت:
    ‏27 دسامبر 2003
    نوشته ها:
    19
    تشکر شده:
    0
    آقا يه سوال بود كه بي جواب موند همينطوري كسي نتونست به ما كمك كنه توي اين مسئله ..ممنون در هر حال.
     
  15. deznights

    deznights کاربر تازه وارد

    تاریخ عضویت:
    ‏13 جولای 2005
    نوشته ها:
    8
    تشکر شده:
    0
    میگم کسی که نه ایمیل داره نه وب سایت و نه وبلاگ و نه اینکه بدونه باید یه امیل الکی بنویسه چرا بیاد وبگردی کنه
    for Fun
     
  16. Shahed

    Shahed کاربر قدیمی پرشین تولز

    تاریخ عضویت:
    ‏30 ژوئن 2003
    نوشته ها:
    7,174
    تشکر شده:
    31
    محل سکونت:
    mt.cgi
    اونوخ چجوري ميشه كاري كرد كه موقع ارسال كامنت تو ام تي دكمه ارسال ديزيبل بشه؟

    مث پرشين بلاگ !
     
  17. mrmj

    mrmj کاربر تازه وارد

    تاریخ عضویت:
    ‏27 مارس 2005
    نوشته ها:
    99
    تشکر شده:
    0
    محل سکونت:
    Tehran
    فكر كنم همه چي داره به هم گره مي خوره ... برو يه نفر رو پيدا كن كه جاوا بلد باشه كه بتونه كمكت كنه
     
  18. Shahed

    Shahed کاربر قدیمی پرشین تولز

    تاریخ عضویت:
    ‏30 ژوئن 2003
    نوشته ها:
    7,174
    تشکر شده:
    31
    محل سکونت:
    mt.cgi
    يدونه مازولاق بود قديما ! نميدونم كجا غيبش زده !
     
عسل طبیعی و گرده گل ایرانیخدمات پی پال، وسترن یونیون