Autor | Zpráva | ||
---|---|---|---|
Gecko Profil * |
#1 · Zasláno: 9. 3. 2012, 21:21:23
Zdravím,
chci se zeptat, jak lze následující kód využít, aby se cyklik i limit (tzn. první 0,5, pak 6,10 ... 11,15 atd dokud nedojde na $num) a popř. i zjednodušil. Budu pracovat s řádově tisíci záznamy v mysql. for ($x = 1; $x <=$num; $x++) { $sql = DB::query("SELECT * FROM `"._mysql_prefix."-klienti` WHERE zamek=0 ORDER BY id DESC LIMIT 0,5"); while ($item = DB::row($sql)){ $txt_name = "$x.txt"; $txt_save = "../plugins/admin/gen/emaily/maillist/".$txt_name; $text = "".$item["email"].""."\r\n"; $soubor = fopen("".$txt_save."", "a+"); fwrite($soubor, $text); fclose($soubor); } } Děkuji. Gecko |
||
Časová prodleva: 4 dny
|
|||
Tori Profil |
#2 · Zasláno: 13. 3. 2012, 22:29:04
Jestli chcete, aby se řádky č. 0-5 uložily do souboru 1.txt, řádky č. 6-10 do souboru 2.txt atd., a tímto způsobem uložit e-maily z celé tabulky, tak stačí jeden cyklus:
$cisloSouboru = 1; $i = 0; $limit = 5; // kolik e-mailu do jednoho souboru $text = ''; $sql = DB::query("SELECT * FROM `"._mysql_prefix."-klienti` WHERE zamek=0 ORDER BY id DESC"); while ($item = DB::row($sql)) { $text .= $item['email'] . "\r\n"; $i++; if ($i % $limit === 0) { file_put_contents("../plugins/admin/gen/emaily/maillist/$cisloSouboru.txt", $text); $text = ''; $cisloSouboru++; } } if (!empty($text)) { file_put_contents("../plugins/admin/gen/emaily/maillist/$cisloSouboru.txt", $text); } |
||
Časová prodleva: 11 let
|
0