Maintenant que notre base de données est créée, nous allons nous attaquer à la partie visuelle de notre système d'amis.


Pour commencer nous allons créer notre formulaire pour faire une demande d'ami à un utilisateur.


<form method="post">
  <input type="submit" name="demander" value="Ajouter en ami"/>
</form>


Nous allons donc faire le traitement dans la partie PHP pour créer une demande dans notre base de données.


if(isset($_POST['demander'])){
  if(!isset($relation['id'])){
    $DB->insert("INSERT INTO relation (id_demandeur, id_receveur, statut) VALUES (?, ?, ?)",
      array($_SESSION['id'], $id, 1));    
  }            
  header('Location: /voir-profil/' . $id);
  exit;
}


  • Le demandeur est la l'utilisateur qui fait la demande soit $_SESSION['id'],
  • Le receveur est l'utilisateur qui est visité soit $id,
  • Pour dire que la demande a été envoyée on met le statut à 1.



Maintenant que nous savons faire une demande nous allons pouvoir indiquer à l'utilisateur qui a fait la demande que sa demande est en attente.


Nous allons commencer par rechercher s'il y a une relation entre l'utilisateur demandeur et l'utilisateur receveur et vis versa.


$relation = $DB->query("SELECT *
	FROM relation 
	WHERE (id_demandeur, id_receveur) = (:id1, :id2) OR (id_demandeur, id_receveur) = (:id2, :id1)",
	array('id1' => $_SESSION['id'], 'id2' => $id));

$relation = $relation->fetch();


Ensuite nous allons modifier le code HTML afin que l'utilisateur demandeur et receveur voit ce qu'ils doivent voir s'il y a une demande en cours.


<form method="post">
<?php
  if(!isset($relation['id'])){
?>
  <input type="submit" name="demander" value="Ajouter en ami"/>
<?php
  }elseif($relation['statut'] == 1){
?>
  <span>En attente</span>
<?php     
  }
?>
</form>



Dans le prochain article nous allons voir comment l'utilisateur receveur va pouvoir valider ou refuser la demande faite par l'utilisateur demandeur.

3863 vues
Modifié le 21 novembre 2019
Publicité Sitedudev
Cette pub permet au site de vivre ...
Télécharger le code source
Publicité
Cette pub permet au site de vivre ...
Voir d'autres articles
2 286 vues
Configurer l'environnement de développement
Configuration de l'environnement de développement pour SASS1. Création d'une structure de projet :Avant de commencer à coder en SASS, il est important d'avoir une structure de projet organisée....
Sass
1 222 vues
Utilisation des attributs id et class pour identifier et styler les éléments
Utilisation des attributs id et class pour identifier et styler les élémentsLes attributs id et class sont utilisés pour identifier et styler les éléments HTML en leur attribuant des...
HTML
12 529 vues
Barre de recherche : Ajax
À partir de maintenant nous allons développer notre script permettant de contacter une page et de l'exécuter afin d'afficher le résultat de notre saisie.Nous allons commencer par mettre cette...
Créer son site
750 vues
Fonctions anonymes et fonctions fléchées
Fonctions Anonymes et Fonctions Fléchées en JavaScript1. Fonctions Anonymes :Une fonction anonyme est une fonction définie sans nom. Elles sont souvent utilisées comme fonctions de rappel...
JS
3 926 vues
Explorer les avantages de la séparation des préoccupations
Explorer les avantages de la séparation des préoccupationsLa séparation des préoccupations est un principe de conception qui consiste à diviser un système en différentes parties qui se...
CSS
991 vues
Utilisation de styles en ligne avec l'attribut style
Utilisation de styles en ligne avec l'attribut styleL'attribut style permet de définir des styles CSS directement à l'intérieur des balises HTML. Cela permet d'appliquer des styles spécifiques à...
HTML
1 742 vues
Utilisation de la propriété display pour contrôler le type d'affichage des éléments
La propriété display en CSS permet de contrôler le type d'affichage d'un élément. Elle détermine comment l'élément est rendu dans le flux de la page. Il existe plusieurs valeurs pour la...
CSS
2 188 vues
Explorer les fonctions de manipulation de couleur, de texte, etc.
Exploration des fonctions de manipulation en SASS1. Manipulation de couleurs :SASS propose un ensemble de fonctions intégrées pour manipuler les couleurs. Vous pouvez ajuster la luminosité, la...
Sass
Publicité
Cette pub permet au site de vivre ...