Błędy przy konwersji do pdf - dompdf

0

Witam,

Posiadam widok w joomla, który to próbuję skonwertować do pdf (biblioteka dompdf). Niestety oprócz braku obramowań tabeli wywala mi jeszcze błąd:

on line C:\AppServ\www\joomla2.5\components\com_katalog\views\wydruk\tmpl\default.php]: The
second argument should be either an array or an object in function.array-key-exists: array_key_exists() [

Chodzi o tę linię: $item = array_key_exists ($i, $list) ? $list[$i] : item;

Tłumaczyć to chyba można: Jeżeli istnieje klucz o wartość $i w tablicy to pobierz obiekt spod tego indeksu. W przeciwnym razie utwórz nowy obiekt (żeby błędami/ostrzeżeniami nie sypał) i przypisz do $item

Kod widoku wygląda następująco:

 

<!doctype html>
<html lang="pl">
<head>
    <meta charset="utf-8" />
    <title class="spis">Spis sprzętu w pomieszczeniu</title>
    <link rel="stylesheet" href="style.css" type="text/css" />
    <link rel="stylesheet" href="style_print.css" media="print" type="text/css" />
    <!--[if lt IE 9]><script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
</head>
<body class="spis">
<div id="container">
<div class="title">
<span class="name"><b>XXXX</b></span></br>

<span class="name">.............................................................................
<br>(Nazwa jednostki użytkownika)</span>

<span class="date"><b>4</b></span></br>                                       
<span class="date">.........................................................
<br><center>(Numer budynku/kompleksu)</center></br></span>

 </div>
 
<br><br / >
<br><br / >

    
    <h1 class='spis'><center>SPIS SPRZĘTU W POMIESZCZENIU NR &nbsp;<?php echo "".$list[0]->nr_pomieszczenia.""?></center></h1>
    <br><br / >
    
<table id=spis>
<?php
    echo '<tr>';
              echo '<td class="lp" rowspan="2"><center>Lp</center></td>';
              echo '<td class="nazwa" rowspan="2"><center>Nazwa przedmiotu (wg katalogu)</center></td>';
              echo '<td rowspan="2"><center>Oznaczenie katalogowe</center></td>';
              echo '<td rowspan="2"><center>Jedn. miary</center></td>';
              echo '<td colspan="8"<center>Stan w dniu</center></td>';
          echo '</tr>';           
                
        echo '<tr>';
        
        echo '<td height="120"></td>';
                
        echo '<td></td>';
                echo '<td></td>';
                echo '<td></td>';
                echo '<td></td>';
                echo '<td></td>';
                echo '<td></td>';
                echo '<td></td>';
     echo '</tr>';
      
    $lp = 0;   
        
        for ($i=0; $i<21; $i++)
            {
            $lp = $i+1;
            $item = array_key_exists ($i, $list) ? $list[$i] : item;
    //foreach($list as $item)
    
    echo '<tr>';
    echo "<td>$lp.</td>";
    echo "<td>".$item->nazwa."</td>";
    echo "<td>".$item->JIM."</td>";
    echo "<td>".$item->skrot."</td>";
    echo "<td></td>";
    echo "<td></td>";
    echo "<td></td>";
    echo "<td></td>";
    echo "<td></td>";
    echo "<td></td>";
    echo "<td></td>";
    echo "<td></td>";
    echo '</tr>';
    
        
    }
                          
            
echo '</table>';
echo '<br><br>';

echo '<br><p align=right> ...............................<br></p>';
echo '<address> <p align=right>stopień imię i nazwisko</address><br></p>';   
echo '<address><p align=right>podpis uĹĽytkownika sprzętu</address><br></p>'; 


echo '</div></body>';

echo '</html>';

echo'
      <form method="post" action="index.php?view=Wydruk&format=pdf">
      
<input type="image" src="pdf.png" value="submit" onfocus="blur()" />;
        
        
        </p>
      </form>';
            
 
   echo '</table>';   

Taki błąd wywala 21 razy, tyle ile jest wierszy w tabeli.
Nie wiem czemu się tak dzieje. Wykaz sformalizowany w załączniku.

0

Problem z :

on line C:\AppServ\www\joomla2.5\components\com_katalog\views\wydruk\tmpl\default.php]: The
second argument should be either an array or an object in function.array-key-exists: array_key_exists() [

Chodzi o tę linię: $item = array_key_exists ($i, $list) ? $list[$i] : item;
rozwiązany.

Poprawiłem:

 echo '<tr>';
    echo "<td>$lp.</td>";
    echo "<td>"[b].$list[$lp][/b]->nazwa."</td>";
    echo "<td>"[b].$list[$lp][/b]->JIM."</td>";
    echo "<td>"[b].$list[$lp][/b]->skrot."</td>";

oraz dodano:

 <form method="post" action="index.php?view=Wydruk&[b]id='.$warunek.[/b]'&format=pdf"> 

1 użytkowników online, w tym zalogowanych: 0, gości: 1