Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sumowanie danych na 2 plikach
piotrdd2
post
Post #1





Grupa: Zarejestrowani
Postów: 136
Pomógł: 2
Dołączył: 13.05.2003
Skąd: Przemyśl

Ostrzeżenie: (0%)
-----


Mam dwa pliki, zapisane są w nich dane np. w takim stylu:

Pierwszy plik:
5|^^^|Adam
8|^^^|Bartek
1|^^^|Kamil

Drugi plik:
2|^^^|Bartek
1|^^^|Adam
3|^^^|Wojtek
8|^^^|Kamil

Plik pierwszy i drugi mogą zawierać różną ilość danych, w pliku pierwszym może być np. login Ziomek i odpowiadająca jemu liczba, a w drugim już tego loginu nie będzie – lub odwrotnie.

Chodzi mi o to jak zrobić aby zsumowało liczby według odpowiadających im loginów

tzn.
6|^^^|Adam
10|^^^|Bartek
9|^^^|Kamil
3|^^^|Wojtek

Jakich do tego trzeba użyć funkcji?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
piotrdd2
post
Post #2





Grupa: Zarejestrowani
Postów: 136
Pomógł: 2
Dołączył: 13.05.2003
Skąd: Przemyśl

Ostrzeżenie: (0%)
-----


fragment chyba w niczym nie pomoże, lepiej chyba cały:

[php:1:c7d9b0d105]
<?
$login= "Eryk";

$fil="wyniki/zw1.txt"; //plik z danymi
$tablic=file($fil); //robie z pliku tablice
$il=count($tablic); //licze ilość elementów w tablicy

for($i=0; $i<=$il-1; $i++){
$czes=explode("|^^^|", $tablic[$i]); //dziele linie w pliki na kawałki
if(ereg(($login),$czes[1])){ //sprawdzam czy taki nic nie jest juz zapisany

$file="wyniki/zw2.txt"; //plik z danymi
$tablica=file($file); //robie z pliku tablice
$ile=count($tablica); //licze ilość elementów w tablicy
for($i=0; $i<=$ile-1; $i++){
$czesc=explode("|^^^|", $tablica[$i]); //dziele linie w pliki na kawałki
if(ereg(($login),$czesc[1])){ //sprawdzam czy taki nic nie jest juz zapisany

$cz = $czesc[0]+$czes[0];
echo(" $cz");
$plik=fopen('list.txt', "a"); // jak wszystko jest ok to zapisuje dane
flock($plik, 2);
fwrite($plik, "{$cz}|^^^|{$login}n"); // n- oznacza przejscie do następnej linii...
flock($plik, 3);
fclose($plik);
exit;
}
}
$cz = $czes[0];

$plik=fopen('list.txt', "a"); // jak wszystko jest ok to zapisuje dane
flock($plik, 2);
fwrite($plik, "{$cz}|^^^|{$login}n"); // n- oznacza przejscie do następnej linii...
flock($plik, 3);
fclose($plik);
}
}
$file="wyniki/zw2.txt"; //plik z danymi
$tablica=file($file); //robie z pliku tablice
$ile=count($tablica); //licze ilość elementów w tablicy

for($i=0; $i<=$ile-1; $i++){
$czesc=explode("|^^^|", $tablica[$i]); //dziele linie w pliki na kawałki
if(ereg(($login),$czesc[1])){ //sprawdzam czy taki nic nie jest juz zapisany
$cz = $czesc[0];

$plik=fopen('list.txt', "a"); // jak wszystko jest ok to zapisuje dane
flock($plik, 2);
fwrite($plik, "{$cz}|^^^|{$login}n"); // n- oznacza przejscie do następnej linii...
flock($plik, 3);
fclose($plik);
exit;
}
}

?>[/php:1:c7d9b0d105]

Działa tylko dla okreslonego loginu
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 00:37