View Full Version : قراردادن همه صفحات در index ؟؟
Mohammad-tashi
پنج شنبه 14 آبان 1394, 10:01 صبح
باسلام
دیدید یکسری سایت های رو میری لینک هاشون ای شکلیه :
www.sample.com/index.php?page=news
www.sample.com/index.php?page=news&nid=10
www.sample.com/index.php?page=10
اینا با متد get دارن میفرستن به ایندکس و من میخام لینکام این شکلی باشه ...ایده ای که دارم اینه
اگر با متد get
page=10 اومد..صفحه مربوط به صفحات رو اینکلود کنه و از دیتابیس آیدی 10 رو بخونه
یا اگر
page=news&nid=10 اومد بره صفحه مربوط به خبر رو اینکلود کنه و نشون بده
آیا راه من درسته ؟
غلطه؟
خوبه ؟
بده؟
ممنون میشم راهنمایی نمایید
aliphp1
پنج شنبه 14 آبان 1394, 11:01 صبح
باسلام
دیدید یکسری سایت های رو میری لینک هاشون ای شکلیه :
www.sample.com/index.php?page=news (http://www.sample.com/index.php?page=news)
www.sample.com/index.php?page=news&nid=10 (http://www.sample.com/index.php?page=news&nid=10)
www.sample.com/index.php?page=10 (http://www.sample.com/index.php?page=10)
اینا با متد get دارن میفرستن به ایندکس و من میخام لینکام این شکلی باشه ...ایده ای که دارم اینه
اگر با متد get
page=10 اومد..صفحه مربوط به صفحات رو اینکلود کنه و از دیتابیس آیدی 10 رو بخونه
یا اگر
page=news&nid=10 اومد بره صفحه مربوط به خبر رو اینکلود کنه و نشون بده
آیا راه من درسته ؟
غلطه؟
خوبه ؟
بده؟
ممنون میشم راهنمایی نمایید
آي دي رو بگيريد و بريد از ديتابيس اطلاعات مربوط به اون رو نمايش بديد فقط حواستون به injection باشه
اطلاعات تون همه بايد در ديتابسي ذخيره باشه نه اينكه براي هر مطلب يه صفحه درست كنيد
Mohammad-tashi
پنج شنبه 14 آبان 1394, 21:20 عصر
سوال من یچیز دیگس
میگم وقتی طرف pageid=10 رو میفرسته من میخام وسط صفحه (content) ام متحتویات صفحه با آیدی 10 رو بخونه و چاپ کنه
آیا این درسته که بیام توی صفحه شرط بذارم اگه با get با pageid فرستاد این دستور sql و انجام بده؟
و اگر newsid=10 بود چک کنم یه دستور sql دیگه (چاپ اطلاعات خبر)و انجام بده؟
MohammadReza1994
پنج شنبه 14 آبان 1394, 22:20 عصر
اگه منظور شما چیزی مثل google translate و یا facebook هستش که صفحه بدون بارگزاری بروز رسانی میشه باید از ajax استفاده کنید
Mohammad-tashi
جمعه 15 آبان 1394, 08:13 صبح
بذارید سوالمو یجور دیگه بیان کنم
چطور میشه لینک ها سایت همه با ایندکس شروع بشه؟
www.sample.com/index.php?page=news (http://www.sample.com/index.php?page=news)
www.sample.com/index.php?page=news&nid=10 (http://www.sample.com/index.php?page=news&nid=10)
www.sample.com/index.php?page=10 (http://www.sample.com/index.php?page=10)
الان واسه من اینشکلیه
www.sample.com/news.php?newsid=10
Unique
جمعه 15 آبان 1394, 13:14 عصر
دوست عزیز شما توی get باید دو مقدار را ارسال کنید ، یکی مثلا view (میتونه page یا هر چیز دیگه ای هم باشه اما view اصولی تره) که تعیین میکنه کاربر چی را میخواد ، مثلا view=news میگه کاربر میخواد یک خبر را ببینه ! view=page میگه کاربر میخواد محتویات یک صفحه را ببینه یا view=gallery یعنی کاربر میخواد گالری ببینه ! حالا در ادامه میتونید id یا هر پارامتر دیگه ای را هم با صفحه ارسال کنید.
حالا شما این ها را توی index.php میگیرین و بر اساس view میاین و صفحه news.php یا page.php یا gallery.php را require میکنید. و توی صفحه require شده بر اساس پارامتر های دیگه یعنی id یا هر چیز دیگه ای میاین محتویات مربوطه را echo میکنید.
دو تا موضوع :
اول اینکه برای جلوگیری از حملات نفوذ نباید عین عبارتی که از get میگیرین را توی require یا include بیارین. به نظ رمن اینطوری کار کنین :
$view = isset($_GET['view']) ? trim($_GET['view']) : "home";
$views['home']['src'] = "views/home.php";
$views['news']['src'] = "views/news.php";
$views['gallery']['src'] = "views/galleru.php";
and ...
if (isset($views[$view])){
require($views[$view]['src']);
}
دوم اینکه برای url friendy شدن آدرسهاتون میتونید از htaccess. استفاده کنید. برای راهنمایی بیشتر توی انجمن url rewrite را جستجو کنید.
موفق باشی.
Mohammad-tashi
جمعه 15 آبان 1394, 16:42 عصر
با تشکر از شما
یک سوال
کد ها برنامه رو میشه توضیح بدید؟
خط اول و هشتم مخصوصا
چیکار میکنه؟
pbm_soy
جمعه 15 آبان 1394, 22:15 عصر
خط اول میگه اگر مقدار view توسط مرورگر از طریق نوار آدرس فرستاده شده باشد در متغییر $view مقدار همان را قرار بده و اگر view نداشته باشد مقدار home را در آن قرار بده. عملگر علامت سوال در واقع دستور شرط است دقیقا مانند if
اون خطوط پایین در واقع مقدار دهی کردن مقادیر اولیه در آرایه دوبعدی است میخواسته آدرس محتواهای مختلف را در این آرایه ذخیره کند که بهتر است همه این آدرسها و خطوط را در یک فایل php دیگر بنویسید و در ابتدای این صفحه فقط آنرا include کنید
خط هشت هم میگه که اگر آرایه $views خانه $viewام مقدار داشته باشد برود یا بیاورد صفحه ای که آدرسش در خانه $view ام و src قرار دارد
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.