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.

3925 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
777 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
5 892 vues
Créer son blog
Développer son Blog de A à ZAprès avoir terminer les articles pour développer votre Forum de A à Z maintenant nous allons nous attaquer à la création d'un blog complet !Pour...
Créer son site
928 vues
Paramètres de fonction
Les paramètres de fonction en PHP permettent de passer des valeurs à une fonction pour qu'elle puisse effectuer des opérations sur ces valeurs. Voici un cours facile à comprendre sur les...
PHP
18 032 vues
Première page (index.php)
Pour commencer à développer notre site nous avons besoin de créer une nouvelle page que l'on appellera index.php. Cette page fera office de page d'accueil car lorsque vous allez...
Créer son site
1 026 vues
Instructions conditionnelles (if, else, elseif)
Les instructions conditionnelles en PHP permettent d'exécuter des blocs de code en fonction de certaines conditions. Les trois principales structures conditionnelles en PHP sont if, else et elseif....
PHP
603 vues
Syntaxe des Directives
Chaque directive dans le fichier .htaccess suit une syntaxe spécifique pour fonctionner correctement. Comprendre cette syntaxe est essentiel pour utiliser efficacement les directives dans votre...
HTACCESS
3 438 vues
Gestion des demandes
Nous allons maintenant nous attaquer à la gestion des demandes d'amis. Pour cela vous allez créer une nouvelle page que nous allons appeler demandes-amis.php.Dans cette nouvelle page, dans un...
Créer son site
838 vues
Comment ces propriétés affectent le positionnement et la mise en page des éléments
Impact des Propriétés de Marge, Bordure, Rembourrage, Largeur et Hauteur sur le Positionnement et la Mise en Page des ÉlémentsEn CSS, les propriétés de marge, bordure, rembourrage, largeur et...
CSS
Publicité
Cette pub permet au site de vivre ...