Anonymní profil peter – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

Anonymní profil peter – Programujte.comAnonymní profil peter – Programujte.com

 

Příspěvky odeslané z IP adresy 193.84.207.–

peter
PHP › procisteni HTML tagu
11. 9. 2017   #217803

Jo, jenze strtolower se neda pouzit na utf, tam je mb_strtolower.

peter
PHP › Nasepkavanie pri vyhladavani…
11. 9. 2017   #217802

Jo, hele, mozna se vyplati resit naseptavani spis pomoci js a json kodu. Json tusim dela to, ze stejna slova koduje jako odkaz na text zpet. Cili, klidne stahnout celou db slov, seradis, a pak jen odkazujes zpetne na stejne useky. Nebo vlastni kod. Pr 

vitejte
vitek
viteslav

vitejte
4k
4slav
peter
PHP › Minimalizacia poctu include…
11. 9. 2017   #217798

Ono zalezi na tom, jak je to delane. Cim vic radku, tim vic jich musi php prelozit do kodu procesoru. Kdyz to jde, snazim se rozdelit program na logicke celky, ktere vyuziji ve vice souborech.

Jeste jsem neincludaval vic nez 10 souboru, ani kaskadne. Takze nemuzu rici, jaky to ma vliv. Obecne je dobre, kdyz ma disk soubory pohromade, ze je nenacita z ruznych mist. Ale u ssd je to asi fuk :) Obri soubory jsou obvykle pomale, si myslim. Ale zas treba, kdyz kopiruji na flashku, tak, kdyz se to presouva jako velky balik, je to vyrazne rychlejsi nez kdyz tam vytvari soubor po souboru do souboroveho systemu.

peter
PHP › Class active na aktuálnej st…
11. 9. 2017   #217797

kes, ampersand, samozrejme, kdyz je to dalsi parametr :)
odkaz.php?data=456&odkaz=1

peter
PHP › Class active na aktuálnej st…
11. 9. 2017   #217796

Nebo by slo pouzit primo v hrefu, ale pak je trosku slozitejsi to z tama vydolovat. Nebo aspon driv byvalo, mozna ted je na to funkce.
odkaz.php?data=456?odkaz=1
 

peter
PHP › Class active na aktuálnej st…
11. 9. 2017   #217795

Muzes pouzit i javascript. Mas treba 

<script>
odkaz = 'webapp.php';
items = document.getElementById('menu');
items = items.getElementsByTagName('A');
for (i=0; i<items.length; i++) {item = items[i]; if (item.href==odkaz) {item.className='active';}}
</script>

Nebo muzes jit treba podle poradoveho cisla 

<a href="odkaz.php?data=123#0">...</a>
<a href="odkaz.php?data=456#1">...</a>
<script>
odkaz = location.hash; //1 mozna #1
items = document.getElementById('menu');
items = items.getElementsByTagName('A');
for (i=0; i<items.length; i++) {item = items[i]; if (i==odkaz) {item.className='active';}}
</script>
peter
PHP › Riešenie pre otvorenie txt s…
11. 9. 2017   #217794

Jeste mozna jine cteni souboru
$data = file_get_content('soubor.txti');
 

Jinak, samozrejme pri vice zapisech je dobre pouzit flock, pro uzamceni souboru, pokud do nej zapisuje prave jiny prikaz.

peter
PHP › Riešenie pre otvorenie txt s…
11. 9. 2017   #217793

Ja bych to resil pres databazi. Souborove to muzes resit stejne.

zapis.php?data='rozsvit'
precti.php - ktere soucasne smaze z db ten text
zp.php?akce=zapis&data='rozsvit'
zp.php?akce=precti

Na serveru se da php spoustet tusim pres 'php precti.php' (nebo 'http precti.php' nebo tak nejak se to tam dela).

Ale slo by to delat tak, ze ke kazdemu pozadavku pridas casove razitko. Funkce si pak precte jen radky v urcitem intervalu, ostatni ignoruje. A pak ti bezi na serveru jeste proces, ktery smaze radky se starsim razitkem. Ale prijde mi to na houbec, kdyz to muze delat zrovna ten php program.

No, a pak muzes v tom php predat data primo tomu dalsimu programu, neni treba to zapisovat. Nejdriv si overis, zda je to platny prikaz, ale.
 

<?php
$data = 'rozni';
shell_exec('jinyprogram.exe -data='.$data); // tady existuje asi 5 prikazu pro spousteni z command-line, google
//http://php.net/manual/en/function.exec.php
//exec();
//system() - Execute an external program and display the output
//passthru() - Execute an external program and display raw output
//escapeshellcmd() - Escape shell metacharacters
//pcntl_exec() 
?>
peter
PHP › Nasepkavanie pri vyhladavani…
11. 9. 2017   #217792

Php generuje soubor. Soubor (data) muze byt obrazek, video, html, js, css, text, mp3, ... nebo jiny kod. 

Pr. takovy jednoduchy ajax bez pouziti js httprequestu.

--- x.php ---
<?php
echo 'var a,b,c;';
echo 'a=3;';
echo 'alert(a);';
?>

--- y.htm ---
<script src="x.php"></script>

--- y2.htm ---
<script id='aaa'></script>
<script>document.getElementById('aaa').src='x.php';</script>

Js ajax dela to, ze stahne ze serveru soubor (anicka.jpg nebo soubor.php?name=anicka.jpg). Totez dela treba tag iframe src=..., img src=..., script src=..., link. Cili, ajax dela neco podobne jako v php file_get_contents. Jenom obvykle byva nastaveny asynchronne, jakoze stahuje napozadi a proto je treba k nemu pridat navratovou funkci. Priklad zapisu 

function stahuj(soubor, cb) {...}
function stahuj_cb(data) {alert(data);}
stahuj('soubor.php?name=anicka.jpg', stahuj_cb);
stahuj('soubor.php?name=anicka.jpg', window.stahuj_cb); // nebo
stahuj('soubor.php?name=anicka.jpg', window['stahuj_cb']); // nebo
stahuj('soubor.php?name=anicka.jpg', top.window['stahuj_cb']); // pro subframe
stahuj('soubor.php?name=anicka.jpg', top.stahuj_cb); // pro subframe

x = new mujAjax();
x.file = 'soubor.php?name=anicka.jpg';
x.callback = window.stahuj_cb;
x.zacniStahovat();

To je jen priklad, jak to asi funguje. Jak je udelany ten objekt mujAjakx ve tvem programu vubec netusim.

Kdyz chces stahovat treba 10 souboru naraz, tak bys mel nekde promennou, kde bys ukladal, zda je to completed a kdyz jse vsech 10, tak zavolas treba dalsi funkci. Nebo to muzes stahovat postupne, nastavis prenos na synchronni. A nebo muzes pouzit i asynchronni, ale pak to ale budes mit kaskadne.
stahuj('soubor1', stahuj2);
stahuj2('soubor2', stahuj3);...
Nevyhoda synchronniho je, ze program ceka, az se js vykona, dostahuji data. Takze se to moc nepouziva.

peter
PHP › Linux screen output pomocí PHP
11. 9. 2017   #217791

Ano, jsou programy a hostingy, ktere maji nainstalovany prohlizec a dovedou vykreslit vystup do obrazku.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý