سایت خود را بسازید ، به روش saalek110

saalek110

Well-Known Member
ادامه ساخت فروم:

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

یادتون باشه charset فیلدهای متنی را مناسب فارسی تنظیم کنید. utf8 پیدا کنید. Utf8 persian
 
آخرین ویرایش:

saalek110

Well-Known Member
HTML:
?>

 <form id='myform' action="<?php echo $_SERVER['PHP_SELF']; ?>"  method = 'POST'>
<?php

   echo"<center>";
?>

<br>
<textarea id="mytextarea"    style="font-size: 12pt" name="post" rows="5" cols="25">
     </textarea>
     <br>
       <?php
   echo'<input type="hidden" id="custId" name="number"  value='.$topic_number.'>';
   ?>
 <input type="submit"  name='action_send' value="Submit"  style=" font-size:20px; height:90px; width:150px">
 </form>
<?php
echo"</center>";

کد فرم برای تایپ در اون و زدن دکمه برای ارسال.
در کد ، textarea یک id هم دارد. که اینجا استفاده نشده ولی فکر کنم در ساخت ادیتور گفتم چطوری باهاش کار کنید. کدهای جاوا اسکریپت با id اشیا را می شناسند. نوعی رابط بین کدهای جاوا اسکریپت و اشیا html است.

اونجا هم که شماره تاپیک داره به شکل مخفی ارسال میشه ، خوب لازمه کدهای درج بدونند که در کدوم تاپیک باید پست را اضافه کنند. پس لازمه.
 
آخرین ویرایش:

saalek110

Well-Known Member
PHP:
if(      isset  ($_POST['action_send'] )    )
{ // add one post
    echo"<center>";
        $topic_number=test_input($_POST["number"]);
       $post=test_input($_POST["post"]);


mysqli_set_charset($ccoonn, "utf8");
 
 $sql = "INSERT INTO `posts` (`post`,`topic`) VALUES ( '$post','$topic_number')";
    $result = mysqli_query($ccoonn ,$sql);

echo"<a href='http://saalek110.is-great.net/forum/topic.php?number=$topic_number'>"."return to topic"."</a>";
 
    echo"</center>";
}  // end of  action_send

کدهای فوق را قبل کدهای نمایش پست ها قرار دهید تا اگر قسمت نمایش پست ایراد داشت اجرا بشه.
کدهای فرم یعنی کدهای پست قبلی را بگذارید بعد کدهای نمایش پست.
در گوئری insert می بینید که کاری با ستون number نداشتیم. چون اون ستون خود افزایش یابنده است و لازم نیست بهش مقدار بدهیم.
 
آخرین ویرایش:

saalek110

Well-Known Member
چیزی که موندش ، تاپیک سازی است.
اون را یک روز دیگه میگم ، امروز دیگه کافیه.
خسته نباشید.
 
آخرین ویرایش:

saalek110

Well-Known Member
سایت سازی مثل ساختمان سازی است ، تا تکمیلش نکنی از رفاهش لذت نمی بری.
در مرحله اسکلت سازی ، حوب سایت شما جذابیت نداره و کاربردی هم نداره. و کار خسته کننده است.

ولی قسمت فونداسیون را اصولی کار کنید ، تا بعدا دچار مشکل نشوید.
بعدها که به قسمت تزئینات برسید ذوقتان اون موقع بیشتر میشه و موتور قوی تری برای کار خواهید داشت.
 

saalek110

Well-Known Member
من خودم چند سال پیش یک سایت ساختم. همون کدها را برای ساخت ده تا سایت استفاده کردم.
یعنی اون مراحل را دیگه لازم نیست تکرار کنید و از بقیه اش ادامه می دهید.
 

saalek110

Well-Known Member
مقایسه فلسفی وبلاگ و فروم:

در وبلاگ ، همه پستها متعلق به وبلاگ است ولی در فروم ، تعدادی پست یک تاپیک را تشکیل می دهد و تعدادی تاپیک ، یک تالار را تشکیل می دهد.
همین جا یک فروم است ، همین تاپیک سایت خود را بسازید را نگاه کنید. وجود تاپیک باعث شده ، پستهای من پشت سر هم قرار بگیرد ، تا شما بتوانید مرتب آنها را مطالعه کنید.
 

saalek110

Well-Known Member
طرز ساخت فروم: معماری فروم

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

در بنایی ، با ملات آجرها را به هم وصل می کنند ولی علاوه بر ملات ، هر آجر را طوری قرار می دهند که روی دو آجر پایینی قرار بگیرد ، و روی یک آجر قرار نمی دهد. این کار برای اینه که استحکام دیوار بیشتر بشه. من تاپیک آموزش کارهای بنایی هم دارم.


images.jpeg


در فروم همین که یک ستون یک جدول به یک عضو جدول بالایی اشاره می کند ، باعث ایجاد ارتباط میشه.
و در جدول تاپیکها در دیتابیس ، یک ستون به نام forum داشتیم ، تا بگه این تاپیک متعلق به کدام تالار است.
و در جدول پست ها ، هم ستون topic داشتیم تا نشون بده این پست متعلق به کدام تاپیک است.

شما دیدید کدهای فروم خیلی شبیه هم بود، راستش کدهای هر قسمت را من با کپی کردن قسمت قبلی ساختم. فقط اسم جدول و ستون را عوض میکردم.
کدهای بالا را از جایی من کپی نکردم ، فی البداهه خودم با محاسبه ذهنی نوشتم. شما هم بزودی می توانید این کار را بکنید.
 

saalek110

Well-Known Member
ادامه معماری:

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

یا هر پست ، ستون تاریخ هم باید داشته باشه ولی باز هم این جزئی از دارایی پست است و کلا می روند در یک تاپیک.
 

saalek110

Well-Known Member
قسمت مدیریت و ادمین فروم:

ادمین مدیر کل سایت است و تعدادی مدیر انتخاب می کند.
مثلا انتقال یک پست از یک تاپیک به تامیک دیگر.
یا حذف یک پست یا تاپیک.

یا انتقال یک تاپیک از یک تالار به تالار دیگر.

یا ایجاد کاتگوری جدید. و ویرایش یا جابجایی کاتگوری ها. کاربران که تالار و کاتگوری ایجاد نمی کنند. کاربران در تالارها تاپیک و پست می زنند.

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

اینکه یک کاربر ، چطوری تبدیل به مدیر یک قسمت میشه را بعدا باید کار کنیم.
 

saalek110

Well-Known Member
من یکی دو ساله یک سایت خودم دارم ، حالت سرویس وبلاگ داره ولی تمام وبلاگهایش را خودم استفاده می کنم و یادداشت هایم را اونجا می نویسم.

یک فایلهای دستکاری دیتابیس من ساختم ، و به اصطلاح یک مقدار کار قسمت ادمین را انجام می دهد.
شما خودتان می توانید برای سایت خودتان ، قسمت دستکاری دیتابیس بسازید. مثلا یک لونه دیتابیس را تغییر دهد.
یک کارهایی را هم در خود دیتابیس من انجام می دهم.
در مورد قسمت ادمین و مدیریت فرومی که داریم می نویسیم ، معلوم نیست تا چه حد جلو برویم و شاید اصلا درست نباشه همه بحث در این تاپیک باشه و از یک جایی به بعد باید بحث ساخت فروم برود در تاپیک خودش.
 

saalek110

Well-Known Member
ظاهر فروم:

من php و دیتابیس فروم را گفتم ، ولی برای ظاهر فروم چیز ثابتی وجود ندارد و شما هر طوری دوست دارید می توانید کار کنید.
من یک جدول در کدهای بالا استفاده کردم ولی استفاده از جدول لازم نیست و میشه حذفش کرد.

ما کمی css تمرین کردیم در این تاپیک ، من قصد دارم با همون ها کمی ظاهر سایت را بسازم. با html و عناصرش هم می توانید کار کنید. با تکنولوژی های جدید هم میشه کار کرد ، هر نوع تکنیک و تکنولوژی که من زیاد آشنا نیستم. ظاهر سایت زیاد در این تاپیک مطرح نیست و می توانید ظاهر سایت خود را از منابع دیگر الگو بگیرید.
 

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

بالا