bạn có thể sử dụng boom ()
Để nhận một mảng thẻ được phân tách bằng dấu phẩy
$tag_string = "t1, t2, t3";
$tags = explode(",", $tag_string );
echo $tags[0]; // t1
echo $tags[1]; // t2
Sau đó, bạn có thể lặp qua mảng để chèn vào cơ sở dữ liệu
Bạn cũng có thể muốn Tạo Truy vấn của mình bao gồm UNIQUE
CREATE TABLE tags (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
tag VARCHAR(255) NOT NULL,
PRIMARY KEY (id),
UNIQUE(`tag`)
);
Bằng cách này, bạn sẽ không có hai thẻ trùng tên. Hãy xem ở đây để biết thêm giải thích về DUY NHẤT cú pháp
Here Goes viết mã mà không cần kiểm tra xD
//Assuming you have already added the question and the mysql_insert_Id() == 1
//where mysql_insert_Id() is the last id added to the question table
if (isset($_POST['tags'])){
$tags = explode(",", $_POST['tags']);
for ($x = 0; $x < count($tags); $x++){
//Due to unique it will only insert if the tag dosent already exist
mysql_query("INSERT INTO tag VALUES(NULL, {$tags[x]})");
//Add the relational Link
mysql_query("INSERT INTO question_tag VALUES(NULL, (SELECT tags.Id FROM tags WHERE tags.tag = {$tags[x]}), 1)");
}
}