productx.php یا product.php? id=x

imez08

New Member
سلام.
. اگه یک سایت داشته باشیم که بخواد یک کالا رومعرفی کنه و کالا ها با id به شماره x مشخص بشن کدوم یک از این دو روش رو پیشنهاد می کنین و استانداردتره؟
1)فقط یک فایل product.php داشته باشیم تا بر اساس کالای مورد نظر با شماره x و در نهایت آدرس Product.php?id=x اطلاعات اون کالا از db استخراج بشه و key words و description بر اساس کالا ایجاد بشه. حالا چون فقط یک صفحه product.php داریم و صفحاتی که ساخته میشن –چه اطلاعات کالا چه keyword ها- مجازین موتور های جستجو میتونن این صفحات رو indexکنن؟
2) برای هر کالایی صفحه ی productx.php رو آپلود کنیم که keywords و description رو برا ی هر کدوم تعریف می کنیم و فقط با هر بار خونده شدن صفحه اطلاعات کالا از Db خونده میشه. این روش صحیحه که برای هر کالایی یک صفحه آپلود کنیم؟
اگه روش دیگه ای استفاده میشه هم لطفا بگین؟
ممنون.
 

Masoud1365

مدیر انجمن
product.php?Id=x بهتره و استاندارد تره و پرفرمنس بهتری داره شما با mod rewrite میتونید آدرس رو یوزر فرندلی هم بکنید مثلا product/1
ولی به نظر من ساخت صفحه جدا برای هم محصول اصلا پیشنهاد نمیشه :wink:

موفق باشید.
 

foranyone

Well-Known Member
روش اول اصولیه روش دوم غلط

تو گوگل هم مشکلی نداری

فقط مواظب Sql-injection باش (در انجمن بحث شده-جستجو)
 

imez08

New Member
ولی بعضی از سایت های بزرگ هم انگار از روش دوم استفاده می کنن مثلا با جستجوی کلمه 5530 در گوگل این نتیجه رو می بینید.
www.gsmarena.com/nokia_5530_xpressmusic-review-387.php
یعنی برای هر مدل گوشی یک صفحه ایجاد می کنه . و حتی برای هر صفحه از این بررسی گوشی یک صفحه دیگه مثلا:
http://www.gsmarena.com/nokia_5530_xpressmusic-review-387p2.php
. درسته؟
 

sharktech

کاربر فعال
دوستان نظرشون در مورد این روش چیه ؟

اول یه صفحه به اسم show.php میسازی و توی این صفحه مینویسی که اگه id رو get کردی, اون اطلاعات رو از دیتابیس که مربوط به این id هست رو نشون بده.

بعد هم وقتی که اطلاعات رو توی دیتابیس ذخیره میکنی, یه دونه فایل هم میسازی که کد زیر رو توی فایل ذخیره کنه :

PHP:
 		 			 <?php  $_GET['id'] = '2';include '/show.php'; ?>

حالا اگه اون فایل رو باز کنی, اون مطلب تو رو با مثلا با لینک test.php برات نشون میده.
 

imez08

New Member
دوستان نظرشون در مورد این روش چیه ؟

اول یه صفحه به اسم show.php میسازی و توی این صفحه مینویسی که اگه id رو get کردی, اون اطلاعات رو از دیتابیس که مربوط به این id هست رو نشون بده.

بعد هم وقتی که اطلاعات رو توی دیتابیس ذخیره میکنی, یه دونه فایل هم میسازی که کد زیر رو توی فایل ذخیره کنه :

PHP:
                       <?php  $_GET['id'] = '2';include '/show.php'; ?>

حالا اگه اون فایل رو باز کنی, اون مطلب تو رو با مثلا با لینک test.php برات نشون میده.
ااین جایی که گفتین /بعد هم وقتی که اطلاعات رو توی دیتابیس ذخیره میکنی, یه دونه فایل هم .../ به نظرم اشتباهه. یعنی باز برای هر x ای یک صفحه میسازه که نامشخصه چون باز باید id رو با get بگیره که همون چیزی که اول گفتین.
شایدم منظورتون این بوده که هم از show?id=x استفاده کنیم هم یک فایل showx.php برای هر x بسازیم.
 

sharktech

کاربر فعال
نه این روش هیچ جاییش اشتباه نیست و خودم توی یکی از سایت ها استفاده کردم.

شما یه فایل به اسم show.php داری که اگه id رو بهش بدی, مشخصات مربوط به اون id رو براتون نمایش میده و این فایل به عنوان فایل اصلی هست و شما دیگه با این فایل کاری ندارین.

حالا میرسیم به قسمت مهم قضیه, حالا شما وقتی که دارین یک خبر یا متن یا محصول جدید اضافه میکنید, باید یه فیلد هم بزارید که لینک صفحه رو توی اون وارد کنید, مثلا "nokia_5800.php" و این همون نام فایل شماست.

حالا وقتی که متن یا خبر شما توی دیتابیس ذخیره میشه, شما یه صفحه جدید با نام اون فیلد (nokia_5800.php) میسازید و توی این فایل این کد رو میزارید :

PHP:
<?php  $_GET['id'] = 'x';include '/show.php'; ?>

که در این جا "x" باید id خبر یا متن شما باشه و "show.php" هم همون آدرس فایل اصلی شماست.

حالا اگه شما این صفحه "nokia_5800.php" رو باز کنید, انگار این صفحه یه صفحه اختصاصی هست در حالی که توش یه خط کد دارید !!!!

امیدوارم توضیحاتی که دادم کامل باشه.
 

imez08

New Member
, حالا شما وقتی که دارین یک خبر یا متن یا محصول جدید اضافه میکنید, باید یه فیلد هم بزارید که لینک صفحه رو توی اون وارد کنید, مثلا "nokia_5800.php" و این همون نام فایل شماست.
حالا وقتی که متن یا خبر شما توی دیتابیس ذخیره میشه, شما یه صفحه جدید با نام اون فیلد (nokia_5800.php) میسازید و توی این فایل این کد رو میزارید :
PHP:
<?php  $_GET['id'] = 'x';include '/show.php'; ?>
که در این جا "x" باید id خبر یا متن شما باشه و "show.php" هم همون آدرس فایل اصلی شماست.
حالا اگه شما این صفحه "nokia_5800.php" رو باز کنید, انگار این صفحه یه صفحه اختصاصی هست در حالی که توش یه خط کد دارید !!!!
امیدوارم توضیحاتی که دادم کامل باشه.
راستش متوجه نشدم. یعنی بازم شما یرای هر کالایی یک صغحه میسازی؟
اگه قراره برای هر کالا یک صفحه ساخته بشه چرا nokia_5800.php این جوری نباشه:
PHP:
<;select * from table where id="5800" ?>
اون سایتی که گفت یبا همین روش اگه امکانش هست میتونین بگذارین؟
 

sharktech

کاربر فعال
من دیگه نمیدونم باید چطوری توضیح بدم !!!

اگه از دوستان منظور منو فهمیده یه طور دیگه توضیح بده.

من از این روش من درآوردی استفاده کردم, چون نتونستم از rewrite mod استفاده کنم و در ضمن صفحاتی هم که قرار بود از این روش توشون استفاده بشه تعدادشون کم بود (حدود 10 تا) و قرار بود که لینکشون خیلی تمیز و مستقیم باشه.

در مورد سایت استفاده شده هم شرمنده نمیتونم آدرس بدم.
 

foranyone

Well-Known Member
من دیگه نمیدونم باید چطوری توضیح بدم !!!

اگه از دوستان منظور منو فهمیده یه طور دیگه توضیح بده.

من از این روش من درآوردی استفاده کردم, چون نتونستم از rewrite mod استفاده کنم و در ضمن صفحاتی هم که قرار بود از این روش توشون استفاده بشه تعدادشون کم بود (حدود 10 تا) و قرار بود که لینکشون خیلی تمیز و مستقیم باشه.

در مورد سایت استفاده شده هم شرمنده نمیتونم آدرس بدم.


روشتون کاملا اشتباهه:-?

بهتر بود یکم عبارات منظم کار می کردید و سپس rewrite mode !:rose:
 

sharktech

کاربر فعال
روشتون کاملا اشتباهه

ولی کاره منو راه انداخت و من هم از این روش راضیم اما ممنون میشم قسمت اشتباهشو بگین.

بهتر بود یکم عبارات منظم کار می کردید و سپس rewrite mode !

میشه در مورد این عبارات منظم یه توضیحی بدین تا یاد بگیریم ؟

در ضمن میشه با rewrite mode لینک خیلی ساده و تمیز مثل : about.php یا chart.php یا book.php یا pdf.php و ... رو درست کرد ؟
 

foranyone

Well-Known Member
ولی کاره منو راه انداخت و من هم از این روش راضیم اما ممنون میشم قسمت اشتباهشو بگین.



میشه در مورد این عبارات منظم یه توضیحی بدین تا یاد بگیریم ؟

در ضمن میشه با rewrite mode لینک خیلی ساده و تمیز مثل : about.php یا chart.php یا book.php یا pdf.php و ... رو درست کرد ؟


اگر اشتباه متوجه نشدم باشم شما برای هر خبر یک فایل ایجاد میکنید ! همین قسمتش ایراد داره !

ممکنه هزار تا صفحه بسازید یعنی هزار تا فایل جدید ساخته میشه که من با این قسمتش خیلی مشکل دارم.

اومدیم شما از این روش پشیمون شدید و بعد از اینکه وبسایت حسابی کارش گرفته بخواین یه سری تغیریات

در سیستم اخبار بوجود بیارین چطور میخواین همه ی این 1000 تا فایل رو دوباره ویرایش کنید !

تازه ممکنه فایل خبر ایجاد نشه بعد طرف باید بره خودش دستی ایجاد کنه ؟

باید کار درست انجام بدین نه اینکه صرفا مشکل رو با روش ناردست حل کنید ....

یه مشکل دیگه که خودم تجربه کردم ....

بعضا ( و نه همیشه) چون این فایل های شما با نام کاربری Apache ایجاد میشن شما با اکانت

خودتون از طریق FTP نمیتونید اونها رو پاک کنید چون ماله یه کاربر دیگست آقای آپاچی !!

آموزش عبارات منظم :

http://www.4shared.com/file/120795425/e3252f04/Farsi_regex.html

عبارات منظم یاد بگیرید Rewrite mode کاری نداره:wink:
 

sharktech

کاربر فعال
گفتم که من از این روش برای ساخت چندتا صفحه سفارشی استفاده کردم که حدود ده تا میشد.


در سیستم اخبار بوجود بیارین چطور میخواین همه ی این 1000 تا فایل رو دوباره ویرایش کنید !

فکر کنم شما روش من رو متوجه نشدین که این حرف رو میزنین !!!

چون اگه قرار باشه که من یه چنین تغییری بدم, لازمه که فقط یک صفحه رو ادیت کنم.

تازه ممکنه فایل خبر ایجاد نشه بعد طرف باید بره خودش دستی ایجاد کنه ؟

این یکی که دیگه بهونه بود نه دلیل.

در مورد دلیل آخر, من تا حالا با این مشکل برخورد نکردم.

از بابت اون pdf هم ممنون
 

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

بالا