我有一个PHP/MYsql的问题。从逗号分隔的文本中添加MYSQL中的新行
我想在每个逗号后插入一个新行。
基本上,我想这个功能:
比方说,我们有以下文本的文本框:
篮球,网球,FUTBOL,排球 - >提交按钮
提交按钮后被点击,我想在每个单词后面的一个表格中插入一个新的行。
基本上,我想在DB的结局是这样
id category
1 Basketball
2 Tennis
3 Futbol
4 Volleyball
任何人都可以帮助我?
谢谢:)
我有一个PHP/MYsql的问题。从逗号分隔的文本中添加MYSQL中的新行
我想在每个逗号后插入一个新行。
基本上,我想这个功能:
比方说,我们有以下文本的文本框:
篮球,网球,FUTBOL,排球 - >提交按钮
提交按钮后被点击,我想在每个单词后面的一个表格中插入一个新的行。
基本上,我想在DB的结局是这样
id category
1 Basketball
2 Tennis
3 Futbol
4 Volleyball
任何人都可以帮助我?
谢谢:)
你可以循环遍历每一个,并单独添加它们。
$input = "Basketball, Tennis, Futbol, Volleyball";
foreach (explode(',',$input) as $piece)
{
$piece = mysql_real_escape_string(trim ($piece));
$sql = "INSERT INTO table VALUES($piece)";
//Run sql
}
刚从超级全球GET/POST/REQUEST阵列抢值:
$categories = $_REQUEST['categories'];
让他们独立的价值观:
$categories = explode(",", $categories);
对于数组创建中的每个值一条SQL语句并执行它。
foreach($categories as $category) {
$category = trim($category); // Remove possible whitespace
$sql = "INSERT INTO table (category) VALUES ('%s')";
$sql = sprintf($sql, mysql_real_escape_string($category));
mysql_query($sql);
}
感谢:)...这正是我所期待的......工作很棒 – denis 2011-04-17 03:28:12
你能做到在一个查询像这样:
$Input = explode(',', 'a, b, c, d, e, f, g');
$Query = 'INSERT INTO Table(TableColumn) VALUES';
foreach ($Input as $Entry)
{
$Query .= '("' . $Entry . '"), ';
}
$Query = substr_replace($Query, '', -2);
mysql_query($Query);
所输出的查询将是这样的:
INSERT INTO Table(TableColumn) VALUES("a"), ("b"), ("c"), ("d"), ("e"), ("f"), ("g")
最短代码:
$Input = explode(',', 'a, b, c, d, e, f, g');
if($Input){
echo('INSERT INTO Table(TableColumn) VALUES ("'.
implode('"),("',$Input).'")');
}
然而你需要让你的$ Input转义。
如果答案正确,您应该点击答案旁边的复选标记 – Ben 2011-04-17 03:48:36