![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 25.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
Mam taki problem. oto czesc skryptu do kat. linkow:
[php:1:a139329939]<?php $tablica=file("../users/domowe.txt"); $tablica=array_reverse($tablica); for($i=0;$i{ $http_string=basename($SCRIPT_NAME);$sign=strpos($http_string,"."); $kat=substr($http_string,0,$sign); $ile=@file("../komentarze/$kat/$id.txt"); $ile_kom=count($ile); if(@filesize("../komentarze/$kat/$id.txt")<=0){$ile_kom="brak"; } $ex=explode("",$tablica[$i]); ?>[/php:1:a139329939] jak widac odwracam tablice, po to zeby nowsze linki pojawialy sie na gorze, ale tu wlasnie pojawia sie problem, bo mam tez komentarze, ktore po dodaniu zapisuja sie w postaci id.txt (np 3.txt), ale przez to ze odwrocilem tablice, wszystkie linki maja zmienne id (najnowsze ma zawsze 0) przez co komentarze sie przesowaja wypadaloby spowrotem odwrocic tablice przed komentarzami, ale jak? ![]() ---------------------------- Używaj odpowiedniego BBcode -DeyV -------------------- Arbeit macht frei
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarząd Postów: 2 277 Pomógł: 6 Dołączył: 27.12.2002 Skąd: Wołów/Wrocław ![]() |
zanim przejdziemy dalej - co to za pętla? --> for($i=0;$i{
-------------------- "Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 25.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
eh, wiesz co, ja sie na php znam srednio, nie ja napisalem ten skrypt...
-------------------- Arbeit macht frei
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
i według Ciebie to co nam pokazałeś to niby działa?
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 25.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
Oto caly kod (wraz z html-em (jak za duzo, to usune)) jednej ze stron (dzialow). Chyba fatycznie wkradl tam sie jakis blad (sorki).
[php:1:455022dbeb] <? echo" <center><a HREF=../dodaj.php>dopisz do katalogu</A> | <a HREF=../dir.php>Wykaz katalogów</A></center><br>"; $id=0; $tablica=file("../users/domowe.txt"); $tablica=array_reverse($tablica); for($i=0;$i<count($tablica);$i++) { $http_string=basename($SCRIPT_NAME);$sign=strpos($http_string,"."); $kat=substr($http_string,0,$sign); $ile=@file("../komentarze/$kat/$id.txt"); $ile_kom=count($ile); if(@filesize("../komentarze/$kat/$id.txt")<=0){$ile_kom="brak"; } $ex=explode("|**|",$tablica[$i]); echo "<div align=center><center><table border=0 cellpadding=0 cellspacing=1 bgcolor=white width=360 height=94><tr><td width=137 height=21 valign=middle align=center bgcolor=rgb(245,245,245)> <font class=text>dodał: </font><a HREF=mailto:$ex[2]>$ex[1]</A></td><td width=217 height=21 valign=middle align=center bgcolor=rgb(245,245,245)> <a HREF=$ex[0] target=new>$ex[0]</A></td></tr><tr><td width=138 height=69 style=background-color:transparent></td><td width=216 height=69 valign=middle align=center valign=top bgcolor=rgb(235,235,235)> <div align=center><center><table border=0 cellpadding=5 cellspacing=0 width=193 height=54><tr><td width=193 height=54 valign=top bgcolor=rgb(245,245,245)><font class=text>$ex[3]</font></td></tr></table> </center> </div></td></tr></table></center></div> <div align=center><center><table border=0 cellpadding=0 cellspacing=0 width=360 height=11><tr><td width=138 height=11> <font class=text>Komentarzy [ $ile_kom ]</FONT></td><td width=216 height=11 bgcolor=rgb(245,245,245) align=center><a HREF=../komentarze/domowe.php?id=$id>dodaj komenatrz</A> <a HREF=../kom.pokaz.php?id=$id>Zobacz opinie</A></td></tr></table><hr noshade size=1 width=360></center></div>"; $id++; } ?>[/php:1:455022dbeb] -------------------- Arbeit macht frei
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 25.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
eno przeciez sie przyznalem do bledu! scaner napisales i usunales czemu?
-------------------- Arbeit macht frei
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Może to pomoże?
[php:1:bd7f73348a] <?php // (...) $tablica=file("../users/domowe.txt"); $tablica1=array_reverse($tablica); for($i=0;$i<count($tablica1);$i++) // (...) ?>[/php:1:bd7f73348a] Usunąłem coś, co miało cie zmusic do pokazania poprawnego kodu. Ale zaraz po wysłaniu okazało się, ze właśnie to zrobiłes, więc po co trzymac zbednego posta. -------------------- |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 25.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
Niestety, to nawet nie odwocilo tablicy
![]() -------------------- Arbeit macht frei
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
podpowiedz:
$tablica - oryginal $tablica1 - tablica odwrocona -------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 25.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
a jak zrobic oryginal?
scanner prosze przejrzysciej... ![]() -------------------- Arbeit macht frei
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
[php:1:02b3f0e786]<?php
echo 'Nie dobijaj mnie...'; $tablica1 = array_reverse($tablica); // odwracamy $tablica2 = array_reverse($tablica1); // znowu odwracamy ?>[/php:1:02b3f0e786] Mówi ci to coś? -------------------- |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 25.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
no wiec odwocilo sie, ale id wciaz jest w zla strone.
zobacz jak to wyglada w praktyce http://punk.do.pl/~arek/dzialy/domowe.php a czy nie ma jakiejs opcji do zmiennej id typu $reverse_id ? ![]() -------------------- Arbeit macht frei
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
1. Ostrzeżenieczacie.
2.[php:1:0d9a1d40f3]<?php echo 'Myślenie naprawdę nie boli'; $reverse_id = $max_id - $id ?>[/php:1:0d9a1d40f3] -------------------- |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 25.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
PRZEPRASZAM!
Zalamac sie idzie... nie dziala :cry: -------------------- Arbeit macht frei
|
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Wiesz co.. pokaz dwie pierwsze linijki z pliku "domowe.txt" i dwie pierwsze z dowolnego pliku z komentarzami. Od tego zaczniemy.
-------------------- |
|
|
![]()
Post
#16
|
|
![]() Administrator planeta/IRC Grupa: Przyjaciele php.pl Postów: 385 Pomógł: 0 Dołączył: 19.04.2003 Skąd: Zabrze Ostrzeżenie: (0%) ![]() ![]() |
Nie odwracaj array_reversem tylko napisz inną pętle, żeby szło od count($tablica), dopóki $i jest większe od zera i $i--
![]() -------------------- "Programmers are in a race with the Universe to create bigger and better idiot-proof programs, while the Universe is trying to create bigger and better idiots. So far the Universe is winning."
Cudi's devBlog |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 25.03.2003 Ostrzeżenie: (0%) ![]() ![]() |
Domowe txt:
Kod http://cedar.prv.pl|**||**||**|Strona po¶więcona softwerowi. Znajdziesz tu wiele spolszczeń do popularnych programów.|**|Monday, 05 May 2003
[url=http://www.denis35.prv.pl|**|denis35|**|denis35@wp.pl|**|taka]http://www.denis35.prv.pl|**|denis35|**|de...5@wp.pl|**|taka[/url] moja stronka o wszystkim|**|Wednesday, 07 May 2003 Komentarze: Kod arek|**|arek_inc@o2.pl|**|tresc komentarza
Cytat Nie odwracaj array_reversem tylko napisz inną pętle, żeby szło od count($tablica), dopóki $i jest większe od zera i $i--
Czyli jak ta petla ma wygladac? Sluchajcie, ja wiem o czym wy mowicie, natomiast nie jestem na tyle zaawansowany zeby pisac cokolwiek, z petlami wlacznie ![]() -------------------- Arbeit macht frei
|
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Co do plików - powiedz komuś, kto ten skrypt pisał, że bardzo dobrym roziązaniem jest dodawanie na poczatku każdej linii ID wpisu. Tak jak to ma miejsce w bazach danych. Inaczej zawsze coś będzie nie tak, szczególnie, gdy usuniesz jakąś linię z danego elementu. każdy wpis powienien być poprzedzony swoim ID - jak dla mnie ten skrypt jest do napisania od nowa.
Co do pętli: Przeanalizuj poniższą konktrukcję:[php:1:11fc23bb74]<?php $intArraySize = sizeof($tablica); // sizeof i count to to samo // jezeli tablica nie zmienia rozmairów wewnatrz petli, zawsze sizeof() sprawedzamy przed petla // dzieki temu przyspieszamy dzialania skryptu. // to jak ty masz napisane powoduje // ze rozmiar tablicy jest sprawdzany za kazdym obrotem petli for($intLoopA = $intArraySize; $intLoopA >= 0; $intLoopA--) { // tu wyświetlasz co chcesz traktując $intLoopA jako index tablicy. } ?>[/php:1:11fc23bb74] To powinno dac tabele w odwrotnej kolejności z zachowaniem indexów. -------------------- |
|
|
![]()
Post
#19
|
|
![]() Administrator planeta/IRC Grupa: Przyjaciele php.pl Postów: 385 Pomógł: 0 Dołączył: 19.04.2003 Skąd: Zabrze Ostrzeżenie: (0%) ![]() ![]() |
Ja nigdy nie używam ID w plikach txt, dla mnie ID to numer lini w której leży dany wpis, a numery te są generowane zawsze na bierząco, więc po usunięciu problemu z tym raczej nie ma...
A co do pętli: [php:1:595926be68]<?php for($i = count($tablica); $i >= 0; $i--) { // i tutaj wyświetlanie } ?>[/php:1:595926be68] -------------------- "Programmers are in a race with the Universe to create bigger and better idiot-proof programs, while the Universe is trying to create bigger and better idiots. So far the Universe is winning."
Cudi's devBlog |
|
|
![]()
Post
#20
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Cudi: przecież ja pętle pokazałem i nawet skomentowałem dlaczego wygląda tak a nie inaczej. Poczytaj prosze mojego posta. Piszesz nieoptymalnie.
-------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 09:35 |