• 13-05-2009, 11:04:18
    #1
    Üyeliği durduruldu
    Gerekenler:
    Mysql ve Php destekli web hosting
    Fck Editor (Dosya ektedir.)
    Html sayfanız var ve onu düzenlemek için her seferinde bilgisayarınızda düzenleyip ftpye atmanız gerekiyor. Bu işlem de birçok kişi için sıkıcı, biraz uzun ve her bilgisayarda da düzeleyemiyorsunuz. Bu soruna çözüm olması için aşağıdaki makaleyi yazdım. Umarım işinize yarar...
    Mysql veri tabanı oluşturuyoruz.(Bu konuda çok fazla makale var)
    Daha sonra Phpmyadmin'den aşağıdaki sql sorgulatıyoruz.
    SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
    CREATE TABLE `page` (
      `id` int(12) NOT NULL auto_increment,
      `page` text NOT NULL,
      PRIMARY KEY  (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
    INSERT INTO `page` VALUES (1, 'Örnek Sayfamız');
    Şimdi de .html sayfalarımızı php yapacağız. Bunun için sadece .html uzantısı yerine .php yapmamız gerekecek. (Bu işlem sonucunda sayfanıza php kodlar çalışacaktır.)
    Sayfamızın güncellenecek yerindeki kodları kesip bir yere kaydedelim(İçerisine gereksiz kısmı almayın). Sonra boş kalan kısım için şu kodu ekliyoruz.
    <?php
    //Mysql Bağlantısı Yapıyoruz
    $host            = "localhost"; //Genelde localhosttur
    $kullanici    = "root"; // Mysql kullanıcı adınız
    $sifre        = "123456";     // Mysql şifreniz
    $db                = "";    // Mysql veri tabanı adı
    $baglan    = mysql_connect($host,$kullanici,$sifre) or die("Bağlantı başarısız");
    mysql_select_db($db);
    mysql_query("SET NAMES 'latin5'");
    mysql_query("SET CHARACTER SET latin5");
    mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'");
    // Mysqldan veri çekiyoruz....
    @$id = 1; //Mysqldan çekmek istediğimiz sayfamızın idsi
    $sorgu = mysql_query("select * from page where id = '".$id."'");
    $yaz = mysql_fetch_array($sorgu);
    echo '
    '.$yaz['page'].'';
    ?>
    Bu işlemi yaptıktan sonra sayfanın güncel olacak yerinde Örnek Sayfamız yazcaktır. Yazmıyor ise mysql bilgilerinde yanlışlık vardır veya mysql sorgusunu yapmamışsınızdır.
    Şimdi sırada admin paneli sayfamız var. Aşağıdaki kodları admin.php olarak kaydedin.
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
        <link href="sample.css" rel="stylesheet" type="text/css" />
        <!-- TinyMCE -->
    <script type="text/javascript" src="jscripts/tiny_mce/tiny_mce.js"></script>
    <script type="text/javascript">
        tinyMCE.init({
            // General options
            mode : "textareas",
            theme : "advanced",
            language : "tr",
            plugins : "safari,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
            // Theme options
            theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
            theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
            theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
            theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak",
            theme_advanced_toolbar_location : "top",
            theme_advanced_toolbar_align : "left",
            theme_advanced_statusbar_location : "bottom",
            theme_advanced_resizing : true,
            // Example content CSS (should be your site CSS)
            content_css : "css/content.css",
            // Drop lists for link/image/media/template dialogs
            template_external_list_url : "lists/template_list.js",
            external_link_list_url : "lists/link_list.js",
            external_image_list_url : "lists/image_list.js",
            media_external_list_url : "lists/media_list.js",
            // Replace values for the template plugin
            template_replace_values : {
                username : "Some User",
                staffid : "991234"
            }
        });
    </script>
    <!-- /TinyMCE -->
    </head><?php
    //Mysql Bağlantısı Yapıyoruz
    $host            = "localhost"; //Genelde localhosttur
    $kullanici    = "root"; // Mysql kullanıcı adınız
    $sifre        = "123456";     // Mysql şifreniz
    $db                = "";    // Mysql veri tabanı adı
    $baglan    = mysql_connect($host,$kullanici,$sifre) or die("Bağlantı başarısız");
    mysql_select_db($db);
    mysql_query("SET NAMES 'latin5'");
    mysql_query("SET CHARACTER SET latin5");
    mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'"); 
    echo '<body>';
    @$id = $_GET['id'];
    $sorgu = mysql_query("select * from page where id = '".$id."'");
    $yaz = mysql_fetch_array($sorgu);
    echo '<form method="POST" action="admin2.php">
    <center><input name="id" type="text" value= "'.$yaz['id'].'" size="20" style="display:none"><textarea name="page" id="page" cols="150" rows="30">'.$yaz['page'].'</textarea>  <input type="submit" value="Güncelle"></center></p>
    </form></body>
    ';
    ?>
    Aşağıdaki kodu ise admin2.php olarak kaydedelim.
    <?php
    $host            = "localhost"; //Genelde localhosttur
    $kullanici    = "root"; // Mysql kullanıcı adınız
    $sifre        = "123456";     // Mysql şifreniz
    $db                = "";    // Mysql veri tabanı adı
    $baglan    = mysql_connect($host,$kullanici,$sifre) or die("Bağlantı başarısız");
    mysql_select_db($db);
    mysql_query("SET NAMES 'latin5'");
    mysql_query("SET CHARACTER SET latin5");
    mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'");
    $sql = "SELECT * FROM page WHERE id='$id'";
    mysql_query ("UPDATE page SET page='$page' WHERE id='$id'");
    mysql_close();
    echo "Sayfa Güncellendi";
    ?>
    admin.php kurulu olduğu yere ekteki TinyMCE.rar dosyasının içindekileri de atalım.
    Kendi admin panelimizi yapmış olduk.
    Sayfa düzenlemesi için admin.php?id=1 olarak gireceğiz.(1 kısmı sayfamızın idsi)
    Birden fazla sayfayı admin panelinden düzenlemek istiyorsanız php myadminden yeni veri ekleyip, daha sonra ilk aşamadaki kodda yani (

    Sayfamızın güncellenecek yerindeki kodları kesip bir yere kaydedelim(İçerisine gereksiz kısmı almayın). Sonra boş kalan kısım için şu kodu ekliyoruz.)
    kısmının altındaki koddaki işlemi yapıyoruz ve id kısmını sayfamızın idsini giriyoruz. Örneğin ikinci sayfamız için orayı "@$id = 2;"
    şeklinde düzenliyoruz.
    +Karakter Hatası Düzeltilmiştir.
    TinyMCE Download
    Makale tamamen tarafımca yazılmıştır.
  • 14-05-2009, 11:11:53
    #2
    Üyeliği durduruldu
    çok yararlı bir makale olmuş. tebrikler.
  • 14-05-2009, 11:27:00
    #3
    Üyeliği durduruldu
    Saolun bir çok kişinin eksik olduğu konu bence o nedenle ilk olarak paylaştım. Devamını da getirmeyi planlıyorum
  • 14-05-2009, 12:21:38
    #4
    Üyeliği durduruldu
    Gerçekten yararlı olmuş ayrıca eğer sorun olmazsa demo koyabilirsen çok güzel olur.
  • 21-05-2009, 19:37:28
    #5
    Üyeliği durduruldu
    Güzel paylaşım. ++
  • 21-05-2009, 20:16:38
    #6
    Üyeliği durduruldu
    edit: Hocam,TR karakter hatası çıkıyor sayfada,ayrıca yazılan yazılar da düzenlenmiyor. admin2.php dosyasında,
    Alıntı
    Notice: Undefined variable: id in c:\program files\easyphp1-8\www\html\admin2.php on line 9

    Notice: Undefined variable: page in c:\program files\easyphp1-8\www\html\admin2.php on line 10

    Notice: Undefined variable: id in c:\program files\easyphp1-8\www\html\admin2.php on line 10
    Sayfa Güncellendi
    diyor fakat güncellenmiyor. Nedendir acaba?
  • 21-05-2009, 20:21:00
    #7
    Teşekkürler çok iyi paylaşım.
  • 21-05-2009, 20:22:25
    #8
    Alıntı
    SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
    CREATE TABLE `page` (
    `id` int(12) NOT NULL auto_increment,
    `page` text NOT NULL,
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
    INSERT INTO `page` VALUES (1, 'Örnek Sayfamız');
    burayı sorgulattığımda

    Alıntı
    Hata

    SQL sorgusu:

    CREATE TABLE `page` (
    `id` int( 12 ) NOT NULL AUTO_INCREMENT ,
    `page` text NOT NULL ,
    PRIMARY KEY ( `id` )
    ) ENGINE = MYISAM DEFAULT CHARSET = utf8 AUTO_INCREMENT =2;

    MySQL çıktısı: Belgeler
    #1046 - No database selected
    verdi acaba localhostta olduğu içinmi?
  • 21-05-2009, 20:24:56
    #9
    Teşekkürler + Rep