Si je fais :
echo infoStatut('statut_id'); dans la fonction, j'ai l'id de la dernière actu dans les 2 actus.
Dans mon exemple, j'ai 246 à toutes les actus alors que normalement ma deuxième actu à l'id 245
J'affiche toutes les fonctions des statuts, et des commentaires, pour que tu comprenne mieux

Il y a peut-être une modification à faire dans les fonctions des actualités (statuts).
<?php
// Statut
function infoStatut($info){
$resultat = Bdd::connect() -> prepare(SELECT.ALL.USERS_STATUT.LEFTJOIN.USERSZ.ONSTATUT);
$resultat -> execute();
$infoStatut = $resultat -> fetch(PDO::FETCH_ASSOC);
return $infoStatut[$info];
}
function createStatut($user_id,$statut_text,$statut_acces,$statut_photo){
$statut_text = trim(html_entity_decode($_POST['statut_text']));
if(isset($statut_text) && !empty($statut_text)){
$resultat = Bdd::connect() -> prepare(INSERT.USERSZ_STATUT.STATUTINSERT);
$resultat -> execute(array('user_id' => $user_id,'statut_text' => trim(html_entity_decode($statut_text)),'statut_acces' => $statut_acces,'statut_photo' => $statut_photo)); ?>
<div class="clearfix statutPost">
<div class="post">
<a href="<?php echo infoStatut('pseudo'); ?>" class="postAvatar"><img src="users/upload/avatars/<?php echo verifAvatarStatut(); ?>" height="56" width="56" alt="" /><i class="postAvatarCover"></i></a>
<a href="<?php echo infoStatut('pseudo'); ?>" class="postName"><?php echo majuscule(infoStatut('prenom')); ?> <?php echo majuscule(infoStatut('nom')); ?></a>
<div class="postOpt">
<ul>
<li class="dropdown"><a href="#" class="tooltip_top dropdown-toggle optLink" data-toggle="dropdown" title="Options"><i class="optIcon"></i></a>
<ul class="subOpt"><?php if(infoStatut('user_id') == info($id, 'id')){ ?>
<li><a href="#" class="subOptLink modifPost" id="<?php echo infoStatut('statut_id'); ?>">Modifier</a></li>
<li><a href="#" class="subOptLink delPost" id="<?php echo infoStatut('statut_id'); ?>">Supprimer</a></li><?php } elseif(infoStatut('user_id') != info($id, 'id')) { ?>
<li><a href="#" class="subOptLink signalPost" id="<?php echo infoStatut('statut_id'); ?>">Signaler comme indésirable</a></li><?php } ?>
</ul>
</li>
</ul>
</div>
<div class="postContent"><?php echo nl2br(smiley(infoStatut('statut_text'))); ?></div>
<div class="postTime"><?php echo getRelativeTime(infoStatut('statut_date')); ?></div>
<form method="post" action="home" class="statutCom" onsubmit="return false;">
<div class="clearfix">
<a href="#" class="postLink postComments"><i id="postComs"></i><span>Commenter</span></a>
<a href="#" class="postLink postLikes"><i id="postLike"></i><span>J'aime</span></a>
<span class="postText tooltip_top" title="<?php echo majuscule(infoStatut('statut_acces')); ?>"><i id="post_<?php echo infoStatut('statut_acces'); ?>"></i></span>
</div>
<div class="postContainer">
<div class="newsCom"></div>
<?php echo displayCom(); ?>
<div class="comsComposer showCom">
<div class="clearfix">
<div class="avatarCom">
<img src="users/upload/avatars/<?php echo verifAvatar(); ?>" height="34" width="34" alt="" />
</div>
<div class="inputCom">
<input type="text" data-user="<?php echo info($id,'id'); ?>" data-statut="<?php echo infoStatut('statut_id') ?>" class="text_coms" name="coms_text" placeholder="Écrire un commentaire" value="" />
</div>
</div>
</div>
</div>
</form>
</div>
</div><?php
} else {
return false;
}
}
function displayStatut(){
$resultat = Bdd::connect() -> prepare(SELECT.ALL.USERS_STATUT.LEFTJOIN.USERSZ.ONSTATUT);
$resultat -> execute();
if($resultat -> rowCount() >= 1){
while($statut = $resultat -> fetch(PDO::FETCH_ASSOC)){
$avatar = $_SERVER['DOCUMENT_ROOT'].'/users/upload/avatars/'.infoStatut('id').'-mini.jpg';
$avatarDefault = infoStatut('sexe') == 'homme' ? 'homme.jpg' : 'femme.jpg'; ?>
<div class="clearfix statutPost">
<div class="post">
<a href="<?php echo $statut['pseudo']; ?>" class="postAvatar"><img src="users/upload/avatars/<?php if(file_exists($avatar)){ echo $statut['id']; } else { echo $avatarDefault; } ?>-mini.jpg" height="56" width="56" alt="" /><i class="postAvatarCover"></i></a>
<a href="<?php echo $statut['pseudo']; ?>" class="postName"><?php echo majuscule($statut['prenom']); ?> <?php echo majuscule($statut['nom']); ?></a>
<div class="postOpt">
<ul>
<li class="dropdown"><a href="#" class="tooltip_top dropdown-toggle optLink" data-toggle="dropdown" title="Options"><i class="optIcon"></i></a>
<ul class="subOpt"><?php if($statut['user_id'] == info($id, 'id')){ ?>
<li><a href="#" class="subOptLink modifPost" id="<?php echo $statut['statut_id']; ?>">Modifier</a></li>
<li><a href="#" class="subOptLink delPost" id="<?php echo $statut['statut_id']; ?>">Supprimer</a></li><?php } elseif($statut['user_id'] != info($id, 'id')) { ?>
<li><a href="#" class="subOptLink signalPost" id="<?php echo $statut['statut_id']; ?>">Signaler comme indésirable</a></li><?php } ?>
</ul>
</li>
</ul>
</div>
<div class="postContent"><?php echo nl2br(smiley($statut['statut_text'])); ?></div>
<div class="postTime"><?php echo getRelativeTime($statut['statut_date']); ?></div>
<form method="post" action="home" class="statutCom" onsubmit="return false;">
<div class="clearfix">
<a href="#" class="postLink postComments"><i id="postComs"></i><span>Commenter</span></a>
<a href="#" class="postLink postLikes"><i id="postLike"></i><span>J'aime</span></a>
<span class="postText tooltip_top" title="<?php echo majuscule($statut['statut_acces']); ?>"><i id="post_<?php echo $statut['statut_acces']; ?>"></i></span>
</div>
<div class="postContainer">
<div class="newsCom"></div>
<?php echo displayCom(); ?>
<div class="comsComposer showCom">
<div class="clearfix">
<div class="avatarCom">
<img src="users/upload/avatars/<?php echo verifAvatar(); ?>" height="34" width="34" alt="" />
</div>
<div class="inputCom">
<input type="text" data-user="<?php echo info($id,'id'); ?>" data-statut="<?php echo $statut['statut_id'] ?>" class="text_coms" name="coms_text" placeholder="Écrire un commentaire" value="" />
</div>
</div>
</div>
</div>
</form>
</div>
</div><?php
}
} else { echo '<div id="nofeed">Publiez quelque chose, partager des articles, photos ou vidéos...</div>'; }
}
function deleteStatut($statut_id){
$statut_id = $_GET['statut_id'];
if(isset($_GET['statut_id'])){
$resultat = Bdd::connect() ->prepare(DELETE.USERS_STATUT.' WHERE statut_id = :statut_id');
$resultat -> bindParam(':statut_id', $statut_id, PDO::PARAM_INT, 11);
$resultat -> execute();
} else {
return false;
}
}
// Commentaires
function createCom($user_id,$coms_statut,$coms_text){
$coms_text = trim(html_entity_decode($_POST['coms_text']));
if(isset($coms_text) && !empty($coms_text)){
$resultat = Bdd::connect() -> prepare(INSERT.USERSZ_COMS.COMINSERT);
$resultat -> execute(array('user_id' => $user_id,'coms_statut' => $coms_statut,'coms_text' => trim(html_entity_decode($coms_text)))); ?>
<div class="comsContainer">
<div class="comAvatar">
</div>
<div class="comContent">
</div>
</div><?php
} else {
return false;
}
}
function infoCom($info){
$resultat = Bdd::connect() -> prepare('SELECT * FROM users_coms LEFT JOIN users ON user_id = id');
$resultat -> execute();
$infoComs = $resultat -> fetch(PDO::FETCH_ASSOC);
return $infoComs[$info];
}
function displayCom(){
$resultat = Bdd::connect() -> prepare('SELECT * FROM users_statut JOIN users_coms ON users_statut.statut_id = users_coms.coms_statut WHERE users_statut.statut_id = :actu');
$resultat -> execute(array('actu' => infoStatut('statut_id')));
if($resultat -> rowCount() >= 1){
while($coms = $resultat -> fetch(PDO::FETCH_ASSOC)){
echo $coms['coms_text'];
echo infoStatut('statut_id');
}
}
}
?>
le fichier avec mes variables define :
<?php
include('config.inc.php');
// variables de connexion
define('DNS', 'mysql:host='.$PARAM_hote.';dbname='.$PARAM_bdd);
define('USER', $PARAM_login);
define('PASS', $PARAM_mdp);
// Informations de base
define('NAMESITE', $PARAM_namesite);
define('MAILSITE', $PARAM_mailsite);
define('URLSITE', $PARAM_urlsite);
define('URLHOME', $PARAM_urlhome);
// Instructions SQL
define('SELECT', 'SELECT ');
define('UPDATE', 'UPDATE ');
define('INSERT', 'INSERT INTO ');
define('DELETE', 'DELETE ');
define('ALL', '*');
define('LEFTJOIN', ' LEFT JOIN ');
// Les tables SQL
define('USERS', ' FROM users');
define('USERS_STATUT', ' FROM users_statut');
define('USERS_FRIENDS', ' FROM users_friends');
define('USERS_MSG', ' FROM users_msg');
define('USERS_COMS', ' FROM users_coms');
// Les tables SQL sans FROM
define('USERSZ', 'users');
define('USERSZ_STATUT', 'users_statut');
define('USERSZ_FRIENDS', 'users_friends');
define('USERSZ_MSG', 'users_msg');
define('USERSZ_COMS', 'users_coms');
// Les variables de recherche sur la table membres
define('LOGIN', ' WHERE email = :email AND mdp = :mdp');
define('EMAIL', ' WHERE email = :email');
define('ID', ' WHERE id = :id');
define('PSEUDO', ' WHERE pseudo = :pseudo');
// Les variables d'affichage des amis
define('FRIENDS', ' (friend_from + friend_to - :id) AS id_friend, friend_date, pseudo, prenom, nom, id, sexe');
define('COUNTFRIENDS', ' friend_id');
define('ONFRIENDS', ' ON id = (friend_from + friend_to - :id)');
define('WHEREFRIENDS', ' WHERE (friend_from = :id OR friend_to = :id) AND friend_confirm = :conf ORDER BY pseudo');
// Les variables d'affichage des messages
define('MSG', ' msg_id, msg_sender, msg_receiver, msg_text, msg_time, msg_lu, pseudo, prenom, nom, id, sexe');
define('COUNTMSG', ' msg_id');
define('ONMSG', ' ON users_msg.msg_sender = users.id');
define('WHEREMSGNONLU', ' WHERE msg_receiver = :id AND msg_lu = :nonlu ORDER BY msg_id DESC');
define('WHEREMSGLU', ' WHERE msg_receiver = :id AND msg_lu = :lu ORDER BY msg_id DESC');
// Les variables d'affichage du statut
define('ONSTATUT', ' ON users_statut.user_id = users.id ORDER BY statut_date DESC');
define('ONSTATUTPUBLIC', ' ON users_statut.user_id = users.id WHERE statut_acces = :public ORDER BY statut_date DESC');
define('ONSTATUTAMIS', ' ON users_statut.user_id = users.id WHERE statut_acces = :amis ORDER BY statut_date DESC');
define('ONSTATUTMOI', ' ON users_statut.user_id = users.id WHERE statut_acces = :moi ORDER BY statut_date DESC');
// Les variables d'affichage des commentaires
// Les variables d'enregistrement
define('STATUTINSERT', ' (user_id, statut_text, statut_acces, statut_photo, statut_date) VALUES (:user_id, :statut_text, :statut_acces, :statut_photo, NOW())');
define('COMINSERT', ' (user_id, coms_statut, coms_text, coms_date) VALUES (:user_id, :coms_statut, :coms_text, NOW())');
// Les variables de mises à jour
define('MAJPASS', ' SET mdp = :newPass');
define('MAJCONFIDENTIEL', ' SET confidentiel = :confidentiel');
?>