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.

3715 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
707 vues
Boucles (for, while, do-while, foreach)
Les boucles en PHP permettent d'exécuter un bloc de code plusieurs fois, en fonction d'une condition spécifiée. Les principales boucles en PHP sont for, while, do-while et foreach. Voici un cours...
PHP
790 vues
Utilisation de <tr> pour les lignes, <th> pour les en-têtes et <td> pour les cellules
Utilisation de <tr> pour les lignes, <th> pour les en-têtes et <td> pour les cellulesDans un tableau HTML, la balise <tr> est utilisée pour définir chaque ligne du tableau,...
HTML
4 296 vues
Utilisation des balises <h1> à <h6> pour les titres
Utilisation des balises <h1> à <h6> pour les titresLes balises <h1> à <h6> sont utilisées pour définir les niveaux de titre dans une page HTML. Elles vont du titre le plus...
HTML
2 412 vues
Envoyer un message sans recharger la page (1/2)
Nous allons améliorer notre messagerie interne vu que nous pouvons désormais envoyer et recevoir des messages.Pour cela nous allons utiliser du JavaScript avec de l'Ajax afin de faire des...
Créer son site de rencontres
3 324 vues
Comprendre les différentes catégories de commandes SQL
SQL, ou Structured Query Language, est composé de plusieurs catégories de commandes, chacune ayant un rôle spécifique dans la manipulation et la gestion des bases de données relationnelles. Les...
SQL
4 309 vues
Afficher son article
Afficher son articleNous allons créer une nouvelle page que l'on nommera voir_article.php. Cette page affichera tous les articles qui constituerons notre blog.Nous allons modifier notre...
Créer son site
997 vues
Comprendre le rôle de JavaScript dans le développement web
Le rôle de JavaScript dans le développement webJavaScript est un langage de programmation qui joue un rôle crucial dans le développement web moderne. Il est largement utilisé pour rendre les...
JS
754 vues
Utilisation des blocs try...catch
Utilisation des Blocs try...catch en JavaScriptLes blocs try...catch en JavaScript permettent de gérer les erreurs potentielles qui peuvent survenir lors de l'exécution d'un bloc de code. Ils...
JS
Publicité
Cette pub permet au site de vivre ...