![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 28.12.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich!
Chcę napisać skrypt który dodaje do MySQL-a rekordy zapisane w pliku. Linijki w pliku wyglądają np tak: INSERT INTO `Taabela123` VALUES (1, 'tekst1', 'admin'); INSERT INTO `Taabela123` VALUES (1, 'tekst2', 'admin'); INSERT INTO `Taabela123` VALUES (1, 'tekst3', 'admin'); I tutaj mam pytanie jak wczytać np losowe 100 linijek, dodać je do bazy i usunąć z pliku, aby uniknąć ponownego dodania? Dziękuję za podpowiedzi, Krzysiek |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Najpierw policzymy rekordy w pliku:
- zakładam, że jak wyskoczy np. 2345 to umiesz wylosować 100 liczb z przedziału od 1 do 2345 i zrobić z tego tablicę np. $wylosowane? Pomijam zaten ten etap (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Teraz trzeba plik "przewalić":
Jak to działa? Parsujemy plik wejściowy dane.txt w pętli while licząc jego linie - jeśli numer linii jest w tablicy wylosowanych, to wrzucamy linię do pliku do_bazy.txt, jeśli nie jest, to do pliku temp.txt, następnie kasujemy plik dane i zastępujemy plikiem temp (który nie ma już wylosowanych linii) a plik do_bazy.txt pozostaje dodać do bazy korzystając z
Zakładam, że sobie poradzisz. P.S > wrzucanie całego pliku do tablicy nie polecam, dbajmy o pamięć. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 01:13 |