Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Регулярка... Нужна помощь (https://forum.antichat.xyz/showthread.php?t=83937)

_==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
...

a1ex 07.09.2008 13:00

Идёт запись в файл или чтение?Или и то и другое?

NuR 07.09.2008 13:02

PHP код:

<?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 код:

<?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

PHP код:

<?
$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);  
}
?>


Doom123 07.09.2008 18:04

PHP код:

<? 
$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, пробелы могут присутствовать :)

+toxa+ 07.09.2008 18:40

зачем делать
PHP код:

$auth explode(";",$acc); 
$uin $auth[0]; 
$pw trim($auth[1]); 

если можно сделать просто
PHP код:

list($uin,$pw) = explode(";",$acc); 


NuR 07.09.2008 19:21

это вся соль пхп =) одно действие можно сделать по разному=)


Время: 05:19