Ce site utilise des cookies pour améliorer uniquement votre expérience utilisateur.
Vous pouvez lire à tout moment comment nous utilisons les cookies sur le site.
Bonjour à tous je rencontre actuellement un problème avec mon site de follow, en effet lorsque l'utilisateur follow un autre utilisateur je récupère dans ma base de donné toutes les données sauf celle de l'utilisateur qui se fait follow (elle reste sur le 0).
Voici mon code merci pour toute aide :)👊
//Voici une partie du code see_profile.php
$get_id_users_see_profile = (int) htmlentities(trim($_GET['id']));
$fo = $DB->query("SELECT *
FROM followers
WHERE id_following = ? AND id_follower = ?",
array($get_id_users_see_profile, $_SESSION['id']));;
$fo = $fo->fetch();
<form method="post" action="follow.php">
<?php
if($fo['status'] == 0){
?>
<input type="submit" class="btn btn-primary" name="follow" value="follow"/>
<input type="hidden" name="id_user" value="<? $fo['id_following'] ?>" />
<?php
}elseif($fo['status'] == 1){
?>
<input type="button" class="btn btn-secondary" value="Waiting" />
<?php
}elseif($fo['status'] == 2){
?>
<input type="submit" class="btn btn-danger" name="unfollow" value="unfollow">
<?php
}
?>
</form><br>
//Voici la page follow.php
<?php
session_start();
include('config/connexionDB.php');
if (!is_int($id) || $id <= 0 || (isset($_SESSION['id']) && $id == $_SESSION['id'])){
header('Location: profile.php');
}
if (isset($_POST['follow'])){
$valid = true;
$id_user = htmlentities(trim($id_user));
if ($valid) {
$DB->insert("INSERT INTO followers (id_follower, id_following, status) VALUES (?, ?, ?)",
array($_SESSION['id'], $id_user, 1));
header('Location: home.php');
exit;
}
}
header('Location: home.php');
exit;
?>
Pour moi la meilleur méthode c'est que si tu mets post
sur ton formulaire alors tu traites les informations sur la page en cours au lieu de la page de destination ! Comme ça tu ne t'y perds pas sur ton code.
Donc tu mets ton code php dans ta page see_profile.php
<form method="post">
...
</form>
Pour moi la meilleur méthode c'est que si tu mets post
sur ton formulaire alors tu traites les informations sur la page en cours au lieu de la page de destination ! Comme ça tu ne t'y perds pas sur ton code.
Donc tu mets ton code php dans ta page see_profile.php
<form method="post">
...
</form>
Salut @Clouder malgré votre aide mon système ne marche toujours pas...
J'ai essayé de déboguer avec des échos mais il me renvoie 0.
Je pense que ma méthode de transmission de la donnée id user n'est pas la bonne(?)
Salut @Batfire 😁
Ton ta page see_profile.php pour le raccourcis du echo
en PHP tu as mis <? ... ?>
alors qu'il faut mettre <?= ... ?>
Donc forcément ta variable $id_user
doit être à 0
<input type="submit" class="btn btn-primary" name="follow" value="follow"/>
<input type="hidden" name="id_user" value="<?= $fo['id_following'] ?>" />
As-tu regarder mes vidéos pour créer un système de relation d'amitié ? (Follow / unfollow)
Et comme conseil, quand tu vois que dans ta BDD tu obtiens 0 c'est que certainement une de tes variables ne transmet pas la bonne information. Donc n'hésite pas à déboguer avec des echo
, var_dump
, print_r
suivie d'un exit