文本区域字段中的多个URL链接,并将它们保存到数据库中

时间:2015-08-13 13:08:55

标签: php html phpmyadmin

我正在尝试保存在文本区域字段中输入的链接。链接由新行/输入分隔。因此,在我下面的示例中,他应该在表中为每个url链接添加3行。但出于某种原因,他并没有这样做。

文字区域

www.url1.com

www.url2.com

www.url3.com

HTML

"(?:(?<=[a-z])\\.\\s(?=[a-z]\\.))|(?:(?<=[a-z])\\.)(?!(?:\\s[A-Z]|$)|(?:\\s\\s))|(?:(?<=[A-Z])\\.\\s(?=[A-Z]\\.))|(?:(?<=[A-Z])\\.(?=\\s[A-Z][A-Za-z]))"

PHP

<textarea id="url" name="url"></textarea>

提前致谢!

亲切的问候

2 个答案:

答案 0 :(得分:1)

不使用单引号,而是在\ n字符串

周围使用双引号
if(isset($_POST['url'])){
    $links_array = explode("\n", $_POST['url']);

    foreach($links_array as $url)
    {
        $query3 = mysql_query("INSERT INTO links(sigaren_id, link) VALUES ((SELECT id FROM sigaren ORDER BY id DESC LIMIT 1), '$url')");
    }
}

编辑:此外,您还要将$ url设置为isset($ _ POST [&#39; url&#39;]),该值返回true和false值,而不是实际内容在评估的变量中,我已经改变了我的答案来反映这一点。

这里有一个很好的答案,描述了PHP如何处理内容&#39;字符串和&#34;内容&#34;字符串https://stackoverflow.com/a/3446286/3944304

答案 1 :(得分:0)

您需要使用双引号将换行符定义为字符:

"\n"

单引号表示字符串,双引号表示字符

$post_keys = explode("\n", $_POST['url']);