UNPKG

magicsuggest

Version:

MagicSuggest is a multiple selection auto-suggest input box for Bootstrap 3.

168 lines (148 loc) 7.97 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content="MagicSuggest is a multiple selection combo box built for bootstrap themes"> <meta name="author" content="Nicolas Bize"> <link rel="shortcut icon" href="http://nicolasbize.com/magicsuggest/assets/ico/favicon.ico"> <title>MagicSuggest - Tutorial</title> <link href="lib/bootstrap/css/bootstrap.min.css" rel="stylesheet"> <link href="assets/css/custom.css" rel="stylesheet"> <link href="assets/lib/highlightjs/styles/default.css" rel="stylesheet"> <script type="text/javascript" src="assets/lib/highlightjs/highlight.pack.js"></script> <script>hljs.initHighlightingOnLoad();</script> <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script> <![endif]--> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script src="lib/bootstrap/js/bootstrap.min.js"></script> </head> <body> <a id="forkme_banner" href="https://github.com/nicolasbize/magicsuggest">View on GitHub</a> <div class="site-wrapper"> <div class="site-wrapper-inner"> <div class="cover-container"> <div class="masthead clearfix"> <div class="inner"> <h3 class="masthead-brand">MagicSuggest</h3> <ul class="nav masthead-nav"> <li><a href="index.html">Home</a></li> <li><a href="examples.html">Examples</a></li> <li><a href="doc.html">Documentation</a></li> <li class="active"><a href="tutorial.html">Tutorial</a></li> </ul> </div> </div> </div> <div class="tutorial"> <div class="container"> <h1>Tutorial Part Two</h1> <p>Adding and displaying some data.</p> <div class="row"> <div class="col-md-12"> <h3>Data and icons</h3> <p>To keep things simple, we will use the world countries data. First, we simply downloaded the flag icons from the wonderful <a href="http://www.famfamfam.com/lab/icons/flags/">famfamfam</a> library. The nice thing about it is that the icon names match the <a href="http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2">ISO 3166-1 norm</a>. All icons are placed into the <code>img/flags</code> folder which now contains a bunch of PNGs.</p> <p>Now we need to provide some data into our database. Using <a href="http://peric.github.io/GetCountries/">Get Countries</a>, we can generate a nice SQL script to populate our MySQL database:</p> <img src="tutorial/img/getcountries.jpg"/> <p>We end up with a nice <a href="tutorial/2/create-countries.sql">create-countries.sql</a> SQL script that we can apply to our database.</p> <h3>Displaying our Data</h3> <h3><code>index.php</code></h3> <p>We added a query and display a checkbox in our form for each country</p> <pre><code>&lt;!DOCTYPE html&gt; &lt;html lang=&quot;en&quot;&gt; &lt;head&gt; &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=ISO-8859-1&quot; /&gt; &lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=edge&quot;&gt; &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1&quot;&gt; &lt;title&gt;MagicSuggest Tutorial&lt;/title&gt; &lt;link href=&quot;lib/bootstrap/css/bootstrap.min.css&quot; rel=&quot;stylesheet&quot;&gt; &lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;css/style.css&quot;&gt; &lt;/head&gt; &lt;body&gt; &lt;div class=&quot;container&quot;&gt; &lt;h1&gt;Hello, world!&lt;/h1&gt; &lt;form action=&quot;subscribe.php&quot; method=&quot;post&quot;&gt; &lt;div class=&quot;form-group&quot;&gt; &lt;label&gt;First name&lt;/label&gt; &lt;input class=&quot;form-control&quot; name=&quot;firstname&quot;/&gt; &lt;/div&gt; &lt;div class=&quot;form-group&quot;&gt; &lt;label&gt;Last name&lt;/label&gt; &lt;input class=&quot;form-control&quot; name=&quot;lastname&quot;/&gt; &lt;/div&gt; &lt;?php $mysql = new mysqli('localhost','root','root','magicsuggest', 8889); $result = $mysql-&gt;query(&quot;select * from countries&quot;); while($row = $result-&gt;fetch_array(MYSQL_ASSOC)) { ?&gt; &lt;div class=&quot;checkbox&quot;&gt; &lt;label&gt; &lt;input type=&quot;checkbox&quot; name=&quot;countries[]&quot; value=&quot;&lt;?php echo $row['idCountry']?&gt;&quot;&gt; &lt;img src=&quot;&lt;?php echo 'img/flags/' . strtolower($row['countryCode']) . '.png' ?&gt;&quot; /&gt; &lt;?php echo $row['countryName'] .' ' . $row['population'] . ' ' . $row['capital'] . ' ' . $row['continentName']; ?&gt; &lt;/label&gt; &lt;/div&gt; &lt;?php } $result-&gt;close(); $mysql-&gt;close(); ?&gt; &lt;input type=&quot;submit&quot; class=&quot;btn btn-success pull-right&quot; value=&quot;Submit&quot;/&gt; &lt;/form&gt; &lt;/div&gt; &lt;!-- jQuery (necessary for Bootstrap's JavaScript plugins) --&gt; &lt;script src=&quot;lib/jquery/jquery-1.11.1.min.js&quot;&gt;&lt;/script&gt; &lt;!-- Include all compiled plugins (below), or include individual files as needed --&gt; &lt;script src=&quot;lib/bootstrap/js/bootstrap.min.js&quot;&gt;&lt;/script&gt; &lt;/body&gt; &lt;/html&gt;</code></pre> <h3><code>subscribe.php</code></h3> <p>We added the results from the selected countries</p> <pre><code>&lt;?php $firstname = $_POST['firstname'] || ''; $lastname = $_POST['lastname'] || ''; $countries = isset($_POST['countries']) ? $_POST['countries'] : array(); $data = array('firstname' =&gt; $_POST['firstname'], 'lastname' =&gt; $_POST['lastname']); ?&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;p&gt;Hello &lt;?php echo $data['firstname']; ?&gt; &lt;?php echo $data['lastname'] ?&gt;! &lt;br/&gt; You have selected: &lt;?php print_r($countries) ?&gt;&lt;/p&gt; &lt;/body&gt; &lt;/html&gt; </code></pre> <div class="well"> <h4>Wrapping up...</h4> <a href="tutorial/2.html">View the results</a><br/> <a href="tutorial/2/2.zip">Download the files for the tutorial</a><br/> <br/> <a href="tutorial-3.php.html">Go to part 3</a><br/> </div> </div> </div> </div> </div> <div style="height:200px"></div> </div> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-5470193-5']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script> </body> </html>