Insertion à repétion dans la BD

ulrish 18 Messages postés jeudi 19 novembre 2009Date d'inscription 25 septembre 2017 Dernière intervention - 10 janv. 2017 à 18:08 - Dernière réponse : jordane45 19249 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 14 décembre 2017 Dernière intervention
- 10 janv. 2017 à 18:30
Bonjour à tous,
S'il vous plait, j'ai un petit code d'insertion de données dans ma Base de donnée. Le problème c'est que lorsque j'éssaye d'actualiser ma page, mes données sont de nouveau insérer, résultat j'ai des doublons, des triplons et des quatriplons dans ma BD.
J'ai grandement espoir que nombre d'entre vous ont déjà eu à faire face à ce problème et évidement ont trouvé des solutions et j'aimerais que les partagiez avec moi. Je joins ici le bout de code que j'utilise pour mes insertion dans la BD
Merci

<?php
//-----------------------------------------------------
// V�rification 1 : est-ce qu'on veut poster une news ?
//-----------------------------------------------------
require_once("connect.php");
$jour = date("d");
$mois = date("m");
$annee = date("Y");
$time="$jour/$mois/$annee";
if (isset($_POST['titre']) AND isset($_POST['contenu']))
{
$titre = addslashes($_POST['titre']);
$contenu = addslashes($_POST['contenu']);
$auteur = addslashes($_POST['Auteur']);
$image = "uploads/bgbogolan.jpg";
//-------------------------------------------------------------------------
if (!empty($_FILES["fileToUpload"])){ include ('upload.php'); $image = $target_file;}
//-------------------------------------------------------------------------
// On v�rifie si c'est une modification de news ou pas
if ($_POST['id_enseignement'] == 0)
{
// Ce n'est pas une modification, on cr�e une nouvelle entr�e dans la table
$sql =("INSERT INTO enseignement (titre, contenu, times, Auteur, image) VALUES('" . $titre . "','" . $contenu . "','" . $time . "','" . $auteur . "','" . $image . "')");
mysqli_query ($con, $sql) or die ('Erreur SQL !'.mysql_error());
$titre = 0;
echo "Ajout reussit!!!! Maintenant ajouter une photo";
}
else
{
// C'est une modification, on met juste � jour le titre et le content
mysqli_query($con, "UPDATE enseignement SET titre='" . $titre . "', contenu='" . $contenu . "', times='" . $time . "', Auteur='" . $auteur . "', , image='" . $image . "' WHERE id=" . $_POST['id_enseignement']);
echo "Mise � jour reussit vous pouvez aussi mettre � jour la photo";
}
}
Afficher la suite 

1 réponse

Répondre au sujet
jordane45 19249 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 14 décembre 2017 Dernière intervention - 10 janv. 2017 à 18:30
0
Utile
Bonjour,

Tu peux le gérer en utilisant un système de "token" (regarde sur le net .. il y a des centaines d'exemples...).

Une autre possibilité est de placer ce code de traitement dans un autre fichier que celui qui contient ton formulaire.

Une dernière (c'est ma préférée) c'est d'utiliser de l'AJAX plutôt que de passer par du submit de formulaire.

Commenter la réponse de jordane45

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.