我正在尝试创建一个文本区域表单,如果有人可以输入多个用换行符分隔的链接,并且每个链接都进入数据库中链接表下自己的行。我好像想不通。我到处都找过了。
index.html
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
</head>
<body>
<form action="insert.php" method="post">
<textarea action="results.php" id="textarea" name="url" class="boxsizingBorder">
</textarea>
<br />
<textarea id="results" name="conversion" class="boxsizingBorder"></textarea><br />
<input type="submit" value="Add Records" id="convert" onclick="getTrackData()">
<span id="counter"></span>
</form>
<script src="script.js"></script>
</body>
</html>
insert.php
<?php
session_start();
include('db.php');
$query = mysql_query("SELECT * FROM persons");
// Escape user inputs for security
$url = $_POST['url'];
$array = preg_split('/['n'r]+/', $url);
// attempt insert query execution
$sql = "INSERT INTO persons (url) VALUES ('$url')";
if(mysqli_query($link, $sql)) {
echo "Records added successfully.";
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
// close connection
mysqli_close($link);
?>
这就是它的样子:https://i.stack.imgur.com/Ilofh.png
这就是我想要的外观:https://i.stack.imgur.com/0UXQ3.png
编辑:我对mysql API进行了更改,但似乎仍然不知道如何在自己的行中获取每个链接。
编辑:
<?php
include('db.php');
// Escape user inputs for security
$url = $_POST['url'];
$array = explode(''n', $url);
// attempt insert query execution
foreach($array as $url) {
mysqli_query($con, "INSERT INTO persons (url) VALUES ('$url')");
// close connection
mysqli_close($con);
}
?>
您可以简单地在新行上使用explode()
,而不是使用preg_split。
$array = explode(''n', $url);
然后,您可以在它上面使用foreach来执行插入。
foreach($array as $url)
{
$sql = "INSERT INTO persons (url) VALUES ('$url')";
if(mysqli_query($link, $sql)) {
echo "Records added successfully.";
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
}
但请记住,这也取决于你如何观察新的线条。有一些所见即所得编辑器可以将新行转换为<br/>
标记。一定要进行测试以确保情况并非如此。
编辑
弗雷德说得很好。您不能混合使用mysql API,您需要选择一个。由于mysql_
库已弃用,因此最好使用mysqli_
库。
您需要将连接器函数更改为mysqli_connect()
而不是mysql_connect()
,并从中进行适当的更改。