Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Sortowanie pliku
Ive
post 16.08.2003, 15:44:04
Post #1





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


Jak posortować plik spis.txt według liter od A do Z?

(Szukałem w search'u ale nic ine mogłem znaleźć :/ )
Go to the top of the page
+Quote Post
DeyV
post 16.08.2003, 15:47:10
Post #2





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




plik do tablicy ([manual:7c708c5a92]file[/manual:7c708c5a92]) a następnie [manual:7c708c5a92]natsort [/manual:7c708c5a92]


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
Ive
post 16.08.2003, 15:58:53
Post #3





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


zrobiłem tak:
[php:1:bccf4bf5b8]<?php

$plik = file("kody/$litera/spis.txt");
natsort($plik);
$all = count($plik);
for($i=0; $i<$all;$i++) {

echo"<center>";
echo("$plik[$i]");

}
echo("<br><br><a href=java script:history.back(1)>Powrót</a>");
echo"</center>";

?>[/php:1:bccf4bf5b8]
ale mi nie sortuje :/
Go to the top of the page
+Quote Post
FiDO
post 16.08.2003, 17:48:41
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


CO to znaczy nie sortuje??
Co Ci sie wyswietla?
Pozatym otwierasz w petli <center> a nigdzie go nie zamykasz...
Go to the top of the page
+Quote Post
Ive
post 16.08.2003, 22:29:57
Post #5





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


Cytat
CO to znaczy nie sortuje??
Co Ci sie wyswietla?
Pozatym otwierasz w petli <center> a nigdzie go nie zamykasz...

to znaczy że nie sortuje :/
a <center> zamknąłem tylko za pętlą bo chcaiłem żeby link powrotny był jeszcze wycentrowany smile.gif

a efekt skryptu macie tu :/
skrypt sortuje mi według daty dodania (najstarszy na samej górze :/
(gdyby się ktoś nie dopatrzył to Game jest na samym dole a powinno być na samej górze - pierwsze )
Go to the top of the page
+Quote Post
DeyV
post 16.08.2003, 23:18:12
Post #6





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




pokaz strukture pliku z danymi


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
Ive
post 17.08.2003, 00:22:46
Post #7





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


ZAPISUJE TO W TAKIEJ POSTACI:
Kod
<a href="?site=$nazwa_plik&lit=$lit">$nazwa_spis</a><br>n
Go to the top of the page
+Quote Post
DeyV
post 17.08.2003, 11:58:58
Post #8





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




ojj...
zastanó sie, jak ma działać taki skrypt...
Pobiera ona każdą linię z twojego pliku, i sprawdza 1 znak, następnie kolejny itd. sortując tablicę. Czy jednak zauważyłeś, co znajdzie tam nasz skrypt?
fragment <a href="?site=$, i wzglądem niego będzie sortować....
Stąd musisz zrobić inaczej.
Zastanów sie dokłądnie jakie dane musisz miec w tym pliku, oraz względem jakich będzie sortowanie, i przygotuj konstrukcję pliku łatwiejszą do opracowywania danych.


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
Ive
post 17.08.2003, 12:23:36
Post #9





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


zrobiłem tak:
- zapisuje do pliku spis.txt:
Kod
Nazwa_gry||Nazwa_pliku||Litera

czyli np.
Kod
GTA||gta||g
;
- i mam taki kod do odczytywania:
[php:1:1fce3eeccb]<?php

$plik = file("kody/$litera/spis.txt");
natsort($plik);
$all = count($plik);
for($i=0; $i<$all;$i++) {

explode("||",$plik[$i]);
echo"<center>";
echo"<a href="?site=$plik[1]&lit=$plik[2]">$plik[0]</a>";

}
echo"<br><br><a href=java script:history.back(1)>Powrót</a>";
echo"</center>";

?>[/php:1:1fce3eeccb]
ale nie wiem czemu wyświetla mi tylko jedną linjkę a nie całość (Tutaj jest skrypt: www.evildb.host.sk/emunation-tips/spis.php )

[edit]
sorx już rozwiązałem problem!
Go to the top of the page
+Quote Post
Ive
post 17.08.2003, 12:35:10
Post #10





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


a jednak nie :/ teraz wyskoczył mi ionny problem:/
mam kod[php:1:dd65fbabb4]<?php
$plik = file("kody/$litera/spis.txt");
natsort($plik);
$all = count($plik);
echo"<center>";
for($i=0; $i<$all;$i++) {

$plik = explode("||",$plik[$i]);
echo"<a href="?site=$plik[1]&lit=$plik[2]">$plik[0]</a>";

}
echo"<br><br><a href=java script:history.back(1)>Powrót</a>";
echo"</center>";
?>[/php:1:dd65fbabb4]
i niby wszystko jest dobrze ale coś jednak jest źle :/
zamiast wypisywać mi wszystkie tutuły on wypisuje mi pierwszy tytuł dobrze, drugi już jako nazwa pliku, a trzeciego już nie ma :/

EDIT
Sorx teraz już definityuwnie jest wszystko ok :/
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.07.2025 - 08:48