Просмотр полной версии : Регулярка... Нужна помощь
_==wolf==_
07.09.2008, 12:54
$fp = fopen("icq.txt" "r")
for ($i=0; $i < "62"; $i++)
{
preg_match($icq,$fp,$pass); правильная регулярка тут
подключение к базе тут
$sql = 'INSERT INTO `prs-clan_icqbot`.`icqlist` (`icq`, `pass`, `active`, `userid`) VALUES ('.$icq.', '.$pass.', \'1\', \'0\');';
}
я не разбираюсь в preg_match и забыл как подключиться к базе.
это не полный скрипт который берёт из файла icq.txt
строчку вида icq;pass делит на две переменные $icq и $pass и вставляет их в таблицу, потом берёт следующую строку и тд...
короче нужна правильная регулярка, и строка подключения к базе (это я тоже забыл)
вот вид icq.txt
icq;pass
icq;pass
icq;pass
icq;pass
...
Идёт запись в файл или чтение?Или и то и другое?
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("dbname");
$fp = fopen("icq.txt", "r");
while (!feof($fp)) {
$s = fgets($fp);
$a = explode(";", $s);
$icq = mysql_real_escape_string($a[0]);
$pass = mysql_real_escape_string($a[1]);
$sql = 'INSERT INTO `prs-clan_icqbot`.`icqlist` (`icq`, `pass`, `active`, `userid`) VALUES (' .
$icq . ', ' . $pass . ', \'1\', \'0\');';
mysql_query($sql);
}
mysql_close($link);
?>
fucker"ok
07.09.2008, 13:04
<?php
mysql_connect("localhost", "root", "123");
mysql_selectdb("prs-clan_icqbot");
$list = file('icq.txt');
for ($i = 0; $i < count($list); $i++)
{
if (preg_match("/^(\d+):(.+)$/i", $list[$i], $match))
{
$icq = $match[1];
$pass = $match[2];
$sql = 'INSERT INTO `prs-clan_icqbot`.`icqlist` (`icq`, `pass`, `active`, `userid`) VALUES ('.$icq.', '.$pass.', \'1\', \'0\');';
mysql_query($sql);
}
}
?>
Накидал без проверки. Примерно так должно выглядеть. Если файл большой, то лучше считывать построчно, а не заганять все в массив как в моем примере.
_==wolf==_
07.09.2008, 15:30
спасибо огромное!
cylaaaan
07.09.2008, 15:51
<?
$db = mysql_connect("localhost","username","password");
mysql_select_db("icqbot",$db);
mysql_query("SET NAMES 'cp1251'");
$filename = "icq.txt";
$rel=@file_get_contents($filename);
$str = explode("\n",$rel);
foreach($str as $acc)
{
$auth = explode(";",$acc);
$uin = $auth[0];
$pw = $auth[1];
mysql_query("INSERT INTO `prs-clan_icqbot`.`icqlist` (`icq`, `pass`, `active`, `userid`) VALUES ('".$uin."','".pw."','1','0')",$db);
}
?>
<?
$db = mysql_connect("localhost","username","password");
mysql_select_db("icqbot",$db);
mysql_query("SET NAMES 'cp1251'");
$filename = "icq.txt";
$rel=file($filename);
foreach($rel as $acc)
{
$auth = explode(";",$acc);
$uin = $auth[0];
$pw = trim($auth[1]);
mysql_query("INSERT INTO `prs-clan_icqbot`.`icqlist` (`icq`, `pass`, `active`, `userid`) VALUES ('".$uin."','".pw."','1','0')",$db);
}
?>
cylaaaan
07.09.2008, 18:07
в качестве пароля icq, пробелы могут присутствовать :)
зачем делать
$auth = explode(";",$acc);
$uin = $auth[0];
$pw = trim($auth[1]);
если можно сделать просто
list($uin,$pw) = explode(";",$acc);
это вся соль пхп =) одно действие можно сделать по разному=)
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot