GRY-Online.pl --> Archiwum Forum

PHP i znak konca linii prosze o szybka pomoc!

17.08.2007
10:42
[1]

Azzie [ bonobo ]

PHP i znak konca linii prosze o szybka pomoc!

Prosze o szybka pomoc, bo za maks godzine musze miec gotowy skrypt a utknalem na cholernej rzeczy :)

Skrypt zapisuje dane do pliku, na koncach linii musza byc oczywiscie znaki konca linii

Dowiedzialem sie juz ze w windowsie jest to \r\n a wiec zapisuje dane w nastepujacy sposob:

$dane='\r\n';
$dane=$dane.str_pad($i,8,'0',STR_PAD_LEFT);
$dane=$dane.'.\r\n';

Wg mnie efektem tego powinienem miec cos takiego:

[pusta linia]
[7 spacji]1.[koniec linii]

Tymczasem zamiast znakow konca linii pokazuja mi sie te cholerne \r\n w pliku... Cos robie zle?

17.08.2007
10:46
[2]

Madril [ I Want To Believe ]

Znaki specjalne są interpretowane tylko w cudzysłowach. Napisz "\r\n" i powinno działać.

17.08.2007
10:52
[3]

Azzie [ bonobo ]

Muchos gracias! :)

Tak to jest jak sie takie ciemniaki jak ja biora za programowanie :)

17.08.2007
10:55
[4]

Madril [ I Want To Believe ]

- polecam, znajdziesz tu odpowiedzi na większość pytań w przyszłości. :)

17.08.2007
10:58
[5]

yasiu [ Senator ]

madril - pewnie... tylko czasem odpowiedz jest potrzebna naprawde szybko a znalezienie odpowiedzi chwile trwa :))

17.08.2007
10:59
[6]

Madril [ I Want To Believe ]

yasiu --> Ale ja pytać nie zabraniam, ba, jeśli będę potrafił, to z chęcią pomogę. :)

17.08.2007
11:06
smile
[7]

You tube my space. [ Konsul ]

WTF?

To jest to proste PHP?

$dane='\r\n';
$dane=$dane.str_pad($i,8,'0',STR_PAD_LEFT);
$dane=$dane.'.\r\n';


Python dla kontrastu:

print = '''
1.''' #GOL ucina spacje :P

17.08.2007
11:12
[8]

Madril [ I Want To Believe ]

You tube --> Można to w PHP zapisać prościej, ale Azzie chce mieć stałą długość, niezależnie od wartości zmiennej $i. Poza tym, z tego, co napisał w kodzie to wyjdzie siedem zer i jedynka (jeśli $i ma wartość 1), a nie siedem spacji. :)

17.08.2007
11:14
[9]

You tube my space. [ Konsul ]

Madril, uff, a już się wystraszyłem ;)

BTW rąbnąłem się z rozpędu z "print" ;P

17.08.2007
11:15
[10]

Azzie [ bonobo ]

No dzieki tak szybkiej odpowiedzi wyrobilem sie na czas, nawet mam jeszcze chwile aby sie wykapac przed wyjsciem :)

Robie eksport faktur z bazy SQL do formatu WF Kaper dla Windows :) Nawet na razie sie udaje :)

Jeszcze tylko nie wiem jak zrobic aby euro lub dolary z SQL przeliczalo po kursie z odpowiedniego dnia... :(


Madril: Racja, tam mialo byc siedem zer, z rozpedu o tych spacjach napisalem :) Musze miec stala dlugosc aby trzymac sie specyfikacji formatu .kpm :)

17.08.2007
11:21
[11]

yasiu [ Senator ]

azzie - a masz gdzies te kursy historyczne zapisane?

17.08.2007
11:24
[12]

Azzie [ bonobo ]

Mam te kursy w xml, stad chyba najlatwiej bedzie je wyciagac:



Tylko ze jeszcze nie bardzo wiem jak :) Jest jakis sposob aby ten xml latwo przewinac i zczytac co potrzeba? Interesuja mnie tylko euro i dolary, a skrypt powinien docelowo tak dzialac aby automatycznie codziennie pobieral aktualne kursy (na serwerze ustawie, aby raz dziennie sie odpalal)

17.08.2007
11:32
[13]

Madril [ I Want To Believe ]

Azzie --> Pisałem coś takiego na zajęciach w semestrze jesiennym. Trochę inne i z money.pl, ale myślę, że chwila na przerobienie i masz gotowy skrypt, a do tego poznasz zasadę działania, jakbyś musiał od nowa pisać. W każdym razie to sie robi za pomocą wyrażeń regularnych.
Po pracy (mam nadzieję, że nie zapomnę - najlepiej mi mail wyślij) Ci to wyślę, bo mam na stacjonarnym, a nie lapku... Mam nadzieję, że mam, ale nie pamiętam, żebym takie rzeczy usuwał.

No i z takiego XML'a będzie dużo prościej, bo ja musiałem całą stronę obcinać i wycinać z tabelek. :)

17.08.2007
11:34
[14]

Azzie [ bonobo ]

OK, dzieki, przypomne sie wieczorem :) Na razie lece do tego ksiegowego, pochwalic sie co do tej pory zrobilem ;)

17.08.2007
11:42
smile
[15]

legrooch [ MPO Squad Member ]

Azzie ==> DOM i wszystko prosto i szybko :)

17.08.2007
11:57
[16]

Azzie [ bonobo ]

legrooch: Niestety serwer nie jest moja wlasnoscia, wiec nie sadze aby chcieli zainstalowac to rozszerzenie dla mnie :)

Mam serwer na nazwa.pl

17.08.2007
17:35
[17]

Azzie [ bonobo ]

upne gwoli przypomnienia i maila tez podesle na wszelki wypadek ;)

17.08.2007
18:05
[18]

pecet007 [ Talk to the claw ]

Nie wiem czy ci to jeszcze potrzebne, ale tutaj masz w działaniu

A tu masz krótki kod

Download

17.08.2007
22:10
[19]

Azzie [ bonobo ]

Madril: Sorry ale nic z tego nie zrozumialem :)

$tekst = file_get_contents("

preg_match_all('#<[\w =\"]*>\s<[\w =\"]*>[\w\s\(\)]*?</[\w =\"]*>\s<[\w =\"]*>[\d]+ [A-Z]‹3›</[\w =\"]*>\s<[\w =\"]*>[\d]‹3›</[\w =\"]*>\s<[\w =\"]*>[\d]‹1›\.[\d]‹4›</[\w =\"]*>\s<[\w =\"]*>[\+-]‹0,1›[\d]+\.[\d]‹2›</[\w =\"]*>\s</[\w =\"]*>\s#', $tekst, $w);

foreach($w[0] as $t)

$te = $te.$t;


$tekst = preg_replace('#<[\w =\"]*>\s<[\w =\"]*>([\w\s\(\)]*?)</[\w =\"]*>\s<[\w =\"]*>([\d]+ [A-Z]‹3›)</[\w =\"]*>\s<[\w =\"]*>([\d]‹3›)</[\w =\"]*>\s<[\w =\"]*>([\d]‹1›\.[\d]‹4›)</[\w =\"]*>\s<[\w =\"]*>([\+-]‹0,1›[\d]+\.[\d]‹2›)</[\w =\"]*>\s</[\w =\"]*>\s#', '$1 $2 $3 $4 $5'."\n", $te);

echo $tekst;


Probowalem to zrozumiec ale to nie na moja biedna glowe ;)

Zamiast tego znalazlem SimpleXML standardowo w PHP5 i zrobilem cos takiego :)

$tekst = file_get_contents("

$xml = new SimpleXMLElement($tekst);

echo $xml->pozycja[0]->nazwa_waluty . ' ' . $xml->pozycja[0]->kurs_sredni;

echo $xml->pozycja[4]->nazwa_waluty . ' ' . $xml->pozycja[4]->kurs_sredni;


I DZIALA! :)

Wyswietla: dolar amerykaĹ&#65533;ski 2,8507euro 3,8277

Mimo to dzieki za ten skrypt, moze kiedys uda mi sie te wyrazenia regularne zglebic :) Na poczatku jednakze mialem wrazenie jakby brakowalo mi jakiejs czcionki ;)

© 2000-2024 GRY-OnLine S.A.