راهنمایی در مورد اسکریپت کوتاه کننده لینک

dimebag

New Member
سلام
دوستان عزیز من راستش اصلا php بلد نیستم
کلی گشتم تا یه اسکریپت کوتاه کننده لینک پیدا کردم الان میخوام یه تغییری توش بدم نمیدونم بایدچیکار کنم
مشکل اینه که این اسکریپت وقتی بهش لینک رو میدی میتونی براش یه تگ هم تعریف کنی تا قوتی لینک رو تبدیل میکنه اون تگ رو در لینک شاخته شده به کار ببره
مشکلم اینه که بعضی از نشانه ها و کاراکترها رو نمیشه استفاده کرد مثلا _ یا / یا ، میخوام بدونم چجوری باید تغییرش داد تا بشه از این کارکترها هم در تگ انتخابی استفاده کرد

اگر لازم هست خود اسکرپیت رو هم بذارم تا ملاحظه بفرمایید
در صورت امکان راهنماییم کنید چون اصلا کسی رو ندارم php بلد باشه خیلی هم نیاز دارم به این اسکریپت
 

sajadmaz

Member
احتمالا این کارو برای جلوگیری از SQL Injection کردن کدتونو بزارین تا مشکلتون رو بر طرف کنم
 

dimebag

New Member
سلام
ممنونم از شما چون منکه نمیدونم باید چیکار کنم خود اسکریپت رو گذاشتم اگر براتون مقدور هست راهنمایی بفرمایید

یک سوال دیگه هم داشتم از خدمتتون یه اسکریپت دیگه هم پیدا کردم که همین کار رو میکنه و خوب هم هست یه قابلیت جالب داره که میتونه به سه حالت لینک رو کوتاه کنه من رو حالت اول که نصب میکنم مشکلی نداره و خیلی خوب و روان کار میکنه اما حالت سوم رو که نصب میکنم کار نمیکنه و اتفاقا اون حالت سوم رو خیلی میخوام
موقع نصب اسکریپت یه چیزایی میگه در مورد اینکه باید سرور آپاچی تنظیم بشه تا بشه از حالت سوم هم اضافه کرد منتها من هر چی فایل htaccess رو تغییر میدم موفق نمیشم یه عکس هم از اون گذاشتم
ببخشید اگه خیلی سوال پرسیدم
ممنونم از شما
 

پیوست ها

  • Short_Url.rar
    99.7 کیلوبایت · بازدیدها: 10
  • aks.JPG
    aks.JPG
    69.4 کیلوبایت · بازدیدها: 13

sajadmaz

Member
اون حالت سوم رو شما احتمالا روی لوکال میخواستین تست بزنین باید RewriteEngine باید روی وب سرورتون فعال باشه توی فایل httpd.conf باید فعالش کنید

و _ برای کدوم قسمت میخوایین استفاده کنین ؟
 

dimebag

New Member
سلام
ظاهرا باید توسط آدمین سرور قابلیت wild card dns فعال بشه تا من بتونم از حالت سوم استفاده کنم
راهی نداره بشه با استفاده از htaccess اینکارو کرد ؟
اون حالت سومش مثل subdomain دادن هست منتها تا wild card dns فعال نباشه نمیشه
شما راه حلی به نظرتون میاد ؟
ممنون
 

dimebag

New Member
سلام
من اون اسکریپت اول رو بی خیال شدم میخوام از اون که عکسش رو گذاشتم استفاده کنم
منتها اونم همین مشکل رو داره نمیزاره از کاراکترهایی مثل / یا . استفاده کنم
همین دو تا رو بتونم استفاده کنم برام کافیه
منکه php بلد نیستم کشتم خودم تو کدهاش اینو پیدا کردم

کد:
		if ( mysql_num_rows($result) ) {
			$id = mysql_result($result,0,0)+1;
		} else
			$id = 1;
		// Loop through till we find a free ID (needs improving to reduce potential number of queries)
		while ( mysql_num_rows(mysql_query('SELECT 1 FROM shrt_urls WHERE id='.$id.' LIMIT 1')) )
				$id++;
		$key = id2key($id);
	} else {
		$custom = 1;
		$key = clean($_POST['key']);
		// Check for forbidden characters
		if ( ! ctype_alnum($key) ) {
			$_SESSION['msg'] = 'Error: The new URL can only contain alphanumeric characters (a-z,0-9).';
			localRedirect($return);
		}
		// Check chosen key is available
		$id = key2id($key);
		if ( mysql_num_rows(mysql_query('SELECT 1 FROM shrt_urls WHERE id='.$id.' LIMIT 1')) ) {
			$_SESSION['msg'] = 'Error: Sorry, the new URL you chose is already in use.';
			localRedirect($return);

بعد اون مقدار
کد:
if ( ! ctype_alnum($key) ) {

رو با
کد:
if ( ! preg_match('/[0-9a-zA-Z\.\/]/', $key) ) {
عوض کردم

منتها بازم کار نمیکنه ایندفعه پیغام نمیده که نمیشه از این کارکترها استفاده کرد منتها یه پیغام کلی میده میگه fail شد در حالت عادی درسته ولی / یا . اگه بزارم اینو میگه
چه کنم من ؟
بدم بیرون یه برنامه نویس درستش کنه یعنی ؟
 

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

بالا