Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: ARRAY play list
Forum PHP.pl > Forum > PHP
olus
Mam pewien problem 8O

Mam plik w którym zapisane są elementy w posób taki

tytuł piosenki||0||tytuł piosenki||7||tytuł piosenki||9||tytuł piosenki||1||

itd. liczby to głosy oddane na daną piosenkę

i teraz mam problem po explodowaniu(); tego pliku potrzebuję go posortować według wartości głosów (od góry najwiecej głosów i w dół)

plik zawsze będzie składał się z 20 piosenek i 20 wartości głosów do nich

czy można sortować tablicę wielowymiarową? jak zainicjować taką tablicę?
Cudi
Tworzysz tymczasową tablice w którą wsadzasz pokolei ilość głosów każdej piosenki, a potem wsadzasz ją w array_multisort() razem z główną tablicą.
olus
ok...

jeszcze jeno pytanie

mam tera plik z zawartoscia:

$tab["Dupa jasia"] = "120";
$tab["Kult - do ani"] = "250";
$tab["Kult - do ani"] = "10";


i dalej w innym pliku

Kod
arsort ($tab);

reset ($tab);

while (list ($klucz, $wartosc) = each ($tab)) {

    echo "$klucz = $wartosc<br>";


i teraz jest problem jak wczytać z 1 pliku te dane do 2 aby ten 2 je posortował include() require() file() nie działają tak jak sądziłem...

i tu się gubie

w sumie file() robi coś takiego ze zwraca tablice ale zwykłą a ja sortuja asocjacyjną i dalej jest źle inc. i req. juz całkiem do bani bo poprostu w 2 pliku wyswietlaja mi kod :-|
adwol
Cytat
ok...
jeszcze jeno pytanie

mam tera plik z zawartoscia:

$tab["Dupa jasia"] = "120";
$tab["Kult - do ani"] = "250";
$tab["Kult - do ani"] = "10";


Po pierwsze, zdajesz sobie sprawę, że drugiego z tych wpisów nie będzie w tej tablicy? Nadpisze go trzeci.

Cytat
i dalej w innym pliku
Kod
arsort ($tab);

reset ($tab);

while (list ($klucz, $wartosc) = each ($tab)) {

    echo "$klucz = $wartosc<br>";


i teraz jest problem jak wczytać z 1 pliku te dane do 2 aby ten 2 je posortował include() require() file() nie działają tak jak sądziłem...

i tu się gubie

w sumie file() robi coś takiego ze zwraca tablice ale zwykłą a ja sortuja asocjacyjną i dalej jest źle inc. i req. juz całkiem do bani bo poprostu w 2 pliku wyswietlaja mi kod :-|


A masz w tym pliku <? i ?>?
Zreszta, pokaż jak wczytujesz te dane, bo require właśnie do tego służy i działa prawidłowo więc albo ja nie rozumiem Twojego problemu albo robisz coś źle.
olus
tak zdaję sobie sprawę że to będzie nadpisane i będą tylko 2 wyniki TO WIEM

teraz tak już Ci dokłądnie pokazuje jak to wyglada...

plik piosenki.php


$tab["Dupa jasia"] = "120";
$tab["Kult - do ani"] = "250";
$tab["Kult - o ani"] = "10";

teraz juz beda 3 elementy smile.gif

tyle w tym pliku

plik index.php

Kod
<?



// i tu jest wlasnie problem jak wczytac tu plik piosenki.php

// tak aby jego zawartosc byla sortowana przez ponizszy

// skrypt...

// require("piosenki.php");

// include("piosenki.php"); - tak niezabardzo :-) ...



// lub sposob 3 ktory wczytuje ten plik ale nie tak jakbym chcial

// $tab = file("piosenki.php"); bo on wczytuje tablice

// i cala moja aocjacyjna trafia...





arsort ($tab);

reset ($tab);

while (list ($klucz, $wartosc) = each ($tab)) {

    echo "$klucz = $wartosc<br>";

}  



?>
adwol
Cytat
tak zdaję sobie sprawę że to będzie nadpisane i będą tylko 2 wyniki TO WIEM

teraz tak już Ci dokłądnie pokazuje jak to wyglada...

plik piosenki.php


$tab["Dupa jasia"] = "120";
$tab["Kult - do ani"] = "250";
$tab["Kult - o ani"] = "10";

teraz juz beda 3 elementy smile.gif

tyle w tym pliku

plik index.php

No to chyba dobrze się domyśliłem. Dołóż na początku i końcu pliku piosenki.php znaczniki <? i ?>. Jak ich nie dołożysz php nie zinterpretuje zawartości jako kod tylko jako kawałek zwykłego tekstu do wypisania.
cahe
Cytat
User Agent: telnet/1.0


laugh.gif laugh.gif laugh.gif
olus
No i fajnie dokładam <? ?> i dziła jak trzeba

TYLKO TO WŁASNIE NI MOŻE BYĆ TAK!

plik piosenki.php

jes plikiem do którego zapisuje kolejne rekordy


$tab["kukiz - i piersi"] = "10";
$tab["pieśń kościelna - chwalcie łaki umajone"] = "10";

$tab["Dupa jasia"] = "120";
$tab["Kult - do ani"] = "250";
$tab["Kult - o ani"] = "10";

itd. kolejne rekordy od góry...
i jesli na pocżtaku będzie <?
to nie mam jak dodawać kolejnych
$tab["dupa maryna"] = "666";

jak uzyłem fseek(); lub rewind();
to przesuwa mi znacznik <? o ileśtam b do przodu a
$tab["dupa maryna"] = "666"; wstawia an poćztek wygla to tak

$tab["dupa maryna"] = "666";---------------------------------------------------------<?
$tab["Dupa jasia"] = "120";
$tab["Kult - do ani"] = "250";
$tab["Kult - o ani"] = "10";
?>

(--- kreseczki oznaczają ilość bajtów przesunięcia wskaźnika wewnętrznego lol )

no i nie mam jak zapisywać do tego pliku
OJ BIEDNY JA BIEDNY....
Omega
Proponuje zserializować tą tablicę i zapisać do pliku, a po odczytaniu odserializować i wszystko będzie OK. biggrin.gif
adwol
Cytat
No i fajnie dokładam <? ?> i dziła jak trzeba

TYLKO TO WŁASNIE NI MOŻE BYĆ TAK!

plik piosenki.php

jes plikiem do którego zapisuje kolejne rekordy


$tab["kukiz - i piersi"] = "10";
$tab["pieśń kościelna - chwalcie łaki umajone"] = "10";

$tab["Dupa jasia"] = "120";
$tab["Kult - do ani"] = "250";
$tab["Kult - o ani"] = "10";

No to spróbuj evala:
[php:1:a57fad5778]<?php
eval(fgets($fd))
?>[/php:1:a57fad5778]
dla linii które chcesz wczytać.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.