aboutsummaryrefslogtreecommitdiff
path: root/ajax/form_suggestions
diff options
context:
space:
mode:
Diffstat (limited to 'ajax/form_suggestions')
-rw-r--r--ajax/form_suggestions/clienthint.js45
-rw-r--r--ajax/form_suggestions/gethint.php71
-rw-r--r--ajax/form_suggestions/index.htm14
3 files changed, 130 insertions, 0 deletions
diff --git a/ajax/form_suggestions/clienthint.js b/ajax/form_suggestions/clienthint.js
new file mode 100644
index 0000000..408c220
--- /dev/null
+++ b/ajax/form_suggestions/clienthint.js
@@ -0,0 +1,45 @@
+var xmlhttp
+
+function showHint(str)
+{
+if (str.length==0)
+ {
+ document.getElementById("txtHint").innerHTML="";
+ return;
+ }
+xmlhttp=GetXmlHttpObject();
+if (xmlhttp==null)
+ {
+ alert ("Your browser does not support XMLHTTP!");
+ return;
+ }
+var url="gethint.php";
+url=url+"?q="+str;
+url=url+"&sid="+Math.random();
+xmlhttp.onreadystatechange=stateChanged;
+xmlhttp.open("GET",url,true);
+xmlhttp.send(null);
+}
+
+function stateChanged()
+{
+if (xmlhttp.readyState==4)
+ {
+ document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
+ }
+}
+
+function GetXmlHttpObject()
+{
+if (window.XMLHttpRequest)
+ {
+ // code for IE7+, Firefox, Chrome, Opera, Safari
+ return new XMLHttpRequest();
+ }
+if (window.ActiveXObject)
+ {
+ // code for IE6, IE5
+ return new ActiveXObject("Microsoft.XMLHTTP");
+ }
+return null;
+} \ No newline at end of file
diff --git a/ajax/form_suggestions/gethint.php b/ajax/form_suggestions/gethint.php
new file mode 100644
index 0000000..8cb7379
--- /dev/null
+++ b/ajax/form_suggestions/gethint.php
@@ -0,0 +1,71 @@
+<?php
+// Fill up array with names
+$a[]="Anna";
+$a[]="Brittany";
+$a[]="Cinderella";
+$a[]="Diana";
+$a[]="Eva";
+$a[]="Evan";
+$a[]="Fiona";
+$a[]="Gunda";
+$a[]="Hege";
+$a[]="Inga";
+$a[]="Johanna";
+$a[]="Kitty";
+$a[]="Linda";
+$a[]="Nina";
+$a[]="Ophelia";
+$a[]="Petunia";
+$a[]="Amanda";
+$a[]="Raquel";
+$a[]="Cindy";
+$a[]="Doris";
+$a[]="Eve";
+$a[]="Evita";
+$a[]="Sunniva";
+$a[]="Tove";
+$a[]="Unni";
+$a[]="Violet";
+$a[]="Liza";
+$a[]="Elizabeth";
+$a[]="Ellen";
+$a[]="Wenche";
+$a[]="Vicky";
+
+//get the q parameter from URL
+$q=$_GET["q"];
+
+//lookup all hints from array if length of q>0
+if (strlen($q) > 0)
+ {
+ $hint="";
+ for($i=0; $i<count($a); $i++)
+ {
+ if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q))))
+ {
+ if ($hint=="")
+ {
+ $hint=$a[$i];
+ }
+ else
+ {
+ $hint=$hint." , ".$a[$i];
+ }
+ }
+ }
+ }
+
+// Set output to "no suggestion" if no hint were found
+// or to the correct values
+if ($hint == "")
+ {
+ $response="no suggestion";
+ }
+else
+ {
+ $response=$hint;
+ }
+
+//output the response
+echo $response;
+?> \ No newline at end of file
diff --git a/ajax/form_suggestions/index.htm b/ajax/form_suggestions/index.htm
new file mode 100644
index 0000000..c2fc742
--- /dev/null
+++ b/ajax/form_suggestions/index.htm
@@ -0,0 +1,14 @@
+<html>
+<head>
+<script src="clienthint.js"></script>
+</head>
+<body>
+
+<form>
+First Name: <input type="text" id="txt1" onkeyup="showHint(this.value)" />
+</form>
+
+<p>Suggestions: <span id="txtHint"></span></p>
+
+</body>
+</html> \ No newline at end of file