PHP如何读取特定的单词和行,然后添加到MySQL数据库
我试着读懂这个单词后面的每个单词 和本地文件的下一行,然后将结果添加到MySQL(如果不存在) 该文件的内容如下所示:PHP如何读取特定的单词和行,然后添加到MySQL数据库,php,mysql,readfile,Php,Mysql,Readfile,我试着读懂这个单词后面的每个单词 和本地文件的下一行,然后将结果添加到MySQL(如果不存在) 该文件的内容如下所示: #EXTM3U #EXTINF:-1,name1 http://www.name1 #EXTINF:-1,name2 http://www.name2 #EXTINF:-1,name3 http://www.name3 #EXTINF:-1,name4 http://www.name4 我的代码是: $file = file("file.m3u); array_shift($
#EXTM3U
#EXTINF:-1,name1
http://www.name1
#EXTINF:-1,name2
http://www.name2
#EXTINF:-1,name3
http://www.name3
#EXTINF:-1,name4
http://www.name4
我的代码是:
$file = file("file.m3u);
array_shift($file);
$count = count($file);
if($count > 0) {
foreach($file as $row) {
$pos = strpos($row, ',');
if($pos !== false){
$getname[] = substr($row, $pos + 1);
} else {
$geturl[] = $row;
} } }
$count = count($getname);
for($i=0; $i < $count; $i++){
$name = $getname[$i];
$url = $geturl[$i];
if (empty($name)) { exit; };
if (empty($url)) { exit; }
$get_user = mysql_query("select * from users where (name = '$name')");
$show_user = mysql_fetch_array($get_user);
$userid = $show_user['userid'];
$get_url = mysql_query("select * from urls where url = '$url'");
$show_url = mysql_fetch_array($get_url);
$urlid = $show_url['urlid'];
if (empty($userid) && empty($urlid)) {
$add_user = "INSERT INTO users(name)
VALUES('$name')";
mysql_query($add_user);
$userid = mysql_insert_id();
$add_url = "INSERT INTO urls(userid, url)
VALUES('$userid', '$url')";
mysql_query($add_url);
$urlid = mysql_insert_id();
}
}
适用于每个用户。这可能与此有关
$file = file("file.m3u);
应该是
$file = file("file.m3u");
是关于语法错误的问题吗?为什么不使用现有的M3U提取器?它无法检查url是否存在或名称是否相同的问题…您是如何得出结论的?你调试了那个循环中的变量状态了吗?您是否检查过mysql错误消息?当前数据库内容?等等,我的问题就不在这里了
$file = file("file.m3u");