Voici la cinématique :
une requête PHP me renvoi une boucle affichant les résultats provenant de la Bdd
ID_offre Étant la variable à récupérer indépendamment.
je suis bloqué sur le problème suivant :
Lorsque je clic sur un élément pour ajouter au favoris tout mes éléments sont prit en compte.
donner un nom différent au input name="favoris" en utilisant $i ne donne rien
Au clic Submit, le script ne récupère pas une valeur mais toute.
comment peut-on essayer de solutionner ce problème.
code ci joint
merci d'avance.
Class test{
public static function search_metier_sep($metier,$atouts,$datedeb) {
$test = Membre::info($_SESSION['id'], 'id');
$listid = [];
$i = 0;
$resultat = Bdd::connectBdd()->prepare('SELECT * FROM offres WHERE metier=:metier OR atouts=:atouts OR dh_deb_of=:dh_deb_of');
$resultat -> bindParam(':metier', $metier, PDO::PARAM_STR, 25);
$resultat -> bindParam(':atouts', $atouts, PDO::PARAM_STR, 25);
$resultat -> bindParam(':dh_deb_of', $datedeb, PDO::PARAM_INT, 35);
$resultat -> execute();
while($ListeOffres = $resultat -> fetch(PDO::FETCH_ASSOC)) {
$id_offre[$i] = $ListeOffres['ID_offre'];
$listid[$i] = $id_offre[$i];
echo "<div class='search_extra'>
<td>".$ListeOffres['enseigne']."</td>
<td>Metier: ".$ListeOffres['metier']."</td>
<td>date de parution".$ListeOffres['date_depot']."</td>
<td>Taux horaire:".$ListeOffres['taux']."</td>
<td>".$ListeOffres['nbr_poste']."</td>
<td>".$ListeOffres['mission']."</td>
<td>".$ListeOffres['profil']."</td>
<div class='content_fav'>
<form method='post' action = ''>
<input type='text' name='favoris_".$i."' value='".$ListeOffres['ID_offre']."' class='favoris'>
<input type='submit' name='submit' value='damn'>
</form>
</div>
</div>";
if (empty($_POST['favoris_'.$i.''])) {
echo $id_offre[$i];
test::favoris($id_offre[$i], $test);
}
}
}
public static function favoris($id_offre, $id_candid){
$req=Bdd::connectBdd()->prepare("INSERT INTO favoris (id_candid, id_offre) VALUES (:id_candid, :id_offre)");
$req -> bindParam(':id_candid', $id_candid, PDO::PARAM_INT, 25);
$req -> bindParam(':id_offre', $id_offre, PDO::PARAM_INT, 25);
$req -> execute();
}
}