[英]How to pass input type as array with comma seperated and read them in php
[英]text input (seperated by comma) mysql input as array
我有一個試圖實現標簽系統的表單。
它只是一個:
<input type="text"/>
值之間用逗號分隔。
e.g. "John,Mary,Ben,Steven,George"
(該列表可以是用戶想要的任何時間。)
我想獲取該列表並將其作為數組插入到我的數據庫中(用戶以后可以根據需要添加更多標簽)。 我想它不一定是數組,這似乎是最好的方法。
因此,我的問題是如何獲取該列表,將其轉換為數組,回顯該數組(值以逗號分隔),稍后添加更多值以及使該數組可被其他用戶搜索。 我知道這個問題似乎很基本,但是無論我讀了多少書,我似乎都無法全神貫注於這一切。 一旦我想通了,就會出問題了。 一個簡單的例子將不勝感激。 謝謝!
這是到目前為止我得到的:
$DBCONNECT
$artisttags = $info['artisttags'];
$full_name = $info['full_name'];
$tel = $info['tel'];
$mainint = $info['maininst'];
if(isset($_POST['submit'])) {
$tags = $_POST['tags'];
if($artisttags == NULL) {
$artisttagsarray = array($full_name, $tel, $maininst);
array_push($artisttagsarray,$tags);
mysql_query("UPDATE users SET artisttags='$artisttagsarray' WHERE id='$id'");
print_r($artisttagsarray); //to see if I did it right
die();
} else {
array_push($artisttags,$tags);
mysql_query("UPDATE users SET artisttags='$artisttags' WHERE id='$id'");
echo $tags;
echo " <br/>";
echo $artisttags;
die();
}
}
創建一個新表,我們稱它為“標簽”:
tags
- userid
- artisttag
每個用戶在此表中可能有多行(每行上有一個不同的標簽)。 查詢時,您可以使用JOIN
操作合並兩個表。 例如:
SELECT username, artisttag
FROM users, tags
WHERE users.userid = tags.userid
AND users.userid = 4711
這將為您提供有關ID為4711
的用戶的所有信息。
關系數據庫系統是為此類工作而構建的,因此不會浪費空間和性能。 實際上,如果您希望能夠搜索標簽,則這是最佳方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.