Chtěl bych někoho poprosit o pomoc... Mám myšlenku - sice teprve na počátku vývoje.
Ale zajímalo by mě, zda by šla zavolat funkce po kliknutí na nějaký odkaz.
Vím, že javascript tohle umí. Např.:
<a href="test.php" onclick="javascript: return test();">klikni</a>
Jde to nějakým způsobem i v php? Nikde k tomuto nemohu nalézt informace.
Případně by mě také zajímalo, zda jde vytvořit sessiona po kliknutí na odkaz.
Předem děkuji
Proč by to nešlo. Za odkaz, kterej může odkazovat i na tu samou stránku, přidáš otazník a parametr, kterej tu funkci vyvolá.
Zrejme delám nejakou chybu v syntaxi, ale tenhle kod (uvedeny nize) pri nacitani vyvola ihned postupne funkci test trikrat, tzn. do sessiony je po nacteni ulozen pouze treti parametr. To neni presne ono. :-(
<?
function test($num) {
$_SESSION['num'] = $num;
}
?>
<a href="test.php?<? test('1');?>">1</a>
<a href="test.php?<? test('2');?>">2</a>
<a href="test.php?<? test('3');?>">3</a>
<?
if (isset($num)){
test($num);
}
function test($number) {
$_SESSION['num'] = $number;
}
?>
<a href="test.php?num=1">1</a>
<a href="test.php?num=2">2</a>
<a href="test.php?num=3">3</a>
jasny, ale prave, ze se chci vyhnout jakekoli promenne v adresnim radku.
abychom predesli dalsim zmatkum... javascriptovou funkci neni problem zavolat, protoze se nachazi v prohlizeci - a funguje, i kdyz nejses pripojeny.
zatimco php funkci zavolal _nelze_, protoze se nachazi na serveru. jedine, co lze, je kliknutim na odkaz vyvolat nacteni nove stranky (kdy muze byt funkce provedena) a te musis dat nejakym zpusobem vedet, na ktery odkaz si kliknul. vzhledem k tomu, ze chces pouzivat stejny odkaz, mrkni na formulare a posilani metodou POST.
aby se neměnila adresa, tak lze použít třeba otevření nového ona, nebo prostě jenom změnění adresy nějakého skrytého obrázku (nebyl by vidět) na adresu toho cílového scriptu i s parametrama (tak dojde k jeho zavolání, aniž by si toho uživatel musel všimnout)