Autor Zpráva
Skogen
Profil *
Snažím se dát dohromady, aby area v map nejen odesílala hodnotu poll=1, ale aby taky při tomtéž kliknutí současně předala serveru hodnotu skrytého inputu ve formuláři test. Ani boha se mi to nedaří. Když ten onClick pověsím na jakýkoliv jiný element (<p>, <a>...), vždy se do inputu javascriptem vložená hodnota „24“ do proměnné $kontrabot přenese, ale tady prostě ne a ne...

Jedná se o variaci zdejšího zabezpečení fóra (v mém případě hlasování) proti robotům, proměnnou $kontrabot by se v php kontrolovalo vykonání skriptu pro hlasování (výpočet, zápis)...

<?

echo "<form name=\"test\" action=\"\" method=\"post\"><input type=\"text\" name=\"robot\" value=\"\" id=\"protirobotum\"><input type=\"submit\" value=\"odeslat\">
</form>
<script>
document.getElementById(\"protirobotum\").value=\"24\";
document.getElementById(\"spamprotirobotum\").style.display = \"none\";
</script>";

.
.
.

echo "<map name=\"user-vote\">
<area href=\"?id=".$id."&amp;poll=1#voting\" shape=\"rect\" coords=\"0,0,16,130\" rel=\"nofollow\" onclick=\"document.forms.test.submit();\" onmouseover=\"DETAILS('rating-01');\" onmouseout=\"DETAILS('rating-01');\">
. //* další volby s dalšími hodnotami proměnné $poll
.
.
</map>";

.
.
.

$kontrabot = $_POST[$robot];
echo $kontrabot; //* vypsání pro kontrolu

?>



správně
$kontrabot = $_POST['$robot']; - vypadlo mi to při přepisování
_es
Profil
Skogen:
Pokúšaš sa zlúčiť navzájom nezlučiteľné veci:
Area-odkaz a formulár súčasne do toho istého okna. Tak buď jedno alebo druhé.
Skogen
Profil *
Hm. Sice nevím, o jakém okně mluvíš, což je samozřejmě moje chyba (no, nebýt toho, asi bych sem nepsal...), ale beru jako fakt, že je to prostě na jedno „okno“ moc...

Má to tedy nějaké řešení, kterého bych se s minimální znalostí JS chytil? Poslat to do jiného okna? Přivěsit to na odkaz jinak? Odeslat to jiným způsobem, aniž by to od uživatele vyžadovalo něco víc, než dosavadní kliknutí na odkaz v area?

Zasekl jsem se na tom, že nevím, jak předat hodnotu z formuláře PHPéčku tak, aby byla navázána na událost na tom odkazu...
_es
Profil
Skogen:
Sice nevím, o jakém okně mluvíš
Atribút target ( Odkazy » Target) - implicitne _self. Čo sa má teda do toho okna načítať? Vrátené dáta zo servera po odoslaní formulára, alebo vrátené dáta zo servera z odkazu v klikacej mape?

Má to tedy nějaké řešení
Trebárs môžeš cez JS upraviť odkazy klikacej mapy - ako nejakú ochranu proti robotom.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: