PDA

View Full Version : تکراری نبودن اعضای سایت



sedaghat23
چهارشنبه 06 اردیبهشت 1385, 00:03 صبح
سلام خسته نباشین
اگه بخوام برای عضویت اعضا در سایت شرط تکراری نبودن نام کاربری و شماره فیش و... رو قرار بدم چکار باید بکنم؟
دستورات زیر رو می دم اگه اشکال داره کمکم کنین لطفا!
if (!strlen($Name)==0 && !strlen($FName)==0 && !strlen($BirthDate)==0 && !strlen($Email)==0 && !strlen($Ostan)==0 && !strlen($City)==0 && !strlen($UserName)==0 && !strlen($Pass)==0 && !strlen($Dpass)==0 && !strlen($Snfish)==0 && !strlen($ValueUser)==0){
if (!strlen($Name)=='Name' || !strlen($FName)=='FName' || !strlen($UserName)=='UserName' || !strlen($Pass)=='Pass' || !strlen($Dpass)=='Dpass' || !strlen($Snfish)=='Snfish'){*/
$Query="INSERT INTO `user` (`iduser` , `Name` , `FName` , `BirthDate` ,`Email` , `Ostan` ,`City` , `UserName` ,`Pass` , `Dpass` ,`Snfish` , `ValueUser`)
VALUES ('' , '$Name' , '$FName' , '$BirthDate','$Email' , '$Ostan' ,'$City', '$UserName' , '$Pass', '$Dpass','$Snfish','$ValueUser')";
$RESULT=mysql_query($Query) or die(mysql_error());
echo"<p align='center'>&nbsp;</p>
<table border='0' width='100%' bgcolor='#649B98'>
<tr>
<td align='center'><b><font face='Tahoma' size='2' color='#000080'>
&Ccedil;&Oslash;&aacute;&Ccedil;&Uacute;&Ccedil;&Ecirc; &Ccedil;&Ntilde;&Oacute;&Ccedil;&aacute;&iacute; &Ocirc;&atilde;&Ccedil; &Egrave;&aring; &Egrave;&Ccedil;&auml;˜ &Ccedil;&Oslash;&aacute;&Ccedil;&Uacute;&Ccedil;&Ecirc;&iacute; &Ccedil;&Ouml;&Ccedil;&Yacute;&aring; &Ocirc;&Iuml;.</font></b></td>
</tr>
</table>
";
}
//die("insered data into database");
echo"<p align='center'>&nbsp;</p>
<table border='0' width='100%' bgcolor='#649B98'>
<tr>
<td align='center'><b><font face='Tahoma' size='2' color='#000080'>
&Ccedil;&Oslash;&aacute;&Ccedil;&Uacute;&Ccedil;&Ecirc; &Ccedil;&Ntilde;&Oacute;&Ccedil;&aacute;&iacute; &Ocirc;&atilde;&Ccedil; &Ecirc;˜&Ntilde;&Ccedil;&Ntilde;&iacute; &atilde;&iacute; &Egrave;&Ccedil;&Ocirc;&Iuml;.
&Iuml;&Ntilde; &auml;&Ccedil;&atilde; .&auml;&Ccedil;&atilde; ˜&Ccedil;&Ntilde;&Egrave;&Ntilde;&iacute; &aelig;&Oacute;&aelig;&Ntilde;&Iuml; &aelig;&Ocirc;&atilde;&Ccedil;&Ntilde;&aring; &Yacute;&iacute;&Ocirc; &Icirc;&aelig;&Iuml; &Iuml;&THORN;&Ecirc; &auml;&atilde;&Ccedil;&iacute;&iacute;&Iuml;..</font></b></td>
</tr>
</table>
";
ممنون

armin390
چهارشنبه 06 اردیبهشت 1385, 10:34 صبح
اگه می خوای زودتر به نتیجه برسی(در تمام پست هات)
ابتدای کدت [code] و انتهاش [code/] قرار بده

hgkhatir
چهارشنبه 06 اردیبهشت 1385, 13:47 عصر
عبارت strlen($Name)=='Name' بی معنی است. برای فهمیدن اینکه نام کاربری و شماره فیش تکررای نیست، ابتدا از database جستجو کن:

SELECT iduser from user where Snfish=$Snfish OR UserName=$UserName LIMIT 1

در صورتی که هیچ سطری برگردانده نشود، می توانی INSERT کنی.

tabib_m
چهارشنبه 06 اردیبهشت 1385, 19:17 عصر
در ضمن برای اطمینان که هیج اسم تکراری ای وارد نمیشه ، فیلد نام کاربری رو unique کن.

cybercoder
پنج شنبه 07 اردیبهشت 1385, 09:06 صبح
Username رو Primary key بگیر.


$Query=sprintf("select count(*) from users where username='%s' and password='%s'",$username,md5($password) )


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