/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
rsort men bare på en anden måde
Fra : Andreas Kryger Jense~


Dato : 24-02-02 09:20

Hej,

Jeg har lavet en lille gæstebog, der gemmer beskederne i en txt-fil.
File får navnet, som er nummeret større, end der er filer i mappen.
Det vil sige, at filerner hedder 1.txt, 2.txt, 3.txt, osv.
Jeg vil så gerne have, at de bliver vist omvendt kronologisk, altså
den med højest nummer (sidst skrevet) bliver vist først.
Derfor kører jeg det igennem en rsort, men så kommer der jo et problem
med tal større en 10. 10, 11, 12, 13, etc. vil placere sig imellem 1 og 2,
og
det er jo noget skidt.
Kan man på nogen måde sortere dem, så det bliver 1,2,3,4,5,6,7,8,9,10,11,
etc.,
eller skal jeg finde på noget andet at kalde dem?

--
Best regards / Mes meilleures amitiés / Med venlig hilsen
Andreas Kryger Jensen
http://www.compose.subnet.dk
Hodie adsit, cras absit



 
 
Mogens Meier Christe~ (24-02-2002)
Kommentar
Fra : Mogens Meier Christe~


Dato : 24-02-02 11:36

"Andreas Kryger Jensen" <xylofonius@hotpop.com> wrote in message
news:a5a7n2$5lp$1@sunsite.dk...

> Jeg har lavet en lille gæstebog, der gemmer beskederne i en txt-fil.

> Det vil sige, at filerner hedder 1.txt, 2.txt, 3.txt, osv.

Hvorfor ikke bare gemme dem i een fil i stedet? Det ville gøre det du
efterlyser enormt simpelt. OK, du skal så finde ud af hvordan du skelner 1
indlæg fra et andet, men ellers...

--
Mvh. Mogens
B.Sc. i datalogi. Søger IT-job på Fyn!
www.momech.dk



Steen \(MSDesign.dk\~ (24-02-2002)
Kommentar
Fra : Steen \(MSDesign.dk\~


Dato : 24-02-02 12:27

du kan bare kalde filerne "0001.txt" eller med et større antal nuller
foran... du skal bare huske at hvis du så får over 999 filer...så laver den
samme fejl... så hvis du regner med mange besøgende... så skriv..
"00000001.txt"
det giver plads til et par stykker


--
Steen Nielsen
http://www.msdesign.dk
Professionelt webdesign til fornuftige priser
"Andreas Kryger Jensen" <xylofonius@hotpop.com> wrote in message
news:a5a7n2$5lp$1@sunsite.dk...
> Hej,
>
> Jeg har lavet en lille gæstebog, der gemmer beskederne i en txt-fil.
> File får navnet, som er nummeret større, end der er filer i mappen.
> Det vil sige, at filerner hedder 1.txt, 2.txt, 3.txt, osv.
> Jeg vil så gerne have, at de bliver vist omvendt kronologisk, altså
> den med højest nummer (sidst skrevet) bliver vist først.
> Derfor kører jeg det igennem en rsort, men så kommer der jo et problem
> med tal større en 10. 10, 11, 12, 13, etc. vil placere sig imellem 1 og 2,
> og
> det er jo noget skidt.
> Kan man på nogen måde sortere dem, så det bliver 1,2,3,4,5,6,7,8,9,10,11,
> etc.,
> eller skal jeg finde på noget andet at kalde dem?
>
> --
> Best regards / Mes meilleures amitiés / Med venlig hilsen
> Andreas Kryger Jensen
> http://www.compose.subnet.dk
> Hodie adsit, cras absit
>
>



Andreas Kryger Jense~ (24-02-2002)
Kommentar
Fra : Andreas Kryger Jense~


Dato : 24-02-02 16:20

> du kan bare kalde filerne "0001.txt" eller med et større antal nuller
> foran... du skal bare huske at hvis du så får over 999 filer...så laver
den
> samme fejl... så hvis du regner med mange besøgende... så skriv..
> "00000001.txt"

Det lyder jo umiddelbart som den nemmeste løsning, og tak for de andre
forslag.
Hvis jeg bruger følgende kode:
$tal = count($txtnames)+1;
$fil = fopen("data/0$tal.txt", "w");
fwrite($fil, $alt);
fclose($fil);

får jeg jo filnavne som 01.txt, 02.txt, 03.txt, men også 010.txt. Det er jo
ikke meningen. Det skal jo så bare være 10.txt.´
Hvordan kan man afhjælpe det?


--
Best regards / Mes meilleures amitiés / Med venlig hilsen
Andreas Kryger Jensen
http://www.compose.subnet.dk
Hodie adsit, cras absit



Christian Joergensen (24-02-2002)
Kommentar
Fra : Christian Joergensen


Dato : 24-02-02 17:29

On Sun, 24 Feb 2002 16:20:16 +0100, Andreas Kryger Jensen wrote:

> får jeg jo filnavne som 01.txt, 02.txt, 03.txt, men også 010.txt. Det er
> jo ikke meningen. Det skal jo så bare være 10.txt.´ Hvordan kan man
> afhjælpe det?

Kig på str_pad()

--
Christian Jørgensen | Never test for a bug you don't know how to fix.
http://www.razor.dk |

Thomas Lindgaard (24-02-2002)
Kommentar
Fra : Thomas Lindgaard


Dato : 24-02-02 14:15

Davs

Hvad med bare at tælle filerne og så lave en for-løkke, der kører baglæns?

$num_files = <et tal>

for ($i = $num_files; $i > 0; $i--)
{
// udskriv fil $i
}

Ellers kan du måske kigge lidt på natsort i manualen.

/Thomas



Andreas Kryger Jense~ (24-02-2002)
Kommentar
Fra : Andreas Kryger Jense~


Dato : 24-02-02 16:47

[SNIP problem]

Ha ha - problemet er løst.
Kodeordet var: rsort($names,SORT_NUMERIC);

Tak for idéerne.
--
Best regards / Mes meilleures amitiés / Med venlig hilsen
Andreas Kryger Jensen
http://www.compose.subnet.dk
Hodie adsit, cras absit



Jonas Häggqvist (24-02-2002)
Kommentar
Fra : Jonas Häggqvist


Dato : 24-02-02 18:29

On Sun, 24 Feb 2002 09:20:22 +0100, "Andreas Kryger Jensen"
<xylofonius@hotpop.com> wrote:

>Hej,
>
>Jeg har lavet en lille gæstebog, der gemmer beskederne i en txt-fil.
>File får navnet, som er nummeret større, end der er filer i mappen.
>Det vil sige, at filerner hedder 1.txt, 2.txt, 3.txt, osv.
>Jeg vil så gerne have, at de bliver vist omvendt kronologisk, altså
>den med højest nummer (sidst skrevet) bliver vist først.
>Derfor kører jeg det igennem en rsort, men så kommer der jo et problem
>med tal større en 10. 10, 11, 12, 13, etc. vil placere sig imellem 1 og 2,
>og
>det er jo noget skidt.
>Kan man på nogen måde sortere dem, så det bliver 1,2,3,4,5,6,7,8,9,10,11,
>etc.,
>eller skal jeg finde på noget andet at kalde dem?

Prøv med
http://dk.php.net/natsort

--
Jonas Haggqvist
jfh(at)adr(dot)dk

Søg
Reklame
Statistik
Spørgsmål : 177522
Tips : 31968
Nyheder : 719565
Indlæg : 6408669
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste