Z Murphyho zákonů:

Prvních 90% úkolu zabere 90% času, zbylých 10% úkolu zabere dalších 90% času.

Pokud máte na svém serveru kolem 600 tabulek z různých projektů, je obvykle těžké se v nich zorientovat. PHPMyadmin je v tomto směru dost nepružný, v poslední době mnohem raději používám jednoduchou MySQL konzoli.

Ale k věci: Tabulky se zadaným prefixem si můžete odfiltrovat i pomocí příkazu ‘like’ .

show tables like 'demo_%'

Mám slabost pro jednoduchá a elegantní řešení. Jedním z takových řešení je převod mezi číselnými soustavami. Občas se to řeší algoritmy, které při troše přemýšlení musí vyplodit snad každý trochu znalý programátor, ale někdy je dobré vědět, že Javascript i na tohle má zabudovanu elegantní funkci toString();

function toHex(cislo){
cislo=parseInt(cislo).toString(16);
return cislo.length<2?"0"+cislo:cislo;
}

Většinou se toString() používá (bez parametru) k zjištění typu objektu. Pokud však jako parametr funkce zadáme základ číselné soustavy, lze jím snadno převádět čísla do této soustavy.

Příklad:


var a=165558;
alert(a.toString(16)); //proměnná a v šestnáctkové soustavě
alert(a.toString(2)); //proměnná a ve dvojkové soustavě
alert(a.toString(5)); //proměnná a tentokráte třeba v pětkové soustavě

Občas potřebujeme v Javascriptu získat část řetězce za nějakým rozdělovníkem, třeba po kliknutí na element chceme získat číselnou část z jeho id. Někdo to řeší pomocí regulárních výrazů, ale existuje i jednodušší řešení.

V PHP můžeme použít funkce explode() nebo ekvivalent split() známý i z Perlu, který rozdělí řetězec na více částí a jako rozdělovník použije znak nebo skupinu znaků zadané jako první parametr. Druhým parametrem je rozdělovaná proměnná nebo string.


<?
$a='rozdel_15';
$b=split('_',$a);
echo $b[1];
?>

A jak na to v Javascriptu? Funkce split() existuje i v zde, způsob použití je mírně odlišný:

Javascript:
var a='rozdel_15';
var b=a.split('_'); //pole
var c=b[1];

A nebo skript můžeme přepsat na jeden nadmíru elegantní řádek:

c=a.split('_')[1];

A na závěr dodám že stejným způsobem bude tato funkce fungovat i ve Flashovém Actionscriptu.

Nedávno jsem psal o tom, jak zkopírovat záznamy ze spojení dvou tabulek.

Následující MySQL příkaz je určen ke smazání vybraných záznamů ze spojení dvou tabulek pomocí JOIN


DELETE a
FROM tab_keywords a
LEFT JOIN tab_products b
ON a.productid=b.id
WHERE b.id IS NULL

Jde o smazání všech záznamů z tabulky tab_keywords u kterých není přiřazen žádný záznam v tabulkce tab_product, tj. jejich spojením vznikne ve sloupci b.id hodnota NULL

Za povšimnutí také stojí první řádek – DELETE a, kde a zastupuje povinný název tabulky. Tedy nestačí jen delete from, jak bychom mohli naivně očekávat.

« novější článkydalší články »