Pouze tento týden sleva až 80 % na e-learning týkající se C# .NET
Využij akce až 80% zdarma při nákupu e-learningu. Více informací .
BF summer
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Daniel Vítek:29.6.2012 19:28

Mám tohleto http://www.itnetwork.cz/index.php?…
Jak mám udělat aby se další věc připsala na další řádek ? Není na to třeba nějaký znak ?

Odpovědět
29.6.2012 19:28
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Don
Člen
Avatar
Don:29.6.2012 20:12

Pokud jsem to správně pochopil tak \n

 
Nahoru Odpovědět
29.6.2012 20:12
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:29.6.2012 20:14

Použij raději funkci
http://www.php.net/…contents.php
s parametrem FILE_APPEND. Bude to bezpečnější. Na konec záznamu přidej znak "\n".

Nahoru Odpovědět
29.6.2012 20:14
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Kit
Daniel Vítek:29.6.2012 20:22

.....jak ? :D

Nahoru Odpovědět
29.6.2012 20:22
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Kit:29.6.2012 21:01

Však je to tam v příkladech.

file_put_contents($file,$string."\n",FILE_APPEND | LOCK_EX);

Nemusíš ten soubor otvírat ani zavírat. Vše se udělá automaticky. Prostě se na konec souboru přidá řetězec $string.

Nahoru Odpovědět
29.6.2012 21:01
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Kit
David Čápka:29.6.2012 21:21

To je hezká fce. V tom PHP aby se prase vyznalo, musím zde sepsat nějaký rejstřík a to i pro sebe.

Nahoru Odpovědět
29.6.2012 21:21
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:29.6.2012 21:41

Na co rejstřík, když máme http://www.php.net :-)

Ta funkce je užitečná i tím, že si ten soubor po dobu zápisu zamkne. Záznamy se tak nemohou promíchat se zápisem z jiného procesu. Zároveň je jisté, že to zamknutí je skutečně jen na dobu nezbytně nutnou a ani o chvilku déle.

Nedávno jsem si takto logoval ve formátu JSON a pracovalo se s tím pak přímo skvěle.

Nahoru Odpovědět
29.6.2012 21:41
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Kit
David Čápka:29.6.2012 21:46

No v manuálu je hodně funkcí, třeba 10 co dělají tu samou věc. A hledat v tom, která z nich je nejlepší...

Nahoru Odpovědět
29.6.2012 21:46
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:29.6.2012 21:53

Zajímavé. O duplicitách moc nevím. Většinou jsou v těch funkcích alespoň drobné odchylky a některé starší jsou deprecated.

Nahoru Odpovědět
29.6.2012 21:53
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Kit
David Čápka:29.6.2012 22:06

Neměl jsem na mysli přesné duplicity (i když těch tam je také dost). Hlavně ty drobné odchylky, že parametrem fce A dosáhnu lepšího výsledku, než u fce B a podobně. Pak samozřejmě ty deprecated, to je taky hrůza.

Kdyby se to strukturovalo do tříd, tak by takovéhle problémy nebyly. Pořád naivně věřím, že k tomu někdy dojde. Příjemně mě překvapilo např. toto: http://php.net/…datetime.php

Nahoru Odpovědět
29.6.2012 22:06
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:29.6.2012 22:41

Hmm, už ty konstanty vypadají dost drsně. Tuto třídu jsem neznal.

Nahoru Odpovědět
29.6.2012 22:41
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Kit
David Čápka:29.6.2012 22:53

Mě se to líbí, konstanty jsou jen pro jednodušší formátování do známých formátů, funguje to stejně jako ty příšerné datetostr a podobné, jen je to zabalené ve třídě. Ve verzi 5.3 přídali např. metodu add, podívej se v příkladech, jak zrcadlí procedurální a objektový přístup, tenhle směr vývoje je docela nadějný: http://www.php.net/…time.add.php

Nahoru Odpovědět
29.6.2012 22:53
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Kit
Redaktor
Avatar
Kit:29.6.2012 23:18

Mně také. Ty objektové příklady mi ukázaly, že se z nich vlastně staly primitivní interpretry stringového parametru. To je velmi zajímavý přístup. Když si představím, že by každý objekt interpretoval jako příkaz nějakou podmnožinu nějakého jazyka... To už je skoro jako SQL.

Nahoru Odpovědět
29.6.2012 23:18
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:30.6.2012 7:00

Když se podíváš na příklad
http://www.php.net/…datetime.php#…
tak si možná vzpomeneš, jak jsme se bavili o tom, jak extrémně přetěžuji objekty. Zdá se, že nejsem sám.

Nahoru Odpovědět
30.6.2012 7:00
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Kit
David Čápka:30.6.2012 7:19

Jako že je tam diff místo toho, aby odečetl nějaký getter?

Nahoru Odpovědět
30.6.2012 7:19
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na David Čápka
Kit:30.6.2012 7:22

Ano. Dělám to podobně.

Nahoru Odpovědět
30.6.2012 7:22
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Kit
Daniel Vítek:30.6.2012 9:39

Takže když si budu chtít udělat třeba tu diskuzi znovu s tímhle tak to udělám takto :

<form action="pridej.php" method="post">
Jméno :<input type="text" name="jmeno"><br>
Text : <inpu type="text" name="text"><br>

pridej.php

file_put_contents($diskuze,$_POST[jmeno] . "\n" . text . "\n",FILE_APPEND | LOCK_EX);

????

Nahoru Odpovědět
30.6.2012 9:39
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Daniel Vítek
Daniel Vítek:30.6.2012 9:40

ještě jsem zapoměl

$diskuze = diskuze.txt
Nahoru Odpovědět
30.6.2012 9:40
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:30.6.2012 9:48

Pochopil jsi to správně, ale realizoval špatně. Použitím syrového $_POST[jmeno] si koleduješ o malér, je nutné ho ošetřit. Nejlépe přes htmlspecialchars().

Nahoru Odpovědět
30.6.2012 9:48
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Kit
Daniel Vítek:30.6.2012 9:50

já na to nechci dávat nějké include atp. mě jde o ten výstup...

Nahoru Odpovědět
30.6.2012 9:50
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Daniel Vítek
Daniel Vítek:30.6.2012 9:51

btw. v tom výstupu se to \n zobrazí ??

Nahoru Odpovědět
30.6.2012 9:51
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:30.6.2012 10:13

Asi jsi ještě neslyšel o XSS, že? A jak chceš potom zobrazit znaky ampersand, uvozovky, < apod?

Nahoru Odpovědět
30.6.2012 10:13
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Kit
Daniel Vítek:30.6.2012 10:29

XSS ?? :D

Nahoru Odpovědět
30.6.2012 10:29
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Kit
Daniel Vítek:30.6.2012 10:30

pochybuji že zrovna můj web by chtěl někdo hacknout ;) btw.dělám zálohy.. (jestli to pomůže)

Nahoru Odpovědět
30.6.2012 10:30
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Daniel Vítek
David Čápka:30.6.2012 10:50

XSS je zkratka pro Cross-site scripting. Představ si, že ti tam nějaký vtipálek vloží tento text:

</body>

Jakmile vypíšeš jeho komentář, zavře ti to stránku a dále se nic nevypíše. Proto vše před vypsáním musíš ošetřit funkcí htmlspecialchars().

Nahoru Odpovědět
30.6.2012 10:50
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na David Čápka
Daniel Vítek:30.6.2012 10:54

jenže já to nechci vypisovat na stránku,chci to použít pro zápis do .htpasswd - jednoduchá "registrace"

Nahoru Odpovědět
30.6.2012 10:54
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:30.6.2012 15:46

Tak v tom případě tam htmlspecialchars() nebude, protože to bude už ošetřeno hashovací funkcí.

Rozmysli si dobře, jestli to budeš chtít takto dělat. Není to právě spolehlivé řešení, databáze by byla lepší. .htpasswd z ní případně můžeš po změně generovat, ale většinou to není potřebné.

Nahoru Odpovědět
30.6.2012 15:46
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Kit
Daniel Vítek:30.6.2012 20:05

Já chci pouze zaheslovat jednu stránku,aby tam nemohl každý,ale abych o něm aspoň něco věděl...
Už to mám hotový,jen nevím jak to odřádkovat...

Nahoru Odpovědět
30.6.2012 20:05
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:30.6.2012 20:13

Však odpověď jsi dostal: Přidat "\n". Pokud potřebuješ odřádkovat jako v DOSu, přidej "\r\n".

Nahoru Odpovědět
30.6.2012 20:13
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Kit
Daniel Vítek:30.6.2012 20:15

rn jsem zkoušel,nefunguje

Nahoru Odpovědět
30.6.2012 20:15
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:30.6.2012 20:16

Funguje. Musíš to dát do uvozovek - ne do apostrofů.

Nahoru Odpovědět
30.6.2012 20:16
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Kit
Daniel Vítek:30.6.2012 20:18

Ahá,já to tam čet,ale nějak jsem to při psaní vypustil.... :D pak to zkusím...napíšu ;)

Nahoru Odpovědět
30.6.2012 20:18
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Daniel Vítek
Tým ITnetwork
Avatar
Odpovídá na Kit
Daniel Vítek:3.7.2012 20:17

funguje ;)

Nahoru Odpovědět
3.7.2012 20:17
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 33 zpráv z 33.