neda

عدم انتقال در موقع اشتباه بودن اطلاعات ورودی به صفحه دیگر .

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

سلام و خسته نباشید فراوان .

ببخشید این تاپیک را راه انداختم چون نمی دونستم چی جستجو کنم و جستجو هام نتیجه نداشت برای همین تصمیم گرفتم دوباره مزاحم اساتید بشم .

من برای سایتم می خوام قسمت ثبت نام بزارم ، برای همین طبق آموزش ها از صفحه page.php کپی گرفتم و اسمش را تغییر دادم .

بعد از اون بهش اسم دادم .


<?php
/*
Template Name: صفحه ورود
*/
?>

قسمت the_content('') را حذف کردم و فرم ورود وردپرس را گزاشتم :


<form action="<?php bloginfo('url'); ?>/wp-login.php" method="post">
<label for="user_login">شناسه : <input type="text" name="log" id="log" size="25" dir="ltr"></label>
<br>
<label for="user_pass">گـذرواژه : <input type="password" name="pwd" id="pwd" size="25" dir="ltr"></label>
<br>
<input type="submit" name="wp-submit" id="wp-submit" class="button-primary" value="<?php _e('ورود'); ?>" tabindex="100" />
<label for="rememberme"><input name="rememberme" type="checkbox" id="rememberme" value="forever" tabindex="90" /> مرا به خاطر بسپار</label>
</form>

تا اینجا هیچ مشکلی نیست .

ولی وقتی یک کاربر در سایت عضو نشده باشه و یا اطلاعات را اشتباه وارد کنه وارد همون صفحه وردپرس میشه ، من می خوام این جوری نباشه و اگه اطلاعات اشتباه بود وارد همین صفحه ای که ساختم بشه و اونجا اگه امکانش بود بگه اشتباه هست و اگه هم نبود نگه اما به هیچ عنوان وارد صفحه وردپرس نشه .

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

تشکر ، پیشاپیش یلدای همتون هم مبارک .

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


لینک به پست

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

قبل از فرم (ابتدای کد فایل) با تابع wp_signon ببینید کاربر میتواند لاگین شود یا نه

http://codex.wordpress.org/Function_Reference/wp_signon

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


لینک به پست

سلام .

مرسی آقا پاسا ولی :

من چیزی ازش نفهمیدم .

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

من می خوام اگه فیلد ها را اشتباه وارد کردند به جای این که منتقل بشند به wp-login.php توی همون صفحه ای که خودم ساختند بموند و اونجا ارور را بهشون نشون بده .

میشه راهنمایم کنید باید چی کار کنم ؟؟

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

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


لینک به پست

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

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

اگر صفحه لاگ این را بخاطر شکل صفحه نمی پسندید می تونید کاملا شخصی سازیش کنید و اگر بخاطر امنیته که این صفحه امنیتش خیلی بالاست و در ضمن هیچ هکری در حهان وجود نداره که کد فرم های وردپرس را حفظ نباشه یا نشانی صفحه ورودش رو ندونه بگذریم از اینکه اغلب هکرهای حرفه ای اصلا نیازی به این صفحه ندارند و از طریق دیتا ها و منافذی که باز می کنند نفوذ می کنند

برای شخصی سازی صفحه ورود بخونید:

[sharedmedia=tutorials:tutorials:369]

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


لینک به پست

سلام .

مرسی آقای فخار عزیز .

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

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

http://www.graphicha.com/login-2/

http://www.graphicha.com/register-2/

مشاهده کنید فرم ها توی خود وب سایت هست و اگه یکی از فیلد های فرم های ورود یا ثبت نام را اشتباه وارد کنی توی همین صفحه ارور را بهت نشون میده و وارد صفحه wp-login.php نمیشه .

من هم می خواهم اینجوری باشه .

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


لینک به پست

پیوندی که برای شخصی سازی گذاشته بودم رو بخونید

کم درد سر ترین راه اینه که از افزونه استفاده کنید

http://wordpress.org/plugins/theme-my-login/

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

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

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


لینک به پست

سلام .

مرسی آقا پاسا ولی :

من چیزی ازش نفهمیدم .

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

من می خوام اگه فیلد ها را اشتباه وارد کردند به جای این که منتقل بشند به wp-login.php توی همون صفحه ای که خودم ساختند بموند و اونجا ارور را بهشون نشون بده .

میشه راهنمایم کنید باید چی کار کنم ؟؟

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

اکشن فرم رو خالی کنید

و کد زیر رو قبل از فرم قرار دهید


<?php
if(isset($_POST['wp-submit'])){
$creds = array();
$creds['user_login'] = $_POST['log'];
$creds['user_password'] = $_POST['pwd'];
$creds['remember'] = true;
$user = wp_signon( $creds, false );
if ( is_wp_error($user) )
echo $user->get_error_message();
else
echo "success login";
}
?>

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


لینک به پست

سلام .

واقعا یک دنیا ممنون اقا پارسا ، خیلی خیلی خیلی خوشحالم کردی ، داشتم کلا نا امید می شدم .

اما چند نکنه :

موقع لاگین کردن اگه یوزر و پس ورد را اشتباه بزنی خطا میده که : " خطا: شناسه معتبر نیست. رمزتان را فراموش کرده‌اید؟ " . ( چجوری این لینک فراموشی را حذف کنم یا منتقل کنم به صفحه خودم ؟

همین کار را برای ثبت نام هم کردم ، اما خطا نمیده و صفحه ریفرش میشه . ( برای ثبت نام همین جور هست یا من جایی اشتباه کردم یا کد متفاوت داره ) .

کد هایی که برای ثبت نام استفاده کردم این هست :


<?php
if(isset($_POST['wp-submit'])){
$creds = array();
$creds['user_login'] = $_POST['log'];
$creds['user_password'] = $_POST['pwd'];
$creds['remember'] = true;
$user = wp_signon( $creds, false );
if ( is_wp_error($user) )
echo $user->get_error_message();
else
echo "soccess login";
}
?>
<form name="registerform" id="registerform" method="post">
<p>
<label for="user_login">شناسه : <input type="text" name="user_login" id="user_login" class="input" value="" size="25" /></label>
</p>
<p>
<label for="user_email">ایــمـیـل : <input type="text" name="user_email" id="user_email" class="input" value="" size="25" /></label>
</p>
<p id="reg_passmail">رمز با نامه برای شما فرستاده خواهد شد.</p>
<br class="clear" />
<input type="hidden" name="redirect_to" value="" />
<input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="نام‌نویسی" />
</form>

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


لینک به پست

با دستور str_replace خروجی خطا را تغییر دهید

برای ساخت کاربر

http://codex.wordpress.org/Function_Reference/wp_create_user

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


لینک به پست

سلام .

برای تغییر متن باید از این روش استفاده کنم درسته :


function change_post_to_article( $translated )
{
$translated = str_replace( 'مشخصات', 'تغيير مشخصات', $translated );
return $translated;
}

ولی من می خوام اون لینک ادامه را حذف کنم ، چه جوری باید اون لینک را حذف کنم ؟

در مورد کد های ثبت نام هم هرچی گشتم و تغییر دادم عمل نکرد . هر چی تغغیر می دم خطا می ده که ( پسورد را وارد کنید و ...) این 2 تا مشکل را برای من حل کنید بزرگ ترین کمک را به من کردید .

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


لینک به پست

حذف لینک

http://stackoverflow...string-with-php

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

برای ثبت نام هم. کد همون صفحه تابع رمز رو تولید میکند


$user_id = username_exists( $user_name );
if ( !$user_id and email_exists($user_email) == false ) {
$random_password = wp_generate_password( $length=12, $include_standard_special_chars=false );
$user_id = wp_create_user( $user_name, $random_password, $user_email );
} else {
$random_password = __('User already exists. Password inherited.');
}

فقط باید متغییرها را برابر نام فیلد ارسالی کنید

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


لینک به پست

سلام مجدد .

اقا پارسا نشد .

لینکی که گزاشته بودید وقتی توی فانکشن می زارم کلا خطا میده و سایت باز نمیشه .

این کد هم اصلا موقع ساخت یوزر اگه یوزر تکراری باشه یا ایمیل اشباه باشه یا .. اصلان خطا نمی ده و موفع ساخت اکانت هم هیچ پیغامی نمیده ...

لطفا کمکم کنید ...

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


لینک به پست

مشکل ثبت نام و فرم را حل کردم فقط مونده حذف لینک فراموشی گذرواژه که موقع ثبت نام میده ...

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

لطفا راهنماییم کنید ..

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


لینک به پست

خطا نمیدهد؟

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

در حالت else میتوانید پیام را نمایش دهید

برای حذف لینک

از تابع strip_tags استفاده کنید

http://stackoverflow.com/questions/3830717/how-to-remove-a-link-from-content-in-php?answertab=active#tab-top

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


لینک به پست

مجددا صفحه سفید و پیغام خطا در کد ها را نمایش داد .

فکر نکنم این کد ها برای وردپرس باشه هر کاریش می کنم نمیشه !!!

ویرایش شده در توسط neda

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


لینک به پست

مجددا صفحه سفید و پیغام خطا در کد ها را نمایش داد .

فکر نکنم این کد ها برای وردپرس باشه هر کاریش می کنم نمیشه !!!

حتما اشتباه کد قرار میدی

یه حرف اضافه کم باعث این مشکلات میشه دوباره با دقت انجام دهید

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


لینک به پست

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط armakcell
      با سلام بنده در سایتم میخواستم یک ابزارک قرار بدم مانند ابزارک این سایت
      http://powerturk.ir

      اگر داخل این سایت برید در یک قسمت نوشته است آرشیو فول البوم
      بنده این ابزارک را چگونه به دست بیارم؟
      بنده یک تصویر ضمیمه میکنم در صورتی که در سایت وارد نشد

    • توسط amir_hossein
      سلام دوستان من قصد دارم چندتا اسلاید کناره هم به صورت خطی (مثلا 4 تا اسلاید) اواسط صفحه اصلی یا انتهای صفحه قرار بدم.افزونه ای میتونید بهم معرفی کنید برای اینکار؟
    • توسط amir_hossein
      سلام دوستان من قصد دارم چندتا اسلاید کناره هم به صورت خطی (مثلا 4 تا اسلاید) اواسط صفحه اصلی یا انتهای صفحه قرار بدم.افزونه ای میتونید بهم معرفی کنید برای اینکار؟
    • توسط mosi1672
      سلام 
      من یه سایتی دارم که برای همایش علمی مقالات رو با فرمی که با افزونه گرویتی فرم ساخته شده دریافت میکنم.
      خواستم بدونم آیا راهی وجود داره که امار مقالات دریافتی رو به صورت داینامیک و پویا بتونم با روی سایت اصلی نشون بدم؟ البته با ظاهر زیبا
      مثل این سایت تایپ ایران که امار پروژه ها و کاربرانش رو به صورت نمودار دایره ای نشون میده..
      این ادرس سایت :
      ادرس فرم:http://ihsc.bsbmu.ir/maghaleh/
      ادرس سایت:http://ihsc.bsbmu.ir/

      میدونم خیلی ساده گفتم ولی اگر امکان داره راهنمایی بفرمایید
    • توسط rezarnmsh
      با سلام احتیاج به طراحی یک سایت مشابه persiandivx.net با وردپرس دارم افرادی که فرصت  طراحی دارند با ایمیل *** مبلغ و زمان ان را اطلاع دهند با تشکر