diff --git a/README.md b/README.md index 3ea431d65a7f3263b01dc4acca1722c9ed3eda60..ca4e1538c202cd764b5d3f5eaee52f1badc2ae5f 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,10 @@ -Projet web: Création d'un forum d'achats et ventes entre les IIEns. +Projet web +== +Création d'un forum d'achats et ventes entre les IIEns. +- Membres du groupe : +== Nassim YAICI Yixuan ZHANG Yao SHEN diff --git a/addComment.php b/addComment.php index 7a94945ad989d754903d07fef7b3f82e1b75cb35..fb0f5eb5c9df9a9b23c72e2e096ab3eb79576641 100644 --- a/addComment.php +++ b/addComment.php @@ -1,141 +1,16 @@ <?php session_start(); -require_once"fonction.php"; -require_once"./class/addComment.class.php"; -$bdd=bdd(); +require_once("./fonction.php"); +$bdd = bdd(); +$toppic=$_POST['id']; +$toppicN=$_POST['name']; if (isset($_POST['content'])) { - $content=$_POST['content']; - $comment = new addComment($content, $_POST['namet']); - $verif = $comment->verify(); + $content = $_POST['content']; + $userid= $_SESSION['id']; + $date= date("Y-m-d"); - if ($verif =="ok") { - $add = $comment->insert($content, $comment->sujet); - header("Location: topiclist.php"); - - } - else - { - $erreur = $verif; - } - + $requete=pg_query("INSERT INTO comments(content, date, users_id, toppics_id) values('$content', '$date', $userid, $toppic) "); } - -?> - -<!DOCTYPE html> -<html lang="en"> -<head> - <title>Com-Ensiie</title> - <meta charset="utf-8"> - <meta name="viewport" content="width=device-width, initial-scale=1"> - <link rel="stylesheet" href="./bootstrap/css/bootstrap.css"> - <link rel="stylesheet" href="./bootstrap/css/mystyle.css"> - <script type="text/javascript" src="./script.js"></script> -</head> -<body> - <div class="container-fluid"> - <div class="jumbotron"> - <h1><span style="color: white">Com-Ensiie</span></h1> -<?php -if(isset($_SESSION['pseudo'])){ - $pseudo=$_SESSION['pseudo']; -?> - </div> - <button type="button" class="btn btn-success btn-right" onclick="location.href='./deconnexion.php'" >Deconnexion</button> - <button type="button" class="btn btn-success btn-right" onclick="location.href='./edit.php'" >Edit</button> - <button type="button" class="btn btn-success btn-right" onclick="location.href='./newtopics.php'" >Nouveau sujet</button> - <label for="hello"><?php echo "Vous êtes connectés entant que : $pseudo";?></label> - </div> -<?php -} -else -{ -?> - </div> - <button type="button" class="btn btn-success btn-right" onclick="location.href='./login.php'" >Log In</button> - <button type="button" class="btn btn-success btn-right" onclick="location.href='./register.php'">Register</button> - </div> -<?php -} -?> - <nav class="navbar navbar-inverse"> - <div class="navbar-header"> - <a class="navbar-brand" href="./accueil.php">Com-Ensiie</a> - </div> - <?php - $dn2 = pg_query("SELECT * FROM keys ORDER BY name asc"); - while($reponse=pg_fetch_assoc($dn2)) - { - ?> - <div class="navbar-header"> - <ul class="nav navbar-nav"> - <li class="dropdown active"><a href="./topiclist.php?category=<?php echo $reponse['name']; ?>"><?php echo $reponse['name']; ?></a></li> - </ul> - </div> - <?php - } - ?> - </nav> -</div> - -<div class="container-fluid text-center"> - <div class="row content"> - <div class="col-sm-2 sidenav"> - <?php - if(isset($_SESSION['su'])){ - if ($_SESSION['su']=='t') { - ?> - <div> - <button type="button" class="btn btn-info btn-right" onclick="location.href='./adminEdit.php'" >Edit users</button><br><br> - </div> - <div> - <button type="button" class="btn btn-info btn-right" onclick="location.href='./adminEditTopics.php'" >Edit toppics</button> - </div> - <?php - } - } - ?> - </div> - <div class="col-lg-8 text-left"> - <br> - <form class="form-horizontal" role="form" method="post" action="./addComment.php"> - <?php - if (isset($_GET['toppic'])) { - $top = htmlspecialchars($_GET['toppic']); - $requete=pg_fetch_array(pg_query("SELECT namet FROM toppics WHERE id=$top")); - ?> - <div class="row comment-create"> - <label class="col-sm-2 text-right ">Topic </label> - <label class="col-sm-6 text-right"><?php echo $requete['namet'];?></label> - </div> - <?php - - } - ?> - - <div class="row comment-create"> - <label class="col-sm-2 text-right ">Commentaire</label> - <div class="col-sm-10"> - <textarea name="content" class="form-control" rows="10" placeholder="Votre commentaire..."required - aria-required="true" spellcheck="false"></textarea> - </div> - </div> - <br> - <input type="hidden" name="namet" value="<?php echo $requete['namet'];?>"> - <button id="submit" class="btn btn-primary topic-create center-block">Ajouter</button> - <?php - if (isset($erreur)) { - echo $erreur; - } - ?> - </form> - </div> - - - </div> -</div> - <div class="footer"></div> -</div> -</body> -</html> \ No newline at end of file + header("Location: affichetoppic.php?toppic=$toppicN"); +?> \ No newline at end of file diff --git a/adminEdit.php b/adminEdit.php index fd2ee88f3e71d15c5c3ac1adbb6cbd945c0a7d54..72948d77e63ba177e79b77904aed7648af655630 100644 --- a/adminEdit.php +++ b/adminEdit.php @@ -80,8 +80,7 @@ else ?> </div> <div class="col-lg-8 text-left"> - <h1>Modify users</h1> - <div class="col-lg-8 lg-8 text-left"> + <div class="col-lg-15 lg-8 text-left"> <table class="table"> <col width="20%"> <col width="60%"> diff --git a/adminEditTopics.php b/adminEditTopics.php index 8aa19efc3bc006ad16e2eddda3aaf1bcbd925f5b..d8822a1d9f6bd33dcb00c9c95bc9185d156ab55b 100644 --- a/adminEditTopics.php +++ b/adminEditTopics.php @@ -81,9 +81,9 @@ else </div> <div class="col-lg-8 text-left"> <?php - $sql=pg_query("SELECT * FROM toppics NATURAL JOIN keys ORDER BY (date, name)"); + $sql=pg_query("SELECT * FROM toppics JOIN keys ON(id_key = keys.id) ORDER BY (date, name)"); ?> - <div class="col-lg-8 lg-8 text-left"> + <div class="col-lg-15 lg-10 text-left"> <table class="table"> <col width="20%"> <col width="60%"> diff --git a/affichetoppic.php b/affichetoppic.php index fb72ff259b56667a56cf7dd1d254ce66d60c7747..0d9300e8e6694422952bf6c6a13d6e7b178b1bf6 100644 --- a/affichetoppic.php +++ b/affichetoppic.php @@ -82,71 +82,103 @@ else <?php if(isset($_GET['toppic'])){ $name=htmlspecialchars($_GET['toppic']); - $sql=pg_query("SELECT pseudo, content, date, toppics.id FROM toppics JOIN users ON (users_id=users.id) WHERE namet='$name' ORDER BY date"); + $sql=pg_fetch_assoc(pg_query("SELECT pseudo, adr_mail as mail, toppics.content, toppics.date, toppics.id, comments.date as comment FROM (users JOIN toppics ON (users.id=toppics.users_id)) JOIN comments ON(toppics.id=toppics_id) WHERE namet='$name' ORDER BY (toppics.date, comments.date)")); + $auteur=$sql['pseudo']; + $id=$sql['id']; +} +else{ + header("Location: topiclist.php"); } ?> <div class="col-lg-8 lg-8 text-left"> - <table class="table"> - <col width="20%"> - <col width="60%"> - <col width="20%"> - <thead> - <tr> - <th class="lead">Auteur</th> - <th class="lead">Contenu</th> - <th class="lead">Date</th> - </tr> - </thead> + <div class="topic-all"> + + <div class="pagetitle"> + <h2 style="float:left;"> + <span class="threadtitle"> + <font color="black"><?php echo $name; ?></font> + <h6> + <a style="float: left;padding-top: 6px;margin-left: 10px;" href="./topiclist.php">Retour à la liste des sujets</a> + </h6> + </span> + </h2> + + <div class="clear"></div> + </div> + + + <div class="topic-title"> + + <p> + <strong>Topic : </strong><?php echo $name; ?></p> + + <p> + <strong>Auteur: </strong><?php echo $sql['pseudo'];?> </p> - <?php + <p> + <strong>Dernier message : </strong> <?php echo $sql['comment'];?> </p> - while($reponse=pg_fetch_assoc($sql)) - { - $idTop=$reponse['id']; - ?> - <tr> - <td><?php echo $reponse['pseudo'];?></td> - <td><?php echo $reponse['content'];?></td> - <td><?php echo $reponse['date'];?></td> - </tr> - <?php - - } - ?> - <tr> - <table class="table"> - <col width="20%"> - <col width="60%"> - <col width="20%"> - <thead> - <tr> - <th class="lead">Pseudo</th> - <th class="lead">Commentaire</th> - <th class="lead">Date</th> - </tr> - </thead> - <?php - $sql1=pg_query("SELECT pseudo, comments.date, comments.content FROM (comments JOIN toppics ON(toppics.id=toppics_id)) JOIN users ON (comments.users_id=users.id) WHERE namet='$name' ORDER BY date"); - while($reponse1=pg_fetch_assoc($sql1)) - { - ?> - <tr> - <td><?php echo $reponse1['pseudo'];?></td> - <td><?php echo $reponse1['content'];?></td> - <td><?php echo $reponse1['date'];?></td> - </tr> - <?php - + <p> + <b>Création:</b><?php echo $sql['date'];?> </p> + </div> + <div class="topic-contenu"> + <p> + <strong>Contenu Concret:</strong> + <?php echo $sql['content']; ?> + </p> + <p> + Si vous voulez l'acheter ou avoir plus d'informations, connectez-moi! + <p>E-mail: <?php echo $sql['mail'];?></p> + </p> + + <p> + <img src="./img/photos.jpg" alt="Logo" width="500" height="400"> + </p> + </div> + + <div id="postlist" class="postlist restrain"> + <ul class="list-group"> + + <?php + $sql1=pg_query("SELECT pseudo, comments.date, comments.content FROM (comments JOIN toppics ON(toppics.id=toppics_id)) JOIN users ON (comments.users_id=users.id) WHERE namet='$name' ORDER BY date"); + while($reponse1=pg_fetch_assoc($sql1)) + { + $date=$reponse1['date']; + $pseudo = $reponse1['pseudo']; + $content = $reponse1['content']; + ?> + <li class="list-group-item"> + <div class="Datetime"> + <p><?php echo $date;?></p> + </div> + <div class="username"> + <h5><?php echo $pseudo; ?><?php if($auteur==$pseudo){?> <span class="badge">hôte</span><?php }?></h5> + </div> + <div class="commentaire"> + <p><?php echo $content; ?></p> + </div> + </li> + <?php } ?> - </table> - - </tr> - </table> - </div> + <li class="list-group-item"> + <form role="form" method="post" action="addComment.php"> + <div class="form-group"> + <label for="name">Votre Commentaire:</label> + <textarea class="form-control" rows="4" name="content" required placeholder="Votre commentaire ..."></textarea> + </div> + <input type="hidden" name="id" value="<?php echo $id; ?>"> + <input type="hidden" name="name" value="<?php echo $name; ?>"> + <input class="btn btn-primary " type="submit" value="Commenter"> + </form> + + </li> + </ul> + </div> + </div> <div> -<button type="button" class="btn btn-success btn-right" onclick="location.href='./addComment.php?toppic=<?php echo $idTop; ?>'">Commenter</button> + </div> </div> diff --git a/bootstrap/css/mystyle.css b/bootstrap/css/mystyle.css index 8c4e20306539a9730bdc31b4b49332dfa82b9ec2..ebb95899b80108ff2a7d8856b161ba67d7666a7d 100644 --- a/bootstrap/css/mystyle.css +++ b/bootstrap/css/mystyle.css @@ -18,7 +18,7 @@ and open the template in the editor. .sidenav { padding-top: 20px; background-color: #f1f1f1; - height: 100%; + height: 400%; } /* Set black background color, white text and some padding */ .footer { @@ -36,4 +36,30 @@ textarea[aria-invalid="true"] { border:1px solid #f00; box-shadow:0 0 4px 0 #f00; -} \ No newline at end of file +} + +.topic-title { + clear: both; + line-height: 18px; + background-color:#e7e6e6; + padding: 6px 10px; + margin: 5px 0px; + color: #454545; + } + .topic-contenu { + clear: both; + line-height: 18px; + background-color:#e7e6e6; + padding: 6px 10px; + margin: 5px 0px; + color: #454545; + } + .pagetitle{ + padding: 0px 0px 0px 0px; + clear: both; + padding-top: 5px; + background: none; + margin-bottom: 5px; + width: 100%; + } + \ No newline at end of file diff --git a/class/addComment.class.php b/class/addComment.class.php deleted file mode 100644 index 313bdfed1bc3dac942eb999061b3e72b72e3d41e..0000000000000000000000000000000000000000 --- a/class/addComment.class.php +++ /dev/null @@ -1,39 +0,0 @@ -<?php -require_once("/../fonction.php"); - -class addComment -{ - private $content; - private $idTop; - private $bdd; - - public function __construct($content, $sujet) - { - $this->content=pg_escape_string(htmlspecialchars($content)); - $this->sujet=pg_escape_string(htmlspecialchars($sujet)); - $this->bdd = bdd(); - } - - public function verify() - { - if (empty($this->content)) { - return "Veuillez remplir le contenu du commentaire !!!"; - } - else - { - return "ok"; - } - } - - - public function insert($content, $sujet) - { - $idUser=$_SESSION['id']; - $date=date("Y-m-d"); - $requete = pg_fetch_array(pg_query("SELECT id FROM toppics where namet='$sujet'")); - $idTop=$requete['id']; - $requete=pg_query("INSERT INTO comments(content, date, users_id, toppics_id) values('$this->content', '$date', $idUser, $idTop)"); - return 1; - } -} -?> \ No newline at end of file diff --git a/class/inscription.class.php b/class/inscription.class.php index ba40fc5c05a8457b2131f390402c7bc1e64b4af4..94eacedee1f8d0a055023797cbe5a3ce33e4c548 100644 --- a/class/inscription.class.php +++ b/class/inscription.class.php @@ -65,6 +65,22 @@ class inscription return 1; } - + public function check() + { + $requete=pg_fetch_assoc(pg_query("SELECT pseudo, adr_mail as mail FROM users")); + if ($this->pseudo == $requete['pseudo']) { + return "Ce pseudo est dèjà utilisé"; + } + else + { + if ($this->mail == $requete['mail']) { + return "Cette adresse mail est déjà utilisée"; + } + else + { + return "ok"; + } + } + } } ?> \ No newline at end of file diff --git a/img/photos.jpg b/img/photos.jpg new file mode 100644 index 0000000000000000000000000000000000000000..701c02fc6e0428269d4c4042bcb69e2c82b1dae3 Binary files /dev/null and b/img/photos.jpg differ diff --git a/newtopics.php b/newtopics.php index 1599e5ea8d378523ff4a999f3aa18b9b573c671a..08a3872445ab4886fd55b5e47980f241ed96cb99 100644 --- a/newtopics.php +++ b/newtopics.php @@ -133,7 +133,7 @@ else <label class="col-sm-2 text-right ">Déscription</label> <div class="col-sm-10"> <textarea name="content" class="form-control" rows="15" placeholder="Le contenu ..."required - aria-required="true" spellcheck="false" pattern="^([- \w\d\u00c0-\u024f]+)$"></textarea> + aria-required="true" spellcheck="false" ></textarea> </div> </div> <br> diff --git a/register.php b/register.php index e2aaec311fcfcbecb0954a70f76ed827ba6733c7..b6fd13835962638df35c51440df9b619c65deb88 100644 --- a/register.php +++ b/register.php @@ -13,9 +13,15 @@ if (isset($_POST['pseudo'], $_POST['mdp'], $_POST['mdpC'], $_POST['mail'])) $verif = $inscription->verify(); if ($verif=="ok") { - $inscription->enregistrer(); - header("Location: login.php"); - exit; + $test =$inscription->check(); + if ($test=="ok") { + $inscription->enregistrer(); + header("Location: login.php"); + } + else + { + $erreur=$test; + } } else {