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

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


لینک به پست

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط shayan201680
      با سلام
      بنده یک سایت اصلی وردپرسی دارم و قرار شده که در ساب دامینشم از وردپرس استفاده کنم.
      الان میخوام کاری کنم که کاربران اگر در سایت اصلی ثبت نام کردند بتونند با همون مشخصات در ساب دامین نیز لاگین کنند و برعکس!
      ولی نمیدونم باید چکار کنم! 
      ممنون میشم اگر کسی بلده راهنمایی کنه، با تشکر... 
    • توسط Mr Mirzaei
      سلام
      من برای کانال تلگرامم به آدرس زیر به یک ادمین نیاز دارم که در ضمینه فیلم و سریال نسبتا حرفه ای باشه
      Mester_Film@
      لطفا اگه کسی میتونه بهم کمک کنه لطفا به ایدیم پیام بده:
      Alo_Mester_Film@
    • توسط Mr Mirzaei
      سلام
      من میخواستم فایل جاوا اسکریپت با پسوند js رو روی سایتم اپلود کنم ولی ارور میده
      مینویسه:
      “js 1” به‌خاطر وجود ایراد بارگذاری نشد
      متاسفانه، این نوع پرونده به دلایل امنیتی مجاز نیست.
      اگه کسی میدونه مشکلش چیه لطفا به منم بگه
    • توسط mehditalaei
      سلام
      بنده یه افزونه نیاز دارم تا برای کاربرای سایت داشبورد حرفهای بسازم و کاربر با ورود به ناحیه کاربری بتونه اونو مدیریت کنه.
    • توسط Morteza
      قوانین کلی انجمن
      1- در هنگام ثبت نام از کلمات مناسب جهت نام کاربری استفاده نمایید. نام های کاربری حاوی کلمات نامناسب ، نام های کاربری که جنبه تبلیغاتی داشته و یا نام های کاربری که نام یک سایت می باشند ، سریعا حذف خواهند شد.
      2- به دیگران احترام بگزارید. با هرگونه بی احترامی برخورد جدی و حتی منجر به قطع دسترسی کاربر خاطی خواهد شد.
      3- در انتخاب آواتر و امضا دقت کنید و از تصاویر و کلمات موهون و نامناسب استفاده ننمایید. توجه کنید که امضا هایی که حاوی تصاویر و کلمات موهون و نامناسب باشند و یا جنبه تبلیغاتی داشته باشند سریعا حذف خواهند شد و در صورت تکرار با فرد خاطی برخورد خواهد شد.
      4- برای مطالب خود از عنوان مناسب و گویا استفاده نمایید. در عنوان مطالب خود از عبارات و کلمه هایی مانند : کمک کنید ، درخواست فوری ، نیاز شدید ، تورو خدا کمکم کنید ، خیلی مهم و جملاتی شبیه به این خودداری نمایید.
      5- حتما قبل از ایجاد یک موضوع در انجمن جستجو کنید و از ایجاد مطالب تکراری خودداری نمایید.
      6- از اسپم کردن موضوعات پرهیز کنید. جهت دریافت پاسخ صبر داشته باشید. برای تشکر از دکمه تشکر استفاده کنید.
      7- فارسی بنویسید و از فینگلیش نوشتن خودداری کنید. در غیر اینصورت با فرد خاطی برخورد خواهد شد.
      8- فعالیت های تجاری را فقط در بخش مشخص شده انجام دهید و از ایجاد موضوعاتی با جنبه تجاری در دیگر بخشها خودداری نمایید. از دادن پاسخهایی که جنبه تجاری و یا تبلیغی دارند خودداری نمایید. در صورت مشاهده چنین پست هایی با فرد خاطی برخورد خواهد شد.
      9- گروه وردپرس پارسی هیچگونه مسئولیتی در مورد فعالیت های بخش تجاری ندارد و تمامی مسئولیت به عهده ایجاد کننده موضوع است.
      10-هرگونه بحث سیاسی - مذهبی در این انجمن ممنوع می باشد. هرگونه توهین و مجادله و مباحثه در مباحث دینی و سیاسی ممنوع بوده و تاپیک های اینچنینی حذف و کاربران خاطی محروم می شوند. در صورت تکرار فرد خاطی برای همیشه از انجمن اخراج می شود.
      11- ارائه شماره تماس و ایمیل جهت همکاری و یا خرید و فروش و یا هرگونه مورد دیگر بصورت عمومی در انجمن ممنوع است. جهت تبادل موارد ذکر شده از طریق پیام خصوصی اقدام کنید.
      12- هرگونه درخواست کامل سازی پوسته در انجمن ممنوع است. اگر نیاز به تکمیل کد بخش خاصی از پوسته را دارید باید درخواست خود را در یک تاپیک جدید مطرح کنید و از درخواست تکمیل کدنویسی و یا طراحی یک پوسته جدا خودداری کنید.
      13- هرگونه بحث در مورد تکمیل و اشکال زدایی پوسته های ریپ در انجمن ممنوع است. اگر نیاز به تکمیل کد بخش خاصی از پوسته را دارید باید درخواست خود را در یک تاپیک جدید مطرح کنید و از درخواست تکمیل کدنویسی و یا طراحی یک پوسته ریپ جدا خودداری کنید.
      14- هرگونه درخواست فایل/پوسته/افزونه و سایر محصولهای تجاری در انجمن ممنوع است.
      15- هرگونه پرسش و بحث درباره محصولهای تجاری در انجمن ممنوع است. پشتیبانی محصولهای تجاری به عهده سازنده/فروشنده آن است.
      بروزرسانی پنجم.