<?php
/**
 * Nonogramas - nonogramas1b.php
 * 
 * @author    Bartolomé Sintes Marco <bartolome.sintes+mclibre@gmail.com>
 * @copyright 2008 Bartolomé Sintes Marco
 * @license   http://www.gnu.org/licenses/agpl.txt AGPL 3 or later
 * @version   2008-02-19
 * @link      http://www.mclibre.org
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU Affero General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU Affero General Public License for more details.
 *
 *  You should have received a copy of the GNU Affero General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

function limpia($var)
{ 
    return trim(strip_tags($var));
}

function recoge($var)
{ 
    return (isset($_REQUEST[$var])) ? limpia($_REQUEST[$var]) : '';
}

function recogeMatriz($var)
{
    $tmp = array();
    if (isset($_REQUEST[$var])&&is_array($_REQUEST[$var])) {
        foreach ($_REQUEST[$var] as $indice => $valor) {
            if (is_array($valor)) {
                foreach ($valor as $indice2 => $valor2) {
                    $tmp[limpia($indice)][limpia($indice2)] = limpia ($valor2);
                }
            }
        }
    }
    return $tmp;
}

$solucion = array (
    1 => array(1=>'on', 2=>'on'),
    2 => array(1=>'on'),
    3 => array(1=>'on', 2=>'on', 3=>'on'),
    4 => array(3=>'on', 4=>'on', 5=>'on'),
    5 => array(1=>'on', 2=>'on', 4=>'on', 5=>'on')); 

$respuesta = recogeMatriz('nono');
$respuestaOk = TRUE;

// print "<pre>"; print_r($respuesta); print "</pre>"; 
// print "<pre>"; print_r($solucion); print "</pre>";

print "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?"."> 
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"
       \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\">
<head>
  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" />
  <title>Nonogramas (Resultado). Exámenes. PHP. Bartolomé
  Sintes Marco</title>
  <link href=\"mclibre_php_soluciones.css\" rel=\"stylesheet\" type=\"text/css\" 
  title=\"Color\" />
</head>
<body>

<h1>Nonogramas (Resultado)</h1>\n";

if (count($respuesta, COUNT_RECURSIVE)!=count($solucion, COUNT_RECURSIVE)) {
    $respuestaOk = FALSE;
}

foreach ($solucion as $i => $fila) {
    foreach ($fila as $j => $casilla) {
        if (!isset($respuesta[$i][$j])) {
            $respuestaOk = FALSE;
        }
    }
}

if ($respuestaOk) {
    print "<p>¡Enhorabuena! Has resuelto correctamente el nonograma.</p>\n";
} else {
    print "<p>Lo siento, pero no has resuelto correctamente el nonograma.</p>\n";
}    
print "<p><a href=\"nonogramas_1a.php\">Volver a empezar</a></p>

<address>
  Esta página forma parte del curso \"Páginas web con PHP\" disponible en <a
  href=\"http://www.mclibre.org/\">http://www.mclibre.org</a><br />
  Autor: Bartolomé Sintes Marco<br />
  Última modificación de esta página: 19 de febrero de 2008 
</address>
<p class=\"licencia\">El programa PHP que genera esta página está bajo 
<a rel=\"license\" href=\"http://www.gnu.org/licenses/agpl.txt\">licencia AGPL 3 o
posterior</a>.</p>
</body>
</html>";
?>