Kezdőoldal » Számítástechnika » Weblapkészítés » Hogyan lehet készíteni ilyet?

Hogyan lehet készíteni ilyet?

Figyelt kérdés

Olyat szeretnék csinálni, hogy van egy input és ha az inputba írnak akkor minden egyes karakter beírásánál lefut egy javascript funkció.

Egy olyan regisztráció rendszerhez kellene aminél nem kell mindig ráfrissíteni az oldalra ahhoz, hogy megnézze foglalt-e a felhasználónév.

Ezt, hogy lehetne megoldani?

Én úgy képzeltem el, hogy az input-ra rátenni egy timert ami minden másodpercnél kikéri az inputba lévő szöveget majd a szöveget lefuttatni mysql-ban, hogy talál e ilyen felhasználónevet de szerintem van ettől jobb megoldás is mint, hogy lefut egy timer másodpercenként.



2017. aug. 16. 14:01
 1/8 anonim ***** válasza:
40%

Teljesen szar ötlet.

Egyrészt a karakerek beírása meg a másodpercenkénti frissítés semmilyen szinkronban nincs egymással, másrészt teljesen felesleges minden másodpercben lekérdezni a szervert és az adatbázist.

Amikor elhagyja a usernév input mezőt, bőven elég akkor ellenőrizni.

2017. aug. 16. 14:30
Hasznos számodra ez a válasz?
 2/8 A kérdező kommentje:

És esetleg van valami normálisabb mód rá?

Ami teljes szinkronban van a beütött karakterekkel és a lekérdezéssel mert az email mezőt meglehetne attól csinálni ott nem fut le annyi lekérdezés.

2017. aug. 16. 14:56
 3/8 anonim ***** válasza:
100%
Valami hasonló, csak ajax kéréssel: [link]
2017. aug. 16. 15:20
Hasznos számodra ez a válasz?
 4/8 sharkxxx ***** válasza:
100%

<p>

<input type="text" value="" name="username" onkeyup="doTextKeyUp(this);">

<span id="outputMessage"></span>

</p>

<script>

var prevValue = "";

function doTextKeyUp(a) {

    if (a.value.length > 0) {

        if (prevValue != a.value) {

            prevValue != a.value;

            if (isUsernameExists(a.value)) {

                document.getElementById("outputMessage").innerHTML = "Username already exists.";

            } else {

                document.getElementById("outputMessage").innerHTML = "Username is available.";

            }

        }

    } else {

        document.getElementById("outputMessage").innerHTML = "";

    }

}

// Returns true if username already exists.

function isUsernameExists(username) {

    // Ide jön az AJAX lekérdezés

    return Math.round(Math.random()); // Teszt

}

</script>

2017. aug. 16. 15:51
Hasznos számodra ez a válasz?
 5/8 anonim ***** válasza:
100%
Van Javascriptben onkeydown, onkeyup, onchange és onblur esemény, használd ezeket.
2017. aug. 16. 20:20
Hasznos számodra ez a válasz?
 6/8 anonim ***** válasza:
45%

Fölösleges karakrerenként ellenőrizni, nem tudom másképp elmondani.

Csak a szervert terheled vele nagyon fölöslegesen, bármifelé hasznos funkcionalitás nélkül.

2017. aug. 16. 21:04
Hasznos számodra ez a válasz?
 7/8 anonim ***** válasza:
89%

#6

Nem értem, miért jársz fel erre az oldalra.

A kérdező azt szeretné, hogy a kérdésére válaszoljanak, ez az egész weboldal lényege. Nem tiltakozást és ellenzést. Ha a válaszodban megjegyzed, hogy szerinted ez miért nem előnyös, rendben van, de a kérdező már másodjára adja a tudomásodra, hogy ő bizony ezt szeretné megoldani. Ne ragaszkodj ilyen agresszíven a saját véleményedhez. Nem a te dolgod. Ha nem akarsz a kérdésre válaszolni, ne kommentelj. (Mert, amit írsz, nem válasz, hanem komment.)

Ráadásul ezt bármi empátia nélkül teszed. Valószínűleg ez okozza a viszonylag alacsony értékelésed.

Bocsánat az off-ért, de már sokadjára veszem észre, hogy a kérdezőkkel kötekedsz. Ha zavar, hogy az emberek máshogy is megoldhatnak 1-1 dolgot, ne használd ezt az oldalt.


Egyébként, sok helyen találkoztam már ilyen regisztrációs rendszerrel és semmi probléma nem volt egyikkel sem. Valóban igaz, hogy ha nem csak a boxból való kikattintás esetén frissül az oldal, hanem karakter beírása esetén, gyorsabban és felhasználóbarátabb módon lehet például megfelelő felhasználónevet találni. Sok helyzetben segített volna már...

2017. aug. 17. 00:59
Hasznos számodra ez a válasz?
 8/8 anonim ***** válasza:
69%
Használj prepare-t backend oldalon, az talán annyira nem pörgeti az adatbázist.
2017. aug. 20. 11:01
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!