Avatar billede stengaard Praktikant
18. marts 2006 - 15:32 Der er 18 kommentarer og
1 løsning

lidt problemmer med pdf fra mysql

jeg har lidt problemmer med info fra mysql der skal laves om til en pdf fil der vises på skræmen

har kigget på http://www.fpdf.org/ men kan ikke rigtigt komme videre  for denne fejl

FPDF error: Missing or incorrect image file: /file/4a9fff8a46552c953521d2e7ac5a264d.jpg

scriptet ser således ud ******************

<?php
    include ('useall.php');
   
    if (!isset($recID))
        $recID = "";
       
    if ($size == "4x6")
        $width = 80;
    else
        $width = 105;
   
    $recipe_title = "";
    $recipe_portioner = "";
    $recipe_image = "";
    $recipe_ingredients  = "";
    $recipe_method = "";
    $recipe_note = "";
    $q = "SELECT * FROM recipe WHERE recipeID = '$recID'";
    mysql_first_data ($q, "recipe_title|recipe_image|recipe_portioner|recipe_ingredients|recipe_method|recipe_note");
   
    $recipe_title = htmlreserve($recipe_title);
    $recipe_image = htmlreserve($recipe_image);
    $recipe_portioner = htmlreserve($recipe_portioner);
    $recipe_ingredients  = htmlreserve($recipe_ingredients);
    $recipe_method = htmlreserve($recipe_method);
    $recipe_note = htmlreserve($recipe_note);
   
   
    define('FPDF_FONTPATH', 'font/');
    require('mc_table_indeks.php');
   
    $pdf=new PDF_MC_Table('P','mm',$size);
    $pdf->AliasNbPages();
    $pdf->Open();
    $pdf->SetMargins(13,13,10);
   
    //1st page   
    $pdf->AddPage();
    $pdf->ln(1);
    $pdf->SetFont('Arial', 'B', 11);
    $pdf->MultiCell ($width, 5, $recipe_title,'0' ,'L');
   
****************** tror fejlen er her **********************
    //1st Billed   
    $pdf->ln(1);
    $pdf->Image('/file/'.$recipe_image.'');

****************** til her **********************
   
    //Portioner
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 8);
    $pdf->SetTextColor(114,56,56);
    $pdf->Cell ($width, 5, "Antal Portioner");
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 6);
    $pdf->SetTextColor(0);
    $pdf->MultiCell ($width, 3, $recipe_portioner,'0' ,'L');
   
    //Ingredients
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 8);
    $pdf->SetTextColor(114,56,56);
    $pdf->Cell ($width, 5, "Ingredienser");
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 6);
    $pdf->SetTextColor(0);
    $pdf->MultiCell ($width, 3, $recipe_ingredients,'0' ,'L');
   
    //Method
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 8);
    $pdf->SetTextColor(114,56,56);
    $pdf->Cell ($width, 5, "Fremgangsmetode");
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 6);
    $pdf->SetTextColor(0);
    $pdf->MultiCell ($width, 3, $recipe_method,'0' ,'J');
   
    //Note
    if (!empty($recipe_note))
    {   
        $pdf->ln (5);
        $pdf->SetFont('Arial', '', 8);
        $pdf->SetTextColor(114,56,56);
        $pdf->Cell ($width, 5, "Tilbehør Mv:");
        $pdf->ln (5);
        $pdf->SetFont('Arial', '', 6);
        $pdf->SetTextColor(0);
        $pdf->MultiCell ($width, 3, $recipe_note,'0' ,'J');
    }
   
    $pdf->SetDisplayMode('real');
    $pdf->SetTitle("$recipe_title");
    $pdf->SetAuthor("Stengaard-webdesign.dk");
    $pdf->SetCreator("Powered by Stengaard Webdesign - http://www.Stengaard-webdesign.dk");
    $pdf->Output("recipe-$recID-$size.pdf", "I");
?>
Avatar billede stengaard Praktikant
18. marts 2006 - 15:58 #1
billedet vil jeg gerne have ind til højre i øverste hjørne kig her

http://lkongen.dk/opskrift/make_indeks.php?recID=137&size=5x8
Avatar billede whatever Nybegynder
18. marts 2006 - 16:52 #2
Umiddelbart vil jeg skyde på at fejlen kommer, fordi billedet ikke findes.

Med linien $pdf->Image('/file/'.$recipe_image.''); forsøger du at hente billedet fra /file/4a9fff8a46552c953521d2e7ac5a264d.jpg, men billedet ligger jo i /opskrift//file/4a9fff8a46552c953521d2e7ac5a264d.jpg.

Prøv at ændre linierne:

    $pdf->ln(1);
    $pdf->Image('/file/'.$recipe_image.'');

til:

if ($recipe_image && file_exists("/opskrift/file/".$recipe_image))
{
    $pdf->ln(1);
    $pdf->Image("/opskrift/file/".$recipe_image);
}
Avatar billede stengaard Praktikant
19. marts 2006 - 11:45 #3
har prøvet dette her

men nu kommer pdf filen frem men uden billed

prøv eventuelt selv her http://familien-stengaard.dk/opskrift/cat_detail.php?recID=12&catID=15

klik på pdf forneden scriptet ser således ud

<?php
    include ('useall.php');
   
    if (!isset($recID))
        $recID = "";
       
    if ($size == "4x6")
        $width = 80;
    else
        $width = 105;
   
    $recipe_title = "";
    $recipe_portioner = "";
    $recipe_image = "";
    $recipe_ingredients  = "";
    $recipe_tilbered  = "";
    $recipe_arbejds  = "";
    $recipe_energi  = "";
    $recipe_fordeling  = "";
    $recipe_method = "";
    $recipe_note = "";
    $q = "SELECT * FROM recipe WHERE recipeID = '$recID'";
    mysql_first_data ($q, "recipe_title|recipe_ingredients|recipe_fordeling|recipe_energi|recipe_arbejds|recipe_tilbered|recipe_portioner|recipe_image|recipe_method|recipe_note");
   
    $recipe_title = htmlreserve($recipe_title);
    $recipe_image = htmlreserve($recipe_image);
    $recipe_portioner = htmlreserve($recipe_portioner);
    $recipe_tilbered = htmlreserve($recipe_tilbered);
    $recipe_arbejds = htmlreserve($recipe_arbejds);
    $recipe_energi = htmlreserve($recipe_energi);
    $recipe_fordeling = htmlreserve($recipe_fordeling);
    $recipe_ingredients  = htmlreserve($recipe_ingredients);
    $recipe_method = htmlreserve($recipe_method);
    $recipe_note = htmlreserve($recipe_note);
   
   
    define('FPDF_FONTPATH', 'font/');
    require('mc_table_indeks.php');
   
    $pdf=new PDF_MC_Table('P','mm',$size);
    $pdf->AliasNbPages();
    $pdf->Open();
    $pdf->SetMargins(13,13,10);
   
    //1st Billed 
    if ($recipe_image && file_exists("/customers/domain.dk/domain.dk/httpd.www/opskrift/file/".$recipe_image))
{
    $pdf->ln(1);
    $pdf->Image("/customers/domain.dk/domain.dk/httpd.www/opskrift/file/".$recipe_image);
}
   
    //1st page   
    $pdf->AddPage();
    $pdf->ln(1);
    $pdf->SetFont('Arial', 'B', 11);
    $pdf->MultiCell ($width, 5, $recipe_title,'0' ,'L');
   
    //Portioner
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 8);
    $pdf->SetTextColor(114,56,56);
    $pdf->Cell ($width, 5, "Antal Portioner");
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 6);
    $pdf->SetTextColor(0);
    $pdf->MultiCell ($width, 3, $recipe_portioner,'0' ,'L');
   
    //Tilberedningstid
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 8);
    $pdf->SetTextColor(114,56,56);
    $pdf->Cell ($width, 5, "Tilberedningstid ialt: ");
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 6);
    $pdf->SetTextColor(0);
    $pdf->MultiCell ($width, 3, $recipe_tilbered,'0' ,'L');
   
    //Arbejds
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 8);
    $pdf->SetTextColor(114,56,56);
    $pdf->Cell ($width, 5, "Arbejds tid:");
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 6);
    $pdf->SetTextColor(0);
    $pdf->MultiCell ($width, 3, $recipe_arbejds,'0' ,'L');
   
    //Ingredients
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 8);
    $pdf->SetTextColor(114,56,56);
    $pdf->Cell ($width, 5, "Ingredienser");
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 6);
    $pdf->SetTextColor(0);
    $pdf->MultiCell ($width, 3, $recipe_ingredients,'0' ,'L');
   
    //Method
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 8);
    $pdf->SetTextColor(114,56,56);
    $pdf->Cell ($width, 5, "Fremgangsmetode");
    $pdf->ln (5);
    $pdf->SetFont('Arial', '', 6);
    $pdf->SetTextColor(0);
    $pdf->MultiCell ($width, 3, $recipe_method,'0' ,'J');
   
   
    //Note
    if (!empty($recipe_note))
    {   
        $pdf->ln (5);
        $pdf->SetFont('Arial', '', 8);
        $pdf->SetTextColor(114,56,56);
        $pdf->Cell ($width, 5, "Anbefalet tilbehør");
        $pdf->ln (5);
        $pdf->SetFont('Arial', '', 6);
        $pdf->SetTextColor(0);
        $pdf->MultiCell ($width, 3, $recipe_note,'0' ,'J');
    }
   
    $pdf->SetDisplayMode('real');
    $pdf->SetTitle("$recipe_title");
    $pdf->SetAuthor("Stengaard-webdesign.dk");
    $pdf->SetCreator("Powered by Stengaard Webdesign - http://www.Stengaard-webdesign.dk");
    $pdf->Output("recipe-$recID-$size.pdf", "I");
?>
Avatar billede whatever Nybegynder
19. marts 2006 - 13:17 #4
Prøv efter denne linie:

if ($recipe_image && file_exists("/customers/domain.dk/domain.dk/httpd.www/opskrift/file/".$recipe_image)) {

at udskrive en eller anden tekst til pdf-filen, bare for at verificere at php finder billedet på en angivne sti. Hvis teksten så udskrives må problemet ligge i pdf-klassen.
Avatar billede stengaard Praktikant
19. marts 2006 - 20:59 #5
og hvordan det ???
Avatar billede whatever Nybegynder
19. marts 2006 - 21:25 #6
//1st Billed
if ($recipe_image && file_exists("/customers/domain.dk/domain.dk/httpd.www/opskrift/file/".$recipe_image))
{
    $pdf->Cell(150,10,"BILLEDET EKSISTERER");
    $pdf->ln(1);
    $pdf->Image("/customers/domain.dk/domain.dk/httpd.www/opskrift/file/".$recipe_image);
}

Når jeg kigger i manualen til fpdf kan jeg desuden set, at Image() har 3 krævede argumenter. Du mangler både x og y placeringen fra øverste venstre hjørne. Du kan se mere på http://www.fpdf.org/en/doc/image.htm.
Avatar billede stengaard Praktikant
19. marts 2006 - 21:30 #7
ja har prøvet med denne her også er lidt ny inden for pdf men det giver ikke rigtig mening

//1st Billed
    $pdf->ln(1);
    Image( $recipe_image, float 10, float 10 [, float 200 [, float 133 [,  JPG, JPEG, PNG [,/customers/domain.dk/domain.dk/httpd.www/opskrift/file/]]]])
Avatar billede stengaard Praktikant
19. marts 2006 - 21:32 #8
mmm heller ikke noget andet ind tekst prøv eventuelt her

http://familien-stengaard.dk/opskrift/make_indeks.php?recID=14&size=5x8
Avatar billede whatever Nybegynder
19. marts 2006 - 21:37 #9
Prøv dette:

if ($recipe_image && file_exists("/customers/familien-stengaard.dk/familien-stengaard.dk/httpd.www/opskrift/file/".$recipe_image))
{
    $pdf->Cell(150,10,"BILLEDET EKSISTERER");
    $pdf->ln(1);
    $pdf->Image("/customers/familien-stengaard.dk/familien-stengaard.dk/httpd.www/opskrift/file/".$recipe_image,10,10);
}

Og hvis det ikke virker kan jeg umiddelbart ikke sige da hvad der er galt.
Avatar billede stengaard Praktikant
19. marts 2006 - 21:45 #10
mmm stadig kun tekst
Avatar billede whatever Nybegynder
19. marts 2006 - 21:49 #11
Man skulle næsten tro af stien til billedet er forkert. Prøv at lave en fil med følgende indhold:

<?php
phpinfo();
?>

Og smid så en link herinde til filen, så jeg kan se hvad filen udskriver.
Avatar billede stengaard Praktikant
19. marts 2006 - 21:53 #12
der er jeg ikke helt med
Avatar billede whatever Nybegynder
19. marts 2006 - 21:59 #13
Lav en med følgende indhold:

<?php
phpinfo();
?>

navngiv filen phpinfo.php, og upload den til opskrift-biblioteket på webhotellet.

Så den ligger her:  http://familien-stengaard.dk/opskrift/phpinfo.php
Avatar billede stengaard Praktikant
19. marts 2006 - 22:03 #14
ok
Avatar billede stengaard Praktikant
19. marts 2006 - 22:04 #15
det er gjort
Avatar billede whatever Nybegynder
19. marts 2006 - 22:15 #16
Det ser ud til at du benytter den rigtige sti til billedet, så jeg kan ikke lige se hvor problemet så skulle være.
Avatar billede stengaard Praktikant
19. marts 2006 - 22:24 #17
øv når vi lader den stå lidt det kunne jo være der var andre der måske viste det
Avatar billede stengaard Praktikant
20. marts 2006 - 18:58 #18
er ikke den store haj men er det noget man kan bruge

<?php

error_reporting(E_ALL);

include('class.ezpdf.php'); 

$database = mysql_connect("localhost", "user", "password");
mysql_select_db("dbname", $database);

$query = "SELECT imgdata FROM tblimage WHERE ImgID = 9 ";
$result = mysql_query($query, $database);

$row = mysql_fetch_array($result);
$jpg = $row["imgdata"];


$pdf =& new Cezpdf();



$im = @imagecreatefromstring($jpg); /* Attempt to open */
if (!$im) { /* See if it failed */
$im = imagecreate(150, 30); /* Create a blank image */
$bgc = imagecolorallocate($im, 255, 255, 255);
$tc = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 150, 30, $bgc);
/* Output an errmsg */
imagestring($im, 1, 5, 5, "Error loading img", $tc);
}

$pdf->addImage($im,100,$pdf->y-200,0,100);

$pdf->stream();

?>

fundet på http://sourceforge.net/forum/forum.php?thread_id=1445521&forum_id=261702
Avatar billede stengaard Praktikant
13. maj 2006 - 23:10 #19
mmmm lukker !!!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester