السبت، يناير 29، 2011

درس : كود أضافة بيانات لقاعدة البيانات

بسم الله الرحمن الرحيم 

السﻻم عليكم ورحمة الله وبركاته 

كيف الحال الجميع 

إن شاء الله بخير ؟

اليوم ولله الحمد بعد بحث دام يومين و نصف لطريقة عرض الكود بأفضل شكل و افضل صورة 

اليوم درسنا او موضوعنا يتحدث عن صفحة صفحة إدخال البيانات لقاعدة البيانات 

في الحقيقه انا جالس اعمل تجربتي في برمجة سكربت سجل زوار وخلصة من صفحة الـ add.php

وفي هذا الدرس نحتاج فقط إلى صفحتين 

صفحة الـ add.php وصفحة code.php

صفحة الـ add.php هذي اللي من خﻻلها راح ندخل البيانات إلى قاعدة البيانات 

و الحمد لله الصفحة بها جميع دوال الحماية إن شاء الله

وصفحة الكود code.php 

هذي فيها كود الحماية او ما يسمى captcha في لغة البرمجة

اي كود منع الأسبام

المهم ما اطول عليكم اخليكم الان  مع كود صفحة  add.php

كود php



<?php session_start() ; ?>
<html dir="rtl">
    <head>
        <title><?php $sitename ?></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link rel="stylesheet" href="them/style.css" type="text/css" />
    </head>
    <body>
<?php
/*
 ------- جدول التعليقات --------
 CREATE TABLE `gbook`.`comm` (
`id` INT NOT NULL AUTO_INCREMENT ,
`name` VARCHAR( 255 ) NOT NULL ,
`email` VARCHAR( 255 ) NOT NULL ,
`msg` TEXT NOT NULL ,
`date` DATE NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM ;
----------- نهاية الجدول ------
 */
include 'config.php';

extract($_POST) ;

$name = strip_tags(trim(mysql_real_escape_string($name))) ;

$email = strip_tags(trim(mysql_real_escape_string($email))) ;

$site = strip_tags(trim(mysql_real_escape_string($site))) ;

$msg = strip_tags(trim(mysql_real_escape_string($msg))) ;

$date = date("d - n - Y - H:j") ;

if(isset($submit) and $submit == 'send'){
    if(empty($name) or empty($email) or empty($site) or empty($msg)) {
                  echo"
            <div calss='adderror'>
            <table border='0' align='center' width='35%' padding='10'>
            <tr>
            <td align='center'>
لم تقم بإدخال جميع الحقول الرجاء المحاولة مرة أخرى
            </td>
            </tr>
            </table>
            </div>
            ";
    }elseif(!eregi('^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+.([a-zA-z]{2,4})$',$email)){
           echo"
            <div calss='adderror'>
            <table border='0' align='center' width='35%' padding='10'>
            <tr>
            <td align='center'>
لم تقم بإدخال الإيميل بشكل صحيح الرجاء المحاولة مره اخرى
            </td>
            </tr>
            </table>
            </div>
            ";
    }elseif($_SESSION['code'] != $chek or $_SESSION['code'] == ""){
         echo"
            <div calss='adderror'>
            <table border='0' align='center' width='35%' padding='10'>
            <tr>
            <td align='center'>
خطأ في إدخال الكود الرجاء المحاولة مره اخرى
            </td>
            </tr>
            </table>
            </div>
            ";
    }else{
        $insert =@mysql_query("INSERT INTO comm (name,email,site,msg,date) VALUES ('$name','$email','$site','$msg','$date') ") or die ("خطأ في أستعلام الإدخال رقم 1") ;

        if(isset($insert)){
         echo"
             <div calss='adderror'>
            <table border='0' align='center'>
            <tr>
            <td>
            سيتم نقلك للصفحة الرئيسية خلال ثواني إذا كان متصفحك لا يدعم الإنتقال الأفتراضي
            <a href='index.php'>اضغط هنا</a>
            </td>
            </tr>
            </table>
            </div>
            <META HTTP-EQUIV='refresh' CONTENT='1; URL=index.php'>
            ";
        }
    }
}
?>
        <!-- بداية فورم إضافة تعليق-->
        <div class="adderror">جميع الحقول مطلوبة</div>
        <div class="tab">
<form action="<?php $SERVER['PHP_SELF'] ?>" method="POST" >
<table align="center">
    <tr class="xtab">
        <td colspan="2" >اضافة تعليق</td>
    </tr>
    <tr class="tab1">
    <td>الأسم </td>
        <td><input  type="text" name="name" />
    </tr>
    <tr class="tab1">
        <td>الإيميل</td>
        <td><input type="text" name="email" /></td>
    </tr>
    <tr class="tab1">
        <td>الموقع الإلكتروني</td>
        <td><input  type="text" name="site"/></td>
    </tr>
    <tr class="tab1">
        <td>ادخل الرقم الموجود في الصورة</td>
        <td><img src="code.php" alt="ادخل الكود الموجود في الصورة" /> <input type="text" name="chek"></td>
    </tr>
    <tr class="xtab">
        <td colspan="2">التعليــق</td>
    </tr>
    <tr>
        <td colspan="2"> <textarea name="msg" rows="5" cols="50" > </textarea></td>
    </tr>
    <tr>
        <td colspan="2" align="center">
            <div class="but"><input type="submit" value="أضف التعليق" /></div>

        <input type="hidden" name="submit" value="send" />
        </td>
    </tr>
</table>
</form>
        </div>
        <!-- نهاية فورم أضافة تعليق -->
    </body>
</html>

<?php ob_end_flush() ; ?>



وهذا كود صفحة  code.php


كود php


<?php
session_start();
$text = rand(000,999) ;
$_SESSION['code'] = $text ;
$image = imagecreate(45,18) ;
$back = imagecolorallocate($image, 255, 255, 255) ;
$font = imagecolorallocate($image, 0, 0, 0) ;
imagestring($image, 5, 10, 2, $text, $font) ;
imagepng($image) ;
?>




و إن شاء الله تستفيدون منه


اخوكم : بو عبد الله

الخميس، يناير 27، 2011

نقطة تحويل من ويندوز إلى لنكس ( اوبينتو )

بسم الله الرحمن الرحيم

السﻻم عليكم ورحمة الله وبركاته 


كيف الحال أخواني زوارو مرتادي مفكرتي الصغيره إن شاء الله بخير ؟


اليوم موضوعنا ليس درس او كود برمجي او ما إلى ذلك 


اليوم موضوعنا هو عباره عن حديث حول


لنكس - يبنتو أو اوبينتو 


كما يحلو للبعض تسميتها 


درسنا هو ما هو نظام (لنكس) و ما هي توزيعت (اوبينتو) بشكل عام


لنكس : هو نظام تشغيل كأي نظام اخر مثل ويندوز و نظام الماك و اليونكس أنظمة أخرى 


و اوبينتو : هي توزيعة من توزيعات لنكس التي لا يحصى عددها


ولكن هي توزيعه تتميز بقربها من نظام الويندوز 


ويميزها اكثر سهولة أستخدامها 


وايضاًَ هي مجانية


والحماية بها 99% محمية 


والكثير الكثير 


انا تطرقة إلى هذا الموضوع ﻵني احد مستخدمي الأبينتو في الوقت الحالي 


حولت من نظام الويندوز إلى لنكس 


وفي بداياتي استخدمة توزيعة لا اذكر اسمها لنكس كانت معقده قليلاًَ


وتركت اللنكس و عدة إلى ويندوز 


و بصراحه كثرة معي أخطاء الويندوز و كل مره افرمت و وو إلى مالا نهايه 


و دخلت يوم منتدى و لقيت مواضيع عن توزيعات لنكس و حملة نسخة و جربتها 


لكن هم ما عجبني وضعها و ضليت على ويندوز (مجبرو أخاك لا بطل )


وبعد البحث و التحري < --  و ش عنده المحقق كونن


لقيت اوبينتو 


و جربتها و عجبني وضعها كثير نصبتها بجانب الويندوز 


وتعلمت منها الكثير 


لاقيت صعوبات و تعقيدات بسيطه لكن مع الإراده و حب التعلم الان انا من مستخدمي لنكس 


وهو نظام فوق الرائع و فوق المميز 


والحمد لله نزلت حزمة php , mysql , myphpadmin , apatch


والان شغال على البرمجه و نظام تشغيل ولا اروع 


صادفني مشكله وحده فقط إلى الان لم اجد لها حل وهي :


كنت من مستخدمي فوتوشوب و الان ما لقيت حل اني اشغله على لنكس او اوبينتو 


لكن إن شاء الله اجد حل جذري في القريب 


واطرحه هنا للي يبي يستفيد منه بأذن الله 


وهذي قصتي المختصره في نقطة تحول 


<<---  ما احب اطولها على سياس ما يمل القارئ من الموضوع 


هذا والله ولي التوفيق 


أخوكم : بو عبد الله

18_implode_explode_functions php and mysql

السﻻم عليكم ورحمة الله وبركاته 

كيف الحال أخواني إن شاء الله بخير ؟

اليوم حبيت احب لكم درس من دروس الأستاذ يوسف إسماعيل 

ما اطول عليكم و اخليكم مع الدرس 

 


إن شاء الله يفيدكم 
اخوكم : بو عبد الله

الاثنين، يناير 24، 2011

درس : كود صفحة عمل نموذج مراسلة يرسل النتائج لقاعدة البيانات

بسم الله الرحمن الرحيم 

السﻻم عليكم ورحمة الله وبركاته 

كيف الحال اخواني مرتادي و زوار المدونة إن شاء الله بخير ؟

ما اطول عليكم هذا الكود اللي قلنا عنه يمكن احد يبقاه . 

او يفيد احد 

هذا الكود 

<?php
$con = mysql_connect('localhost','root','') or die(mysql_error());
$sel = mysql_select_db('test' , $con) or die(mysql_error());

/*
$con = mysql_connect("localhost","root","root") or die (mysql_error ())  ;
$sel = mysql_select_db("from",$con) or die (mysql_error ()) ;
*/

 /*
  CREATE TABLE `from` (
`name` VARCHAR( 200 ) NOT NULL ,
`mobile` VARCHAR( 100 ) NOT NULL ,
`email` VARCHAR( 200 ) NOT NULL ,
`content` VARCHAR( 255 ) NOT NULL ,
`number` VARCHAR( 100 ) NOT NULL ) ENGINE = MYISAM ;
*/

/*
 CREATE TABLE `from`.`send` (
`id` INT NOT NULL AUTO_INCREMENT ,
`name` VARCHAR( 255 ) NOT NULL ,
`mail` VARCHAR( 255 ) NOT NULL ,
`mobile` INT( 15 ) NOT NULL ,
`msg` TEXT NOT NULL ,
`number` INT( 15 ) NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM ;
 */
 $name=$_POST['name'];
 $email=$_POST['email'];
 $mobile=$_POST['mobile'];
 $con = $_POST['msg'];

$select = mysql_query("select * from send") or die (mysql_error()) ;
$num = mysql_num_rows($select) ;
if($num == 0){
    $number1 = 1 ;
}else
{
    $select1 = mysql_query("select * from send ORDER BY id desc") or die (mysql_error()) ;
    $row = mysql_fetch_assoc($select1) ;
$number1 = $row['id'] + 1  ;
}

 if(isset($_POST['id']) and $_POST['id'] == "send")
     {
 if($_POST['chek'] == $_POST['chek1']){
 /*Tabel= form:name,email,mobile,content,number*/
 $query=mysql_query("insert into send (name,mail,mobile,msg,number)
                                 VALUES
                                 ('$name','$email','$mobile','$con','$number1')") or die (mysql_error());

                       if (isset($query)){
                       echo "تم إرسال الرسالة رقم ".$number1." بنجاح";
                       ++$number1 ;
                       }
                       }else{
                           echo"<h2>خطأ في رقم الكود .. حاول مرة اخرى</h2>" ;
                       }
 }
?>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method ="post">
    <table border="1" width="85%" cellpadding="5">
        <tr>
            <td align="center" colspan="2">
                نموذج المراسلة
            </td>
        </tr>
        <tr>
            <td>name</td>
            <td>
                <input type="text" name="name" />
            </td>
        </tr>
        <tr>
            <td>email</td>
            <td>
                <input type="text" name="email" />
            </td>
        </tr>
        <tr>
            <td>Mobile</td>
            <td>
                <input type="text" name="mobile" />
            </td>
        </tr>
        <tr>
            <td colspan="2" align="center" >كود التحقق</td>
        </tr>
        <tr>
            <td><?php echo $number1; ?></td>
            <td>
                <input type="text" name="chek"  />
                <input type="hidden" name="chek1" value="<?php echo $number1 ; ?>" />
               
        </tr>
        <tr>
            <td align="center" colspan="2">!--> content <--! </td>
        </tr>
        <tr>
            <td align="center" colspan="2"><textarea name="msg"></textarea></td>
        </tr>
        <tr>
            <td align="center" colspan="2">
                <input type="submit" value="ارسال" />
                <input type="hidden" name="id" value="send" />
            </td>
        </tr>
    </table>
</form>

<?php mysql_close() ; ?>



والله ولي التوفيق 

اخوكم : بو عبد الله

درس : كود إنشاء مجلد التنصيب install للسكربت

بسم الله الرحمن الرحيم 

السﻻم عليكم ورحمة الله وبركاته 

كيف الحال أخواني أعضاء زوار مرتادي مدونتي الحبيبه إن شاء الله بخير ؟

اليوم لدينا مجلد install  وهو في الغالي يستخدم لإنشاء قاعدة بيانات السكربت و إنشاء عضوية الادمن 

إلى إعطاء التراخيص للمجلدات المراد إعطائها و ما إلى ذالك 

طبعاًَ كالعادة راح نضف الملفات التي سيتم العمل عليها 

اولا يفضل إنشاء مجلد بأسم 

install

بعدها سيتم إنشاء المجلدات التالية :

  1. index.php : هذا الملف الرئيسي للتنصيب .
  2.  config.php : هذا ملف الأتصال بقاعدة البيانات .
  3. style.css : هذا الملف لتنسيق الصفحات .

الأن نأتي لكل ملف على حدة و نبدأ بملف 

Index.php

<?php
/*
 كاتب الكود : بو عبد الله
 الحمد لله كل هذا اجتهاد شخصي
 وليس درس مطبق ولله الحمد
 ولو احد يبقى يتعلم البي اتش بس انصحه بهالطريقة
 ولو انه يشوف الدرس و يجتهد في تطوير الكود اللي تعلمه
 وبكذا راح يتعلم الكثير
 اخوكم : بو عبد الله
 */
?>

<html dir="rtl">
    <head>
        <title>ملف تنصيب البرنامج</title>
        <link rel="stylesheet" href="style.css" type="text/css" > <!-- هنا استدعاء لملف الـ style.css-->
    </head>
    <body>
<?php
// جلب ملف الـ config
include 'config.php';

$install = $_GET['install'] ; // تعريف الـ install لستخدامها في مراحل التنصيب
if(!isset ($install)) $install = 1 ; // هنا نضع الشرط لجعل قيمة الـ install  1 لكي ندخل في الـ switch
//هنا بداية الـ switch
switch ($install) {
    case "1" ; //في الـ case الأول وضعنا القيمة الأفتراضيه 1و وهي التي سيتم الأدخال عليها مباشرة وفيها وضعنا رسالة الترحيب و المتطلبات و البدأ بالتنصيب
        echo "<ul>
                   <li> في هذا الملف قمنا ببرمجة ملف التنصيب للسكربت بحيث انه يقوم بإنشاء قاعدة البيانات و إنشاء الجداول فيها . </li>
                   <li>ملاحظة : أسم قاعدة البيانات في السيرفر الشخصي يكون فقط الأسم المدخل بينما يكون اسم قاعدة البيانات في سيرفر الموقع أسم الموقع مربوط بقاعدة البيانات</li>
              </ul>";
        echo"<form action='index.php?install=2' method='post'>
        <input type='submit' value='أبدا التنصيب' />
        </form>";
        break;
    case "2": // في الكيس الثاني ننشأ القاعدة و الجداول المراد إنشائها في السكربت

        //هنا ننشأ قاعدة البيانات
        $createdatabase = mysql_query("CREATE DATABASE fadel1") or die ("قاعدة البيانات تم إنشائها سابقاًَ") ;
        if(isset ($createdatabase)){ // <--- هذا الشرط للتأكد هل تم إنشاء قاعدة البيانات ام لا
            echo "تم إنشاء القاعدة بنجاح" ;
            echo "<br />" ;
            $conn = mysql_connect("localhost","root","root"); // هنا نتصل بقاعدة البيانات التي تم إنشائها
           $conn1 = mysql_select_db('fadel1' ,$conn ) ; //هنا يتم استعراض قاعدة البيانات التي تم إنشائها
        }else{
            echo"لم يتم إنشاء قاعدة البيانات" ;  //رسالة الخطأ في حال لم يتم إنشاء قاعدة البيانات
        }
        //الان إنشاء الجداول المراد إنشائها في القاعدة
        $createuser = mysql_query("CREATE TABLE `user` (
        `id` INT NOT NULL AUTO_INCREMENT ,
        `name` VARCHAR( 255 ) NOT NULL ,
        `mail` VARCHAR( 255 ) NOT NULL ,
        `date` DATE NOT NULL ,
        PRIMARY KEY ( `id` )
        ) ENGINE = MYISAM ;
            ") ;
        if(isset($createuser)){ //هنا شرط التحقق من إنشاء الجداول ام لا
            echo"تم إنشاء جدول  USER بنجاح";
            echo "<br />";
            echo"<form action='index.php?install=3' method='post'>
                 <input type='submit' value='إنهاء' />
                 </form>";  }else{
                     echo"<br />" ;
                     echo "لم إنشاء جدول  USER"; //الرسالة التي ستظهر في حال عدم إنشاء الجداول
                 }
                 break;
      case "3": // في الـ sace  الثالث رسالة تفيد بأنه تم إنشاء قاعدة البيانات و كل شئ تمام
          echo "تم ولله الحمد الإنتهاء من إنشاء قاعدة البيانات و إنشاء الجداول ";
          echo "تحياتي بو عبد الله " ;

}
echo "<div class='fadel1'><p>
    مبرمج الصفحة : بو عبد الله
    </p></div>";
?>

    </body>
</html>



كود ملف 

config.php

<?php
$local = "localhost" ; // نوع المستضيف
$username = "root" ; // اسم مستخدم قاعدة البيانات
$password = "root" ; // كلمة مرور قاعدة البيانات

$connectdb = mysql_connect($local,$username,$password); // للإتصال بقاعدة البيانات


?>

كود ملف 

style.css

body{
    margin: 0 ;
    padding: 120px ;
    text-align: center ;
    font-size: 12pt ;
    font-family:Tahoma ;
    color: #f9021f ;
}
ul{

}
ul li{
    font-size: 11pt ;
    font-family: Tahoma ;
    color: #16a608 ;
}
ul li:hover{
    color: #024201 ;
}
.fadel{
    text-align: center ;
    font-size: 12px ;
    font-family: Tahoma ;
    color: #626262 ;
}
p{
    font-size: 15px;
    font-family: Tahoma ;
    color: #0005ff ;
}
p:hover{
    color: #f9021f ;
}


و في الختام استودعكم الله 

و السﻻم عليكم ورحمة الله وبركاته 

اخوكم : بو عبد الله 








الأحد، يناير 23، 2011

كود : درس عمل ملف سيشن seesion كامل

بسم الله الرحمن الرحيم 

السﻻم عليكم ورحمة الله وبركاته 

كيف الحال جميع مرتادي و زوار مدونتي الحبيبه

إن شاء الله بخير ؟

اليوم موضوعنا عن اكواد ملفات عمل السيشن session 

هذا الدرس او الكود مفيد جداًَ للمبتدأين امثالي

طبعاًَ تم تطبيقه من قبلي و لله الحمد تمام التمام 

ما اطول عليكم 

يفضل إنشاء مجلد جديد بأسم 

session

طبعاًَ نحتاج في هذا التطبيق 4 ملفات وهي :

  1. index.php
  2. ok.php
  3. cpanel.php
  4. logout.php 
اولا كود ملف 

INDEX.PHP


<?php
ob_start(); // هذا الكود لو بقينا نضع هيدر و نضع فوقه اكواد بي اتش بي و اكواد اش تي ام ال لازم نستخدم هذي البداية
session_start(); //بداية السيشن
if(isset($_SESSION['sessionname']) and isset($_SESSION['sessionpass'])){ //هذي السيشن تتأكد هل انت مسجل دخول للوحة التحكم من قبل ام لا
    header("location: cpanel.php") ;
    exit () ;
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- هذا هو كود الفورم للدخول طبعاًَ يحتوي على فورم و جداول -->
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>تسجيل الدخول</title>
    </head>
    <body>
        <form action="ok.php" method="post">
        <table width="80%" border="1" cellpadding="5">
            <tr>
                <td colspan="2" align="center">
                    بيانات الدخول
                </td>
            </tr>
            <tr>
                <td>username:</td>
                <td width="50%">
                    <input type="text" name="username" />
                </td>
            </tr>
            <tr>
                <td>userpass:</td>
                <td>
                    <input type="password" name="userpass" />
                </td>
            </tr>
            <tr>
                <td colspan="2" align="center">
                    <input type="submit" value="تسجيل الدخول" />
                </td>
            </tr>
        </table>
        </form>
    </body>
</html>
<!-- نهاية الكود  -->
<?php
ob_end_flush(); // الأغلاق لكود البداية  ob_start ;
?>


كود ملف التشييك على البيانات المدخلة 

OK.PHP
 
 
<?php
ob_start() ; //تم شرحها في صفحة index
session_start() ; //نفس الشئ
/*
CREATE TABLE `admin`.`useradmin` (
`id` INT NOT NULL AUTO_INCREMENT ,
`username` VARCHAR( 50 ) NOT NULL ,
`userpass` VARCHAR( 50 ) NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM ;
 */

$con = mysql_connect("localhost","root","root") or die("خطأ في الأتصال") ; // الأتصال بقاعدة البيانات
$sel = mysql_select_db("admin" , $con) or die("خطأ في الأتصال 2") ; //استعراض قاعدة البيانات

$username = addslashes(strip_tags($_POST['username'])) ; // أدخال اسم المستخدم تحت المتغير و حمايته ببعض الدوال
$userpass = addslashes(strip_tags(md5(md5($_POST['userpass'])))) ; // ادخال كلمة المرور و حمايتها ببعض الدوال و تشفيرها ايضاًَ

if($username and $userpass){// هذا الشرط للتأكد من وجود أسم المستخدم و كلمة المرور
    // هنا بداية الأسعلام لعرض أسم المستخدم و كلمة المرور هل تتوافق مع اسم المستخدم و كلمة المرور المدخله ام لا
    $finduser = mysql_query("select * from useradmin where
        username='".$username."' and userpass='".$userpass."'") or die ("خطأ في الأستعلام رقم 3") ;

    //هنا في الشرط نقول هل عدد البيانات المستخرجه لا يساوي صفر إذ لا يساوي صفر ادخل و نفذ ما في داخل الشرط
    if(mysql_num_rows($finduser) != 0){
        while ($row = mysql_fetch_array($finduser)) {
            $uname = stripcslashes($row['username']) ; //هنا اسندنا اسم المستخدم الموجود في قاعدة البيانات للمتغير uname
            $upass = stripcslashes($row['userpass']) ; // هنا اسندنا كلمة المرور الموجوده في قاعدة البيانات للمتغير upass
        }
        //في هذا الشرط نتأكد هل اسم المستخدم المدخل يساوي اسم المستخدم في قاعدة البيانات و ايضا نفس الشئ للباسورد
        if($username == $uname and $userpass == $upass){
            $_SESSION['sessionname'] = $uname ;// هنا نقوم بإنشاء اليوزر نيم للسيشن و إسنادها للمتغير UNAME
            $_SESSION['sessionpass'] = $upass ;// هنا نقوم بإنشاء الباسورد للسيشن و إسناده للمتغير upass
            echo "Welcome ".$uname." In Cpanel Admin
                <a href='cpanel.php'>GoTo Cpanel</a>";
        }else{
            die ("لقد ادخلت بيانات خطأ") ;
            echo "<a href='index.php'>العودة للخلف</a>";
        }
    }else{
               die ("لقد ادخلت بيانات خطأ") ;
                   echo "<a href='index.php'>العودة للخلف</a>";
    }
}  else {
    die ("لقد اتبعت الصفحة الخطأ") ;
}
mysql_close($con);  //اغلاق الأتصال بقاعدة البيانات
ob_end_flush() ; //شرحناها في ملف index
?>

هذا كود ملف 
cpanel


<?php

//هذا الملف ما فيه شئ جديد كل شئ عادي فما يحتاج نشرح
ob_start();
session_start();
if(!isset($_SESSION['sessionname']) and !isset ($_SESSION['sessionpass'])){
    header("location: index.php") ;
    exit () ;
 }
echo "Login Is Done !!" ;
echo"<br />";
echo "<a href='logout.php'>logout</a>";

ob_end_flush();
?>

هذا كود لملف 
 
logout 
 


<?php
ob_start();
session_start();
if(!isset($_SESSION['sessionname']) and !isset ($_SESSION['sessionpass'])){
    header("locatin: index.php") ;
    exit () ;
}else{
    session_destroy();
    die ("<h3>logout is done !!</h3>
        <br />
        <a href='index.php'>login</a>");
}
?>



ولو فيه أي استفسار في الخدمة 

اخوكم : بو عبد الله

كود عرض المواضيع و التعديل و كود أضافة التعليق

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله وبركاته

كيف الحال الجميع إن شاء الله بخير ؟

الحمد لله ضليت يومين جالس على هالصفحتين

طبعاًَ طبقة درس الأخ و الأستاذ يوسف أسماعيل

لكن قلت خلني احاول اطور اشوي بحيث لما يدخل رقم ip خطا لطلع له رسالة خطأ

طبعاًَ يمكن يكون هذا سهل لكن بالنسبه لمبتدأ شئ جميل انه يطبقه ﻵنه راح يتعلم امور كثيره

ما اطول عليكم و اخليكم مع الكود

الصورة اللي راح يطلع عليها الكود
[صورة مرفقة: pfk09673.gif]


وهذا الكود

<?php
include "config.php" ;
/*
CREATE TABLE `news`.`addnews` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`alkatib` VARCHAR( 255 ) NOT NULL ,
`title` VARCHAR( 255 ) NOT NULL ,
`content` LONGTEXT NOT NULL
) ENGINE = MYISAM ;
*/
$gid = intval($_GET['id']);
$id  = $_POST['id'];
$a   = $_POST['alkatib'] ;
$t   = $_POST['title'];
$c   = $_POST['content'];
if(isset($_POST['edit']) and $_POST['edit'] == 'news'){
 $update = mysql_query("UPDATE addnews set alkatib = '$a', title = '$t', content = '$c' where id = ".$id."") or die ("خطأ في استعلام تعديل البيانات");
if(isset($update)){
 echo "نم تحديث البيانات بنجاح" ;
}
}
if ($_REQUEST['delete'] == 'dnews'){
 $delete = mysql_query("DELETE from addnews where id ='".$gid."'") or die ("لا يوجد استعلام في امر الحذف") ;
 if (isset($delete)){
  echo "تم الحذف بنجاح";
 }
}
$selest = mysql_query(" SELECT * FROM addnews where id = ".$gid."") or die ("خطأ في استعلام عرض البيانات") ;
$rowedit = mysql_fetch_assoc($selest) ;
if($_REQUEST['edit'] == 'news'){
echo"<form action= '".$_SERVER['PHP_SELF']."' method = 'post'>
alkatib : <input type = 'text' name = 'alkatib' value = '".$rowedit['alkatib']."'><br />
title : <input type = 'text' name = 'title' value = '".$rowedit['title']."'><br />
content : <textarea name = 'content'>".$rowedit['content']."</textarea><br />
<input type = 'submit' name = 'edit' value = 'save edit' />
<input type = 'hidden' name = 'id' value = '".$gid."' />
<input type = 'hidden' name = 'edit' value = 'news'  />
";
}
$query = mysql_query("SELECT * FROM addnews ORDER BY id asc") or die ("خطأ في الأستعراض ..!");
echo "<table width = '55%' border = '1' cellpadding = '7'>
<tr>
<td>#</td>
<td>alkatib</td>
<td>Title</td>
<td>Options</td>
</tr>
";
while ($row = mysql_fetch_assoc($query)){
 echo"<tr>
<td>".$row['id']."</td>
<td>".$row['alkatib']."</td>
<td>".$row['title']."</td>
<td>
<a href = 'editshow.php?edit=news&id=".$row['id']."'>edit</a>
- <a href='editshow.php?delete=dnews&id=".$row['id']."'> Delete </a>
- <a href='readmore.php?id=".$row['id']."'>Read More</a>
</td>
</tr>
 ";
}
echo"</table>";
?>
[/php]

هذا الكود الثاني صفحة الموضوع كامل و اضافة التعليقات
هذي صورة الكود
[img]http://store2.up-00.com/Dec10/sDo09674.gif[/img]
هذا الكود للصفحة
[php]
<?php
include 'config.php';
/*
 * لقاعدة البيانات addnews جدول
CREATE TABLE `news`.`addnews` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`alkatib` VARCHAR( 255 ) NOT NULL ,
`title` VARCHAR( 255 ) NOT NULL ,
`content` LONGTEXT NOT NULL
) ENGINE = MYISAM ;
*/
/*
 * لقاعدة البيانات comm جدول
 CREATE TABLE `news`.`comm` (
`cid` INT NOT NULL AUTO_INCREMENT ,
`cname` VARCHAR( 255 ) NOT NULL ,
`cemail` VARCHAR( 255 ) NOT NULL ,
`ccomm` TEXT NOT NULL ,
`id` INT NOT NULL ,
PRIMARY KEY ( `cid` )
) ENGINE = MYISAM ;
*/

/* بداية الأستعلام لعمل الشرط لو كان رقم الأي بي خطأ فسيضهر رسالة خطأ */
$cgid = intval($_GET['id']);
$selectf = mysql_query("SELECT * FROM comm where id = '".$cgid."'") or die ("خطأ في الأستعلام");
$rowf = mysql_fetch_assoc($selectf) ;
$selecta = mysql_query("SELECT * FROM comm") or die ("خطأ في الأستعلام رقم 2") ;
$rowa = mysql_num_rows($selecta) ;
/*نهاية الأستعلام لعمل الشرط لو كان رقم الأي بي خطأ فسيضهر رسالة خطأ */

#تعريفات القيم في الفورم
$cid = $_POST ['cid'] ;
$cn  = $_POST['cname'] ;
$ce  = $_POST['cemail'];
$cc  = $_POST['ccomm'];
#نهاية التعريف
#شرط التأكد من الضغط على كود الأدخال
if(isset($_POST['add']) and $_POST['add'] == 'addcomm'){
 $addcomm = mysql_query("INSERT INTO comm
 (cname , cemail , ccomm , id)
  VALUES
  ('$cn','$ce','$cc','$cid')
  ") or die ("خطأ في أستعلام أدخال التعليق") ;
 if (isset($addcomm)){
  echo "تم أدخال التعليق بنجاح";
 }
}
#نهاية الشرط
$rowaddnews = mysql_query("SELECT * FROM addnews ") or die ("استعلام جدول البيانات خطأ") ;
$gid = intval($_GET['id']) ;
$row = mysql_query("SELECT * FROM addnews where id = ".$gid."") or die("خطأ في عرض البيانات") ;
$rw = mysql_fetch_assoc($row) ;
$rom1 = $rom['id'] ;
$rnum = mysql_num_rows($rowaddnews) ;
if($rnum < 1){
 die("لا توجد بيانات مدخله في القاعدة");
}elseif (!isset($gid)){
 die("لقد ادخلت عنوان الصفحة بشكل خاطئ");
}
elseif(!isset($rowa)) {
 echo "لقد اتبعت عنوان خطأ11";
 break ;
}
elseif (!empty($gid)  and $cgid == $rowf['id'] and is_numeric($gid))
{
echo "<table width = '50%' border = '1' cellpadding = '6'>
<tr>
    <td align = 'center' colspan = '4'>-- الموضوع --</td>
</tr>
<tr>
<td>#</td>
<td>alkatib</td>
<td>Title</td>
<td>content</td>
</tr>
<tr>
<td>".$rw['id']."</td>
<td>".$rw['alkatib']."</td>
<td>".$rw['title']."</td>
<td>".$rw['content']."</td>
</tr>
</table>
";
}elseif ($cgid != $rowa['id'] and $rw['id'] == null){
 echo "لقد اتبعت الرابط الخطأ" ;
}elseif(is_numeric($gid) and $cgid == $rowa['id']){
 echo "لقد اتبعت الرابط الخطأ 12";
}
else{
echo "<table width = '40%' border = '1' cellpadding = '6'>
<tr>
<tr>
    <td align = 'center' colspan = '4'>-- الموضوع --</td>
</tr>
</tr>
<tr>
<td>#</td>
<td>alkatib</td>
<td>Title</td>
<td>content</td>
</tr>
<tr>
<td>".$rw['id']."</td>
<td>".$rw['alkatib']."</td>
<td>".$rw['title']."</td>
<td>".$rw['content']."</td>
</tr>
</table>
";
/*بداية الفورم*/
if ($rowf['id'] == $cgid and  $rw['id'] == null)
{
echo "لا توجد تعليقات مضافة";
}
else
{
echo"
<table width = '40%' border = '1' cellpadding = '6'>
<form action = '".$_SERVER['PHP_SELF']."' method = 'post'>
<tr>
<td align = 'center' colspan = '2'>أضافة تعليق</td>
</tr>
<tr>
<td>اسم مضيف التعليق </td>
<td> <input type = 'text' name = 'cname' /></td>
</tr>
<tr>
<td>الأيميل </td>
<td><input type = 'text' name = 'cemail' />
</tr>
<tr>
<td>التعليق </td>
<td><textarea name = 'ccomm' ></textarea>
</tr>
<tr>
<td align = 'center' colspan = '2'><input type = 'submit' name = 'add' value = 'add comm' />
<input type = 'hidden' name = 'add' value = 'addcomm' />
<input type = 'hidden' name = 'cid' value = '".$gid."' />
</td>
</tr>
</table>
</form>";
/*نهاية الفورم*/
break ;
}
}
echo "<br />";
/*بداية جدول عرض التعليقات*/
if(!empty($gid) and $cgid == $rowf['id']){
$selectcomm = mysql_query("SELECT * FROM comm where id = ".$gid." ORDER BY cid desc") or die ("خطأ في استعلام عرض التعليقات") ;
echo"<table width = '50%' border = '1' cellpadding = '5'>
<tr>
    <td align = 'center' colspan = '2'>-- التعليقات --</td>
</tr>
";
$nu = 1 ;
while($rc = mysql_fetch_assoc($selectcomm)){
 echo"<tr>
             <td>الأسم</td>
             <td>".$nu."-".$rc['cname']."</td>
        </tr>
        <tr>
            <td>الأيميل</td>
            <td>".$rc['cemail']."</td>
        </tr>
  <tr>
   <td align = 'center' colspan = '2'>--- التعليق ---</td>
  </tr>
  <tr>
   <td align = 'center' colspan = '2'>".$rc['ccomm']."</td>
        ";
 $nu++ ;
}
echo "</table>" ;
echo "<br />" ;
/*نهاية جدول عرض التعليقات*/
/*بداية الفورم*/
echo"
<table width = '50%' border = '1' cellpadding = '6'>
<form action = '".$_SERVER['PHP_SELF']."' method = 'post'>
<tr>
<td align = 'center' colspan = '2'>أضافة تعليق</td>
</tr>
<tr>
<td>اسم مضيف التعليق </td>
<td> <input type = 'text' name = 'cname' /></td>
</tr>
<tr>
<td>الأيميل </td>
<td><input type = 'text' name = 'cemail' />
</tr>
<tr>
<td>التعليق </td>
<td><textarea name = 'ccomm' ></textarea>
</tr>
<tr>
<td align = 'center' colspan = '2'><input type = 'submit' name = 'add' value = 'add comm' />
<input type = 'hidden' name = 'add' value = 'addcomm' />
<input type = 'hidden' name = 'cid' value = '".$gid."' />
</td>
</tr>
</table>
</form>";
/*نهاية الفورم*/
}
mysql_free_result($row);
mysql_close($row) ;
?>