Jacek Kowalski
2013-05-17 6cba3f7a45bef8753536a47c1d282dcdcdfde68f
Poprawki w systemie inwentaryzacji - dodanie m.in. brakującego require()
3 files modified
113 ■■■■■ changed files
includes/config.php 2 ●●● patch | view | raw | blame | history
inwentaryzacja/make.php 109 ●●●●● patch | view | raw | blame | history
inwentaryzacja/save.php 2 ●●●●● patch | view | raw | blame | history
includes/config.php
@@ -16,4 +16,4 @@
    // Klucz API LibraryThing
    static $lt_api = '';
}
?>
?>
inwentaryzacja/make.php
@@ -1,63 +1,71 @@
<?php
$title = 'Inwentaryzacja - rozpoczęcie';
include('design/top.php');
include('../includes/config.php');
include('../includes/db2.php');
$fields = array('tytul', 'autor', 'miejsce', 'rok', 'wydawnictwo');
require('../includes/config.php');
require('../includes/PDOO.php');
$data = sql::query('SELECT * FROM `ksiazki` WHERE `wycofana`=\'0\' ORDER BY `regal` ASC, `polka` ASC, `rzad` ASC');
try {
    $fields = array('tytul', 'autor', 'miejsce', 'rok', 'wydawnictwo');
$fp = fopen('list.xml', 'w');
fwrite($fp, '<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE inwentaryzacja [
<!ENTITY % quot "&#34;">
<!ENTITY % amp "&#38;">
<!ENTITY % lt "&#60;">
<!ENTITY % gt "&#62;">
<!ELEMENT inwentaryzacja (lokalizacja)*>
<!ELEMENT lokalizacja (ksiazka)*>
<!ATTLIST lokalizacja
    id    ID    #IMPLIED
    regal    CDATA    #IMPLIED
    polka    CDATA    #IMPLIED
    rzad    CDATA    #IMPLIED>
<!ELEMENT ksiazka (tytul | autor | miejsce | rok | wydawnictwo)*>
<!ATTLIST ksiazka
    id    ID    #IMPLIED
    status    CDATA    #IMPLIED>
<!ELEMENT tytul (#PCDATA)>
<!ELEMENT autor (#PCDATA)>
<!ELEMENT miejsce (#PCDATA)>
<!ELEMENT rok (#PCDATA)>
<!ELEMENT wydawnictwo (#PCDATA)>
]>
<inwentaryzacja>
');
    $PDO = PDOO::Singleton();
$lastplace = NULL;
    $st = $PDO->query('SELECT * FROM `ksiazki` WHERE `wycofana`=\'0\' ORDER BY `regal` ASC, `polka` ASC, `rzad` ASC');
while( ($entry = sql::fetchone($data)) !== FALSE ) {
    if($lastplace != $entry['regal'].'/'.$entry['polka'].'/'.$entry['rzad']) {
        if($lastplace !== NULL) {
            fwrite($fp, '</lokalizacja>'."\n");
    $fp = fopen('list.xml', 'w');
    if($fp === FALSE) {
        throw new Exception('Otwarcie pliku inwentaryzacja/list.xml nie powiodło się.');
    }
    fwrite($fp, '<?xml version="1.0" encoding="utf-8" ?>
    <!DOCTYPE inwentaryzacja [
    <!ENTITY % quot "&#34;">
    <!ENTITY % amp "&#38;">
    <!ENTITY % lt "&#60;">
    <!ENTITY % gt "&#62;">
    <!ELEMENT inwentaryzacja (lokalizacja)*>
    <!ELEMENT lokalizacja (ksiazka)*>
    <!ATTLIST lokalizacja
        id    ID    #IMPLIED
        regal    CDATA    #IMPLIED
        polka    CDATA    #IMPLIED
        rzad    CDATA    #IMPLIED>
    <!ELEMENT ksiazka (tytul | autor | miejsce | rok | wydawnictwo)*>
    <!ATTLIST ksiazka
        id    ID    #IMPLIED
        status    CDATA    #IMPLIED>
    <!ELEMENT tytul (#PCDATA)>
    <!ELEMENT autor (#PCDATA)>
    <!ELEMENT miejsce (#PCDATA)>
    <!ELEMENT rok (#PCDATA)>
    <!ELEMENT wydawnictwo (#PCDATA)>
    ]>
    <inwentaryzacja>
    ');
    $lastplace = NULL;
    while($entry = $st->fetch()) {
        if($lastplace != $entry['regal'].'/'.$entry['polka'].'/'.$entry['rzad']) {
            if($lastplace !== NULL) {
                fwrite($fp, '</lokalizacja>'."\n");
            }
            fwrite($fp, '<lokalizacja id="m_'.$entry['regal'].'_'.$entry['polka'].'_'.$entry['rzad'].'" regal="'.$entry['regal'].'" polka="'.$entry['polka'].'" rzad="'.$entry['rzad'].'">'."\n");
            $lastplace = $entry['regal'].'/'.$entry['polka'].'/'.$entry['rzad'];
        }
        fwrite($fp, '<lokalizacja id="m_'.$entry['regal'].'_'.$entry['polka'].'_'.$entry['rzad'].'" regal="'.$entry['regal'].'" polka="'.$entry['polka'].'" rzad="'.$entry['rzad'].'">'."\n");
        $lastplace = $entry['regal'].'/'.$entry['polka'].'/'.$entry['rzad'];
        fwrite($fp, '<ksiazka id="k'.$entry['id'].'">'."\n");
        foreach($fields as $key) {
            fwrite($fp, '<'.$key.'>'.htmlspecialchars($entry[$key]).'</'.$key.'>'."\n");
        }
        fwrite($fp, '</ksiazka>'."\n");
    }
    fwrite($fp, '<ksiazka id="k'.$entry['id'].'">'."\n");
    foreach($fields as $key) {
        fwrite($fp, '<'.$key.'>'.htmlspecialchars($entry[$key]).'</'.$key.'>'."\n");
    if($lastplace !== NULL) {
        fwrite($fp, '</lokalizacja>'."\n");
    }
    fwrite($fp, '</ksiazka>'."\n");
}
if($lastplace !== NULL) {
    fwrite($fp, '</lokalizacja>'."\n");
}
fwrite($fp, '</inwentaryzacja>'."\n");
    fwrite($fp, '</inwentaryzacja>'."\n");
?>
@@ -70,5 +78,10 @@
</form>
<?php
}
catch(Exception $e) {
    echo '<p style="color:red">Wystąpił błąd: '.$e->getMessage().'</p>';
}
include('design/bottom.php');
?>
inwentaryzacja/save.php
@@ -1,6 +1,8 @@
<?php
function errorHandler($errno, $errstr, $errfile, $errline) {
    header('HTTP/1.1 500 Internal Server Error');
    echo $errstr;
    die();
}
set_error_handler('errorHandler');