Sql و کارارکترها

سلام . خسته نباشید . من یه تابعی واسه تولید یک چند کارارکتری رندوم نوشتم که موقع ثبت نام توو یه فیلدی ثبت می شه ، که موقع لاگین ازش استفاده می کنم .
می خواستم بدونم که کدوم یک از این کارارکتر ها که من دارم ازشون واسه تولید salt استفاده می کنم با SQL مشکل داره ؟
چون یه بار که داشتم ثبت نام می کردم Sql Error داد . ممنون
SQL Error :
کد:
SQL Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'vJ',phone='0',mobile='09361437655',address='رشت',bank='صادرات',acount_n' at line 1
تابع من :
PHP:
function salt()
{
    $spacial_characters = "!%\#^@&*~($/)\"'";
    $lowwer_characters  = 'cvbxnmasdfgqwhjklerozptyui';
    $upper_characters   = 'MQNWBEVRCTXYZUIAOSPDLFKGJH';
    
	mt_srand ((double) microtime() * 1000000);
    $spacial_character = substr($spacial_characters, mt_rand(0, strlen($spacial_characters)-1), 1);
    $lowwer_character  = substr($lowwer_characters, mt_rand(0, strlen($lowwer_characters)-1), 1);
    $upper_character   = substr($upper_characters, mt_rand(0, strlen($upper_characters)-1), 1);
	$salt = $spacial_character.$lowwer_character.$upper_character;
    return $salt;
}
 

ziXet

مدیر انجمن PHP/MYSQL
سلام . خسته نباشید . من یه تابعی واسه تولید یک چند کارارکتری رندوم نوشتم که موقع ثبت نام توو یه فیلدی ثبت می شه ، که موقع لاگین ازش استفاده می کنم .
می خواستم بدونم که کدوم یک از این کارارکتر ها که من دارم ازشون واسه تولید salt استفاده می کنم با sql مشکل داره ؟
چون یه بار که داشتم ثبت نام می کردم sql error داد . ممنون
sql error :
کد:
sql error: You have an error in your sql syntax; check the manual that corresponds to your mysql server version for the right syntax to use near 'vj',phone='0',mobile='09361437655',address='رشت',bank='صادرات',acount_n' at line 1
تابع من :
PHP:
function salt()
{
    $spacial_characters = "!%\#^@&*~($/)\"'";
    $lowwer_characters  = 'cvbxnmasdfgqwhjklerozptyui';
    $upper_characters   = 'mqnwbevrctxyzuiaospdlfkgjh';
    
	mt_srand ((double) microtime() * 1000000);
    $spacial_character = substr($spacial_characters, mt_rand(0, strlen($spacial_characters)-1), 1);
    $lowwer_character  = substr($lowwer_characters, mt_rand(0, strlen($lowwer_characters)-1), 1);
    $upper_character   = substr($upper_characters, mt_rand(0, strlen($upper_characters)-1), 1);
	$salt = $spacial_character.$lowwer_character.$upper_character;
    return $salt;
}
سلام

کاراکترهای ' یا " بوده به احتمال زیاد!
بجای اینها از '\ یا "\ استفاده کن
 

جدیدترین ارسال ها

بالا