PHP: éviter que 2 titres ne soient identiques

Résolu
pfdp0 Messages postés 168 Date d'inscription   Statut Membre Dernière intervention   -  
pfdp0 Messages postés 168 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je fais un site dans lequel vous pouvez voter pour des jeux, en ajouter, commenter...
Mon problème est que quand un jeu a été ajouté, quelqu'un d'autre pourrait sans le remarquer ajouter le même!
Comment faire pour éviter que le jeu ne soit entré 2 fois? (code PHP svp)

infos:
- ma table se nomme "jeu"

Merci d'avance pour votre aide
A voir également:

8 réponses

AssassinTourist Messages postés 6029 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Tu ne veux pas qu'il y ait le même nom, c'est ça ?

// nom du jeu rentré par l'utilisateur
$nom_jeu = $_POST['nom_jeu'];

// Récupération des jeux dans ta table qui ont ce nom-là
$query = "SELECT id_jeu FROM jeu WHERE nom_jeu = '".$nom_jeu."'";

Et après tu envoies ta requête et tu vérifies que c'est vide.
1
pfdp0 Messages postés 168 Date d'inscription   Statut Membre Dernière intervention   12
 
merci beaucoup
0
lokakilo Messages postés 213 Date d'inscription   Statut Membre Dernière intervention   14
 
Tu peux mettre ton code stp?
0
graffx Messages postés 6506 Date d'inscription   Statut Contributeur Dernière intervention   1 975
 
La théorie voudrait que tu modifie tes titres en ajoutant une variable quasi unique.

Par exemple en ajoutant un timestamp dans ton titre, ce qui donnerait par exemple:

www.tonsite.fr/2154654614-mon-titre-c-est-cool

Quasi impossible de tomber sur deux titres identiques, a moins que deux personnes posent le meme titre dans la meme secondes, ce qui serait vraiment pas de bol.
0
graffx Messages postés 6506 Date d'inscription   Statut Contributeur Dernière intervention   1 975
 
D'ailleurs regarde l 'url en haut de "comment ca marche", il y a bien un timestamp ou une sorte d'id
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pfdp0 Messages postés 168 Date d'inscription   Statut Membre Dernière intervention   12
 
Je ne suis pas sur que vous avez compris ce que je voulais:
voici le début du code, je voudrais que on ajoute une condition: je ne veux pas que deux jeux ne soient identiques dans ma table "jeu":::

<?php if (isset($_POST['adresse']) AND ($_POST['titre']) AND ($_POST['texte']))  
         {  
   $_POST['adresse'] = htmlspecialchars($_POST['adresse']); // On rend inoffensives les balises HTML que le visiteur a pu rentrer  
   $_POST['titre'] = htmlspecialchars($_POST['titre']); // On rend inoffensives les balises HTML que le visiteur a pu rentrer  
   $_POST['texte'] = htmlspecialchars($_POST['texte']); // On rend inoffensives les balises HTML que le visiteur a pu rentrer  
     
if ((preg_match("#^([w]){3}\..{3,}\..{1,}#", $_POST['adresse'])) AND (preg_match("#.{3,}#", $_POST['titre'])) AND (preg_match("#.{20,}#", $_POST['texte'])))  
    {
//... Je ne vous mets pas la suite, vous n'en avez pas besoin
0
pfdp0 Messages postés 168 Date d'inscription   Statut Membre Dernière intervention   12
 
mis plus bas
0
pfdp0 Messages postés 168 Date d'inscription   Statut Membre Dernière intervention   12
 
réponse svp
0
AssassinTourist Messages postés 6029 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Bonjour,
Tes preg_match ne suffisent pas ?
0
pfdp0 Messages postés 168 Date d'inscription   Statut Membre Dernière intervention   12
 
non, je ne veux pas qu'un nom soit entré 2 fois
0