abolfazln

گرفتن یک سری اطلاعات از فرم

18 پست در این موضوع قرار دارد

سلام

اين اولين پست من هست در اين انجمن

يک سوال مهم داشتم در رابطه ي گرفتن value يک فرم از نوع راديو :

من يک جدول دارم به نام data

اين جدول فيلد هاي زير را داره:


ID
name
price

من با کد زير اطلاعات جدول بالا رو گرفتم و اون ها رو در فرم از نوع Radio Button نمايش دادم:


<script>
function set_pay(pay)
{document.getElementById('paydiv').innerHTML = "قيمت : "+pay;}
</script>
<?php
global $table_prefix;
$query = mysql_query("SELECT * FROM {$table_prefix}data");
while($row = mysql_fetch_assoc($query))
{echo "<input type='radio' onclick='set_pay(".$row['price'].")' name='dataform' value='".$row["ID"]."'>{$row["name"]}</br>";}
echo "<div id='paydiv'>قيمت :</div>";
?>

فرض ميکنيم خروجي کد بالا به صورت HTML به شکل زير باشه:


<input type='radio' onclick='set_pay(5000)' name='dataform' value=1'>نقره اي</br>

<input type='radio' onclick='set_pay(8000)' name='dataform' value='2'>طلايي</br>

بعد وقتي کاربر روي يکي از radio button هاي فرم کليک ميکنه و روي دکمه submit کليک ميکنه سه تا فيلد از جدول data که در بالا گفتم رو به صفحه فلان ارسال کنه

يعني مثلا اگه روي راديو باتون اول کليک کنه اطلاعات زير ارسال بشه


id = 1
name = نقره اي
price = 5000

چطوري ميشه کار هاي بالا رو انجام داد؟

0

به اشتراک گذاری این پست


لینک به پست

تو قسمت آخر , خب وقتی submit میکنید , value هر رادیو باتن که همون آیدی هست ارسال میشه . با یک سلکت میشه name و price رو هم درآورد .

ولی اگه منظورتون اینه که بدون submit انجام بشه , خوب باید از آجاکس استفاده بشه.

2

به اشتراک گذاری این پست


لینک به پست

به انجمن خوش امدید

شما میتوانید تمام مقادیر را در value input قرار دهید

و با حرفی جدا کنید

مثال:

5000|2|blue

سپس با تابع explode مقادیر را جدا و بررسی کنید

3

به اشتراک گذاری این پست


لینک به پست

به انجمن خوش امدید

شما میتوانید تمام مقادیر را در value input قرار دهید

و با حرفی جدا کنید

مثال:

5000|2|blue

سپس با تابع explode مقادیر را جدا و بررسی کنید

سلام

من زیاد آشنایی با پی اچ پی ندارم

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

تشکر.

0

به اشتراک گذاری این پست


لینک به پست

سلام

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


$all_data = $row['ID'].'|'.$row['name'].'|'.$row['price'];

تشکر

0

به اشتراک گذاری این پست


لینک به پست

من فکر می کنم فرمتون یک ایراد داره یا من درست متوجه نشدم یک فیلد معمولا دارای یک ثابت و یک متغیره تا بتونه فیلد باشه ثابت فیلد هم که نیازی به ارسال نداره کافیه متغییر یا value پست بشه به name مربوطه این گرزینه سوم چطو.ری به وجود می آد البته در فرم شما به نظر من قیمت می تونه value باشه و id یک و دو اضافیه می شه روشن کنید این اعداد قراره چه چیزی را مشخص کنند

اگر آی دی ها ضریب تعداد هستند هم می تونند قبل از ارسال در قیمت ضرب بشند و هم می تونند فیلدی مجزا به نام تعداد داشته باشند تا در اسناد درج بشه و بشه راحت موجودی انبار گرفت و اگر آی دی شناسایی کالا هستند که باز هم نمی تونند متغییر باشند و به عنوان ثابت می تونند به name اضافه بشند

1

به اشتراک گذاری این پست


لینک به پست

من فکر می کنم فرمتون یک ایراد داره یا من درست متوجه نشدم یک فیلد معمولا دارای یک ثابت و یک متغیره تا بتونه فیلد باشه ثابت فیلد هم که نیازی به ارسال نداره کافیه متغییر یا value پست بشه به name مربوطه این گرزینه سوم چطو.ری به وجود می آد البته در فرم شما به نظر من قیمت می تونه value باشه و id یک و دو اضافیه می شه روشن کنید این اعداد قراره چه چیزی را مشخص کنند

اگر آی دی ها ضریب تعداد هستند هم می تونند قبل از ارسال در قیمت ضرب بشند و هم می تونند فیلدی مجزا به نام تعداد داشته باشند تا در اسناد درج بشه و بشه راحت موجودی انبار گرفت و اگر آی دی شناسایی کالا هستند که باز هم نمی تونند متغییر باشند و به عنوان ثابت می تونند به name اضافه بشند

سلام

دارم پلاگین اعضای ویژه رو به درگاه پی لاین متصل میکنم

id شناسه عضویت است

name نام نوع عضویت است

price قیمت عضویت است

id رو میخوام برای اینکه با اینکه با id کاربر insert کنم در جدول vip-users

name رو میخوام برای نمایش آن بعد از پرداخت موفق

price رو میخوام برای درگاه پرداخت

فقط این کد رو نوشتم تا این 3 رو ترکیب کنم و بعد از ارسال اون ها رو تجزیه کنم و بعد استفاده کنم

مشکلم اینه که چطور value رادیو باتون رو بگیرم و 3 تا کد رو جدا کنم


$all_data = $row['ID'].'|'.$row['name'].'|'.$row['price'];

فکر کنم با کد زیر بشه مقدار value را گرفت:


$post['نام فرم']

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

سه تا رادیو باتن , باید یک نام داشته باشند با value های مختلف که آیدی رو شما قرار دادید بعنوان value

باید بنویسید


$_post['dataform']

که dataform نام رادیوباتن هست که شما انتخاب کردید .

اینطوری رادیوباتنی که انتخاب کردید , value اش گرفته میشه.

ویرایش شده در توسط pary_daryayi
1

به اشتراک گذاری این پست


لینک به پست

سلام

سه تا رادیو باتن , باید یک نام داشته باشند با value های مختلف که آیدی رو شما قرار دادید بعنوان value

باید بنویسید


$_post['dataform']

که dataform نام رادیوباتن هست که شما انتخاب کردید .

اینطوری رادیوباتنی که انتخاب کردید , value اش گرفته میشه.

ببین کد زیر درسته؟


if($_POST['submit_payment']) {
if($_POST['user_name'] && $_POST['vip_roles']) {
$str = $_POST['vip_roles'];
print_r(explode('|', $str, 3));
}
}

با کد بالا مقدار فیلد به نام user_name رو گرفتم و بعدش مقدار value رادیو باتون و بعد رادیو باتون و میخوام از شکل


5000|2|blue

جدا کنم و هر کدوم داده های بالا رو استفاده کنم

لطفا کد بالا رو برام اصلاح کنید.

0

به اشتراک گذاری این پست


لینک به پست

ببینید مگه هر نوع عضویت قیمت خاص به خودش رو نداره؟

اگر داره نیازی نیست در فرم تکرار بشه شما می تونید در لیبل نوع عضویت و قیمت را کنار هم نمایش دهید و اگر id عضویت شماره ایست که بصورت خودکار پر می شود می تواند یک input با type=hidden باشد و در داخل فرم جاسازی شود تنها چیزی که لازمه کاربر خودش انتخاب کنه همون نوع و قیمته که می شه یک فیلد و می تونید قیمت را دوره ای کنید و یک فیلد هم برای دوره بگذارید که عددش در عدد قیمت ضرب می شه

برای شرطتون هم می تونید از


if(isset($_POST['any']))
{
....
}
else
{
...
}

استفاده کنید که صفحه بی ارور لود بشه

1

به اشتراک گذاری این پست


لینک به پست

سلام

دفعه اول این کارو کردم

ولی بهتره هر سه دسته اطلاعات رو با هم به صورت زیر ترکیب کنم و در value بریزم و اون رو ارسال کنم و بعد در صفحه اصلی مقدار value را بگیرم و سه دسته اطلاعات را جدا کنم و استفاده کنم


1|طلایی|50000

اولی که id هست و دومی نام عضویت هست و بعدی قیمت هست

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

یک مثال کامل با کد برایم بنویسید

0

به اشتراک گذاری این پست


لینک به پست

کدی شبیه


<?php
if (is_user_logged_in()) {
global $user_ID;?>
<form method="post" action="آدرس اکشن">
<label id="Label1"> گروه برنزی مبلغ 1000 ریال
<input name="vip" type="radio" value="c" />
</label>
<label id="Label1"> گروه نقره ای مبلغ 10000 ریال
<input name="vip" type="radio" value="b" />
</label>
<label id="Label1"> گروه طلایی مبلغ 100000 ریال
<input name="vip" type="radio" value="a" />
</label>
<input name="userid" type="hidden" value="<?php echo $user_ID;?>"/>
<input type="submit" />
</form>
<?php };?>


و در اکشن


<?php
if(isset($_POST['vip'])) {
if($_POST['vip']=='a') :
echo 'گروه طلایی مبلغ 100000 ریال';
else
if($_POST['vip']=='b') :
echo 'گروه نقره ای مبلغ 10000 ریال';
else
echo 'گروه برنزی مبلغ 1000 ریال';
endif;
echo 'شناسه کاربر=' . $_POST['userid'];
};
?>

3

به اشتراک گذاری این پست


لینک به پست

$val = explode("|", $_POST['val']);
echo $val[0];
echo $val[1];

3

به اشتراک گذاری این پست


لینک به پست

سلام

باز هم مشکل داره

کد زیر رو ببین:


<script>
function set_pay(pay)
{
document.getElementById('paydiv').innerHTML = "قيمت : "+pay;
}
</script>
<?php
global $wpdb, $table_prefix;

$query = mysql_query("SELECT * FROM {$table_prefix}vip_roles");
while($row = mysql_fetch_assoc($query))
{
// get all data and send
$all_data = $row['ID'].'|'.$row['name'].'|'.$row['credit_required'];
echo "<input type='radio' onclick='set_pay(".$row['credit_required'].")' name='vip_roles' value='".$all_data."'>{$row["name"]}</br>";
}
echo "<div id='paydiv'>قیمت :</div>";
?>

هر کار میکنم id و name رو نمیتونم بگیرم

این هم کد اکشن :


if($_POST['submit_payment']) {
if($_POST['user_name'] && $_POST['vip_roles']) {
$data = explode("|", $_POST['vip_roles']);
$vip_role = $data[0];
add_option('vip_roles_' . $current_user->ID, $vip_role);
update_option('vip_roles_' . $current_user->ID, $vip_role);
//=========
$vip_price = $data[2];
add_option('vip_price_' . $current_user->ID, $vip_price);
update_option('vip_price_' . $current_user->ID, $vip_price);
//=========
$vip_name = $data[1];
add_option('vip_name_' . $current_user->ID, $vip_name);
update_option('vip_name_' . $current_user->ID, $vip_name);
}}

چکار کنم دوستان خیلی راه ها رو انتخاب کردم . من میخوام id نوع عضویت و id کاربر وردپرس رو باهم بدست بیارم که در query زیر وارد کنم اما id نوع عضویت مقدارش صفر وارد میشه


$user_ID = $current_user->ID;
$role_ID = get_option('vip_roles_' . $current_user->ID);
$role_name = get_option('vip_name_' . $current_user->ID);

global $wpdb, $table_prefix;
$check_name = $wpdb->query("SELECT * FROM {$table_prefix}vip_users WHERE username_ID = '".$user_ID."'");
if(!$check_name) {
$check = $wpdb->query("INSERT INTO {$table_prefix}vip_users (ID, username_ID, user_role) VALUES ('".$user_ID."', '".$user_ID."', '".$role_ID."')");
if($check) {
echo "<div class='success-payment'><p>" . sprintf(__('<br /> نوع کاربری شما: %s ', 'wp-vip'), $role_name) . sprintf(__('<br /> شماره رهگيري: %s ', 'wp-vip'), $payline->RefNumber)."</div></p>";
}

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

0

به اشتراک گذاری این پست


لینک به پست

والا من اصلا متوجه نشدم

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

باز هم پیشنهاد می کنم به نمونه ای که عرض شد نگاه کنید و تستش کنید اگر هم فیلد دیگه ای لازمه اونرو هم اضافه کنید در قالب یک فیلد جدا

مفهوم فیلد داشتن یک نام و یک ولوه نه بیشتر

2

به اشتراک گذاری این پست


لینک به پست

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

"id نوع عضویت" چی هست؟

2

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

کدي شبيه


<?php
if (is_user_logged_in()) {
global $user_ID;?>
<form method="post" action="آدرس اکشن">
<label id="Label1"> گروه برنزي مبلغ 1000 ريال
<input name="vip" type="radio" value="c" />
</label>
<label id="Label1"> گروه نقره اي مبلغ 10000 ريال
<input name="vip" type="radio" value="b" />
</label>
<label id="Label1"> گروه طلايي مبلغ 100000 ريال
<input name="vip" type="radio" value="a" />
</label>
<input name="userid" type="hidden" value="<?php echo $user_ID;?>"/>
<input type="submit" />
</form>
<?php };?>


و در اکشن


<?php
if(isset($_POST['vip'])) {
if($_POST['vip']=='a') :
echo 'گروه طلايي مبلغ 100000 ريال';
else
if($_POST['vip']=='b') :
echo 'گروه نقره اي مبلغ 10000 ريال';
else
echo 'گروه برنزي مبلغ 1000 ريال';
endif;
echo 'شناسه کاربر=' . $_POST['userid'];
};
?>

سلام

اين پلاگين طوري هست که نوع عضويت ها رو کاربر در پنل مديريت وردپرس خودش اضافه ميکنه و به اين روشي که شما گفتيد نميشه پياده کرد.

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

"id نوع عضويت" چي هست؟

ببين اصلا من از اين کارها چند تا تصوير ميگيرم تا بيشتر متوجه بشين:

post-2119-0-86476300-1370338458_thumb.jp

اين ليست نوع عضويت هايي که کاربر ايجاد ميکنه

post-2119-0-33104000-1370338454_thumb.jp

اين فرم عضويت و پرداختي که مشترک با اون خودشو تبديل به کاربر vip ميکنه

post-2119-0-06439600-1370338456_thumb.jp

اين فرم بعد از پرداخت موفق هست که نام نوع عضويت در اون نمايش داده نشده يعني اطلاعات فيلد به درستي گرفته نشده

post-2119-0-87844300-1370338463_thumb.jp

اين هم ليست اعضاي vip در پنل مديريت که ID به درستي در query وارد نشده و در نتيجه خالي است

post-2119-0-70486100-1370338950_thumb.jp

این هم تصویر phpmyadmin که مقدار id صفر هست

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

کد فرم پرداخت:


<script>
function set_pay(pay)
{
document.getElementById('paydiv').innerHTML = "قيمت : "+pay;
}
</script>
<?php
global $wpdb, $table_prefix;

$query = mysql_query("SELECT * FROM {$table_prefix}vip_roles");
while($row = mysql_fetch_assoc($query))
{
// get all data and send
$all_data = $row['ID'].'|'.$row['name'].'|'.$row['credit_required'];
echo "<input type='radio' onclick='set_pay(".$row['credit_required'].")' name='vip_roles' value='".$all_data."'>{$row["name"]}</br>";
}
echo "<div id='paydiv'>قیمت :</div>";
?>

این هم کد اکشن :


if($_POST['submit_payment']) {
if($_POST['user_name'] && $_POST['vip_roles']) {
$data = explode("|", $_POST['vip_roles']);
$vip_role = $data[0];
add_option('vip_roles_' . $current_user->ID, $vip_role);
update_option('vip_roles_' . $current_user->ID, $vip_role);
//=========
$vip_price = $data[2];
add_option('vip_price_' . $current_user->ID, $vip_price);
update_option('vip_price_' . $current_user->ID, $vip_price);
//=========
$vip_name = $data[1];
add_option('vip_name_' . $current_user->ID, $vip_name);
update_option('vip_name_' . $current_user->ID, $vip_name);
}}

این هم کد بعد از پرداخت موفق با user_ID و role_ID کاربر رو در جدول vip_users اضافه میکنه اما انگار role_ID وارد نمیشه


$user_ID = $current_user->ID;
$role_ID = get_option('vip_roles_' . $current_user->ID);
$role_name = get_option('vip_name_' . $current_user->ID);

global $wpdb, $table_prefix;
$check_name = $wpdb->query("SELECT * FROM {$table_prefix}vip_users WHERE username_ID = '".$user_ID."'");
if(!$check_name) {
$check = $wpdb->query("INSERT INTO {$table_prefix}vip_users (ID, username_ID, user_role) VALUES ('".$user_ID."', '".$user_ID."', '".$role_ID."')");
if($check) {
echo "<div class='success-payment'><p>" . sprintf(__('<br /> نوع کاربری شما: %s ', 'wp-vip'), $role_name) . sprintf(__('<br /> شماره رهگيري: %s ', 'wp-vip'), $payline->RefNumber)."</div></p>";
}

ویرایش شده در توسط abolfazln
0

به اشتراک گذاری این پست


لینک به پست

مشکل شما مشخص نیست

با توجه به پست اول کدها داده شده است

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط amirhosein-wp
      با سلام خدمت اساتید محترم و دوستان گرامی
      بنده در حال طراحی قالب وردپرس هستم. مشکل بنده اینجاست که هنگام جستجوی ajax، فرایند بدین شکل است که صفحه تیره شده و نتایج به صورت باکس نمایش داده شوند. اما هنگام اسرول نتایج کانتنت صفحه اصلی که پشت نتایج قرار میگیره هم اسرول میشه، میخوام این اسکرول تا پایین فوتر بیاد و فووتر بعدش بچسبه به صفحه و دیگه اسکرول نشه. اگه انیمیشن بهتری هم سراغ دارید بگید بی زحمت تا پیاده سازیش کنم. کد های صفحه زیاده و لینک آنلاین پروژه رو براتون قرار دادم. سپاس فراوان.
      برای شروع عدد 3 را در فرم جستجوی هدر سرچ کنید.
      نامی کنترل
    • توسط sydvza
      سلام من دوتا لینک دارم میخوام در htaccess ساده کنم چطور باید این کار انجام بدم؟
      و چکار کنم که بعد تغییر ارور 404 ندهد.
      my-account/dashboard?pagename=upload&type=554
      products/woocommerce-theme/?tab=discussion
    • توسط vazizi69@yahoo.com
      سلام وقت بخیر 
      دوستان لطفا راهنماییم کنید ممنون میشم 
      من میخوام تو سایت وردپرسی خبری ، امکانی ایجاد کنم که کاربران تو پنل کاربری شون بتونن چند تا کلمات کلیدی بنویسند 
      و  لینک هر خبری که هر کدوم از اون کلمات کلیدی داخل متنش بود رو برای کاربر ارسال کنه 
      مثلا کاربر1 کلمه کلیدی علی دایی رو ثبت میکنه و هر پستی با کلمه علی دایی منتشر شد بهش اطلاع داده میشه 
      مثلا سریعا بعد از انتشار از طریق پیامک به کاربر اطلاع بده 
      آیا افزونه ای هست که بشه ازش استفاده کرد و به این اهداف رسید ؟
      پیشنهاد شما چیه در این باره؟
    • توسط rendesharif
      با سلام 
      24 ساعت پیش در حال آپدیت تب های وبسایت بودم که اینترنت قطع شد و هنگامی که سعی کردم دوباره وارد کنترل پنل بشم دیدم صفحات ساختار خودشون رو از دست دادن و به نحوی بصورت لایت بارگزاری میشن برای حل این مشکل چیکار میتونم بکنم آیا راه حلی هست.
      تصویر قسمت لاگین هم اضافه کردم میتونید ببینید که دیگه خبری از ساختار اصلی نیست در مابقی صفحات کنترل پنل هم به همین شکل هست

    • توسط hamid.26
      سلام خسته نباشید ووکامرس فروشگاهم رو پیکربندی کردم اما دکمه ی افزودن به سبد خرید پایین محصولات نمیاد لطفاً کمک کنید بگید چطوری درستش کنم.