Milad Rafi 1294 ارسال شده در بهمن 93 گزارش بازنشر ارسال شده در بهمن 93 سلام . من یه فرم ثبت نام به صورت زیر توی سایتم استفاده میکنم و میخوام دوتا کار انجام بده 1-میخواستم کاری کنم که کابری که عضو میشه و مثلا یه یوزر به نام test وارد میکنه , با php ( اگه اشتباه نکنم با خاصیت post ) اون یوزر tset اول @linefa.me قرار بگیره و به عنوان ایمیل کاربر ثبت بشه .مثل test@linefa.meتقریبا همون ایمیل فیک میخوام هنگام ثبت نام توی شناسه کاربر ثبت بشه به خاطر این که اواتار های کاربران رو از اواتار تصادفی گرااوتار استفاده میکنم و الان کاربرایی که بدون ایمیل هستن همشون یه اواتار دارند ( نمیخوام فیلد ایمیل توی فرم نشون داده بشه)2- چجوری میشه کاربر بعد از عضویت خودکار وارد سایت بشه و نیاز به ورود نباشه؟ الان کاربر که عضو میشه سایت متن "ثبت نام با موفقیت انجام شد. میتوانید از فرم ورود بالا وارد شوید." رو نمایش میده و کابر باید خودش وارد سایت بشهکد فرم :<?php $err=null; $succ=null; global $wpdb, $PasswordHash, $current_user, $user_ID; if(isset($_POST['task']) && $_POST['task'] == 'register' ) { $pwd1 = $wpdb->escape(trim($_POST['pwd1'])); $pwd2 = $wpdb->escape(trim($_POST['pwd2'])); $username = $wpdb->escape(trim($_POST['username'])); $first_name = $wpdb->escape(trim($_POST['first_name'])); if(is_user_logged_in()) { $err = 'برای ثبت نام نباید لاگین باشید.'; } elseif( $pwd1 == "" || $pwd2 == "" || $username == "") { $err = 'لطفا تمامی فیلد های زیر را پر کنید'; } else if($pwd1 <> $pwd2 ){ $err = 'پسورد های وارد شده نا همسان هستند.'; } else { $user_id = wp_insert_user( array ('user_pass' => apply_filters('pre_user_user_pass', trim($_POST['pwd1'])), 'user_login' => apply_filters('pre_user_user_login', $username), 'first_name' => apply_filters('pre_user_first_name', $first_name), 'role' => 'subscriber' ) ); if( is_wp_error($user_id) ) { $err = 'خطا در ساخت اکانت'; } else { do_action('user_register', $user_id); $succ = 'ثبت نام با موفقیت انجام شد. میتوانید از فرم ورود بالا وارد شوید.'; } } } ?> <style> .inp-register{ border: 1px solid #cacaca; width: 300px; height: 30px; margin: 10px; font-family: 'BKoodakBold','Tahoma'; font-size: 13pt;} #box-regiter-form{ width:322px; margin:auto; margin: 50px auto 80px auto;} #btn-regi{ float: left; font-family: 'BTitrTGEBold'; font-size: 16pt; font-weight: normal; background-color: #000; color: #fff; border: 0; margin:10px; padding:0 24px; cursor: pointer;} #msg-b{ margin: 0 10px; padding: 5px; font-family: 'BYEKAN','Tahoma'; text-align: center;} .cptch_block{ margin-top: -19px !important; margin-right: 0 !important;} #cptch_input{ width: 34px !important; border: 1px solid #CACACA; height: 24px; text-align: center; font-size: 13pt !important; direction: rtl !important;} </style> <div id="box-regiter-form"> <?php if($err) echo '<div id="msg-b" style="border:1px solid red;">'.$err.'</div>'; if($succ) { echo '<div id="msg-b" style="border:1px solid rgb(15, 236, 15);">'.$succ.'</div>'; } else { ?> <center><h2>عضویت</h2><br><strong><span style="color: #ff0000;">در صورتی که عضو سایت نیستید از فرم زیر اقدام به عضویت کنید</span></strong><br><span style="color: #ff0000;">توجه کنید این اکانت سایت با اکانت لاین شما هیچ ارتباطی ندارد.و این دو از هم جدا هستند</span></strong></center> <form method="post"> <input class="inp-register" type="text" value="<?php echo $_POST['username']; ?>" name="username" id="username" placeholder="یوزر نیم|نام کاربری" /><br> <input class="inp-register" type="text" value="<?php echo $_POST['first_name']; ?>" name="first_name" id="first_name" placeholder="نام شما" /><br> <input class="inp-register" type="password" value="<?php echo $_POST['pwd1']; ?>" name="pwd1" id="pwd1" placeholder=" رمز عبور " /><br> <input class="inp-register" type="password" value="<?php echo $_POST['pwd2']; ?>" name="pwd2" id="pwd2" placeholder=" تکرار رمز عبور " /><br> <button id="btn-regi" type="submit" name="btnregister" class="button" >ثبت نام</button> <input type="hidden" name="task" value="register" /> <?php comment_id_fields(); ?> <?php do_action('comment_form', $post->ID); ?> </form> <?php } ?> </div></div><?php get_template_part('pagination'); ?></div> نقل قول لینک به ارسال
Milad Rafi 1294 ارسال شده در بهمن 93 مالک گزارش بازنشر ارسال شده در بهمن 93 (ویرایش شده) 1. قسمت اول سوال اول : این کار را باید با جاوا اسکریپت انجام دهی برای نمونه شما المان زیر را به فرمتون اضافه می نمایید: و کد زیر را به قسمت جاوا اسکریپت : $(document).ready(function(){ $("#username").keyup(function(){ var user=$("#username").val(); $("#uemail").val(user+"@linefa.me"); }); }); و در قسمت ذخیره هم به شکل زیر دریافتش می کنی : $uemail = $wpdb->escape($_POST['uemail']); قسمت دوم سوال اول : نفهمیدم منظورت چیه . سوال دوم : اینجا ممنونکد رو به صورت زیر استفاده کردم ولی کار نکرد و ایمیل ثبت نشد. قسمت های قرمز رنگ رو اضافه کدمبرای سوال دوم همیشه یه توضیح بدید که چطور استفاده کنم؟؟؟ ریاد با php اشنایی ندارم<script type='text/javascript' src='http://linefa.me/for...s.js;></script><?php $err=null; $succ=null; global $wpdb, $PasswordHash, $current_user, $user_ID; if(isset($_POST['task']) && $_POST['task'] == 'register' ) { $pwd1 = $wpdb->escape(trim($_POST['pwd1'])); $pwd2 = $wpdb->escape(trim($_POST['pwd2'])); $username = $wpdb->escape(trim($_POST['username'])); $first_name = $wpdb->escape(trim($_POST['first_name'])); $nickname = $wpdb->escape(trim($_POST['nickname'])); $uemail = $wpdb->escape($_POST['uemail']); if(is_user_logged_in()) { $err = 'برای ثبت نام نباید لاگین باشید.'; } elseif( $pwd1 == "" || $pwd2 == "" || $username == "") { $err = 'لطفا تمامی فیلد های زیر را پر کنید'; } else if($pwd1 <> $pwd2 ){ $err = 'پسورد های وارد شده نا همسان هستند.'; } else { $user_id = wp_insert_user( array ('user_pass' => apply_filters('pre_user_user_pass', trim($_POST['pwd1'])), 'user_login' => apply_filters('pre_user_user_login', $username), 'nickname' => apply_filters('pre_user_nickname', $nickname), 'first_name' => apply_filters('pre_user_first_name', $first_name), 'uemail' => apply_filters('pre_user_uemail', $uemail), 'role' => 'subscriber' ) ); if( is_wp_error($user_id) ) { $err = 'خطا در ساخت اکانت'; } else { do_action('user_register', $user_id); $succ = 'ثبت نام با موفقیت انجام شد. میتوانید از فرم ورود بالا وارد شوید.'; } } } ?> <style> .inp-register{ border: 1px solid #cacaca; width: 300px; height: 30px; margin: 10px; font-family: 'BKoodakBold','Tahoma'; font-size: 13pt;} #box-regiter-form{ width:322px; margin:auto; margin: 50px auto 80px auto;} #btn-regi{ float: left; font-family: 'BTitrTGEBold'; font-size: 16pt; font-weight: normal; background-color: #000; color: #fff; border: 0; margin:10px; padding:0 24px; cursor: pointer;} #msg-b{ margin: 0 10px; padding: 5px; font-family: 'BYEKAN','Tahoma'; text-align: center;} .cptch_block{ margin-top: -19px !important; margin-right: 0 !important;} #cptch_input{ width: 34px !important; border: 1px solid #CACACA; height: 24px; text-align: center; font-size: 13pt !important; direction: rtl !important;} </style> <div id="box-regiter-form"> <?php if($err) echo '<div id="msg-b" style="border:1px solid red;">'.$err.'</div>'; if($succ) { echo '<div id="msg-b" style="border:1px solid rgb(15, 236, 15);">'.$succ.'</div>'; } else { ?> <center><h2>عضویت</h2><br><strong><span style="color: #ff0000;">در صورتی که عضو سایت نیستید از فرم زیر اقدام به عضویت کنید</span></strong><br><span style="color: #ff0000;">توجه کنید این اکانت سایت با اکانت لاین شما هیچ ارتباطی ندارد.و این دو از هم جدا هستند</span></strong></center> <form method="post"> <input class="inp-register" type="text" value="<?php echo $_POST['username']; ?>" name="username" id="username" placeholder="یوزر نیم|نام کاربری" /><br> <input class="inp-register" type="text" value="<?php echo $_POST['first_name']; ?>" name="first_name" id="first_name" placeholder="نام شما" /><br> <input class="inp-register" type="number" value="<?php echo $_POST['nickname']; ?>" name="nickname" id="nickname" placeholder="شماره شما" /><br> <input class="inp-register" type="password" value="<?php echo $_POST['pwd1']; ?>" name="pwd1" id="pwd1" placeholder=" رمز عبور " /><br> <input class="inp-register" type="password" value="<?php echo $_POST['pwd2']; ?>" name="pwd2" id="pwd2" placeholder=" تکرار رمز عبور " /><br><input type="hidden" name="uemail" id="uemail"> <button id="btn-regi" type="submit" name="btnregister" class="button" >ثبت نام</button> <input type="hidden" name="task" value="register" /> <?php comment_id_fields(); ?> <?php do_action('comment_form', $post->ID); ?> </form> <?php } ?> </div></div><?php get_template_part('pagination'); ?></div> ویرایش شده بهمن 93 توسط LINEFA نقل قول لینک به ارسال
علی زینلی 2114 ارسال شده در بهمن 93 گزارش بازنشر ارسال شده در بهمن 93 سلام.از این روش پیش برو (آیدی های اینپوت ها رو درست کن)<input id="fval" type="text" onfocusout="myFunction()">Enter your name: <input type="text" id="fname"><script>function myFunction() { var firva = document.getElementById('fval').value; var x = document.getElementById("fname"); var sva = document.getElementById('fname').value; x.value = firva + "@linefa.ir";}</script>برای امتحان:http://onlinehtmltools.com/live-html-editor/editor.html 1 نقل قول لینک به ارسال
Milad Rafi 1294 ارسال شده در بهمن 93 مالک گزارش بازنشر ارسال شده در بهمن 93 (ویرایش شده) سلام.از این روش پیش برو (آیدی های اینپوت ها رو درست کن)<input id="fval" type="text" onfocusout="myFunction()">Enter your name: <input type="text" id="fname"><script>function myFunction() {var firva = document.getElementById('fval').value;var x = document.getElementById("fname");var sva = document.getElementById('fname').value;x.value = firva + "@linefa.ir";}</script>برای امتحان:http://onlinehtmltoo...tor/editor.htmlممنون اقای زینلی درست شدفقط امکانش نیست کاری کرد که فیلد ایمیل نشون داده نشه؟ خودم تست کردم و به جای hidden , text گزاشتم ولی کار نکرد ( فیلد ایمیل مخفی شد ولی ایمیل با نام یورر کاربر هنگام ثبت نام ثبت نشد)و این که چجوری میتونم کاری کنم کاربر بعد از عضوت خودکار وارد سایت بشه و نیاز نباشه دستی لوگ این کنه ؟؟؟ ویرایش شده بهمن 93 توسط LINEFA نقل قول لینک به ارسال
علی زینلی 2114 ارسال شده در بهمن 93 گزارش بازنشر ارسال شده در بهمن 93 ممنون اقای زینلی درست شدفقط امکانش نیست کاری کرد که فیلد ایمیل نشون داده نشه؟ خودم تست کردم و به جای hidden , text گزاشتم ولی کار نکرد ( فیلد ایمیل مخفی شد ولی ایمیل با نام یورر کاربر هنگام ثبت نام ثبت نشد)و این که چجوری میتونم کاری کنم کاربر بعد از عضوت خودکار وارد سایت بشه و نیاز نباشه دستی لوگ این کنه ؟؟؟با CSS بهش کد opacity:0; بده ، ولی بهتره که اینکار رو نکنی ، چون یه کاربر شاید خواست که بالفرض ایمیل خودش رو بذاره ، این بانک ایمیل های واقعی برات سود محسوب میشه. 1 نقل قول لینک به ارسال
Milad Rafi 1294 ارسال شده در بهمن 93 مالک گزارش بازنشر ارسال شده در بهمن 93 اها. بله درست میگید. میزارم باشهدوستان این رو چطوری میشه انجام دادچجوری میتونم کاری کنم کاربر بعد از عضویت خودکار وارد سایت بشه و نیاز نباشه دستی لوگ این کنه ؟؟؟ نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .