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 premier temps nous allons faire une requête SQL afin d'afficher toutes les demandes d'un receveur.


$mes_demandes = $DB->query("SELECT r.*, u.nom, u.prenom
  FROM relation r 
  LEFT JOIN utilisateur u ON u.id = r.id_demandeur 
  WHERE r.id_receveur = ? AND r.statut = ?",
  array($_SESSION['id'], 1));
 
$mes_demandes = $mes_demandes->fetchAll();


Dans cette requête nous allons chercher les informations telles que le nom et prénom des demandeurs.


Du côté du HTML nous allons afficher le résultat obtenu avec un formulaire contenant 2 boutons.

  • Accepter la demande,
  • Refuser la demande.


<table>
  <tr>
    <th>Nom prénom</th>
    <th></th>
    <th></th>
  </tr>
  <?php
    foreach($mes_demandes as $md){ 
  ?>  
  <tr>
    <form method="post">
      <td>
        <?= $md['nom'] . ' ' . $md['prenom']?> 
        <input type="hidden" name="id_demande" value="<?= $md['id']?>"/>
      </td>
      <td>
        <input type="submit" name="accepter" value="Accepter"/>
      </td>
      <td>
        <input type="submit" name="refuser" value="Refuser"/>
      </td>
    </form>
  </tr>   
  <?php
    }
  ?>
</table>


Pour récupérer l'identifiant du demandeur il faut rajouter un input de type hidden afin de ne pas voir cette information.


Une fois cela fait nous allons d'abord nous occuper du traitement PHP lorsque le receveur accepte la demande.


if(isset($_POST['accepter'])){
  $id_demande = (int) $id_demande;
 
  $verifier_demande = $DB->query("SELECT *
    FROM relation 
    WHERE id = ?",
    array($id_demande));
 
  $verifier_demande = $verifier_demande->fetch();
 
  if(isset($verifier_demande['id'])){
    $DB->insert('UPDATE relation SET statut = ? WHERE id = ?',
      array(2, $verifier_demande['id']));
 
    header('Location: /demandes-amis'); 
    exit;
  }
}


Dans le code ci-dessus nous allons vérifier qu'il y a toujours la demande dans la table relation. Si elle existe toujours alors nous allons mettre à jour le statut de cette demande en 2 afin de confirmer la demande.



Pour le traitement PHP si la demande est refusée alors on supprime la demande dans la table relation. Il n'y a pas besoin de vérifier si la demande existe encore.


if(isset($_POST['refuser'])){

  $id_demande = (int) $id_demande;
 
  $DB->insert('DELETE FROM relation WHERE id = ?',
    array($id_demande));
 
  header('Location: /demandes-amis'); 
  exit;
}


Maintenant que le receveur peut valider ou refuser une demande nous allons ajouter ces informations lors de la demande d'ami par un demandeur.

2867 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
526 vues
Syntaxe de base : balises PHP, commentaires
Introduction à la syntaxe de base en PHPPHP utilise une syntaxe simple et flexible pour écrire du code côté serveur. Commençons par explorer les balises PHP et les commentaires, deux éléments...
PHP
1 356 vues
Voir plus de messages (1/2)
Dans cette nouvelle vidéo nous allons ajouter un bouton 'voir plus' qui va nous permettre de voir d'anciens messages. Nous allons commencer par mettre en place le bouton suivi du procédé pour voir...
Créer son site de rencontres
237 vues
CSS interne : l'utilisation de balises <style> dans la section <head> du document HTML
CSS Interne : L'utilisation de balises <style> dans la section <head> du document HTMLLe CSS interne est une méthode de stylisation où les styles sont définis directement dans la...
CSS
1 861 vues
Envoyer un message sans recharger la page (2/2)
Comme nous avons mis en place notre système en JavaScript / Ajax pour envoyer un message sans recharger notre page en cours nous allons maintenant enregistrer le message + afficher ce dernier dans...
Créer son site de rencontres
4 982 vues
Le langage HTML
Avant de commencer cet article nous allons commencer par un rappel.Rappel : Pour développer en HTML, il faut utiliser n'importe quel éditeur de texte et enregistrer le fichier au format .html afin...
Créer son site
10 086 vues
Supprimer le .php de vos URLs
Avant de mettre en ligne votre site, il faut tout d'abord apporter une dernière modification à votre site. Laquelle ? Et bien celle de supprimer les .php de vos URLs pour rendre votre site web plus...
Créer son site
4 018 vues
Formulaire d'inscription en PHP (1/2)
Vous allez maintenant découvrir ou redécouvrir les joies de réaliser son premier formulaire d'inscription en PHP / SQL.Pour cela nous allons construire un formulaire avec des champs à remplir...
Créer son site de rencontres
6 739 vues
Comment développe-t-on un site ?
Je suppose que si vous lisez ceci c'est que vous n'avez peut-être jamais développé auparavant et que vous souhaitez apprendre à développer votre premier site web.Si je vous parle...
Créer son site
Publicité
Cette pub permet au site de vivre ...