طراحی سایت

mashty_ali

New Member
من تازه یکم Php یاد گرفتم چند تا سوال داشتم
1.آدرس صفحات کدوم شکل بهتره
PHP:
localhost/?post=1
localhost/post/1
و چه جوری میشه آدرس صفحات رو مثل نوع اول کرد
2.RSSچیه و چجوری میشه ساخت
حالا بقیاش رو بعد می پرسم
 
آخرین ویرایش:

pendesign

Member
دوست من سوالت در مورد ساختن چه نوع صفحاتی هست ؟ " Static " و یا " Dynamic " ؟
در مورد اول اگر منظورت از آدرس صفحات همون پسوند صفحه باشه ! خوب شما داری برنامه نویسی PHP میکنه و مسلما پسوندشون به صورت PHP ثبت میشه ، ولی اگر منظورت از نام صفحات اسم یک صفحه باشه ، مثل
Yourename.com/Safeaval.htm خوب هر اسمی میتونه مناسب باشه . با توجه به موضوع صفحه انتخاب کن
مثلا اگر صفحه مورد نظرت در مورد عکس هست میتونی این اسم رو براش انتخاب کنی ، Yourename.com/gallery یا Yourename.com/photo یا هر اسمی که دوست داشتی . این در مورد صفحات ایستا صدق میکنه . در مورد صفحات پویا هم فکر میکنم به همین شکل باشه . " البته مطمئن نیستم "
مثلا این وب سایت الان یک وب سایت پویا هست ... به آدرس صفحات در Address Bar توجه کن . سوالی داشتی من در خدمتم .
 
آخرین ویرایش:

YTERROR

Active Member

به این صورت مسلما از نظر من خیلی بهتره

به نظر من بهتره شما مرحله مرحله کتای پی اچ پی رو مطالعه کنید و بانک اطلاعاتی تا راحت به جوابتون برسید
sdsa
 

alireza82

Well-Known Member
سلام دوست من این دوتا با هم از نظر کارایی فرق نمیکنن ولی اگر کمی در مورد موتور های جستجو بخونید میبینید که
localhost/post/1
بهتره چون با موتور های جستجو سازه گاره ولی برای این کار باید فایل .httacsses رو تو سرور دستکاری کنید البته من یه کد که از سایت ایران پی اچ پی گرفتم هم برات میزارم تقریبا همین کار رو انجام میده ولی خوب اون انعطاف امنیت و اعتماد روش اول رو نداره
من این جا فقط کد رو نمیزارم عینا توضیحات سایت ایران php رو برات میزارم بخون حالشو ببر
---------------------------------------------------------
حتما با كلمه clean url در php آشنا هستيد . اما براي همه دوستان يك توصيح سريع راجع به اون مي دم :
سيستمي كه يك url شبيه به اين رو :
http://www.sepultura.com/contact.php?name=max&lname=cavalera
به اين صورت در مياره :
http://www.sepultura.com/contact/max/cavalera

حالا يه چيزي شبيه به همون با تفاوتهاي جزيي .
براي اين كار هم كه حتما همون طور كه چندي پيش linmiss تو وبلاگش توضيح داده بود مي دونيد بايد دست به دامان apache و htaccess بشويم .
چند وقت پيش نسخه دموي كتاب simplephp نوشته آقاي robert plank رو دانلود كرده بودم اما هيچ وقت نخونده بودم تا اينكه اتفاقي به صفحه 6 كتاب رسيدم كه روش ساختن يك حالت ساده clean url رو بدون استفاده از هيچ چيز توضيح داده بود و حتي نوشته بود كه هر جاي دنيا url شبيه به go.php/etc ديديد بدونيد كه اون اسكريپت منه .
گفتم شايد بعضي از دوستان هم مثل من چگونگي اين اسكريپت جالب باشه .
در ادامه اسكريپت كوتاه و ساده روبرت عزيز رو ميارم :
PHP:
<?php
$myvars = explode("/",$_SERVER['REQUEST_URI']);
for ($i=0;$i<count($myvars);$i++){
$holder = explode("=",$myvars[$i]);
${$holder[0]} = $holder[1];
}
echo "name= $f and lname = $l";
?>










در اين صورت به جاي :
http://www.sepultura.com/contact.php?n=max&l=cavalera
مي تونيم از اين استفاده كنيم :
http://www.sepultura.com/contact.php/n=max/lname=cavalera
البته هنوز اكستنشن فايل مشخص هست و اسم متغير .
توضيحات :
دليل استفاده از clean url بهينه سازي سايت براي موتور هاي جستجو و حتي امنيت هست .
 
آخرین ویرایش:

mashty_ali

New Member
با تشکر
من یک جا خوندم موتور های جستوجو صفحات html رو بهتر index می کنم حالا می خوام بدونم صفحات به html ختم بشند یا باید یک فایل html باشه
rss می شه php باشه مثلا localhost/rss.phpیا بایدxmlباشه
در مورد آرشیو کردن صفحات هم توضیح دهید
آقا اگه نمی خندی نگاه کن
http://irony.ifastnet.com
 
آخرین ویرایش:

mashty_ali

New Member
علیرضا من نتو نستم از مثالت استفاده کنم میشه یک مثال با یکم توضیح بدی
آقا چجوری میشهتو سایت 10 مطلب صفحه ی اول باشند بقیه تو صفحات دیگه
چجوری میشه روز و تاریخ و سال ارسال مطلب ودفعات بازدیدش رو ثبت کرد
 

alireza82

Well-Known Member
سلام
من اون مثال بالا رو خودم تا حالا اجرا نکردم چون خودم هر وقت بخوام این کار و بکنم از httaccses استفاده میکنم. بزار یه چک میکنم برات توضیح میدم ولی برا اون یکم صبر کن.برای اون کار اصلا چیز سختی نیست ببین تو یه query میکنی دیتابیست رو برا مطالبت و لی مطالبت رو لیمیت میکنی مثلا:
PHP:
$query="select 'YOUR_CONTENT_ID' from 'YOUR_TABLE_NAME' order by 'YOUR_CONTENT_ID' ACS limit $start,10";
خوب حالا داریم چیکار میکنیم:
ما گفتیم انتخاب کن از نام جدول من کلید اصلی مون که همون مثلا شماره متلب ذخیره شده تو دیتابیس ، بعد گفتیم اون رو به صورت صعودی از یه متغییر $start برامون بچین تا 10 تا بعد از این متغییر. به عبارت دیگه ما تمام id های مطالبمون رو از این متغییر تا 10 تا بعدشکشیدیم بیرون الان برای اول کار از 0 تا 10 بهد اگه به متغییر 10 بدیم از 10 تا 20 میکشه بیرون به همین ترتیب تنها کاری که لازمه بکنی اینه که ایم متقییر $start دو به هر صفحه ای میری با مقدار مناسبش مقدار بدی مثلا توی صفحه چهارم باید این متقییر داری مقدار 40 باشه تا از 40 تا 50 و بدست بیاره. کافیه اون پایین یا هرجای صفحه که داری لینک ها رو درست میکنی ته لینک یه همچسن چیزی بتونی درست کنی /yourpage.php?start=$start
خوب بعد از اینکه یه کوری کنی و تعداد مطالبت رو در بیاری با یه while ساده و اضافه کردن 10 تا 10 متغییر ت میتونی لینک صفحات لازمت رو بسازی توجه کن که من اونجا فقط یه ای دی مطلب رو کشیدم بیرون شما هر چی لازم داری باید بیرون بکشی و اینکه این کوری باید برای هر جا که مخوای مطالب و نمایش بدی انجام شه. مقادیر رو با مقادیر دلخواه خودت جایگذین کن امیدوارم مشکلی نباشه.
اگه مشکلی هست در خدمتم.
من دیدم آنلاینی سریع تایپ کردم اگه غلط داشت ببخشید دیگه
 
آخرین ویرایش:

alireza82

Well-Known Member
بازم سلام لان اون مطلب html تون رو خوندم
والا منم زیاد در مورد موتور ها ی جستجوگر مطالعه نداشتم ولی ببین شما وقتی با html کار میکنی با یه سری صفحه طرفی مثلا
www.YOURDOMAIN.com/index.html
اما تو php با همچین چیزی هم بعضی موقع ها طرفی:
www.YOURDOMAIN.com/index.php?n=akjhkjs,y=kkjk&....
خوب همونطور که میبینی تو php این صفحه یه سری متقییر گرفته تا به یه صورت خاص نشون داده شده چه بسا شما با یه if ساده بر حسب این متغییر ها محتوات زمین تا آسمون فرق کنه. موتور جستجو که نمیفهمه چی باید بده چی نباید بده و درکل موتور های جستجو اکثرشون به ؟ که میرسن کار ایندکس رو متوقف میکنن چرا چون با توجه به قبل از ؟ فکر میکنن این صفحه رو قبلا ایندکس کردن در صورتی که صفحه ممکنه متفاوت باشه. ولی برا اونا index.php بسه . یه سری موتور ها الان تا یه متغییر رو برای ایندکس کردن ادامه میدن و لی خوب بازم کافی نیست.
دلیل اصلی اینکه صفحات داینامیک خوب ایندکس نمیشن همینه. وگرنه شما کدتو بین تگ html بزار باز همون اتفاق میفته دلیل هم همون متغییر هاست.
حالا اینکه از clean url ایتفاده میشه بیشتر همینه یعنی شما url خودتو طوری میکنی که موتور جستجو براش قابل فهم باشه.
پس این آدرس زیر راحت ایندکس میشه
http://www.sepultura.com/contact/max/cavalera
ولی این یکی نه
http://www.sepultura.com/contact.php...lname=cavalera
در کل این مشکل صفحات و کد های داینامیکه نه خاص php
این اطلاعات رو من از اطلاعات ناقص خودم یه جوری جمع و جور کردم و گفتم. پس اگر کسی از اساتید توضیحات بیشتری دارن و دلایل دیگری خوشحال میشیم بشنویم
متشکرم
---------------------------------------------------------------------------------------------------------
موفق باشید.
آقا این مجید آنلاین امروز چرا انقدر کنده هر پستی که مخواد ارسال شه کلی وقت میبره هر صفحه هم با خداست باز شه یا نه
 

alireza82

Well-Known Member
چجوری میشه روز و تاریخ و سال ارسال مطلب ودفعات بازدیدش رو ثبت کرد
خوب هر وقت داری متلب رو میرزی تو دیتابیس یه date() هم بگیر بریز تو دیتابیست.
برا تعداد بازدید هم یه متغییر درست کن یا هر وقت صفحه زیاد میشه این متغییر که مربوط به اون مطلب میشه رو از تو دیتا بیست بکش بیرون بعد یکی زیادش کن باز بنویس تو دیتا بیس.
ببخشید امروز عصر سایت اذیت میکرد من مجبور شدم برای اینکه بتونم پست قبل و بفرستم محتویاتش رو کم ککنم. حالا اونا رو باز میفرستم.
موفق باشی
 

mashty_ali

New Member
سلام لطفا در مورد قالب هم توضیح بدید که چجوری میشه یک فایل با نام Theme.phpدرست کرد و در هر صفحه بشه از اون استفاده کرد امید وارم منظورمو فهمیده باشید.
 

mashty_ali

New Member
آقا یک اسکریپت ادیتور Html می خوام برای قسمتی که می خوام مطلب ها رو ارسال کنم.
 
آخرین ویرایش:

mashty_ali

New Member
آقا این سالام که تمومی نداره
چجوری میشه تاریخ ها رو شمسی کرد و به صورت جدا یعنی مثلا
روز ارسال:21
ماه ارسال:12
سال ارسال:1385
 

alireza82

Well-Known Member
آقا این سالام که تمومی نداره
چجوری میشه تاریخ ها رو شمسی کرد و به صورت جدا یعنی مثلا
روز ارسال:21
ماه ارسال:12
سال ارسال:1385
علیک سلام
ما یه تابع داریم به اسم date() که کارش بر گردوندن تاریخ و ساعت و ... این جور چیزاست این صفحه زیرم پارامتر ها و نمونه مثال هاش
http://ir.php.net/manual/en/function.date.php
منتها این تابع مثله همه چیز های دیگه میلادی به ات بر میگردونه که برای شمسی کردنش یا باید بشینی خودت الگوریتم تبدیل بنویسی یا از تابعی که یه نفر دیگه نوشته و به jd.php جلالی دیت فانکشن معرفه استفاده کنی آموزش استفاده ار این تابع رو من تو سایت iranphp.net قبلا تو قسمت مقالاتش دیده بودم.
در مورد قالب هم اگه اون قالب های cms ها منظورت باشه یعنی تو اونا دیدی حالا داری میپرسی اونا با استفاده از موتور های قالب مثل smarty نوشته شدن که خوب حقیقتش من از ائنجایی که از گرافیک متنفرم خودم اصلا سراغ یادگیریش تا حالا نرفتم ولی میشه با ائنا این کار رو کرد.
smarty.php.net
برای توضیح برو به لینک بالایی.
شرمنده تو گرافیک من یکی اصلا چاره ساز مشکلت نیستم چون در حال حاضر هم اصلا دوست ندارم برم سراغش. یه کم دیگه تو گرافیک بهم گیر بدی میرم تو خیابون لاستیک آتیش میزنم شعار میدم
مرگ بر گرافیک:eek::-?
 

mashty_ali

New Member
آقا این ارور یعنی چه؟
PHP:
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in D:\wamp\www\mashty\admin\new_post.php on line 60

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in D:\wamp\www\mashty\admin\new_post.php on line 60
Access denied for user 'ODBC'@'localhost' (using password: NO)
SQL: INSERT INTO `news` (`id`, `title`, `body`, `more`, `today`, `email`) VALUES ('6195f47dcff14b8f242aa333cdb2703e', 'ADOBE', 'salam', 'hello', '20080115', '[email protected]')

این فایل config.php هست
PHP:
<?php

function connect()
{
   mysql_connect("localhost", "root", "") or die(mysql_error());

    mysql_select_db("mashty");

}

?>

و وقتی می خوام از این فایل استفاده کنم از
PHP:
   include("config.php");
استفاده می کنم شاید مشکل از اونه ها؟
 
سلام
من اون مثال بالا رو خودم تا حالا اجرا نکردم چون خودم هر وقت بخوام این کار و بکنم از httaccses استفاده میکنم.
میشه‌ همون جور که‌ با php مثال زدی و توضیح دادی در این مورد هم کمی توضیح بدی که‌ چی جوری میشه‌ از httaccess استفاده‌ کرد البته‌ با یه‌ مثال کوچولو:)
مرسی
 

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

بالا