mrasoul 86 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 با عرض سلام و خسته نباشید . من با استفاده از php یک فرم ساده برای عضویت درست کرده ام . اما خوب این عضویت مشکلاتی رو داره . بعد از عضو شدن ریدایرکت صورت نمیگیره فکر کنم و با این ارور مواجه شدم Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in D:\xampp\htdocs\chapter4\submit.php on line 26Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\chapter4\submit.php:26) in D:\xampp\htdocs\chapter4\submit.php on line 35این تمام کدهای مربوط به صفحه signup.php<?php/** To change this template, choose Tools | Templates* and open the template in the editor.*/$host="localhost";$host_username="root";$host_password="";$db_name="db_firstweb";$db_link=mysql_connect($host, $host_username, $host_password) or die(mysql_errno());mysql_select_db($db_name, $db_link) or die(mysql_errno());$tbl_name="tbl_login";$username=$_POST["username"];$pwd1=$_POST["password1"];$pwd2=$_POST["password2"];//Write sql code here$successfull=FALSE;if(strlen($username)>0 && strlen($pwd1)>0 && strlen($pwd2)>0){ if($pwd1==$pwd2){ $sql="select * from $tbl_name where username=$username"; $result= mysql_query($sql,$db_link); $count=mysql_num_rows($result); if($count == 0){ $sql="insert into $tbl_name(username,password) values('$username','$pwd1')"; mysql_query($sql,$db_link); $successfull=true; ///Make sure User data submit successfully... } }}if($successfull==TRUE){ header("location: login_success.php");}else{ header("location: signup.php");}//mysql_close($db_link);?>کسی میتونه تشخیص بده مشکل از چیه ؟من حتی از فرمی که قبل کامل شده بود استفاده کردم که اونم که هیچ مشکلی نداشت روی سیستم من با این مشکل روبه روی میشد . بنظر این فرم فقط با سیستم من این مشکل رو داره لینک به ارسال
mrasoul 86 ارسال شده در اسفند 93 مالک گزارش بازنشر ارسال شده در اسفند 93 الان که روی هاستینگ امتحان کردم فهمیدم این خطا فقط مختص لوکال هاسته . یکی میتونه بگه چرا روی لوکال هاست این خطا و میده و چیکار باید کنم ؟Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in D:\xampp\htdocs\chapter4\submit.php on line 26Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\chapter4\submit.php:26) in D:\xampp\htdocs\chapter4\submit.php on line 35 لینک به ارسال
SM-Mahdavi 5428 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 سلامبا noteoad++ باز کنید و از منوی Encoding روی utf-8 without BOM تنظیم کنید ببینید حل میشه یا نه. 3 لینک به ارسال
mrasoul 86 ارسال شده در اسفند 93 مالک گزارش بازنشر ارسال شده در اسفند 93 سلامبا noteoad++ باز کنید و از منوی Encoding روی utf-8 without BOM تنظیم کنید ببینید حل میشه یا نه.خطاهای داده شدهWarning: mysql_num_rows() expects parameter 1 to be resource, boolean given in D:\xampp\htdocs\chapter4\submit.php on line 21Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\chapter4\submit.php:21) in D:\xampp\htdocs\chapter4\submit.php on line 30 لینک به ارسال
Morteza 34190 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 از توابع mysql استفاده نکنید منسوخ شده.خطا هم احتمال داره از ورودی هاتون باشه 3 لینک به ارسال
mrasoul 86 ارسال شده در اسفند 93 مالک گزارش بازنشر ارسال شده در اسفند 93 از توابع mysql استفاده نکنید منسوخ شده.خطا هم احتمال داره از ورودی هاتون باشهیعنی چی از ورودی ها باشه؟ لینک به ارسال
Mobin 1669 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 کد خودتونو به صورت زیر تغییر بدید $sql="select * from $tbl_name where username='$username'"; $result= mysql_query($sql,$db_link); if ($result==false) { die(mysql_error()); } $count=mysql_num_rows($result);توجه داشته باشید وقتی میخواهید یک مقدار رشته string رو درون کوئری قرار بدید باید داخل کوت قرار بگیره 2 لینک به ارسال
استاد اعظم 900 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 من فکر میکنم ممکنه مشکل از متغییر های اتصال به دیتابیس (نام کاربری و پسورد) مشکل داشته باشه :$host_username="root";$host_password="";یه نام کاربری جدید با یه پسورد ایجاد و تست کنید ... 1 لینک به ارسال
mrasoul 86 ارسال شده در اسفند 93 مالک گزارش بازنشر ارسال شده در اسفند 93 من فکر میکنم ممکنه مشکل از متغییر های اتصال به دیتابیس (نام کاربری و پسورد) مشکل داشته باشه :$host_username="root";$host_password="";یه نام کاربری جدید با یه پسورد ایجاد و تست کنید ...برای عضویت این فرم فقط اون خطا رو میده اما برای سایر کارها خطایی نمیده . میشه وارد شد . تو صفحه ها رفت از سشن هم استفاده کردم که اون هم درسته و کار میکنه اما وقتی عضو میشم اون خطا رو میده لینک به ارسال
استاد اعظم 900 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 برای ثبت کاربر جدید نیازی به این موارد نیست ، خود وردپرس یه سری توابع داره ، این یه نمونش : http://www.sutanaryan.com/wordpress-custom-registration-without-using-a-plugin/برای لوگین هم : http://www.sutanaryan.com/wordpress-custom-login-page-without-using-a-plugin-the-right-way/ 1 لینک به ارسال
mrasoul 86 ارسال شده در اسفند 93 مالک گزارش بازنشر ارسال شده در اسفند 93 کد خودتونو به صورت زیر تغییر بدید $sql="select * from $tbl_name where username='$username'"; $result= mysql_query($sql,$db_link);if ($result==false){ die(mysql_error());} $count=mysql_num_rows($result);توجه داشته باشید وقتی میخواهید یک مقدار رشته string رو درون کوئری قرار بدید باید داخل کوت قرار بگیرهمشکل فقط همون کوت بود که اونو قرار دادم ردست شد . خودم اصلا دقت نکرده بودم . اما یه سوال دیگه ؟if ($result==false) { die(mysql_error()); }این رو چرا اضافه کنم به کدهام ؟برای ثبت کاربر جدید نیازی به این موارد نیست ، خود وردپرس یه سری توابع داره ، این یه نمونش : http://www.sutanarya...using-a-plugin/برای لوگین هم : http://www.sutanarya...-the-right-way/ممنون جالب بودن . اما من اصلا کاری به وردپرس نداشتم و فرمی خودم با php نوشتم و کاملا بیربط به وردپرس هستند لینک به ارسال
Mobin 1669 ارسال شده در اسفند 93 گزارش بازنشر ارسال شده در اسفند 93 اگه کوئری شما به هر دلیلی مشکل داشته باشه یا در حین اجرا خطایی پیش بیاد تابع mysql_query مقدار false برمیگردونه که باعث ایجاد خطا و اشکال در تابع mysql_num_rows میشه برای جلوگیری از این حالت از کد زیر استفاده شدهif ($result==false) { die(mysql_error()); } 2 لینک به ارسال
پست های پیشنهاد شده
لطفا برای ارسال دیدگاه وارد شوید
شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید
ورود به حساب کاربری