NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Diskuze v PHP bez použití databáze

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:13.6.2012 12:48

Výměna include() za require() nepomůže. Pro tento účel se používá funkce readfile(), která je navíc rychlejší, protože ten soubor neparsuje.

Odpovědět
13.6.2012 12:48
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:13.6.2012 13:13

Nojo :D To je docela fail.

Odpovědět
13.6.2012 13:13
New kid back on the block with a R.I.P
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:13.6.2012 13:15

Tak teď je to OK, dík ;)

Odpovědět
13.6.2012 13:15
New kid back on the block with a R.I.P
Avatar
Neaktivní uživatel:16.6.2012 9:05

Dá se tam nějak řadit od nejnovějšího po nejstarší ? Teď to e přesně naopak..

Odpovědět
16.6.2012 9:05
Neaktivní uživatelský účet
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Kit:16.6.2012 9:15

Ano, ale musí se na to jít jinak. Napsal jsem takovou miniaplikaci. V případě zájmu ji tady mohu vystavit.

Ovšem to se už blíží chvíle, kdy je databáze výhodnější. Zhruba od několika set až tisíc záznamů je DB prostě rychlejší.

Odpovědět
16.6.2012 9:15
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Neaktivní uživatel:16.6.2012 9:17

tj,jenže já databázi zkoušel,a na mě to bylo moc složitý..

Odpovědět
16.6.2012 9:17
Neaktivní uživatelský účet
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Kit:16.6.2012 9:29

Jay Godse udělal docela zajímavý videoseriál o práci s databází. http://www.youtube.com/…Jaynonymous1

Včera jsem zkusil dělat s databází v Pythonu. Byla to taková trivka, že jsem nechápal.

Odpovědět
16.6.2012 9:29
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Odpovídá na Kit
Neaktivní uživatel:16.6.2012 9:31

Mohl by si sem dát tu miniaplikaci ?? ;)

Odpovědět
16.6.2012 9:31
Neaktivní uživatelský účet
Avatar
Kit
Tvůrce
Avatar
Kit:16.6.2012 9:48

Byl to jen momentální nápad, ale funguje to. Zobrazuje jen posledních 50 příspěvků, ale po úpravě jich může zobrazovat víc nebo všechny.

Nedoporučuji pro dlouhý chat, ale spíš jen na diskuzi ke článku, protože po několika stech příspěvcích se aplikace začne zpomalovat.

Adresář "data" je nutné předem založit a přidělit mu vhodná práva pro zápis.

<?php
if(isset($_POST['Poznamka']) && $_POST['Poznamka']!='') {
        file_put_contents('data/diskuse.log',
                json_encode(array('Jmeno'=>$_POST['Jmeno'],'text'=>$_POST['Poznamka'])).PHP_EOL,
                        FILE_APPEND | LOCK_EX);
        header('Location: .');
        exit;
}

if(!is_array($pole=@file('data/diskuse.log'))) $pole=array();
assert('is_array($pole);');
$out=array();
foreach(array_reverse(array_slice($pole,-50)) as $zaznam) {
        $z=json_decode($zaznam,TRUE);
        $out[]="<h3>".htmlspecialchars($z['Jmeno'])."</h3>\n<div>".
                nl2br(htmlspecialchars($z['text']))."</div>\n";
}
$texty=implode("\n",$out);

echo <<<EOT
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<form method="POST">
<div style="width:15em">Nick: <input type="text" name="Jmeno" size="30"></div>
<div style="width:15em">Příspěvek:</div>
<div><textarea name="Poznamka" rows="8" cols="72"></textarea></div>
<div><input type="Submit" value="Odeslat"></div>
</form>
$texty
</body></html>
EOT;
Odpovědět
16.6.2012 9:48
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Kit:16.6.2012 11:58

A: Protože se to protiví způsobu, jakým lidé čtou.
Q: A proč je to špatné?
A: Zobrazování novinek nahoře.
Q: Co je nejhorší na internetových diskusích?

Odpovědět
16.6.2012 11:58
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
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 10 zpráv z 74.