Warning
This page is located in archive. Go to the latest version of this course pages. Go the latest version of this page.

Ajax a PHP

1.

  1. Budeme kontrolovat, jestli zadané jméno není na wordlistu.
  2. Po události “blur” na poli pro jméno stáhneme požadavkem soupis jmen a ověříme, že to zadané na něm není.

Prohlédněte si zadání.

2.

Cílem cvičení je vytvořit funkční demo našeptávače: při psaní do textového políčka se zobrazují návrhy doplnění, které (na základě zadaného textu) vybírá serverová strana.

Architektura řešení

Aplikace sestává ze dvou komponent:

  • serverová komponenta filtruje slovník dle zadaného výrazu a vrací našeptávaná slova,
  • klientská komponenta při interakci se vstupním polem posílá dotazy na server a zobrazuje odpovědi.

Úkoly

  1. doplnit chybějící kód v client/script.js
  2. naimplementovat serverovou stranu

Poznámky

  1. třetí parametr pro XMLHttpRequest::open určuje asynchronnost požadavku
  2. parametr pro XMLHttpRequest::send obsahuje POST data
  3. onreadystatechange callback se vykonává v kontextu požadavku (this instanceof XMLHttpRequest)
  4. data přenášejte v triviálním textovém formátu - položky odděleny znakem nové řádky

Další možnosti vylepšení

  • Posílat dotaz až po timeoutu (tj. ne po každém stisku klávesy)
  • Data nenačítat ze souboru, ale z databáze
  • Reagovat na vložení textu myší
  • Našeptávané termíny nejen zobrazovat, ale umožnit též jejich výběr (myší, klávesnicí)
  • Vylepšit transportní formát o např. zvýrazňování

Příprava

Řešení

Odkazy

courses/b6b39zwa/tutorials/11/start.txt · Last modified: 2018/10/01 15:02 (external edit)