Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL][MPDF]
Forum PHP.pl > Forum > Przedszkole
rafaelmc
Witam Wszystkich
sad.gif sciana.gif
Od kilku dni, staram się rozwiązać problem z wypisaniem całej zawartości tablicy z bazy danych i wygenerowanie tej tablicy do pliku PDF. Stworzyłem sobie funkcje wypisuje tylko pierwszy wiersz tablicy, a pozostałe wiersze już niestety nie, a są w bazie, na pewno. Staram się rozwiązać ten problem szukam w Google i nic.....

Tutaj jest ta funkcja:
  1. function uczestnik()
  2. {
  3. $polacz_db = polacz();
  4. $wynik = $polacz_db->query("SELECT * FROM lista_uczestnikow ");
  5. $wynik_1 = mysqli_num_rows($wynik);
  6. $user_table = mysqli_fetch_array($wynik);
  7. echo $user_table;
  8. echo $wynik_1;
  9. if( $wynik_1>0 )
  10. {
  11. $test='<table celpadding=\"2\" border=1>
  12. <tr><td><b>id_przep_szkolenia</b></td>
  13. <td><b>id_uczestnika</b></td>
  14. <td><b>imie</b></td>
  15. <td><b>nazwisko</b></td>
  16. <td><b>data_urodzenia</b></td>
  17. <td><b>miejsce_urodzenia</b></td>
  18. <td><b>wojewodztwo</b></td>
  19. <td><b>podpis</b></td>
  20. <td><b>nr_zaswiadczenia</b></td>
  21.  
  22. while('.$user_table = mysqli_fetch_array($wynik).')
  23. {
  24. <tr>
  25. <td>'.$user_table[id_przep_szkolenia].'</td>
  26. <td>'.$user_table[id_uczestnika].'</td>
  27. <td>'.$user_table[imie].'</td>
  28. <td>'.$user_table[nazwisko].'</td>
  29. <td>'.$user_table[data_urodzenia].'</td>
  30. <td>'.$user_table[miejsce_urodzenia].'</td>
  31. <td>'.$user_table[wojewodztwo].'</td>
  32. <td>'.$user_table[podpis].'</td>
  33. <td>'.$user_table[nr_zaswiadczenia].'</td>
  34. </tr>
  35. }
  36. </table>';
  37.  
  38. }
  39. echo $test;
  40. return $test;
  41. }


w ten funkcji tam gdzie jest echo to wyświetla mi coś takiego:

3while(Array)
{
}


ponizej jest fragment generowania pliku PDF
  1. $pdf=new mPDF('utf-8');
  2. //==================
  3. $pdf->allow_charset_conversion=true;
  4. $pdf->charset_in='utf-8';
  5.  
  6. //==================
  7. $pdf->Open();
  8. $pdf->AddPage('utf-8');
  9.  
  10. $pdf->SetFont('arialpl', '', 12);
  11.  
  12. //$pdf->AddFont('courier', '', 'courier.php');
  13. $pdf->SetFont('Arial','B',16);
  14. $mpdf->useOnlyCoreFonts = true;
  15.  
  16. //$mpdf->SetDisplayMode('fullpage');
  17.  
  18. $html='<h1>' .$nazwa_szkolenia.'</h1>
  19. <p>'.uczestnik().'</p>';
  20.  
  21. $pdf->SetFont('courier','',10);
  22. //$pdf->SetFont('arialplb','',10);
  23.  
  24. $pdf->WriteHTML($html,2);
  25. $pdf->Output('mpdf1.pdf','F');

Gdyby ktoś potrafił rozwiązać ten problem, albo dać mi jakieś wskazówki...
mellow.gif
marck
Nie jestem "szpecem" ale wydaje mi się że w tym zapytaniu masz to co chciałeś - jeden wiersz. Nastąpił tu zwykły błąd php. Jeżeli chcesz wypisać wszystkie możesz to zrobić tak:
  1. echo"<table>";
  2. $zapytanie=mysql_query("SELECT * FROM COKOLWIEK");
  3.  
  4. while($ln=mysql_fetch_array($zapytanie)){
  5. $id=$ln['id'];
  6. $nazwa=$ln['nazwa'];
  7.  
  8. echo"<tr><td>$id</td><td>$nazwa</td></tr>\r\n";
  9. }
  10. echo"</table>";

lub tak:
  1. $a=1;
  2. $zapytanie=mysql_query("SELECT * FROM COKOLWIEK");
  3.  
  4. while($ln=mysql_fetch_array($zapytanie)){
  5. $id=$ln['id'];
  6. $nazwa=$ln['nazwa'];
  7.  
  8. echo"<tr><td>$a</td><td>$id</td><td>$nazwa</td></tr>";
  9. $a++;
  10. }
  11. echo"</table>";


Wtedy masz wypis do końca. Mam nadzieję że pomogłem
mortus
Usuwam linię 6 i 7, i poprawiam pętle while, która jest w twoim przypadku tekstem, a nie kodem PHP
  1. <?php
  2. function uczestnik() {
  3. $polacz_db = polacz();
  4. $wynik = $polacz_db->query("SELECT * FROM lista_uczestnikow ");
  5. $wynik_1 = mysqli_num_rows($wynik);
  6. echo $wynik_1;
  7. if ($wynik_1 > 0) {
  8. $test = '<table celpadding=\"2\" border=1>
  9. <tr><td><b>id_przep_szkolenia</b></td>
  10. <td><b>id_uczestnika</b></td>
  11. <td><b>imie</b></td>
  12. <td><b>nazwisko</b></td>
  13. <td><b>data_urodzenia</b></td>
  14. <td><b>miejsce_urodzenia</b></td>
  15. <td><b>wojewodztwo</b></td>
  16. <td><b>podpis</b></td>
  17. <td><b>nr_zaswiadczenia</b></td></tr>';
  18. while ($user_table = mysqli_fetch_array($wynik)) {
  19. $test .= '<tr>';
  20. $test .= '<td>'.$user_table[id_przep_szkolenia].'</td>';
  21. $test .= '<td>'.$user_table[id_uczestnika].'</td>';
  22. $test .= '<td>'.$user_table[imie].'</td>';
  23. $test .= '<td>'.$user_table[nazwisko].'</td>';
  24. $test .= '<td>'.$user_table[data_urodzenia].'</td>';
  25. $test .= '<td>'.$user_table[miejsce_urodzenia].'</td>';
  26. $test .= '<td>'.$user_table[wojewodztwo].'</td>';
  27. $test .= '<td>'.$user_table[podpis].'</td>';
  28. $test .= '<td>'.$user_table[nr_zaswiadczenia].'</td>';
  29. $test .= '</tr>';
  30. }
  31. $test .= '</table>';
  32. }
  33. echo $test;
  34. return $test;
  35. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.