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

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

 

Příspěvky odeslané z IP adresy 2001:718:2601:26c:a504:82...–

peter
Python › Pravdepodobnosť útoku
16. 12. 2016   #214086

hanpari
"Jaká je podle tebe pravděpodobnost, že ve 100 případech bude (random() < 0.7) == True. Kolem 70%. Co myslíš? "
"85"
"Jak jsi přišel na 85%?"
Co myslis? :) Udelal jsem program, ktery mi spustil 100x random a porovnal s 0.7. Ve skutecnosti jsem si tipnul cislo, protoze ten program muze vypsat 0 az 100. Ted mne zajimaji jine veci...
http://mlich.zam.slu.cz/…sorting3.htm - rozbal si efectivity test a spust, ve FF mi tam naskakuje 250 pro alg 0 i 1 (lepe, kdyz si das max time 200, ale to bys musel najit v kodu)
No, ale proc to zminuji. Sortovani se da pouzit pro nahodne zamichani.

function cmpRnd(a,b) {return 0.66 - Math.random();} // a = arr[0], b = arr[1]; 0, 1, 2 zavisi na sortovacim algoritmu
arr.sort(cmpRnd)

Cislo 0.66 jsem si vymyslel. Cim vetsi je a, tim vic nastane situaci, ze se 'a' bude muset vymenit s 'b'.

U pvp her je mozne rici, ze ma zbran 500 dmg, pravd. 70% snizi dmg o 30%. A jeste budes pocitat critical last hit jako pravdepodobnost 50%, kdyz X klesne pod nulu pro X = hp - 3 * (0.7 * 500).
50% uz muzes urcit jako prumer treba 10 nahodnych hodnot. V idealnim pripade je to 50%. Cim vice hodnot, tim lepsi pravdepodobnost. Ale vysledek mas jen jeden.
A cim lepsi random algoritmus, tim lepsi rozptyl.
Jenze prumer nebude 0, pokud vsech 10 hodnot nebude nula a totez, nebude 100. Takze se neda pouzit na pravdepodobnosti jako 70%, ale jen 50%.

peter
CSS › Bootstrap efekt
16. 12. 2016   #214084

A, pokud je to stranka, kde je mozne to videt, tak treba odkaz na ni? Pripadne rici, co tam na ni je treba udelat a co se ma objevit? Jestli to maji v boots-trapu, tak se to jiste da najit ve zdrojovem kodu html, css, js

peter
CSS › Bootstrap efekt
16. 12. 2016   #214083

Jaky je dotaz?

Je tam obrazek. Je tam rozbalene menu. Na to se ptas?

peter
PHP › Prepojenie 2 tabuliek PDO
16. 12. 2016   #214075

1. Osobne davam prednost, kdyz id pojmenujes stejne v obou tabulkach.
Tabulka cast: id_cast,nazov, seria, cast, id_serial
Tabulka serial: id_serial, nazov, hodnotenie

2.  Je dobre vyuzit pro dotaz formatovani, zvlast u slozitejsich a kdyz neco nejde 

SELECT 
  casti.nazov as castiNazov, 
  serial.nazov as serialNazov 
Form -- FROM?
  casti
  JOIN serial ON casti.idSerial = serial.id - LEFT JOIN?

3.  

SELECT 
  a.nazov AS castiNazov, 
  b.nazov AS serialNazov 
FROM
  casti a
  LEFT JOIN serial b ON b.id_serial = a.id_serial

Je to mozna trochu neprehledne, ale uz se mi to vyplatilo pri vice slozitejsich dotazech, kdyz dam aliasy k tabulkam, shodne pro vsechny casti programu jako a, b, c ... Nemusi se pak dlouze opisovat nazvy.
Kdyz mam nazvy sloupcu, viz 1, tak nemusim hledat, jak jsem ten sloupec pojmenoval.
Kdyz Joinuji, tak pouzivam JOIN LEFT. Malokdy JOIN jako left + right nebo JOIN RIGHT.
A kdyz joinuji zleva, tak ji pripojuji podle jejiho sloupce id na hodnotu z jine tabulky. Neco, jako kdyz pises WHERE b.id_serial = 123, nepises to 123 = b.id_serial. U joinu to ma svuj vyznam, ale. U where nevim, mozhlo by to byt pomalejsi. Zalezi na tom, jak je sql engine optimalizovany, zda si to sam spravne usporada..

4. ukladej si query do promenne. Kdyz ti pak neco nejede, tak si udelas echo $query. Pripadne nevim, jak to funguje pri skladani dotazu pres pdo->bind, jestli se to da tez vypsat i s promennymi z php.
Pak uvidis, co v tom dotazu je a muzes ho spustit pres phpmyadmin. Vyberes databazi, zalozku sql, vlozis dotaz, kliknes ok. Vypise to chyby nebo treba 0 radku.

5. pouzivej vypisovani chyb.

	public function querySafe($query)
	{
	$this->sth = $this->conn->prepare($query);
	$this->sth_exec = $this->sth->execute();
	return $this->sth;
	}

	public function queryDebug($query)
	{
	echo "\n<div class=\"query\">query = ".$query."</div>";
	$this->querySafe($query);
	if (!$this->sth_exec && $trans==false)
		{
		$this->queryError($this->sth);
		}
	return $this->sth;
	}

	public function queryError($sth)
		{
		if (!$sth) {$this->error('Not sth!'); return;}
		$this->error('Error query: ' . $sth->errorCode().' '.implode(" - ",$sth->errorInfo()));
		}

Cili, kdyz selze sth, lze vypsat
$sth->errorCode().' '.implode(" - ",$sth->errorInfo())
Tim bys odhalil treba tu chybu form / FROM

6. Muzes zkusit obarvovani sql dotazu. Bud primo phpmyadmin nebo ja pouzivam i
http://www.dpriver.com/…qlformat.htm
!!! pamatuj vsak, ze kazdy sql dotaz muze byt monitorovan, ukladan. I v pripade phpmyadmina. Hlavne se vyhybat online sluzbam, pokud chces zajistit bezpecnost. Aby se treba hackeri nedozvedeli, jak mas pojmenovane tabulky, sloupce a pod.
 

 

 

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