PDA

View Full Version : مشکل با درج کپچا در یک فایل php



amaa_tama
جمعه 28 شهریور 1393, 16:39 عصر
با سلام

من چند روزی هست که دارم تلاش میکنم یک از بخشی از سایتم رو به کد امنیتی مجهز کنم همه چیز بخوبی پیش میره اما وقتی میخوام کد زیر ( کد اولی ) رو به کدهای فایل php اضافه کنم تا ورودی های بخش کپچا رو چک کنه صفحه سایتم یا سفید میشه یا کپچا درست کار نمیکنه .

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

کدهای کپچا :


$cap=@$_POST['txtcap'];
if(md5( $cap)== $_SESSION['key'] )
{
کدهای موجود در فایل php تابع دوم رو اینجا میذارم که صفحه متاسفانه سفید میشه .
else
echo "کد وارد شده صحیح نیست .";
}

کدهای فایل php


<?PHP

include('./common.php');
get_messages();

if ($_POST) publisher_joined($_POST);
else publisher_join('');

################################################## #############################
################################################## #############################
################################################## #############################

function publisher_join($in) {
global $s,$m;
if ($s[p_daymail]) { if ($in[daymail]) $in[daymail_checked] = ' checked'; } else { $in[hide_daymail_begin] = '<!--'; $in[hide_daymail_end] = '-->'; }
$in[styles_options] = styles_options_box($in[style]); if (!$in[styles_options]) { $in[hide_styles_begin] = '<!--'; $in[hide_styles_end] = '-->'; }
if ($s[p_rules]) { if ($in[agree]) $in[agree_checked] = ' checked'; } else { $in[hide_agree_rules_begin] = '<!--'; $in[hide_agree_rules_end] = '-->'; }
page_from_template('publisher_join.html',$in + $s);
}

################################################## #############################

function publisher_joined($in) {
global $s,$m;
foreach ($in as $k => $v) $in[$k] = trim($v);
$in = replace_array_text($in);
if ( (!$in[username]) OR (!$in[password]) OR (!$in[name]) OR (!$in[email]) ) $problem[] = $m[missingfield];
if (!eregi("^[a-z1-9]{6,10}$",$in[username])) $problem[] = $m[wrongusername];
if (!eregi("^[a-z0-9]{6,15}$",$in[password])) $problem[] = $m[wrongpassword];
if (strlen ($in[name]) > 255) $problem[] = $m[longname];
if (!check_email($in[email])) $problem[] = $m[wrongemail];
if (strlen ($in[email]) > 255) $problem[] = $m[longemail];
if ($a=try_blacklist($in[email],'p','email')) $problem[] = $a;
$q = dq("select count(*) from $s[pr]p_users where username = '".mysql_real_escape_string($in[username])."'",1); $data = mysql_fetch_row($q);
if ($data[0]) $problem[] = $m[usernameused];
if (($s[p_rules]) AND (!$in[agree])) $problem[] = $m[agree_rules];

if ($s[p_one_account])
{
$q = dq("select count(*) from $s[pr]p_users where email = '".mysql_real_escape_string($in[email])."'",1); $data = mysql_fetch_row($q);
if ($data[0]) $problem[] = $m[email_used];
}

if ($problem) { $in[info] = eot($m[errors],implode('<br>',$problem)); publisher_join($in); }

$password = md5($in[password]);
dq("insert into $s[pr]p_users values(NULL,'$in[username]','$password','".mysql_real_escape_string($in[name])."','$in[email]','','$s[cas]',0,'$s[p_a_accept]','$in[daymail]','$in[style]','','','','','','','$s[p_p_minimal]',0,0,0,0,0,0)",1);
$n = mysql_insert_id();
if ($s[p_inew])
{ $in[useremail] = $in[email];
mail_from_template('admin_publisher_joined.txt',$i n);
}
if ($s[p_a_accept])
{ $in[to] = $in[email];
mail_from_template('publisher_joined.txt',$in);
}
$q = dq("select * from $s[pr]p_users where n = '$n'",1);
$data = mysql_fetch_assoc($q); $data[password] = $in[password];
page_from_template ('publisher_joined.html',$data + $s);
}
################################################## #############################
################################################## #############################
################################################## #############################
?>

wallfa
شنبه 29 شهریور 1393, 15:38 عصر
به نظرم بهتر از http://www.google.com/recaptcha/intro/index.html استفاده کنی ، چون همه کپچا ها راحت خوانده میشن :)

amaa_tama
شنبه 29 شهریور 1393, 19:46 عصر
به نظرم بهتر از http://www.google.com/recaptcha/intro/index.html استفاده کنی ، چون همه کپچا ها راحت خوانده میشن :)

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

wallfa
شنبه 29 شهریور 1393, 20:11 عصر
واقعا باید دقیقا ببینم چه اتفاقی میفته اینطور نمیشه نظر داد . wallfa_hm

amaa_tama
شنبه 29 شهریور 1393, 21:45 عصر
واقعا باید دقیقا ببینم چه اتفاقی میفته اینطور نمیشه نظر داد . wallfa_hm

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

amaa_tama
شنبه 05 مهر 1393, 01:10 صبح
کسی از دوستان نیست که کمکم کنه ؟

amaa_tama
شنبه 05 مهر 1393, 01:33 صبح
خدا رو شکر بالاخره خودم حلش کردم رفت . از تمامی دوستان ممنون .