Bouton supression image mysql php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Bouton supression image mysql php

Re: Bouton supression image mysql php

par Ryle » 18 juin 2018, 17:33

Salutations !

Ton problème vient du fait que dans la boucle qui affiches tes enregistrements, tu inclus un formulaire qui a toujours le même ID.
<form id="tes" method="POST" action="./production/img_prive/del_img_priver.php"> 
Si tu regardes le code source de la page généré, tu verras qu'il y a donc autant de formulaire dont l'id est "tes" que d'élément affichés (ce qui en passant n'est pas valide d'un point de vue HTML, un id devant être unique dans une page).

Ensuite, dans chacun de tes liens, tu demandes à soumettre le formulaire dont l'id est "tes". Le navigateur étant au fait des bonnes pratiques HTML, va donc soumettre le premier formulaire qu'il trouve avec cet id, puisqu'il sait très bien qu'il ne doit pas / peut pas y en avoir d'autre ... et voilà pourquoi c'est toujours la première image qui est supprimée. Affaire résolue mon cher Wats... Azizss ;)

Tu peux donc corriger soit en renommant l'id à chaque ligne (ainsi que l'appel), soit, et ça sera plus propre et plus facile à lire, suivre les recommandation de Moogli, virer les formulaires et garder un lien qui appel une seule et même fonction javascript en lui passant l'id à supprimer :)

Re: Bouton supression image mysql php

par moogli » 17 juin 2018, 20:45

Salut,

je te conseil une fonction JS simple qui va faire une requête serveur en fournissant l'ID de l'image à supprimer.
Coté serveur un simple delete from image where id = xxx

La signature de la fonction JS

Code : Tout sélectionner

function delateImage(imageID){ // appel "ajax" vers le fichier php de suppression }
le lien html <a href="javascript:deleteImage(<?= $donnee12['imageID'] ?>);">delete</a>


@+

Bouton supression image mysql php

par azizss » 13 juin 2018, 16:53

Bonjour tous le monde,

J’essaie de supprimer des images que je charge de ma bdd pdo.
mon problème est que quant je veux supprimer une de mes images, ça me supprime toujours la 1er de la liste.
Comment faire pour récupérer l'id de la bonne image sélectionner ?
<div class="panel-body">
	<div class="form-group">
		<div class="row">
		<?php 
		$id_user = $_SESSION['id'];
		
		$reponse13 = $bdd->query("SELECT * FROM `image` WHERE `user_id` = $id_user AND actif = 1 AND actif_droit = 1");
		while ($donnees13 = $reponse13->fetch())
		{
		$path = $donnees13['path'];
		?><?php
		if ($path != '') {
		?>
	<div class="col-lg-3 col-sm-6">
		<div class="thumbnail">
		<div class="thumb">
			<img src="<?php if ($path != '') {
			echo "files_photo/$id_user/image/$path";
			}else {echo 'assets/images/placeholder.jpg';
			} ?>" alt="">
			<div class="caption-overflow">
				<form id="tes" method="POST" action="./production/img_prive/del_img_priver.php"> 
					<span>
						<input type="hidden" name="id_imageperso" value="<?php echo $donnees13['id_imageperso'] ?>"/>
							<a href='#' onclick='document.getElementById("tes").submit()' class="btn border-white text-white btn-flat btn-icon btn-rounded">
								<i class="icon-trash-alt"></i>
							</a>
							<a href="<?php if ($path != '') {echo "files_photo/$id_user/image/$path";
								}else {
								echo 'assets/images/placeholder.jpg';
								} ?>" data-popup="lightbox" class="btn border-white text-white btn-flat btn-icon btn-rounded">
								<i class="icon-plus3"></i>
							</a>
					</span>
				</form>
			</div>
		</div>
		<div class="caption">
		<h6 class="text-semibold no-margin-top"><a href="#" class="text-default"><?php echo $donnees13['titre']; ?></a></h6><br />
		<h6 class="text-semibold no-margin-top"><a href="#" class="text-default"><?php echo $donnees13['id_imageperso']; ?></a></h6>
</div>
		<span>
			<a  href="" data-toggle="modal" data-target="#myModal2134" data-dismiss="modal" class="btn border-black text-black btn-flat btn-icon btn-rounded"><i class="icon-pencil7"></i></a>		
		</span>
	</div>
</div>
<?php 
}else {
}
?>