Exemplo n.º 1
0
function process_file($file, array &$errors = array())
{
    if ($file['error'] != 0) {
        return "Er is een fout opgetreden bij het uploaden.";
    }
    $reader = new KnowledgeBaseReader();
    $errors = $reader->lint($file['tmp_name']);
    $unique_name = sha1(microtime() . uniqid('kb', true)) . '.xml';
    if (count($errors) > 0) {
        return false;
    }
    if (!move_uploaded_file($file['tmp_name'], '../knowledgebases/' . $unique_name)) {
        $errors[] = "De knowledge-base kon niet worden opgeslagen op de server.";
        return false;
    }
    return $unique_name;
}
Exemplo n.º 2
0
function process_file($file)
{
    if ($file['error'] != 0) {
        return "Er is een fout opgetreden bij het uploaden.";
    }
    $reader = new KnowledgeBaseReader();
    $errors = $reader->lint($file['tmp_name']);
    if (!preg_match('/^[a-zA-Z0-9_\\-\\.]+\\.xml$/i', $file['name'])) {
        return "De bestandsnaam bevat karakters die niet goed verwerkt kunnen worden.";
    }
    if (count($errors) > 0) {
        $out = "De volgende fouten zijn gevonden in de knowledge-base:\n<ul>";
        foreach ($errors as $error) {
            $out .= sprintf("\n<li title=\"%s\">%s</li>\n", htmlspecialchars($error->file . ':' . $error->line, ENT_QUOTES, 'utf-8'), $error->message);
        }
        return $out .= "</ul>\n";
    }
    if (!move_uploaded_file($file['tmp_name'], '../knowledgebases/' . $file['name'])) {
        return "De knowledge-base kon niet worden opgeslagen op de server.";
    }
    return "De knowlegde-base is opgeslagen :)";
}
Exemplo n.º 3
0
<?php

require '../util.php';
require '../solver.php';
require '../reader.php';
$reader = new KnowledgeBaseReader();
$out = $reader->lint('kb_empty.xml');
assert('count($out) === 0');