[PHP] Séparer tags depuis une boite de texte

Fermé
Matthieu - 31 mai 2007 à 12:28
 Matthieu - 31 mai 2007 à 13:17
Bonjour,

Je recherche de l'aide en PHP concernant l'extraction de tags postés depuis une boite de texte.
Je cherche en fait à envoyer plusieurs tags séparés à chaque fois par une virgule + espace (", ") et insérer chaque tag dans une table MySQL à 3 colonnes : ID | tag | objet.
(avec ID = identifiant du tag auto-incrémenté
tag = le texte du tag, tout simplement
objet = identifiant de l'objet auquel le tag est rattaché)

Sauf que je galère pour :
1) séparer chaque tag
2) une fois les tags séparés, les envoyer dans la table (je suppose que ce sera par une boucle)


----------

Notice :

J'ai une boite de texte toute bête :

<input name="tags" type="text" />

Et donc pour récupérer la variable tags dans mon script de Parser, j'utiliserai la variable $_POST['tags']...

Exemple, si l'utilisateur envoie les tags sous cette forme :
Chien, animal, labrador, caniche
(donc 4 tags)

On aura : $_POST['tags'] = "Chien, animal, labrador, caniche"

Dans la table "tags", on aurait donc au final (pour l'article 10) :

1- Chien - 10
2- animal - 10
3- labrador - 10
4- caniche - 10

----------

Quelle fonction utiliser pour séparer chaque tag ?
Puis ensuite, comment récupérer les tags séparés pour les insérer directement dans une table, mais séparés ?



Merci d'avance,
Matthieu.
A voir également:

1 réponse

Chers amis,

J'ai finalement trouvé seul une réponse à mon problème en utilisant la fonction explode(). Ouf !


<?

// Etape 1 : La fonction si $_POST['index_tags']

if( isset($_POST['index_tags']) )
{
$tags = explode(", ", $_POST['index_tags']);
}

// Etape 2 : La boucle !

if( isset($tags) )
{
  for ($t = 0; $t < count($tags); $t++)
  {
  echo $tags[$t];
// Que l'on remplacera évidemment par la requete MySQL de son choix

  }
}  
?>


Ayé ! Voici pour ceux qui voudront faire un système de tags fait-maison sur leur site ! ;)
3