رفتن به مطلب

در خواست یک کد php


پست های پیشنهاد شده

سلام دوستان و اساتید گرامی

من دنبال یه تیکه کد هستم

من یه سایت با وردپرس در حال راه اندازی هستم

یه قسمت هس به نام ثبت نام دوره (نام صفحه : page_id=55)

به دلیل محدودیت در کلاس من می خوام تعداد محدود 24 نفر فقط ثبت نام بشن و بقیه یه پیغام بده که ظرفیت تکمیل شده

شرمنده خودم نتونستم بنویسم وگرنه مزاحم نمی شدم

لینک به ارسال

سلام

بخش ثبت نام رو انجام دادید و فقط مشکل اعمال محدودیت دارید؟

لینک به ارسال

کسی جواب ما رو نمی ده ؟

من به وسیله این افزونه ها :

Contact Form 7 و Contact Form DB فقط ثبت اطلاعات می کنم همین

ویرایش شده توسط reza_yki
لینک به ارسال

سلام

من این کد رو خودم نوشتم. امیدوارم کمک کنه:


function my_action() {
$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

if ($url == "http://example.com/pagename" ){
$count = 0;
$result = count_users();
foreach($result['avail_roles'] as $role => $count)
if ($role == "subscriber") {
$count = $count + 1;
if ($count > 24){
echo "<script> alert("You can not register at this class. The class is full") </script>";
wp_redirect( home_url() ); exit;
}
}
}

}
add_action( 'the_post', 'my_action' );

این کد رو آخر function.php پوسته سایتتون وارد کنید.

به جای http://example.com/pagename آدرس صفحه رو وارد کنید.

به جای 24 هم عدد دلخواه رو وارد کنید. در صورتی که تعداد کاربرهای نقش مشترک به عدد دلخواه برسه این کد کاربر رو از صفحه ثبت نام به صفحه خانه هدایت میکنه.

لینک به ارسال

سلام

http://wordpress.stackexchange.com/questions/110036/limiting-the-number-of-users ای مطلب رو هم بخونید کمکتون می کنه.

+ با افزونه Role Manager هم فکر کنم بشه محدودیت اعمال کرد.

لینک به ارسال

سلام

من این کد رو خودم نوشتم. امیدوارم کمک کنه:


function my_action() {
$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

if ($url == "http://example.com/pagename" ){
$count = 0;
$result = count_users();
foreach($result['avail_roles'] as $role => $count)
if ($role == "subscriber") {
$count = $count + 1;
if ($count > 24){
echo "<script> alert("You can not register at this class. The class is full") </script>";
wp_redirect( home_url() ); exit;
}
}
}

}
add_action( 'the_post', 'my_action' );

این کد رو آخر function.php پوسته سایتتون وارد کنید.

به جای http://example.com/pagename آدرس صفحه رو وارد کنید.

به جای 24 هم عدد دلخواه رو وارد کنید. در صورتی که تعداد کاربرهای نقش مشترک به عدد دلخواه برسه این کد کاربر رو از صفحه ثبت نام به صفحه خانه هدایت میکنه.

میشه یه توضیحی در مورد کدی که نویشتی بدی ممنون میشم بابت افزایش اطلاعات

لینک به ارسال


function my_action() {
$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];


if ($url == "http://example.com/pagename" ){
$count = 0;
$result = count_users();
foreach($result['avail_roles'] as $role => $count)
if ($role == "subscriber") {
$count = $count + 1;
if ($count > 24){
echo "<script> alert("You can not register at this class. The class is full") </script>";
wp_redirect( home_url() ); exit;
}
}
}


}
add_action( 'the_post', 'my_action' );

خط به خط توضیح میدم:

خط اول: یه تابع وردپرس رو شروع میکنه که اسم دلخواه my_action داره و علامت () یعنی هیچ متغیری هم نداره

حط دوم: آدرسی رو از سرور درخواست میکنه که الان مرورگر داره نشون میده و این آدرس رو تو متغیر url میریزه

خط سوم: متغیر url رو با آدرس دلخواه ما مقایسه میکنه، اگه متغیر با آدرس صفحه ثبت نام مساوی بود، اون وقت...

خط چهارم: متغیر count به عنوان شمارنده با مقدار 0 تعریف میشه.

خط پنجم: تعداد کل کاربران سایت رو (بدون توجه به نقش کاربر) به دست میاره و میریزه تو متغیر result.

خط ششم: به ازای هر نتیجه داخل result یه کاربر در نظر میگیره.

خط هفتم: بعد اگه نقش کاربر بدست اومده مساوی با مشترک بود

خط هشتم: یک شماره به شمارنده اضافه میکنه.

خط نهم: زمانی که مقدار شمارنده count به 24 (یا هر مقدار دلخواهی رسید)

خط دهم: یه کد جاوااسکریپت به صفحه میده. این کد جاوا اسکریپت یه پنجره هشدار نشون میده و وقتی پنجره هشدار بسته شد

خط یازدهم: کاربر به صفحه خانه هدایت میشه.

خط آخر: به وردپرس میگه هر وقت داشتی یه صفحه رو درست میکردی این تابع من رو اجرا کن

ممنون میشم من رو از نتیجه کد با خبر کنید

لینک به ارسال


function my_action() {
$url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];


if ($url == "http://example.com/pagename" ){
$count = 0;
$result = count_users();
foreach($result['avail_roles'] as $role => $count)
if ($role == "subscriber") {
$count = $count + 1;
if ($count > 24){
echo "<script> alert("You can not register at this class. The class is full") </script>";
wp_redirect( home_url() ); exit;
}
}
}


}
add_action( 'the_post', 'my_action' );

خط به خط توضیح میدم:

خط اول: یه تابع وردپرس رو شروع میکنه که اسم دلخواه my_action داره و علامت () یعنی هیچ متغیری هم نداره

حط دوم: آدرسی رو از سرور درخواست میکنه که الان مرورگر داره نشون میده و این آدرس رو تو متغیر url میریزه

خط سوم: متغیر url رو با آدرس دلخواه ما مقایسه میکنه، اگه متغیر با آدرس صفحه ثبت نام مساوی بود، اون وقت...

خط چهارم: متغیر count به عنوان شمارنده با مقدار 0 تعریف میشه.

خط پنجم: تعداد کل کاربران سایت رو (بدون توجه به نقش کاربر) به دست میاره و میریزه تو متغیر result.

خط ششم: به ازای هر نتیجه داخل result یه کاربر در نظر میگیره.

خط هفتم: بعد اگه نقش کاربر بدست اومده مساوی با مشترک بود

خط هشتم: یک شماره به شمارنده اضافه میکنه.

خط نهم: زمانی که مقدار شمارنده count به 24 (یا هر مقدار دلخواهی رسید)

خط دهم: یه کد جاوااسکریپت به صفحه میده. این کد جاوا اسکریپت یه پنجره هشدار نشون میده و وقتی پنجره هشدار بسته شد

خط یازدهم: کاربر به صفحه خانه هدایت میشه.

خط آخر: به وردپرس میگه هر وقت داشتی یه صفحه رو درست میکردی این تابع من رو اجرا کن

ممنون میشم من رو از نتیجه کد با خبر کنید

ممنون از پاسختون

من دوتا مشکال دارم

2.وقتی ظرفیت تکمیل شده (بعضی اوقات) باز ثبت نام انجام میگیره

2.وقتی مثال ظرفیت 24 نفر تکمیل میشه فرم ثبت نام باز میاد، می خوام وقتی ظرفیت تکمیل شد دیگه این صفحه نیاد یه صفحه دیگه بیاد و بگه ظرفیت تکمیل شده(کلا اون خط 10 اجرا نمیشه)

آدرس سایت:

http://naseimpress.vvs.ir/

ویرایش شده توسط reza_yki
لینک به ارسال

سلام

http://wordpress.sta...number-of-users ای مطلب رو هم بخونید کمکتون می کنه.

+ با افزونه Role Manager هم فکر کنم بشه محدودیت اعمال کرد.

میشه کمی توضیح بدید که چی کار کنم؟

لینک به ارسال

من راهش رو می گم کد نویسیش با خودتون چون نمی رسم

یک پست متا برای صفحه فرم می سازید که ورودیش را از صفحه ی قالب فرم می گیره

بعد در اکشن فرم وقتی ثبت نام قراره تایید بشه اون متا پست را می خونید و یکی ازش کم می کنید و به روز رسانیش می کنید

در صفحه که کدهای نمایش فرم قرار می گیرند (که متا پست مربوط به اونه) قبل از فرم یک شرط می گذارید که متا پست را بخواند و اگر بزرگتر یا مساوی صفر بود فرم را نمایش دهد

اگر اشتباه نکرده باشم

شما در واقع کاربر برای سایتتون ایجاد نمی کنید برای یک دوره دارید ثبت نام می کنید پاسخ های دوستان مربوط به کاریران در وردپرسه و وقتی کاربر از طریق ریجستری فرم ثبت نام کنه

لینک به ارسال

من راهش رو می گم کد نویسیش با خودتون چون نمی رسم

یک پست متا برای صفحه فرم می سازید که ورودیش را از صفحه ی قالب فرم می گیره

بعد در اکشن فرم وقتی ثبت نام قراره تایید بشه اون متا پست را می خونید و یکی ازش کم می کنید و به روز رسانیش می کنید

در صفحه که کدهای نمایش فرم قرار می گیرند (که متا پست مربوط به اونه) قبل از فرم یک شرط می گذارید که متا پست را بخواند و اگر بزرگتر یا مساوی صفر بود فرم را نمایش دهد

اگر اشتباه نکرده باشم

شما در واقع کاربر برای سایتتون ایجاد نمی کنید برای یک دوره دارید ثبت نام می کنید پاسخ های دوستان مربوط به کاریران در وردپرسه و وقتی کاربر از طریق ریجستری فرم ثبت نام کنه

خیلی ممنون از استاد گرامی

کسی هس زحمت گفته ایشون رو بکشه من زیاد کد بلد نیستم

پست متا چیه؟ :huh:

ویرایش شده توسط reza_yki
لینک به ارسال

کاری که می خواهید بکنید کار حرفه ای و سختیه

و روش استفاده از فرم تماس با ما براش ابتدایی و نا مناسبه باید یک برنامه نویس حتما براتون آنالیز و کدنویسیش کنه تا هم بشه از ثبت نام ها ورودی و خروجی های مناسب گرفت و هم تعداد ثبت نام کنندگان و حتی شهریه ها رو مدیریت کرد اگر نیاز بود از طریق کوئری آزمون آنلاین برگزار کرد یا کارنامه صادر کرد و ... توصیه می کنم یکبار هزینه کنید و راحت شوید تا صدها بار معطل و گرفتار بشید و آخرش هم چیز مناسبی نداشته باشید

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...