Autor Zpráva
spacek145
Profil
Dobrý den, mám následující formular
<form name="statistiky" action="statistiky.php" onSubmit="return kontrola();" method="get"><b>Nick:</b> <input type="text" name="nick"><input type="submit"></form>
Potřeboval bych sestrojit JS, který by už při vypnovani pole zjistoval zda-li se promenna nick a b_nick rovnaji. A jeste pred odeslanim pod formem aby se ukazal text Nick OK nebo Spatny nick.. Jen aby se tam text objevil bez klikani.. Pokud by se nick rovnal promenne, tak by se formular dal odeslal pomoci funkce get...
Jak na to?

PS: neco podobneho jako tady: https://www.gopay.cz/registrace-gopay-kasicka, akorat ne s tema bublinama le proste s obrazkem nebo textem
Pako
Profil *
dopln si tam este:
<span id='nick-test'></span> a id inputu. pre popis k inputu sa pouziva <label>

var b_nick = 'Meno';
var testNicku = document.getElementById('nick-test');
var nickName = document.getElementById('id-inputu');
nickName.onkeyup = kontrola;
function kontrola() {
  if (nickName.value === b_nick) {
    testNicku.innerHTML = 'Nick OK';
    return true;
  }
  else {
    testNicku.innerHTML = 'Spatny nick';
  }
  return false;
}
spacek145
Profil
to mužu vložít místo té kontroly, že?

Mám to takhle:
<?
$b_nick = "Meno";
?>
<form name="statistiky" onSubmit="return kontrola();" method="get"><b>Nick:</b> <input type="text" id="nick-test" name="nick"><input type="submit"></form>
<span id='nick-test'></span>
<script type="text/javascript">
function kontrola()
var b_nick = 'Meno';
var testNicku = document.getElementById('nick-test');
var nickName = document.getElementById('id-inputu');
nickName.onkeyup = kontrola;
function kontrola() {
  if (nickName.value === b_nick) {
    testNicku.innerHTML = 'Nick OK';
    return true;
  }
  else {
    testNicku.innerHTML = 'Spatny nick';
  }
  return false;
}
</script>

Ale nějak to nejde...
Pako
Profil *
spacek145:
v 4. riadku treba zmenit id inputu kam uzivatel zadava nick na id='id-inputu'
spacek145
Profil
<?
$b_nick = "Meno";
?>
<form name="statistiky" onSubmit="return kontrola();" method="get"><b>Nick:</b> <input type="text" id="id-inputu" name="nick"><input type="submit"></form>
<span id='nick-test'></span>
<script type="text/javascript">
function kontrola()
var b_nick = 'Meno';
var testNicku = document.getElementById('nick-test');
var nickName = document.getElementById('id-inputu');
nickName.onkeyup = kontrola;
function kontrola() {
  if (nickName.value === b_nick) {
    testNicku.innerHTML = 'Nick OK';
    return true;
  }
  else {
    testNicku.innerHTML = 'Spatny nick';
  }
  return false;
}

Stejne to nejde. At tam vlozim jakoukoliv hodnotu, nic to pod to pred odelsanim nevypise :( Co je tam za problem?
Neni to tim, ze ten script se vyvolava onsumbit?
Pako
Profil *
vcera som si to nevsimol, ale aby ti to fungovalo, musis mat aspon tieto dva riadky mimo funkcie kontrola():
var nickName = document.getElementById('id-inputu');
nickName.onkeyup = kontrola;
spacek145
Profil
<script type="text/javascript">
var nickName = document.getElementById('id-inputu');
nickName.onkeyup = kontrola;
</script>
<?
$b_nick = "Meno";
?>
<form name="statistiky" onSubmit="return kontrola();" method="get"><label><b>Nick:</b> </label><input type="text" id="id-inputu" name="nick"><input type="submit"></form>
<span id='nick-test'></span>
<script type="text/javascript">
function kontrola()
var b_nick = 'Meno';
var testNicku = document.getElementById('nick-test');
function kontrola() {
  if (nickName.value === b_nick) {
    testNicku.innerHTML = 'Nick OK';
    return true;
  }
  else {
    testNicku.innerHTML = 'Spatny nick';
  }
  return false;
}
</script>

Takhle mi to taky nejde :( Prominte za nekonecne dotazy, ale furt mi to nejde zprovoznit...
Pako
Profil *
len si to cele skopiruj tak ako to je ;)
<?php
$b_nick = "Meno";
?>

<form name="statistiky" onSubmit="return kontrola();" method="get"><label><b>Nick:</b> </label><input type="text" id="id-inputu" name="nick"><input type="submit"></form>
<span id='nick-test'></span>

<script type="text/javascript">

var nickName = document.getElementById('id-inputu');
nickName.onkeyup = kontrola;
var b_nick = 'Meno';
var testNicku = document.getElementById('nick-test');

function kontrola() {
  if (nickName.value === b_nick) {
    testNicku.innerHTML = 'Nick OK';
    return true;
  }
  else {
    testNicku.innerHTML = 'Spatny nick';
  }
  return false;
}
</script>

ak chces, aby funckia kontrola porovnavala uzivatelov vstup s premennou, ktoru dodas cez php, namiesto riadku
var b_nick = 'Meno';
si vloz:
var b_nick = '<?php echo $b_nick; ?>';
spacek145
Profil
Děkuji a ještě jeden maličký dotaz. Potřebuju ještě value z inputu - zlvášť (to co tam někdo napíše) převést zvlášť do PHP proměnné $v_name. A bude to vše.
Dík
spacek145
Profil
Nebo s tímto dotazem mám jít spíše do PHP sekce?
user243
Profil
to je jen zpracování formuláře php-kem, kde si podle metody odesílání (v tvém případě GET) a jména inputu (nick) taháš jednotlivé hodnoty;

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: