مشروع Photos Gallery بل PHP الجزء الرابع

imadbelasri PHP
PH

فهاد الجزء الرابع من هاد المشروع غادي نكملو الملفات لي غادي يمكنو المستخدم من التسجيل وأيضا من تسجيل الدخول ديالو وملفات إضافة صورة تعديل وحذف صورة وملفات تعديل وحذف مستخدم.


نظرة سريعة بالفيديو


- الملف add_user.php

دائما فالمجلد admin كنزيد ملف كنسميه add_user.php هاد الملف هو لي غادي يمكنا من إضافة مستخدم لقاعدة البيانات ديالنا هنا كنسترجع القيم لي كتب المستخدم فالحقول منبعد كاين لfonction set_fileلي فقط كتربط معلومات الصورة بلvariables لي كاينين فلclass user ومنبعد كاين save_with_photo لي كتزيد المستخدم بالصورة ديالو فقاعدة البيانات الكود ديال الملف هو :

                                                    
                                                        <?php include "includes/header.php";?>
<?php include "includes/navigation.php";?>
<?php
if(isset($_SESSION['user_id'])){
    $user =  new User();
    if(isset($_POST['submit'])){
        $user->pseudo = $_POST['pseudo'];
        $user->nom = $_POST['nom'];
        $user->prenom = $_POST['prenom'];
        $user->passe = $_POST['passe'];
        $user->set_file($_FILES['file_upload']);
        $user->save_with_photo();
        $session->message('Inscription effectuée avec succés!');
        redirect("users.php");
    }
}else{
    redirect("login.php");  
}
?>
    <div class="container">
        <div class="row">
            <div class="col-md-6 col-md-offset-2">
                <div class="panel panel-primary">
                    <div class="panel-heading">Ajouter un utilisateur</div>
                    <div class="panel-body">
                        <form action="" method="post" class="form-horizontal" style="padding:10px" enctype="multipart/form-data">
                             <div class="form-group">
                                <label for="user">Photo <span class="text-danger">*</span></label>
                                <input type="file" name="file_upload">
                            </div>
                            <div class="form-group">
                                <label for="nom">Nom<span class="text-danger">*</span></label>
                                <input type="text" class="form-control" name="nom">
                            </div>
                            <div class="form-group">
                                <label for="nom">Prénom<span class="text-danger">*</span></label>
                                <input type="text" class="form-control" name="prenom">
                            </div>
                            <div class="form-group">
                                <label for="nom">Pseudo <span class="text-danger">*</span></label>
                                <input type="text" class="form-control" name="pseudo">
                            </div>
                            <div class="form-group">
                                <label for="nom">Mot de passe <span class="text-danger">*</span></label>
                                <input type="password" class="form-control" name="passe">
                            </div>
                            <div class="form-group">
                                <input type="submit" class="btn btn-success" name="submit" value="Créer">
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
<?php include "includes/footer.php";?>
                                                    
                                                

- الملف login.php

دائما فالمجلد admin كنزيد ملف كنسميه login.php هاد الملف هو لي غادي يمكن المستخدم من تسجيل الدخول ديالو من بعد مكي تم التحقق من أنه مسجل فقاعدة البيانات بواسطة لfonction verify_user لي يلا كان مسجل كتسمحلو بالدخول مكنش كتعرض رسالة ديال الخطأ الكود ديال الملف هو :

                                                        
                                                            <?php include "includes/header.php";?>
<?php

if(isset($_SESSION['user_id'])){
    redirect("index.php");
}

if(isset($_POST['submit'])){
    $pseudo = trim($_POST['pseudo']);
    $passe = trim($_POST['passe']);
    //method to check if user exists
    $user_found = User::verify_user($pseudo,$passe);
    if($user_found){
        $session->login($user_found);
        redirect("index.php");
    }else{
        $message = "<div class='alert alert-danger'>Email ou mot de passe est incorrect</div>";
    }
}else{
    $message = "";
    $pseudo = "";
    $passe = "";
}
?>
<div class="container">
    <div class="row">
        <div class="col-md-4 col-md-offset-4">
            <div class="panel panel-primary">
                <div class="panel-heading">Connexion</div>
                <div class="panel-body">
                    <?php echo $message;?>
                    <form action="login.php" method="post" class="form-horizontal" style="padding:10px">
                       <div class="form-group">
                            <label for="pseudo">Pseudo <span class="text-danger">*</span></label>
                            <input type="text" class="form-control" name="pseudo">
                       </div>
                        <div class="form-group">
                            <label for="passe">Mot de passe <span class="text-danger">*</span></label>
                            <input type="password" class="form-control" name="passe">
                       </div>
                        <div class="form-group">
                            <input type="submit" class="btn btn-success" name="submit" value="Connexion">
                       </div>
                    </form>
                </div>
            </div>
        </div>
    </div>
</div>
<?php include "includes/footer.php";?>


                                                        
                                                    

- الملف upload.php

دائما فالمجلد admin كنزيد ملف كنسميه upload.php هاد الملف كيمكن المستخدم من إضافة صورة من بعد مكيتم استرجاع المعلومات الخاصة بالصورة كيتم حفظها باستخدام لfonction save_with_photo ولي فحالة نجاح الإضافة كيتم عرض رسالة النجاح وفحالة الخطأ كيتم عرض رسائل الخطأ الكود ديال الملف هو:

                                                        
                                                            <?php include "includes/header.php";?>
<?php include "includes/navigation.php";?>
<?php
$message = "";
if(isset($_SESSION['user_id'])){
    if(isset($_POST['submit'])){
        $photo = new Photo();
        $photo->title = $_POST['name'];
        $file = $_FILES['file_upload'];
        $photo->set_file($file);
        if($photo->save_with_photo()){
            $message = "<div class='alert alert-success'>Fichier téléchargé avec succés</div>";
        }else{
            $message = join("<br>",$photo->errors);
        }
    }
}else{
    redirect("login.php");
}
?>
    <div class="container">
        <div class="row">
            <div class="col-md-4 col-md-offset-4">
                <div class="panel panel-primary">
                    <div class="panel-heading">Ajouter une photo</div>
                    <div class="panel-body">
                    <?php echo $message;?>
                        <form action="upload.php" method="post" class="form-horizontal" style="padding:10px" enctype="multipart/form-data">
                            <div class="form-group">
                                    <label for="nom">Nom du fichier <span class="text-danger">*</span></label>
                                    <input type="text" class="form-control" name="name">
                            </div>
                                <div class="form-group">
                                    <label for="photo">Photo <span class="text-danger">*</span></label>
                                    <input type="file" name="file_upload">
                            </div>
                            <div class="form-group">
                                    <input type="submit" class="btn btn-success" name="submit" value="Envoyer">
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
<?php include "includes/footer.php";?>
                                                        
                                                    

- الملف edit_photo.php

دائما فالمجلد admin كنزيد ملف كنسميه edit_photo.php هاد الملف كيمكن المستخدم من تعديل صورة من بعد مكيتم استرجاع المعلومات الخاصة بالصورة كيتم تغييرها ومنبعد حفظها باستخدام لfonction save_with_photo ولي فحالة نجاح التعديل كيتم عرض رسالة النجاح وفحالة الخطأ كيتم عرض رسائل الخطأ الكود ديال الملف هو:

                                                        
                                                            <?php include "includes/header.php";?>
<?php include "includes/navigation.php";?>
<?php
if(isset($_SESSION['user_id'])){
    if(!empty($_GET['id'])){
        $photo = Photo::find_by_id($_GET['id']);
        if(isset($_POST['submit'])){
            $photo->title = $_POST['name'];
            $photo->description = $_POST['description'];
            $photo->save_with_photo();
            $session->message('Modification effectuée avec succés!');
            redirect("photos.php");
        }
    }else{
    redirect("photos.php");
    }
}else{
    redirect("login.php");  
}
?>
    <div class="container">
        <div class="row">
            <div class="col-md-6 col-md-offset-2">
                <div class="panel panel-primary">
                    <div class="panel-heading">Modifier une photo</div>
                    <div class="panel-body">
                        <form action="" method="post" class="form-horizontal" style="padding:10px" enctype="multipart/form-data">
                             <div class="form-group">
                                 <img src="<?php echo $photo->picture_path();?>" alt="" class="thumbnail" height="300" width="300" style="margin:auto;" style="padding:10px;">
                            </div>
                            <div class="form-group">
                                <label for="nom">Nom du fichier <span class="text-danger">*</span></label>
                                <input type="text" class="form-control" name="name" value="<?php echo $photo->title;?>">
                            </div>
                            <div class="form-group">
                                <label for="description">Description</label>
                                <textarea name="description" id="" cols="30" rows="10" class="form-control"><?php echo $photo->description;?></textarea>
                            </div>
                            <div class="form-group">
                                <label for="photo">Photo <span class="text-danger">*</span></label>
                                <input type="file" name="file_upload" value="<?php echo $photo->filename;?>">
                            </div>
                            <div class="form-group">
                                <input type="submit" class="btn btn-success" name="submit" value="Modifier">
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
<?php include "includes/footer.php";?>
                                                        
                                                    

- الملف delete_photo.php

دائما فالمجلد admin كنزيد ملف كنسميه delete_photo.php هاد الملف كيمكن المستخدم من حذف صورة من بعد مكيتم استرجاع المعلومات الخاصة بالصورة كيتم حذفها باستخدام لfonction delete_photo ولfonction delete_photo_comments لي كتمكن من حذف التعاليق الخاصة بتلك الصورة لي فحالة نجاح الحذف كيتم عرض رسالة النجاح الكود ديال الملف هو:

                                                        
                                                            <?php include "includes/header.php";?>
<?php include "includes/navigation.php";?>
<?php
if(isset($_SESSION['user_id'])){
    if(empty($_GET['id'])){
        redirect("photos.php");
    }else{
        $id = trim($_GET['id']);
        $photo = Photo::find_by_id($id);
        if($photo){
            $photo->delete_photo();
            $photo->delete_photo_comments($id);
            $session->message('Suppression effectuée avec succés!');
            redirect("photos.php");
        }else{
            redirect("photos.php");
        }
    }
}else{
    redirect("login.php");
}
?>
                                                        
                                                    

دروس ذات صلة

PH

مشروع Photos Gallery بل PHP الجزء الأول

فهاد الدرس غادي نشوفو كيفاش نصاوبو واحد المشروع لي عبارة عن موقع للصور المستخدم كيدخل كيشاهد الصور و...


PH

مشروع Photos Gallery بل PHP الجزء الثاني

فهاد الجزء الثاني غادي نقادو الملفات لي غادي يمكننا من ربط الإتصال بقاعدة البيانات وغادي نزيدو الملف...


PH

مشروع Photos Gallery بل PHP الجزء الثالث

فهاد الجزء الثالث من المشروع ديالنا غادي نكملو الملفات لي غادي يمكنو من التعامل مع المعلومات الخاصة...


PH

مشروع Photos Gallery بل PHP الجزء الخامس

فهاد الجزء الخامس من المشروع ديالنا غادي نكملو الملفات ديال تعديل وحذف مستخدم ومنبعد غادي نزيدو الم...


PH

مشروع Photos Gallery بل PHP الجزء السادس

فهاد الجزء من المشروع ديالنا غادي نزيدو الملفات الخاصة بعرض الصور لي عندنا فقاعدة البيانات والتعليقا...


PH

مشروع Photos Gallery بل PHP الجزء السابع

فهاد الجزء من هاد المشروع غادي نكملو الملفات الخاصة بالواجهة لي غادي تكون مرئية للزوار ديالنا أول حا...


PH

مشروع Photos Gallery بل PHP الجزء الثامن

فهاد الجزء الثامن والأخير من هاد المشروع غادي نزيدو الملفات لي غادي تمكن من عرض الصور وعرض صورة والم...