Advertisement
Guest User

Bingoformulieren

a guest
Jun 19th, 2012
450
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 11.49 KB | None | 0 0
  1. <html>
  2.     <head>
  3.         <title>Bingoformulieren maken</title>      
  4.         <style type="text/css">
  5.             * {
  6.                 font-family: 'Arial';
  7.                 font-size: 13px;
  8.             }
  9.             h1 {
  10.                 font-size: 200%;
  11.                 font-weight: bold;
  12.             }
  13.             table.form tr td {
  14.                 text-align: center;
  15.                 vertical-align:middle;
  16.                 border-width: 0 1px 1px 0;
  17.                 border-style: solid;
  18.                 border-color: #000;
  19.                 margin: 0;
  20.                 padding: 3px;
  21.                 width: 4cm;
  22.                 height: 1cm;
  23.             }
  24.             td.main {
  25.                 text-align: left;
  26.                 vertical-align: top;
  27.                 border-width: 0;
  28.             }
  29.             a {
  30.                 color: #00f;
  31.             }
  32.         </style>
  33.        
  34.         <script type="text/javascript">
  35.             var noTexts = 5;
  36.             function addText() {
  37.                 var i;
  38.                 var texts = Array();
  39.                 var greek = Array();
  40.                 for (i=1;i<=noTexts;i++) {
  41.                     texts[i] = document.getElementById('text-'+i).value;
  42.                     greek[i] = document.getElementById('greek-'+i).checked;
  43.                 }
  44.                 noTexts++;
  45.                 document.getElementById("texts").innerHTML += '<tr><td>'+noTexts+'. </td><td><input type="text" name="text-'+noTexts+'" id="text-'+noTexts+'" tabindex="'+noTexts+'"/></td><td><input type="checkbox" name="greek-'+noTexts+'" id="greek-'+noTexts+'"/></td></tr>';
  46.             }
  47.            
  48.             function addTexts() {
  49.                 var n;
  50.                 var i = document.getElementById('newTexts').value;
  51.                 for (n=0;n<i;n++) {
  52.                     addText();
  53.                 }
  54.             }
  55.            
  56.             function checkForm() {
  57.                 var width = document.getElementById('width').value;
  58.                 var height = document.getElementById('height').value;
  59.                
  60.                 var i;
  61.                 var noUsedTexts = 0;
  62.                 for (i=1;i<=noTexts;i++) {
  63.                     if (document.getElementById('text-'+i).value!='') {
  64.                         noUsedTexts++;
  65.                     }
  66.                 }
  67.                
  68.                 if (noUsedTexts < width*height) {
  69.                     alert('Het aantal ingevulde teksten moet groter zijn dan het aantal velden van een formulier.');
  70.                     return false;
  71.                 }
  72.                
  73.                 return true;
  74.             }
  75.         </script>
  76.     </head>
  77.     <body>
  78.         <?php
  79.             if (!isset($_POST['send'])) {
  80.             ?>
  81.                 <h1>Bingoformulieren maken</h1>
  82.                 Welkom! Op deze website kunt u uw eigen bingoformulieren maken.<br>
  83.                 <ol>
  84.                     <li>Voeg mogelijke velden in (voeg velden toe met de knop onder de tekstjes)</li>
  85.                     <li>Kies de hoogte en breedte van de formulieren en geef het aantal formulieren op</li>
  86.                     <li>Met de knop "Maak formulieren" kunt u de formulieren laten genereren</li>
  87.                 </ol>
  88.                 Veel plezier en succes!<br><br>
  89.                 <a href="http://camilstaps.nl">Camil Staps</a><br>
  90.                 Bugs kunt u melden bij <a href="mailto:info@camilstaps.nl">info@camilstaps.nl</a>. Alvast bedankt!<br><br/>
  91.  
  92.                 <table><tr>
  93.                 <td class="main">
  94.                     <form onsubmit="return checkForm();" action="index.php" method="post">
  95.                         <b>Teksten in de velden</b>
  96.                         <table id="texts">
  97.                             <tr><th>#</th><th>Tekst</th><th>Grieks</th></tr>
  98.                             <tr><td>1. </td><td><input type="text" name="text-1" id="text-1" tabindex="1"/></td><td><input type="checkbox" name="greek-1" id="greek-1"/></td></tr>
  99.                             <tr><td>2. </td><td><input type="text" name="text-2" id="text-2" tabindex="2"/></td><td><input type="checkbox" name="greek-2" id="greek-2"/></td></tr>
  100.                             <tr><td>3. </td><td><input type="text" name="text-3" id="text-3" tabindex="3"/></td><td><input type="checkbox" name="greek-3" id="greek-3"/></td></tr>
  101.                             <tr><td>4. </td><td><input type="text" name="text-4" id="text-4" tabindex="4"/></td><td><input type="checkbox" name="greek-4" id="greek-4"/></td></tr>
  102.                             <tr><td>5. </td><td><input type="text" name="text-5" id="text-5" tabindex="5"/></td><td><input type="checkbox" name="greek-5" id="greek-5"/></td></tr>
  103.                         </table>
  104.                         <br/>
  105.                         Voeg velden toe: <input type="text" maxlength="2" style="width:40px;" value="1" id="newTexts"/> <button onclick="addTexts();" type="button">Ga</button><br/><br/>
  106.                         <b>Andere instellingen</b>
  107.                         <table>
  108.                             <tr><td>Breedte formulier: </td><td><input type="text" maxlength="2" style="width:40px;" name="width" id="width" value="5"/></td></tr>
  109.                             <tr><td>Hoogte formulier: </td><td><input type="text" maxlength="2" style="width:40px;" name="height" id="height" value="5"/></td></tr>
  110.                             <tr><td>Aantal formulieren: </td><td><input type="text" maxlength="3" style="width:40px;" name="count" id="count" value="30"/></td></tr>
  111.                         </table>
  112.                         <br/>
  113.                         <input type="submit" value="Maak formulieren" name="send"/>
  114.                     </form>
  115.                 </td>
  116.                 <td class="main" style="padding-left:100px;">
  117.                     Als u de optie 'Grieks' gebruikt, geldt de volgende omzetting:<br/>
  118.                     <ul style="list-style-type:none;padding-left:10px;">
  119.                         <li>a = alfa</li>
  120.                         <li>b = beta</li>
  121.                         <li>c = chi</li>
  122.                         <li>d = delta</li>
  123.                         <li>e = epsilon</li>
  124.                         <li>f = phi</li>
  125.                         <li>g = gamma</li>
  126.                         <li>h = eta</li>
  127.                         <li>i = iota</li>
  128.                         <li>j = phi</li>
  129.                         <li>k = kappa</li>
  130.                         <li>l = labda</li>
  131.                         <li>m = mu</li>
  132.                         <li>n = nu</li>
  133.                         <li>o = omikron</li>
  134.                         <li>p = pi</li>
  135.                         <li>q = theta</li>
  136.                         <li>r = rho</li>
  137.                         <li>s = sigma</li>
  138.                         <li>t = tau</li>
  139.                         <li>u = upsilon</li>
  140.                         <li>v = eind-sigma (voor aan het eind van een woord)</li>
  141.                         <li>w = omega</li>
  142.                         <li>x = xi</li>
  143.                         <li>y = psi</li>
  144.                         <li>z = zeta</li>
  145.                     </ul>
  146.                 </td>
  147.                 </tr></table>
  148.             <?php
  149.             } else {
  150.                 $p = $_POST;
  151.                
  152.                 $c = 0;
  153.                 $noUsedTexts = 0;
  154.                 while (isset($p['text-'.($c+1)])) {
  155.                     $c++;
  156.                     if ($p['text-'.$c]!='') {
  157.                         $noUsedTexts++;
  158.                         if (!isset($p['greek-'.$c])) {
  159.                             $texts[] = $p['text-'.$c];
  160.                         } else {
  161.                             $next = $p['text-'.$c];
  162.                            
  163.                             $next=str_replace('a','---01,',$next);
  164.                             $next=str_replace('b','---02,',$next);
  165.                             $next=str_replace('c','---03,',$next);
  166.                             $next=str_replace('d','---04,',$next);
  167.                             $next=str_replace('e','---05,',$next);
  168.                             $next=str_replace('f','---06,',$next);
  169.                             $next=str_replace('g','---07,',$next);
  170.                             $next=str_replace('h','---08,',$next);
  171.                             $next=str_replace('i','---09,',$next);
  172.                             $next=str_replace('j','---10,',$next);
  173.                             $next=str_replace('k','---11,',$next);
  174.                             $next=str_replace('l','---12,',$next);
  175.                             $next=str_replace('m','---13,',$next);
  176.                             $next=str_replace('n','---14,',$next);
  177.                             $next=str_replace('o','---15,',$next);
  178.                             $next=str_replace('p','---16,',$next);
  179.                             $next=str_replace('q','---17,',$next);
  180.                             $next=str_replace('r','---18,',$next);
  181.                             $next=str_replace('s','---19,',$next);
  182.                             $next=str_replace('t','---20,',$next);
  183.                             $next=str_replace('u','---21,',$next);
  184.                             $next=str_replace('v','---22,',$next);
  185.                             $next=str_replace('w','---23,',$next);
  186.                             $next=str_replace('x','---24,',$next);
  187.                             $next=str_replace('y','---25,',$next);
  188.                             $next=str_replace('z','---26,',$next);
  189.                            
  190.                             $next=str_replace('A','+++01,',$next);
  191.                             $next=str_replace('B','+++02,',$next);
  192.                             $next=str_replace('C','+++03,',$next);
  193.                             $next=str_replace('D','+++04,',$next);
  194.                             $next=str_replace('E','+++05,',$next);
  195.                             $next=str_replace('F','+++06,',$next);
  196.                             $next=str_replace('G','+++07,',$next);
  197.                             $next=str_replace('H','+++08,',$next);
  198.                             $next=str_replace('I','+++09,',$next);
  199.                             $next=str_replace('J','+++10,',$next);
  200.                             $next=str_replace('K','+++11,',$next);
  201.                             $next=str_replace('L','+++12,',$next);
  202.                             $next=str_replace('M','+++13,',$next);
  203.                             $next=str_replace('N','+++14,',$next);
  204.                             $next=str_replace('O','+++15,',$next);
  205.                             $next=str_replace('P','+++16,',$next);
  206.                             $next=str_replace('Q','+++17,',$next);
  207.                             $next=str_replace('R','+++18,',$next);
  208.                             $next=str_replace('S','+++19,',$next);
  209.                             $next=str_replace('T','+++20,',$next);
  210.                             $next=str_replace('U','+++21,',$next);
  211.                             $next=str_replace('V','+++22,',$next);
  212.                             $next=str_replace('W','+++23,',$next);
  213.                             $next=str_replace('X','+++24,',$next);
  214.                             $next=str_replace('Y','+++25,',$next);
  215.                             $next=str_replace('Z','+++26,',$next);
  216.                            
  217.                             $next=str_replace('---01,','&alpha;',$next);
  218.                             $next=str_replace('---02,','&beta;',$next);
  219.                             $next=str_replace('---03,','&chi;',$next);
  220.                             $next=str_replace('---04,','&delta;',$next);
  221.                             $next=str_replace('---05,','&epsilon;',$next);
  222.                             $next=str_replace('---06,','&phi;',$next);
  223.                             $next=str_replace('---07,','&gamma;',$next);
  224.                             $next=str_replace('---08,','&eta;',$next);
  225.                             $next=str_replace('---09,','&iota;',$next);
  226.                             $next=str_replace('---10,','&phi;',$next);
  227.                             $next=str_replace('---11,','&kappa;',$next);
  228.                             $next=str_replace('---12,','&lambda;',$next);
  229.                             $next=str_replace('---13,','&mu;',$next);
  230.                             $next=str_replace('---14,','&nu;',$next);
  231.                             $next=str_replace('---15,','&omicron;',$next);
  232.                             $next=str_replace('---16,','&pi;',$next);
  233.                             $next=str_replace('---17,','&theta;',$next);
  234.                             $next=str_replace('---18,','&rho;',$next);
  235.                             $next=str_replace('---19,','&sigma;',$next);
  236.                             $next=str_replace('---20,','&tau;',$next);
  237.                             $next=str_replace('---21,','&upsilon;',$next);
  238.                             $next=str_replace('---22,','&#x3db;',$next);
  239.                             $next=str_replace('---23,','&omega;',$next);
  240.                             $next=str_replace('---24,','&xi;',$next);
  241.                             $next=str_replace('---25,','&psi;',$next);
  242.                             $next=str_replace('---26,','&zeta;',$next);
  243.                            
  244.                             $next=str_replace('+++01,','&Alpha;',$next);
  245.                             $next=str_replace('+++02,','&Beta;',$next);
  246.                             $next=str_replace('+++03,','&Chi;',$next);
  247.                             $next=str_replace('+++04,','&Delta;',$next);
  248.                             $next=str_replace('+++05,','&Epsilon;',$next);
  249.                             $next=str_replace('+++06,','&Phi;',$next);
  250.                             $next=str_replace('+++07,','&Gamma;',$next);
  251.                             $next=str_replace('+++08,','&Eta;',$next);
  252.                             $next=str_replace('+++09,','&Iota;',$next);
  253.                             $next=str_replace('+++10,','&Phi;',$next);
  254.                             $next=str_replace('+++11,','&Kappa;',$next);
  255.                             $next=str_replace('+++12,','&Lambda;',$next);
  256.                             $next=str_replace('+++13,','&Mu;',$next);
  257.                             $next=str_replace('+++14,','&Nu;',$next);
  258.                             $next=str_replace('+++15,','&Omicron;',$next);
  259.                             $next=str_replace('+++16,','&Pi;',$next);
  260.                             $next=str_replace('+++17,','&Theta;',$next);
  261.                             $next=str_replace('+++18,','&Rho;',$next);
  262.                             $next=str_replace('+++19,','&Sigma;',$next);
  263.                             $next=str_replace('+++20,','&Tau;',$next);
  264.                             $next=str_replace('+++21,','&Upsilon;',$next);
  265.                             $next=str_replace('+++22,','&#x3da;',$next);
  266.                             $next=str_replace('+++23,','&Omega;',$next);
  267.                             $next=str_replace('+++24,','&Xi;',$next);
  268.                             $next=str_replace('+++25,','&Psi;',$next);
  269.                             $next=str_replace('+++26,','&Zeta;',$next);
  270.                            
  271.                             $texts[] = $next;
  272.                         }
  273.                     }
  274.                 }
  275.                 #echo $noUsedTexts;
  276.                
  277.                 $width = $p['width'];
  278.                 $height = $p['height'];
  279.                 $total = $width*$height;
  280.                 $count = $p['count'];
  281.                
  282.                 for ($i=0;$i<$count;$i++) {
  283.                     $chosen = array();
  284.                     for ($n=0;$n<$total;$n++) {
  285.                         do {
  286.                             $no = rand(1,$noUsedTexts);
  287.                         } while (in_array($no,$chosen));
  288.                         $chosen[] = $no;
  289.                     }
  290.                
  291.                     echo '<table class="form" style="border-style:solid;border-width:1px 0 0 1px;" cellspacing="0" cellpadding="0">';
  292.                     for ($h=0;$h<$height;$h++) {
  293.                         echo '<tr>';
  294.                         for ($w=0;$w<$width;$w++) {
  295.                             echo '<td>'.$texts[$chosen[$h*$width+$w]-1].'</td>';
  296.                         }
  297.                         echo '</tr>';
  298.                     }
  299.                     echo '<tr><td colspan="'.$width.'" style="font-size:80%;height:auto;">Bingoformulieren gemaakt door Camil Staps. <a href="http://camilstaps.nl">www.camilstaps.nl</a></td></tr></table><br/><br/>';
  300.                 }
  301.             }
  302.         ?>
  303.     </body>
  304. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement