صفحه 1 از 2 12 آخرینآخرین
نمایش نتایج: از شماره 1 تا 10 , از مجموع 15

موضوع: آموزش ساخت سیستم مدیریت محتوای ساده با php

  1. #1
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض آموزش ساخت سیستم مدیریت محتوای ساده با php

    در این تاپیک قصد داریم آموزش ایجاد و ساخت یک سیستم مدیریت محتوای ساده به زبان PHP همراه با دیتابیس رو به شما آموزش بدیم!

    این سیستم فعلا دارای امکاناتی چون:


    1. اخبار سایت
    2. صفحه تماس با ما
    3. مدیریت صفحه نخست
    4. قابلیت ایجاد صفحه
    5. لینک دوستان



    سطح این آموزش معمولی هست.

    مواد لازم:


    1. نرم افزار XAMPP - دانلود
    2. نرم افزار notepad++ - دانلود
    3. نرم افزار محبوب Dreamweaver



    پیش نیاز ها برای درک این آموزش :


    1. آشنایی با CSS و HTML در حد معمولی
    2. آشنایی با دستورات php در حد مبتدی


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

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

  2. تعداد تشکر ها ازnegin.server به دلیل پست مفید


  3. # ADS




     

  4. #2
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض پاسخ : آموزش ساخت سیستم مدیریت محتوای ساده با php

    ایجاد فایل config.php در پوشه admin
    کد PHP:
    <?php
    $hostname
    = 'localhost';
    $dbuser = 'root';
    $dbpass = 'password';
    $dbname = 'cms';
    $persianscript = mysql_connect ($hostname, $dbuser, $dbpass);
    mysql_select_db ($dbname, $persianscript);

    /*** S I T E S E T T I N G ***/
    $adminuser = "admin";
    $adminpass = "admin";
    $title = 'سیستم مدیریت محتوا';
    $email = 'info@persianscript.ir';
    $desc = 'توضیحات سایت';

    ?>


    ما در 7 خط اول فایل config.php مشخصات دیتابیسمون رو میدیم!

    و بعد با استفاده از دستور mysql_connect به دیتابیس متصل میشیم...


    در متغیر های adminuser و adminpass میتونید مشخصات ورود به مدیریت رو وارد کنید
    در متغیر های title,email,desc اطلاعاتی نظیر عنوان سایت, ایمیل (برای ارسال فرم های تماس به ایمیل),کلمات کلیدی و توضیحات سایت هست. اینها برای فراخوانی در قالب و سیستم بکار میره.

  5. #3
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض پاسخ : آموزش ساخت سیستم مدیریت محتوای ساده با php

    خب. حالا میریم سراغ ساختن بخش ورود به مدیریت
    فایل index.php موجود در پوشه admin رو باز میکنیم. یا اگه قبلا ایجاد نکردید ایجاد کنید

    برای ساخت بخش ورود به مدیریت ما با استفاده از سشن ها(جلسه) دسترسی رو برای مدیر ایجاد میکنیم. در اینجا ابتدا یک فرم میسازیم با دو فیلد text و یک دکمه :
    کد HTML:

    <form action="" method="POST"> نام کاربری:<input type="text" name="username" size="20"> <br/> رمز عبور:<input type="password" name="password" size="20"> <br/> <br/> <input type="submit" value=" ورود " name="submit"> </form>
    در این فرم نام کاربری و رمز عبور رو از کاربر میگیرم. و با زدن دکمه submit دوباره مقادیر به همین صفحه ارسال میشه چون تو اون اول action فرم برابر تهی بود

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

    این کد php رو در بالای فرم ورود میزاریم:
    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_POST['username']) && isset($_POST['username']) )
    {
    include
    "config.php";
    if ( (
    $_POST['username'] == $adminuser) && ($_POST['username'] == $adminpass) )
    {
    $_SESSION['user'] = $_POST['username'];
    header ("Location: home.php");
    }
    }
    ?>


    در خط اول ما php رو شروع میکنیم.
    در خط دوم لایه جلسه (سشن) رو استارت (روشن) میکنیم
    در خط سوم ما میگیم در صورتی که نام کاربری و رمز عبور به وسیله Post از فرم برامون ارسال شده بود. دستورات زیر رو اجرا کن
    در خط پنجم ما فایل کانفیگ رو با include فراخوانی میکنیم.
    در خط شش یک دستور شرطی دیگه هست که میگه اگه مقدار ارسال شده username با مقدار موجود در adminuser (فایل کانفیگ) برابری کرد. و همچنین (با &&) مقدار ارسال شده password با مقدار موجود در adminpass (فایل کانفیگ) برابری کرد . اون وقت مقدار ارسال شده username رو بریز داخل سشن user
    این سشن user تا وقتی کاربر داخل سایت باشه لازم هست...
    در خط بعد میگه وقتی همه این دو شرط درست بود. بعنی:


    1. کاربر نام کاربری و رمز عبور رو وارد کرده باشه
    2. نام کاربری و رمز عبور با مقداری که تو فایل کانفیگ هست برابر بود


    اون وقت برو به صفحه home.php

    صفحه home.php نقش داشبورد یا صفحه اصلی کنترل پنل مدیریت رو بازی میکنه



    محتویات فایل index.php شد این:
    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_POST['username']) && isset($_POST['username']) )
    {
    include
    "config.php";
    if ( (
    $_POST['username'] == $adminuser) && ($_POST['username'] == $adminpass) )
    {
    $_SESSION['user'] = $_POST['username'];
    header ("Location: home.php");
    }
    }
    ?>
    <html>
    <head>
    <title>ورود به مدریت</title>
    </head>
    <body>
    <form action="" method="POST">
    نام کاربری:<input type="text" name="username" size="20">
    <br/>
    رمز عبور:<input type="password" name="password" size="20">
    <br/>
    <br/>
    <input type="submit" value="ورود" name="submit">
    </form>
    </body>

    </html>


    خیلی آسون بود... نه؟ جلسه بعدی میریم داخل مدیریت. و مراحل بعدی ایجاد دیتابیس و وارد کردن اطلاعات


    نکته مهم: توجه کنید که تمامی فایل های سایت شما باید charset شون روی UTF-8 without BOM باشه (با نرم افزار notepad++ میتونین اوکی کنید)

  6. #4
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض پاسخ : آموزش ساخت سیستم مدیریت محتوای ساده با php

    صفحه اصلی مدیریت :: فایل home.php موجود در پوشه admin

    همون طور که گفتم فایل home.php نقش داشبورد یا کنترل پنل مدیریت رو بازی میکنه
    همون طور که میدونید به این صفحه فقط باید مدیر دسترسی داشته باشه. یعنی کسی که نام کاربری و رمز عبور رو وارد کرده میتونه بیاد اینجا رو ببینه
    حالا چگونه؟ با استفاده از همون سشن یا جلسه ای که ایجاد کردیم و نامش رو گذاشتیم user

    در ابتدای فایل home مینویسیم:

    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_SESSION['user']) ) {
    if ( (isset(
    $_GET['logout'])) && ($_GET['logout'] == "true") )
    {
    unset (
    $_SESSION['user']);
    header ("Location: index.php");
    }
    ?>
    اگه کاربر وارد شده بود اینجا رو نشون میده

    <?php } else { header ("location: index.php"); } ?>


    توضیحات:
    ما در خط اول php رو شروع میکنیم
    در خط دوم سشن رو start میکنیم.
    در خط سوم میگیم اگه سشن ما (که در قسمت ورود گرفتیم) در user وجود داشت. اون وقت تمام زیر مجموعه رو نمایش بده.
    در خط اخر گفتیم. در غیر اینصورت برگرد به صفحه ورود (index.php)

    در خط چهارم میگیم اگه کاربر برای ما logout رو فرستاد و همچنین logout برابر با true بود اون وقت سشن user رو unset کن
    میشه به این صورت: http://site.ir/admin/home.php?logout=true

    (حالا unset چیه؟ و چیکار میکنه؟: وقتی کاربر یوزر و پسورد رو درست میزنه یک سشن به اسم user ایجاد میشه. این user وقتی برای شما set شده باشه به شما اجازه می ده به صفحات دیگه مدیریت سر بزنید... و وقتی unset میکنیم. دیگه متغیر user چیزی داخلش نیست که بتونه وارد مدیریت بشه)

    اون قسمتی هم که نوشتم "اگه کاربر وارد شده بود اینجا رو نشون میده" وقتی نشون داده میشه که کاربر وارد شده باشه... در غیر اینصورت برمیگرده به صفحه index یا همون ورود به مدیریت"

    حالا ما در فایل home.php داریم:
    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_SESSION['user']) ) {
    if ( (isset(
    $_GET['logout'])) && ($_GET['logout'] == "true") )
    {
    unset (
    $_SESSION['user']);
    header ("Location: index.php");
    }
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title> مدیریت سایت</title>
    <link href="files/style.css" rel="stylesheet" type="text/css">
    </head>
    <body>
    <div id="main">
    <img src="files/header.jpg" border="0">
    <div class="navbar">
    <ul>
    <li><a href="home.php">داشبورد</a></li>
    <li><a href="../index.php" target="_blank">نمایش سایت</a></li>
    </ul>
    </div>
    </div>


    <div id="sidebar">
    <ul>
    <li><a href="home.php">داشبورد</a></li>
    <li><a href="addnews.php">ارسال خبر جدید</a></li>
    <li><a href="addpage.php">ایجاد صفحه جدید</a></li>
    <li><a href="addlink.php">ارسال لینک جدید</a></li>
    <li><a href="news.php">مدیریت اخبار</a></li>
    <li><a href="pages.php">مدیریت صفحات</a></li>
    <li><a href="links.php">مدیریت لینک ها</a></li>
    <li><a href="homepage.php">مدیریت صفحه نخست</a></li>
    <li><a href="?logout=true"><font color="red"><b>خروج!</b></font></a></li>

    </ul>

    </div>



    <div class="content">
    <div class="top-text">داشبورد</div>
    به کنترل پنل مدیریت خوش آمدید. شما میتوانید از منوی سمت راست به مدیریت بخش های مورد نظر بپردازید

    </div>
    <div class="clear"></div>
    </div>
    </body></html>
    <?php } else { header ("location: index.php"); } ?>






    ما در این مرحله قسمت کنترل پنل مدیریت/ دسترسی مدیر به صفحات و همچنین خروج از مدیریت رو نوشتیم

  7. #5
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض پاسخ : آموزش ساخت سیستم مدیریت محتوای ساده با php

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

    برای اینکه بخوایم اخبار رو ارسال کنیم تا در دیتابیس ذخیره بشه باید ابتدا دیتابیس و table اخبار رو میسازیم. توضیحات زیادی در مورد نحوه ساخت دیتابیس نمیدم! چون چیز خاصی نداره. و محیط phpmyqdmin فارسی هست...

    خب ما میخوایم تیبل اخبار رو بسازیم. ابتدا یک دیتابیس مثلا با نام cms میسازیم.
    داخل دیتابیس cms ما یک table با نام news می سازیم. این news شامل مشخصات و داده های اخبار هست

    ما تو این تیبل (table) چه فیلد هایی داریم؟
    فیلد id از نوع عددی (int) هست و به صورت خودکار به ترتیب عدد داده میشه (AUTO_INCREMENT هست) ما با id هر خبر رو صدا میکنیم و از دیتابیس میخوایم که خبر رو بر اساس id اون نشون بده. چون این id به صورت یکتا هست (تکراری نیست)

    فیلد title که قراره عنوان هر خبر داخلش ذخیره بشه . از نوع متنی (text)
    فیلد content که قراره خلاصه هر خبر داخلش باشه . از نوع متنی (text)
    فیلد fullcontent که قرار متن کامل خبر داخلش باشه . از نوع متنی (text)
    فیلد date که قراره تاریخ ارسال خبر داخلش ذخیره بشه. از نوع VARCHAR (اندازه 20)
    و همون طور که گفتم id کلید هر فیلد هست

    تیبل news ما شد این:
    کد:

    CREATE TABLE `news` ( `id` INT NOT NULL AUTO_INCREMENT , `title` TEXT NOT NULL , `content` TEXT NOT NULL , `fullcontent` TEXT NOT NULL , `date` VARCHAR( 20 ) NOT NULL , PRIMARY KEY ( `id` ) ) TYPE = MYISAM;
    میتونید از طریق import داخل phpmyadmin بریزید داخل دیتابیستون

  8. #6
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض پاسخ : آموزش ساخت سیستم مدیریت محتوای ساده با php

    میرسیم به بخش ارسال خبر و همچنین ویرایش خبر

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

    کدهای بخش فایل addnews.php به شرح زیر هست.

    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_SESSION['user']) ) {
    if ( (isset(
    $_GET['logout'])) && ($_GET['logout'] == "true") )
    {
    unset (
    $_SESSION['user']);
    header ("Location: index.php");
    }
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>مدیریت سایت - ارسال خبر جدید</title>
    <link href="files/style.css" rel="stylesheet" type="text/css">
    <!-- jQuery and jQuery UI -->
    <script src="elrte-1.2/js/jquery-1.4.4.min.js" type="text/javascript" charset="utf-8"></script>
    <script src="elrte-1.2/js/jquery-ui-1.8.7.custom.min.js" type="text/javascript" charset="utf-8"></script>
    <link rel="stylesheet" href="elrte-1.2/css/smoothness/jquery-ui-1.8.7.custom.css" type="text/css" media="screen" charset="utf-8">

    <!-- elRTE -->
    <script src="elrte-1.2/js/elrte.min.js" type="text/javascript" charset="utf-8"></script>
    <link rel="stylesheet" href="elrte-1.2/css/elrte.min.css" type="text/css" media="screen" charset="utf-8">

    <!-- elRTE translation messages -->
    <script src="elrte-1.2/js/i18n/elrte.fa.js" type="text/javascript" charset="utf-8"></script>

    <script type="text/javascript" charset="utf-8">
    $().ready(function() {
    var opts = {
    cssClass : 'el-rte',
    lang : 'fa',
    height : 300,
    toolbar : 'normal',
    cssfiles : ['elrte-1.2/css/elrte-inner.css']
    }
    $('#editor').elrte(opts);
    })

    $().ready(function() {
    var opts = {
    cssClass : 'el-rte',
    lang : 'fa',
    height : 300,
    toolbar : 'normal',
    cssfiles : ['elrte-1.2/css/elrte-inner.css']
    }
    $('#more').elrte(opts);
    })
    </script>
    </head>
    <body>

    <?php
    if ( isset($_POST['go']) && ($_POST['go'] == "add") )
    {
    include
    "config.php";
    $add = mysql_query ("INSERT INTO `news` VALUES ('', '".$_POST['newstitle']."', '".$_POST['newscontent']."', '".$_POST['newsfullcontent']."', '".mktime()."')");
    if (
    $add )
    {
    $status = '<div class="ok">خبر جدید با موفقیت ثبت شد.</div>';
    }
    else {
    $status = '<div class="error">متاسفانه مشکلی در ثبت خبر جدید وجود دارد.</div>'; }
    }
    elseif ( isset(
    $_POST['go']) && ($_POST['go'] == "edit") )
    {
    include
    "config.php";
    $edit = mysql_query ("UPDATE `news` SET `title` = '".$_POST['newstitle']."', `content` = '".$_POST['newscontent']."', `fullcontent` = '".$_POST['newsfullcontent']."' WHERE `id` = '".$_POST['id']."' LIMIT 1");
    if (
    $edit )
    {
    $status = '<div class="ok">تغییرات با موفقیت اعمال شدند.</div>';
    }
    else {
    $status = '<div class="error">متاسفانه مشکلی در ثبت تغییرات وجود دارد</div>'; }
    }
    if ( isset(
    $_GET['editnews']) && ($_GET['editnews'] !== "") )
    {
    include
    "config.php";
    $Query = mysql_query("SELECT * FROM `news` WHERE `id` = '".intval($_GET['editnews'])."' LIMIT 1");
    $row_news = mysql_fetch_array($Query);
    }
    ?>

    <div id="main">
    <img src="files/header.jpg" border="0">
    <div class="navbar">
    <ul>
    <li><a href="home.php">داشبورد</a></li>
    <li><a href="../index.php" target="_blank">نمایش سایت</a></li>
    </ul>
    </div>
    </div>


    <div id="sidebar">
    <ul>
    <li><a href="home.php">داشبورد</a></li>
    <li><a href="addnews.php">ارسال خبر جدید</a></li>
    <li><a href="addpage.php">ایجاد صفحه جدید</a></li>
    <li><a href="addlink.php">ارسال لینک جدید</a></li>
    <li><a href="news.php">مدیریت اخبار</a></li>
    <li><a href="pages.php">مدیریت صفحات</a></li>
    <li><a href="links.php">مدیریت لینک ها</a></li>
    <li><a href="homepage.php">مدیریت صفحه نخست</a></li>
    <li><a href="?logout=true"><font color="red">خروج!</b></font></a></li>

    </ul>

    </div>



    <div class="content">

    <div class="top-text">ارسال خبر جدید</div>
    <?php echo $status; ?>
    <div class="forms">
    <form method="post" action="">
    <input type="hidden" name="go" value="<?php echo (isset($row_news)) ? "edit" : "add"; ?>">
    <?php echo (isset($row_news)) ? '<input type="hidden" name="id" value="'.$row_news['id'].'">' : ''; ?>
    <label for="username"> عنوان خبر : </label>
    <input name="newstitle" type="text" value="<?php echo $row_news['title']; ?>" class="form" />
    <br /><br /><br />
    <label for="content"> خلاصه خبر : </label>
    <textarea name="newscontent" rows="10" cols="80" id="editor"><?php echo $row_news['content']; ?></textarea>
    <br /><br /><br /><br />
    <label for="fullcontent"> ادامه مطلب : </label>
    <textarea name="newsfullcontent" rows="10" cols="80" id="more"><?php echo $row_news['fullcontent']; ?></textarea>
    <br /><br /><br /><br />
    <input type="submit" value="ارسال خبر" name="submit">
    </form>
    </div>

    </div>
    <div class="clear"></div>
    </div>
    </body></html>
    <?php } else { header ("location: index.php"); } ?>


    حالا شروع میکنیم به توضیح دادن هر قسمت از فایل Addnews.php

    بررسی ورود مدیر:
    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_SESSION['user']) ) {
    if ( (isset(
    $_GET['logout'])) && ($_GET['logout'] == "true") )
    {
    unset (
    $_SESSION['user']);
    header ("Location: index.php");
    }
    ?>


    در ابتدا ما مثل صفحه Home.php بررسی میکنیم که کاربر وارد شده یا نه
    -------------------------

    کد های مربوط به قالب و ادیتور:

    کد HTML:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>مدیریت سایت - ارسال خبر جدید</title> <link href="files/style.css" rel="stylesheet" type="text/css"> <!-- jQuery and jQuery UI --> <script src="elrte-1.2/js/jquery-1.4.4.min.js" type="text/javascript" charset="utf-8"></script> <script src="elrte-1.2/js/jquery-ui-1.8.7.custom.min.js" type="text/javascript" charset="utf-8"></script> <link rel="stylesheet" href="elrte-1.2/css/smoothness/jquery-ui-1.8.7.custom.css" type="text/css" media="screen" charset="utf-8"> <!-- elRTE --> <script src="elrte-1.2/js/elrte.min.js" type="text/javascript" charset="utf-8"></script> <link rel="stylesheet" href="elrte-1.2/css/elrte.min.css" type="text/css" media="screen" charset="utf-8"> <!-- elRTE translation messages --> <script src="elrte-1.2/js/i18n/elrte.fa.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript" charset="utf-8"> $().ready(function() { var opts = { cssClass : 'el-rte', lang : 'fa', height : 300, toolbar : 'normal', cssfiles : ['elrte-1.2/css/elrte-inner.css'] } $('#editor').elrte(opts); }) $().ready(function() { var opts = { cssClass : 'el-rte', lang : 'fa', height : 300, toolbar : 'normal', cssfiles : ['elrte-1.2/css/elrte-inner.css'] } $('#more').elrte(opts); }) </script> </head> <body>
    این کد ها شامل کد های قالب و کد های html ,java مربوط به ادیتور هست. که قراره داخل textarea ها لود بشه

    --------------

    کد های php شامل ارسال و ویرایش خبر:

    کد PHP:
    if ( isset($_POST['go']) && ($_POST['go'] == "add") )
    {
    include
    "config.php";
    $add = mysql_query ("INSERT INTO `news` VALUES ('', '".$_POST['newstitle']."', '".$_POST['newscontent']."', '".$_POST['newsfullcontent']."', '".mktime()."')");
    if (
    $add )
    {
    $status = '<div class="ok">خبر با موفقیت ارسال شد</div>';
    }
    else {
    $status = '<div class="error">مشکلی در ارسال خبر وجود دارد. دوباره امتحان کنید</div>'; }
    }


    ما در ابتدا بررسی میکنیم که اگر از فرم ارسال خبر go ارسال شد و همچنین این go برابر با add بود اون وقت مقدار های داخل فرم که شامل عنوان خبر newstitle و متن خبر newscontent و همچنین ادامه مطلب newsfullcontent هست به ترتیب بریز داخل table خبر که همون news باشه

    بعدش به وسیله متغیر add میتونیم بفهمیم که مقدار ها ریخته شده داخل دیتابیس یا نه. در اینجا شرط میزاریم براش که اگه خبر ارسال شده بود پیغام " خبر با موفقیت ارسال شد " رو بریز تو متغیر status
    در غیر اینصورت مقدار "مشکلی در ارسال خبر وجود دارد. دوباره امتحان کنید" رو بریز داخل متغیر status

    متغیر status قراره بعد از ارسال موفقیت امیز یا مشکل دار هر خبر چاپ بشه...
    --------------

    ویرایش خبر:
    کد PHP:
    elseif ( isset($_POST['go']) && ($_POST['go'] == "edit") )
    {
    include
    "config.php";
    $edit = mysql_query ("UPDATE `news` SET `title` = '".$_POST['newstitle']."', `content` = '".$_POST['newscontent']."', `fullcontent` = '".$_POST['newsfullcontent']."' WHERE `id` = '".$_POST['id']."' LIMIT 1");
    if (
    $edit )
    {
    $status = '<div class="ok">خبر با موفقیت ویرایش شد</div>';
    }
    else {
    $status = '<div class="error">مشکلی در ویرایش ثبت خبر وجود دارد.دوباره امتحان کنید</div>'; }
    }


    این قسمت بعد از شرط ارسال خبر اجرا میشه! یعنی اگه کاربر به جای add که همون ارسال خبر باشه از فرم مقدار edit اومد دستورهای زیر رو اجرا کن. یعنی: مقدار های عنوان خبر, متن خبر و ادامه مطلب رو بر اساس id اون خبر آپدیت کن(جایگزین کن)

    در اینجا ما از طریق متغیر edit میتونیم بفهمیم که با موفقیت خبر اپدیت شد یا نه؟
    میگیم در صورتی که خبر تو دیتابیس در جدول news آپدیت شد متغیر status برابر هست با "خبر با موفقیت ویرایش شد" در غیر اینصورت "مشکلی در ویرایش ثبت خبر وجود دارد.دوباره امتحان کنید" وارد status میشه
    همون طور که گفتم status بعدا برای مدیر نمایش داده میشه

  9. #7
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض پاسخ : آموزش ساخت سیستم مدیریت محتوای ساده با php

    حالا چطور هر خبر رو برای ویرایش از دیتابیس فراخوانی کنیم؟
    اینطوری:
    کد PHP:
    if ( isset($_GET['editnews']) && ($_GET['editnews'] !== "") )
    {
    include
    "config.php";
    $Query = mysql_query("SELECT * FROM `news` WHERE `id` = '".intval($_GET['editnews'])."' LIMIT 1");
    $row_news = mysql_fetch_array($Query);
    }


    در اینجا میگیم در صورتی که کاربر بوسیله get مقدار editnews رو برای ما فرستاد و همچنین editnews ارسال شده خالی نبود اون وقت اون مقدار editnews که عدد (id) خبر تو دیتابیس هست رو از داخل تیبل نمایش بده!

    حالا کجا نمایش بده؟
    داخل value یا همون مقدار فرم ما.
    چطوری؟
    اینطوری:

    کد PHP:
    <div class="content">

    <div class="top-text">ارسال خبر جدید</div>
    <?php echo $status; ?>
    <div class="forms">
    <form method="post" action="">
    <input type="hidden" name="go" value="<?php echo (isset($row_news)) ? "edit" : "add"; ?>">
    <?php echo (isset($row_news)) ? '<input type="hidden" name="id" value="'.$row_news['id'].'">' : ''; ?>
    <label for="username"> عنوان خبر : </label>
    <input name="newstitle" type="text" value="<?php echo $row_news['title']; ?>" class="form" />
    <br /><br /><br />
    <label for="content"> خلاصه خبر : </label>
    <textarea name="newscontent" rows="10" cols="80" id="editor"><?php echo $row_news['content']; ?></textarea>
    <br /><br /><br /><br />
    <label for="fullcontent"> ادامه مطلب : </label>
    <textarea name="newsfullcontent" rows="10" cols="80" id="more"><?php echo $row_news['fullcontent']; ?></textarea>
    <br /><br /><br /><br />
    <input type="submit" value="ارسال خبر" name="submit">
    </form>
    </div>

    </div>


    ما در ابتدا برای نمایش وضعیت خبر ارسال شده یا ویرایش شده status رو چاپ میکنیم تا مدیر از وضعیت خبر ارسالی آگاه باشه

    بعد ما دو فیلد مخفی "hidden" داریم که یکی برای اون دستورات php مشخص میکنیم این مقدار های ارسال شده برای ویرایش خبر هست یا ارسال خبر جدید
    فیلد دیگه id خبر رو مشخص میکنه (در صورتی که ما بخوایم یک خبر رو ویرایش کنیم)

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

    1.row_news چیه؟
    این متغیر ردیف هر فیلد رو برامون نمایش میده. این قسمت برای ویرایش خبر کاربرد داره. یعنی ما وقتی بخوایم خبر رو ویرایش کنیم باید مقدار های قبلیش رو ببینیم دیگه؟ برای همین مثلا در مقدار value عنوان خبر مینویسیم کد PHP:
    $row_news['title'];


    در آخرین خط فایل addnews.php هم ما شرط مدیر رو میبندیم (همون کدی که اول وارد کردیم تا بررسی کنیم مدیر وارد شده یا نه)

    کد PHP:
    <?php } else { header ("location: index.php"); } ?>

  10. #8
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض پاسخ : آموزش ساخت سیستم مدیریت محتوای ساده با php

    بخش هفتم

    مبحث: نمایش لیست اخبار, حذف خبر
    ---

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



    کد فایل news.php (کد این مرحله) به شرح زیر هست.

    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_SESSION['user']) ) {
    if ( (isset(
    $_GET['logout'])) && ($_GET['logout'] == "true") )
    {
    unset (
    $_SESSION['user']);
    header ("Location: index.php");
    }
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title> مدیریت سایت - مدیریت اخبار</title>
    <link href="files/style.css" rel="stylesheet" type="text/css">
    </head>
    <body>

    <?php
    include "config.php";
    if ( isset(
    $_GET['delete']) && !empty($_GET['delete']) )
    {
    $del = mysql_query ("DELETE FROM `news` WHERE `id` = '".intval($_GET['delete'])."' LIMIT 1");
    if (
    $del )
    {
    $status = '<div class="ok">خبر انتخاب شده با موفقیت از سایت حذف شد</div>';
    }
    else
    {
    $status = '<div class="error">مشکلی در حذف خبر وجود دارد!دوباره امتحان کنید</div>';
    }
    }
    ?>

    <div id="main">
    <img src="files/header.jpg" border="0">
    <div class="navbar">
    <ul>
    <li><a href="home.php">داشبورد</a></li>
    <li><a href="../index.php" target="_blank">نمایش سایت</a></li>
    </ul>
    </div>
    </div>


    <div id="sidebar">
    <ul>
    <li><a href="home.php">داشبورد</a></li>
    <li><a href="addnews.php">ارسال خبر جدید</a></li>
    <li><a href="addpage.php">ایجاد صفحه جدید</a></li>
    <li><a href="addlink.php">ارسال لینک جدید</a></li>
    <li><a href="news.php">مدیریت اخبار</a></li>
    <li><a href="pages.php">مدیریت صفحات</a></li>
    <li><a href="links.php">مدیریت لینک ها</a></li>
    <li><a href="homepage.php">مدیریت صفحه نخست</a></li>
    <li><a href="?logout=true"><font color="red">خروج!</font></a></li>

    </ul>

    </div>



    <div class="content">
    <div class="top-text">مدیریت اخبار</div>
    <php echo $status;?>

    <table id="box-table-a">
    <thead>
    <tr>
    <th scope="col">عنوان خبر</th>
    <th scope="col">تاریخ ارسال</th>
    <th scope="col">ویرایش</th>
    <th scope="col">حذف</th>
    </tr>
    </thead>
    <tfoot>
    <tr>
    <td colspan="3"><em>در حذف کردن اخبار دقت کنید</em></td>
    <td>&nbsp;</td>
    </tr>
    </tfoot>
    <tbody>
    <?php
    $Query
    = mysql_query ("SELECT * FROM `news` ORDER BY `id` DESC");
    while (
    $row_news = mysql_fetch_array($Query) ) {
    ?>
    <tr>
    <td><?php echo $row_news['title']; ?></td>
    <td><?php echo date("Y/n/d", $row_news['date']) ?></td>
    <td><a href="addnews.php?edit=<?php echo $row_news['id']; ?>"><img src="files/news_edit.png" border="0" title="ویرایش خبر" /></a></td>
    <td><a onclick="if (confirm('ایا از حذف خبر انتخاب شده مطمئن هستید؟')) window.location = '?delete=<?php echo $row_news['id']; ?>';" href="#"><img src="files/news_delete.png" border="0" title="حذف خبر" /></a></td>
    </tr>
    <?php } ?>
    </tbody>
    </table>

    </div>
    <div class="clear"></div>
    </div>
    </body></html>
    <?php } else { header ("location: index.php"); } ?>


    توضیحات:

    در ابتدا داریم:

    مثل تمامی فایل های مدیریت, در اینجا هم بررسی میکنیم که کاربر (مدیر) وارد شده یا نه. و کد های معمول html و css

    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_SESSION['user']) ) {
    if ( (isset(
    $_GET['logout'])) && ($_GET['logout'] == "true") )
    {
    unset (
    $_SESSION['user']);
    header ("Location: index.php");
    }
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title> مدیریت سایت - مدیریت اخبار</title>
    <link href="files/style.css" rel="stylesheet" type="text/css">
    </head>
    <body>


    سپس ما برای حذف خبر این کد ها رو داریم:
    کد PHP:

    <?php
    include "config.php";
    if ( isset(
    $_GET['delete']) && !empty($_GET['delete']) )
    {
    $del = mysql_query ("DELETE FROM `news` WHERE `id` = '".intval($_GET['delete'])."' LIMIT 1");
    if (
    $del )
    {
    $status = '<div class="ok">خبر انتخاب شده با موفقیت از سایت حذف شد</div>';
    }
    else
    {
    $status = '<div class="error">مشکلی در حذف خبر وجود دارد!دوباره امتحان کنید</div>';
    }
    }
    ?>


    خط اول php رو آغاز میکنیم.
    در خط دوم ما فایل کانفیگ رو فراخوانی میکنیم.
    در خط سوم ما یک شرط میزاریم. میگیم اگه توسط کاربر به مرورگر delete ارسال شد و همچنین مقدار delete خالی نبود اون وقت میگیم: از جدول news سطری رو که بر اساس مقدار delete میگیریم. (مثلا delete=2) حذف کن! وقتی بهش میگیم delete=2 میره بر اساس id اون خبر. سطر رو حذف میکنه
    در خط های بعد بررسی میکنیم اگه خبر حذف شد بگو خبر حذف شد و اگه حذف نشد بگو خبر حذف نشد!


    --------
    در اینجا ما کد های معمولی html قالب رو داریم:
    کد HTML:

    <div id="main"> <img src="files/header.jpg" border="0"> <div class="navbar"> <ul> <li><a href="home.php">داشبورد</a></li> <li><a href="../index.php" target="_blank">نمایش سایت</a></li> </ul> </div> </div> <div id="sidebar"> <ul> <li><a href="home.php">داشبورد</a></li> <li><a href="addnews.php">ارسال خبر جدید</a></li> <li><a href="addpage.php">ایجاد صفحه جدید</a></li> <li><a href="addlink.php">ارسال لینک جدید</a></li> <li><a href="news.php">مدیریت اخبار</a></li> <li><a href="pages.php">مدیریت صفحات</a></li> <li><a href="links.php">مدیریت لینک ها</a></li> <li><a href="homepage.php">مدیریت صفحه نخست</a></li> <li><a href="?logout=true"><font color="red">خروج!</font></a></li> </ul> </div> <div class="content"> <div class="top-text">مدیریت اخبار</div> <php echo $status;?>
    --------------

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


    کد PHP:
    <table id="box-table-a">
    <thead>
    <tr>
    <th scope="col">عنوان خبر</th>
    <th scope="col">تاریخ ارسال</th>
    <th scope="col">ویرایش</th>
    <th scope="col">حذف</th>
    </tr>
    </thead>
    <tfoot>
    <tr>
    <td colspan="3"><em>در حذف کردن اخبار دقت کنید</em></td>
    <td>&nbsp;</td>
    </tr>
    </tfoot>
    <tbody>
    <?php
    $Query
    = mysql_query ("SELECT * FROM `news` ORDER BY `id` DESC");
    while (
    $row_news = mysql_fetch_array($Query) ) {
    ?>
    <tr>
    <td><?php echo $row_news['title']; ?></td>
    <td><?php echo date("Y/n/d", $row_news['date']) ?></td>
    <td><a href="addnews.php?edit=<?php echo $row_news['id']; ?>"><img src="files/news_edit.png" border="0" title="ویرایش خبر" /></a></td>
    <td><a onclick="if (confirm('ایا از حذف خبر انتخاب شده مطمئن هستید؟')) window.location = '?delete=<?php echo $row_news['id']; ?>';" href="#"><img src="files/news_delete.png" border="0" title="حذف خبر" /></a></td>
    </tr>
    <?php } ?>
    </tbody>
    </table>


    ما ابتدا جدول اخبار رو انتخاب میکنیم. و با حلقه while میگیم اخبار رو لیست کن. بر اساس id هر خبر...
    و ما با row_news مقدار هر فیلد رو برمیگردونیم.
    در اخر هم حلقه whileرو میبندیم

    --------------
    در آخر هم (مثل همیشه) شرط بررسی ورود مدیر رو میبندیم
    کد PHP:
    </div>
    <div class="clear"></div>
    </div>
    </body></html>
    <?php } else { header ("location: index.php"); } ?>


    دوستان . از این مرحله به بعد برای ارسال صفحه,ارسال لینک,مدیریت صفحه و مدیریت لینک دقیقا باید همین مراحلی که برای ارسال اخبار رفتیم رو طی کنیم! یعنی هیچ فرقی نداره! فقط باید به جای جدول news که اخبار باشه جدول صفحات و لینک ها رو انتخاب کنیم. تنها ممکنه تعداد فیلد ها تفاوت داشته باشه!

    بنابر این اگه این دو مرحله (صفحه ارسال خبر و صفحه مدیریت اخبار) رو خوب فهمیده باشید بقیه مراحل براتون تکراری هست! و بسیار ساده...

  11. #9
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض پاسخ : آموزش ساخت سیستم مدیریت محتوای ساده با php

    ساخت جدول صفحات:

    کد PHP:
    CREATE TABLE `page` (
    `
    id` INT NOT NULL AUTO_INCREMENT ,
    `
    title` TEXT NOT NULL ,
    `
    content` TEXT NOT NULL ,
    `
    date` VARCHAR( 20 ) NOT NULL ,
    PRIMARY KEY ( `id` )
    )
    TYPE = MYISAM;


    در اینجا ما مرحله جدید, یعنی مرحله طراحی جدول صفحات رو شروع میکنیم.

    یک تیبل/جدول با نام page ایجاد میکنیم.

    ما قراره در این جدول فیلد های زیر رو داشته باشیم:

    id = شناسه هر خبر (کلید ما هست)
    title = عنوان صفحات
    content = متن صفحات
    date = تاریخ ارسال خبر


    ساخت جدول به پایان رسید. مرحله بعدی ... ایجاد و ارسال صفحه

  12. #10
    کاربر اخراج شده
    تاریخ عضویت
    May 2013
    نوشته ها
    100
    تشکر تشکر کرده 
    3
    تشکر تشکر شده 
    409
    تشکر شده در
    68 پست

    پیش فرض پاسخ : آموزش ساخت سیستم مدیریت محتوای ساده با php

    بخش نهم: ایجاد و ارسال صفحه جدید

    بخش ارسال صفحه (addpage.php) دقیقا شبیه به فایل addnews.php هست! و هیچ تفاوتی نداره. تنها تفاوت اون, وارد کردن (insert) کردن اطلاعات درون جدول صفحات (pages) هست! همین

    سورس کامل صفحه Addpage.php به شرح زیر هست...
    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_SESSION['user']) ) {
    if ( (isset(
    $_GET['logout'])) && ($_GET['logout'] == "true") )
    {
    unset (
    $_SESSION['user']);
    header ("Location: index.php");
    }
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>مدیریت سایت - ایجاد صفحه جدید</title>
    <link href="files/style.css" rel="stylesheet" type="text/css">
    <!-- jQuery and jQuery UI -->
    <script src="elrte-1.2/js/jquery-1.4.4.min.js" type="text/javascript" charset="utf-8"></script>
    <script src="elrte-1.2/js/jquery-ui-1.8.7.custom.min.js" type="text/javascript" charset="utf-8"></script>
    <link rel="stylesheet" href="elrte-1.2/css/smoothness/jquery-ui-1.8.7.custom.css" type="text/css" media="screen" charset="utf-8">

    <!-- elRTE -->
    <script src="elrte-1.2/js/elrte.min.js" type="text/javascript" charset="utf-8"></script>
    <link rel="stylesheet" href="elrte-1.2/css/elrte.min.css" type="text/css" media="screen" charset="utf-8">

    <!-- elRTE translation messages -->
    <script src="elrte-1.2/js/i18n/elrte.fa.js" type="text/javascript" charset="utf-8"></script>

    <script type="text/javascript" charset="utf-8">
    $().ready(function() {
    var opts = {
    cssClass : 'el-rte',
    lang : 'fa',
    height : 300,
    toolbar : 'normal',
    cssfiles : ['elrte-1.2/css/elrte-inner.css']
    }
    $('#editor').elrte(opts);
    })

    $().ready(function() {
    var opts = {
    cssClass : 'el-rte',
    lang : 'fa',
    height : 300,
    toolbar : 'normal',
    cssfiles : ['elrte-1.2/css/elrte-inner.css']
    }
    $('#more').elrte(opts);
    })
    </script>
    </head>
    <body>

    <?php
    if ( isset($_POST['go']) && ($_POST['go'] == "add") )
    {
    include
    "config.php";
    $add = mysql_query ("INSERT INTO `page` VALUES ('', '".$_POST['pagetitle']."', '".$_POST['pagecontent']."', '".mktime()."')");
    if (
    $add )
    {
    $status = '<div class="ok">صفحه جدید با موفقیت ثبت شد</div>';
    }
    else {
    $status = '<div class="error">متاسفانه در ایجاد صفحه مشکلی به وجود آمده است! دوباره سعی کنید</div>'; }
    }
    elseif ( isset(
    $_POST['go']) && ($_POST['go'] == "edit") )
    {
    include
    "config.php";
    $edit = mysql_query ("UPDATE `page` SET `title` = '".$_POST['pagetitle']."', `content` = '".$_POST['pagecontent']."' WHERE `id` = '".$_POST['id']."' LIMIT 1");
    if (
    $edit )
    {
    $status = '<div class="ok">تغییرات با موفقیت اعمال شدند.</div>';
    }
    else {
    $status = '<div class="error">متاسفانه مشکلی در ثبت تغییرات وجود دارد</div>'; }
    }
    if ( isset(
    $_GET['editpage']) && ($_GET['editpage'] !== "") )
    {
    include
    "config.php";
    $Query = mysql_query("SELECT * FROM `page` WHERE `id` = '".intval($_GET['editpage'])."' LIMIT 1");
    $row_page = mysql_fetch_array($Query);
    }
    ?>

    <div id="main">
    <img src="files/header.jpg" border="0">
    <div class="navbar">
    <ul>
    <li><a href="home.php">داشبورد</a></li>
    <li><a href="../index.php" target="_blank">نمایش سایت</a></li>
    </ul>
    </div>
    </div>


    <div id="sidebar">
    <ul>
    <li><a href="home.php">داشبورد</a></li>
    <li><a href="addnews.php">ارسال خبر جدید</a></li>
    <li><a href="addpage.php">ایجاد صفحه جدید</a></li>
    <li><a href="addlink.php">ارسال لینک جدید</a></li>
    <li><a href="news.php">مدیریت اخبار</a></li>
    <li><a href="pages.php">مدیریت صفحات</a></li>
    <li><a href="links.php">مدیریت لینک ها</a></li>
    <li><a href="homepage.php">مدیریت صفحه نخست</a></li>
    <li><a href="?logout=true"><font color="red">خروج!</b></font></a></li>

    </ul>

    </div>



    <div class="content">

    <div class="top-text">ایجاد صفحه جدید</div>
    <?php echo $status; ?>
    <div class="forms">
    <form method="post" action="">
    <input type="hidden" name="go" value="<?php echo (isset($row_page)) ? "edit" : "add"; ?>">
    <?php echo (isset($row_page)) ? '<input type="hidden" name="id" value="'.$row_page['id'].'">' : ''; ?>
    <label for="username"> عنوان صفحه : </label>
    <input name="pagetitle" type="text" value="<?php echo $row_page['title']; ?>" class="form" />
    <br /><br /><br />
    <label for="content"> متن صفحه: </label>
    <textarea name="pagecontent" rows="10" cols="80" id="editor"><?php echo $row_page['content']; ?></textarea>
    <br /><br /><br /><br />

    <input type="submit" value="ایجاد صفحه" name="submit">
    </form>
    </div>

    </div>
    <div class="clear"></div>
    </div>
    </body></html>
    <?php } else { header ("location: index.php"); } ?>


    زیاد توضیح نمیدم! چون قبلا این مراحل رو رفتیم...

    --------------
    کد های بررسی ورود مدیر:
    کد PHP:
    <?php
    session_start
    ();
    if ( isset(
    $_SESSION['user']) ) {
    if ( (isset(
    $_GET['logout'])) && ($_GET['logout'] == "true") )
    {
    unset (
    $_SESSION['user']);
    header ("Location: index.php");
    }
    ?>


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

    --------------
    کد های HTML سربرگ (header)

    کد HTML:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>مدیریت سایت - ایجاد صفحه جدید</title> <link href="files/style.css" rel="stylesheet" type="text/css"> <!-- jQuery and jQuery UI --> <script src="elrte-1.2/js/jquery-1.4.4.min.js" type="text/javascript" charset="utf-8"></script> <script src="elrte-1.2/js/jquery-ui-1.8.7.custom.min.js" type="text/javascript" charset="utf-8"></script> <link rel="stylesheet" href="elrte-1.2/css/smoothness/jquery-ui-1.8.7.custom.css" type="text/css" media="screen" charset="utf-8"> <!-- elRTE --> <script src="elrte-1.2/js/elrte.min.js" type="text/javascript" charset="utf-8"></script> <link rel="stylesheet" href="elrte-1.2/css/elrte.min.css" type="text/css" media="screen" charset="utf-8"> <!-- elRTE translation messages --> <script src="elrte-1.2/js/i18n/elrte.fa.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript" charset="utf-8"> $().ready(function() { var opts = { cssClass : 'el-rte', lang : 'fa', height : 300, toolbar : 'normal', cssfiles : ['elrte-1.2/css/elrte-inner.css'] } $('#editor').elrte(opts); }) $().ready(function() { var opts = { cssClass : 'el-rte', lang : 'fa', height : 300, toolbar : 'normal', cssfiles : ['elrte-1.2/css/elrte-inner.css'] } $('#more').elrte(opts); }) </script> </head>
    کد های قالب که html هست و همچنین کد های ادیتور پیشرفته ...

    -------------------

    کد ها و دستورات شرطی:

    کد PHP:
    <?php
    if ( isset($_POST['go']) && ($_POST['go'] == "add") )
    {
    include
    "config.php";
    $add = mysql_query ("INSERT INTO `page` VALUES ('', '".$_POST['pagetitle']."', '".$_POST['pagecontent']."', '".mktime()."')");
    if (
    $add )
    {
    $status = '<div class="ok">صفحه جدید با موفقیت ثبت شد</div>';
    }
    else {
    $status = '<div class="error">متاسفانه در ایجاد صفحه مشکلی به وجود آمده است! دوباره سعی کنید</div>'; }
    }
    elseif ( isset(
    $_POST['go']) && ($_POST['go'] == "edit") )
    {
    include
    "config.php";
    $edit = mysql_query ("UPDATE `page` SET `title` = '".$_POST['pagetitle']."', `content` = '".$_POST['pagecontent']."' WHERE `id` = '".$_POST['id']."' LIMIT 1");
    if (
    $edit )
    {
    $status = '<div class="ok">تغییرات با موفقیت اعمال شدند.</div>';
    }
    else {
    $status = '<div class="error">متاسفانه مشکلی در ثبت تغییرات وجود دارد</div>'; }
    }
    if ( isset(
    $_GET['editpage']) && ($_GET['editpage'] !== "") )
    {
    include
    "config.php";
    $Query = mysql_query("SELECT * FROM `page` WHERE `id` = '".intval($_GET['editpage'])."' LIMIT 1");
    $row_page = mysql_fetch_array($Query);
    }
    ?>


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

    در خط اول php شروع میشه
    در خط دوم میگیم در صورتی که go ارسال شد و مقدار این go برابر با add بود. مقادیر ورودی رو insert (بریز داخل) جدول اخبار

    و بعد میگیم اگه با موفقیت انجام شد جمله ی "صفحه جدید با موفقیت ثبت شد" رو بریز داخل status...
    همون طور که میدونید این status قراره چاپ بشه و بگه که آیا صفحه ایجاد شد یا نه...

    در صورتی که با موفقیت انجام نشد مقادیر "متاسفانه در ایجاد صفحه مشکلی به وجود آمده است! دوباره سعی کنید" رو بریز داخل status

    --
    در خط بعدی میگیم. در صورتی که کاربر go رو زده بود! ولی مقدار go برابر با edit بود. مقادیر گرفته شده از فرم رو بروز رسانی کن (update کن)
    این قسمت برای ویرایش صفحه هست...

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


    در قسمت آخر یک شرط دیگه ای میزاریم برای صدا کردن اون صفحه (برای ویرایش کردن اون صفحه به کار میره)



    ادامه در تاپیک بعدی...

صفحه 1 از 2 12 آخرینآخرین

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 5
    آخرين نوشته: September 5th, 2015, 21:25
  2. دانلود و آموزش نصب سیستم مدیریت محتوای سما Sama CRM
    توسط AmirHosein در انجمن سیستم های مدیریت محتوا
    پاسخ ها: 42
    آخرين نوشته: March 30th, 2015, 19:58
  3. آموزش تنظیمات فایل کانفیگ سیستم مدیریت محتوا
    توسط mahdivahedi در انجمن سیستم های مدیریت محتوا
    پاسخ ها: 7
    آخرين نوشته: June 4th, 2014, 14:44
  4. آموزش کار با سیستم مدیریت محتوای فراگ
    توسط a.n1 در انجمن مباحث دیگر
    پاسخ ها: 0
    آخرين نوشته: April 19th, 2013, 12:19
  5. دانلود کتاب آموزش کار با سیستم مدیریت محتوای فراگ
    توسط itmseven_gmail_com در انجمن مباحث دیگر
    پاسخ ها: 0
    آخرين نوشته: December 1st, 2012, 23:29

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •