【问题标题】:Insert rows from textarea?从文本区域插入行?
【发布时间】:2014-04-13 09:00:04
【问题描述】:


第一个名为 index.html 的页面获得了一个用于通知程序的输入,并且名为 textarea 的列表我们放置链接的文本区域。

<form method="POST" action="M_Save.php">
<b>Notifier:</b><br><input type="text" name="ntfr" class="ntfr" maxlength="30" >
<b>Domains: </b><br><textarea type="text" name="list" class="list" style=" width: 452px; min-width: 452px; max-width: 452px;" ></textarea><br>
<br>
<input type="submit" class="btn"><br><br>
</form>

第二页是M_Save.php,它保存了数据库中的所有信息,所以代码是

function get_domain($urli)
                {
                 $pieces = parse_url($urli);
                 $domain = isset($pieces['host']) ? $pieces['host'] : '';
                 if (preg_match('/(?P<domain>[a-z0-9][a-z0-9\-]{1,63}\.[a-z\.]{2,6})$/i', $domain, $regs)) {
                     return $regs['domain'];
                     }
                     return false;
                }
                $ntfr = $_POST['ntfr'];
                $url = $_POST['list'];
                $notifier_name = htmlspecialchars($ntfr);
                $urlo = get_domain($url); 
                $domaine_notr = htmlspecialchars($url);
                $client_ip  = $_SERVER['REMOTE_ADDR'];
                $server_ip = gethostbyname($urlo);
                $html = file_get_contents($url);
                $random = substr(number_format(time() * rand(),0,'',''),0,10);
                $myFile = "../Mirror/".$random.".php";
                $fh = fopen($myFile, 'a+') or die("can't open file");
                fwrite($fh, $html);
                fclose($fh);
                $mirror_link = "Mirror/?id=".$random."";
                $state = "onhold";
                $date = date("m.d.Y");
                $sql="INSERT INTO fallaga_tbl (notifier_name, domaine_notr, server_ip, client_ip, mirror_link, state, date)
                VALUES ('$notifier_name', '$domaine_notr', '$server_ip', '$client_ip', '$mirror_link', '$state', '$date')";
                require("../connecta.php");
               $retval = mysql_query( $sql, $conn );
                if(! $retval )
                {
                    die('Could not enter data: ' . mysql_error());
                }
                echo "1 record added <br> <a href=\"NOTIFY.php\">Back</a>";


我希望所有这些都与文本区域中的每个链接一起使用通知名称和其他信息保存在数据库中,然后脚本完成到其他链接。
有人可以帮我吗?

【问题讨论】:

  • 你有点含糊......你能提供一些你输入的内容和你想要保存到数据库中的例子吗?
  • 看看这是一个名为 ntfr 的输入示例,让我们输入“Màh Di”,对于 textarea,让我们输入这个列表“stackoverflow.comfacebook.comyoutube.com
  • 你想要什么...分割所有的 URL 并将它们与数据库中的 Mah Di 一起插入?
  • 正是 .. 我希望它们的每个 url 与 Màh Di 放在一行中
  • 如何分隔 URL?有空格吗?

标签: php html


【解决方案1】:

我不会为你写完整的代码,但会让你走上正确的道路。

你得到了这些输入:

<b>Notifier:</b><br><input type="text" name="ntfr" class="ntfr" maxlength="30" >
<b>Domains: </b><br><textarea type="text" name="list" class="list" style=" width: 452px; min-width: 452px; max-width: 452px;" ></textarea><br>

在用 php 处理您的帖子的文件上,您需要这样做:

$notifier = (isset($_POST['ntfr']) ? $_POST['ntfr'] : 'Not Defined';
$urls = (isset($_POST['list']) ? $_POST('list'):'';
$urls = explode("\n",$urls);
foreach ($urls as $url) {
    $url = trim($url);
    mysql_query("insert into... {$notifier},{$url});
}

文档:http://php.net/explodehttp://php.net/trim

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-06
    • 2016-09-29
    • 1970-01-01
    相关资源
    最近更新 更多