beh9am 96 ارسال شده در بهمن 93 گزارش بازنشر ارسال شده در بهمن 93 (ویرایش شده) سلام و خسته نباشیدمن یک مشکلی دارم یه فرم ارسال نظر دارم که وقتی نظر را ارسال میکنی در دیتابیس ذخیره نمیشهفرم نظرم اینه : <?phpif (realpath(__FILE__) == realpath($_SERVER['SCRIPT_FILENAME'])) exit('Access Denied');/*#############################################*/$c_status = $ite['comment'] ;if ( isset($_POST['c_act']) ) {return;$c_name = $_POST['c_name'] ;$c_email = $_POST['c_email'] ;$c_site = $_POST['c_site'] ;$c_body = $_POST['c_body'] ;$c_prv = isset($_POST['c_prv']) ? 1 : 0 ;if ( mysql_query( "INSERT INTO `ex_post_comment` VALUES ('', '$c_name', '$c_email' , '$c_site', '$c_body', now(), '$c_prv', '$c_status' , '$id', '".$C->MY_IP."' ) " ) )if ( $c_status == 1 )$body = '<center><b style="color:green">نظر شما با موفقيت به ثبت رسيد</b></center>';else$body = '<center><b style="color:green">نظر شما با موفقيت به ثبت رسيد و پس از تاييد مدير سايت قابل مشاهده خواهد بود</b></center>';else$body = '<center><b style="color:red">با عرض پوزش نظر شما به دليل برخي اشكالات ثبت نشد . لطفا دقايقي ديگر دوباره تلاش كنيد</b></center>';include( "./themes/{$C->SITE_THEME}/center.php" );}$body = '' ;$c_resm = mysql_query( "SELECT * FROM `ex_post_comment` where pid = '{$id}' and status='1' and priv='0' ORDER BY id DESC limit 100" ) ;while ( $c_ite = @mysql_fetch_array( $c_resm ) ) {preg_match('/(.*)-(.*)-(.*) (.*).*).*)/si', $c_ite['date'] ,$find ) ;if ( $c_ite['email'] || $c_ite['site'] ) {$c_link = '<div class="bot">';if ( $c_ite['email'] ) $c_link .= '<a href="mailto:'.$c_ite['email'].'">ايميل</a>';if ( $c_ite['email'] && $c_ite['site'] ) $c_link .= ' || ';if ( $c_ite['site'] ) $c_link .= '<a href="'.$c_ite['site'].'" target="_blank">سايت</a>';$c_link .= '</div>';} else $c_link = '';if ( $body == '' ) $body .= '<br><center>';$body .= ' <div class="commentbox"> <div class="top"> <div class="name">نویسنده : <span class="author">'.$c_ite['name'].'</span></div> <div class="date" >'.jdate(" l j F Y ساعت H:i:s",mktime($find[4],$find[5],$find[6],$find[2],$find[3],$find[1])).'</div> <div style="clear:both" ></div> </div> <div class="text">'.str_replace("\r\n\r\n","<br>",$c_ite['body']).'</div> '.$c_link.' </div> <div style="height:10px"></div>';}if ( $body ) {$body .= '</center>';$title = "نظر ها";include( "./themes/{$C->SITE_THEME}/main.php" );}$title = 'ارسال نظر';$body = '<style rel="stylesheet">.formbox{border: 0px solid #E0E0E0;direction:rtl;text-align:right;FONT-FAMILY: Tahoma;FONT-SIZE: 9pt;}.formbox tr:hover{color:#999}.formbox td{padding:3px 5px;}.formbox .f_input {FONT-SIZE: 9pt; FONT-FAMILY: Tahoma; HEIGHT: 22px; width:250px }.formbox .textarea {FONT-SIZE: 9pt; FONT-FAMILY: Tahoma;HEIGHT: 125px; width:100% }.commentbox{border: 1px solid #1397C3;direction:rtl;text-align:right;color:black;FONT-FAMILY: Tahoma;FONT-SIZE: 8pt;padding:2px;width:95%;}.commentbox .top {background-color: #1397C3;padding-top:3px;padding-bottom:3px;width:100%;}.commentbox .name {width:49%;float:right;FONT-SIZE: 8pt;color:#fff;text-align:right;padding-right:5px}.commentbox .author {color:#fff;}.commentbox .date {width:49%;float:left;FONT-SIZE: 8pt;color:#fff;text-align:left;padding-left:2px}.commentbox .text {padding:5px 10px;text-align:right;FONT-SIZE: 9pt;width:99%;}.commentbox .bot {width:99%;text-align:left;padding-bottom:3px;}.commentbox .bot a{color:black}.commentbox .bot a:hover{color:silver}</style><SCRIPT language="javascript">function IsValidForm(f) {if (f.c_name.value =="") { alert("ورود نام نويسنده نظر الزاميست") ; f.c_name.focus (); return false;}if (f.c_body.value =="") { alert("ورود متن نظر الزاميست") ; f.c_body.focus (); return false;}if (f.c_body.value.length >2000 ) { alert("تنها مجاز به ورود دو هزار حرف در متن نظرات هستيد") ; f.c_body.focus (); return false;}}</SCRIPT>';$body .= '<a href="#" id="comment"></a><form method="post" onsubmit="return IsValidForm(this);"><input type="hidden" name="c_act" value="add"><table class="formbox" dir="rtl" border="0" cellpadding="2" align="center"><tr> <td nowrap height="25"> نام شما :</td> <td width="380"><input type="text" name="c_name" id="c_name" class="f_input" /></td></tr><tr> <td nowrap height="25"> ايميل :</td> <td width="380"><input type="text" name="c_email" id="mail" class="f_input" /></td></tr><tr> <td nowrap height="25"> سايت / وبلاگ :</td> <td width="380"><input type="text" name="c_site" id="site" class="f_input" /></td></tr><tr> <td colspan="2" width="100%"><textarea class="textarea" name="c_body"></textarea></td></tr><tr> <td colspan="2" width="100%"> <input id="c_prv" name="c_prv" type="checkbox" align="absmiddle"><label for="c_prv"> به صورت خصوصي ارسال شود</label></td></tr><tr> <td colspan="2"><br><input class="button" name="submit" type="submit" id="comm-sub" value="ثبت نظر" /></td></tr></table></form>';include( "./themes/{$C->SITE_THEME}/main.php" );/*#############################################*/?> و جدول های دیتابیس هم اینه :DROP TABLE IF EXISTS `ex_post_comment`;CREATE TABLE `ex_post_comment` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,`email` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,`site` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,`body` text COLLATE utf8_unicode_ci NOT NULL,`date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',`priv` int(1) NOT NULL DEFAULT '0',`status` int(1) NOT NULL DEFAULT '0',`pid` int(11) NOT NULL DEFAULT '1',`ip` varchar(25) COLLATE utf8_unicode_ci DEFAULT NULL,PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;وقتی فرم رو ارسال میکنی صفحه هیچ پیامی نمیده و نظر هم ثبت نمیشه در دیتابیسفقط نمیدونم مشکل کد php کجاست که ثبت نمیشهاتصال به دیتابیس و اینا هم به درستی انجام میشه ویرایش شده بهمن 93 توسط Morteza استفاده از longbox نقل قول لینک به ارسال
Morteza 34190 ارسال شده در بهمن 93 گزارش بازنشر ارسال شده در بهمن 93 چرا جای آی دی خالی هست؟ اصلا نباید باشه: if ( mysql_query( "INSERT INTO `ex_post_comment` VALUES ('$c_name', '$c_email' , '$c_site', '$c_body', now(), '$c_prv', '$c_status' , '$id', '".$C->MY_IP."' ) " ) )پ.ن:کلا روش ارسالتون بهینه نیست کمی اصلاح کنین نقل قول لینک به ارسال
beh9am 96 ارسال شده در بهمن 93 مالک گزارش بازنشر ارسال شده در بهمن 93 چرا جای آی دی خالی هست؟ اصلا نباید باشه: if ( mysql_query( "INSERT INTO `ex_post_comment` VALUES ('$c_name', '$c_email' , '$c_site', '$c_body', now(), '$c_prv', '$c_status' , '$id', '".$C->MY_IP."' ) " ) )پ.ن:کلا روش ارسالتون بهینه نیست کمی اصلاح کنینتشکراینو من ننوشتم یه اسکریپت ارسال نظر توی اینترنت بودجای دیگه تاپیک زده بودم گفتند با حذفreturn;درست میشه که شدبازم تشکر از وقتی که گذاشتید نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .