Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    creare etichette php pdf mysql

    Salve team,

    ho trovato in giro questo script che genera etichette con la classe fpdf

    codice:
    <?php
    require 'class/PdfLabel.php';
    // crea l'oggetto e imposta il formato
    $pdf = new PdfLabel(PdfLabel::$labelFormats['101700']);
    $pdf->Open();
    
    // font size
    $pdf->Set_Font_Size(10);
    
    // font family
    $pdf->Set_Font_Name('arial');
    
    // numero di etichette da lasciare vuote
    $pdf->skipLabels(0);
    
    // testo dell'etichetta
    $text = "Mario Rossi\n";
    $text.= "via Garibaldi n.116\n";
    $text.= "47900 Rimini (RN)\n";
    $text.= "ITALIA";
    $pdf->Add_PDF_Label($text);
    
    // output del PDF con le etichette
    $pdf->Output('labels.pdf','D');
    
    ?>
    avrei però la necessità di creare le etichette recuperando i valori da un database...
    sul recupero dati non ho problemi... creo la connection e passo le variabili...

    il mio problema è però popolare questo script passando i diversi dati recuperati

    sapreste aiutarmi?

    grazie mille
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  2. #2
    Scusa qual'è il problema?
    Codice PHP:
    $pdf->Add_PDF_Label($text); 
    al posto di $text inserisci la tua variabile, poi ovviamente devi un attimo vederti gli altri metodi, che magari ti permettono di indicare le coordinate, oppure di aggiungere spazi così puoi dare un minimo di formattazione.
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

  3. #3
    ho provato anche a collegarmi al db e passare i dati

    codice:
    <?php
    
    require 'class/PdfLabel.php';
    // crea l'oggetto e imposta il formato
    $pdf = new PdfLabel(PdfLabel::$labelFormats['101700']);
    $pdf->Open();
    
    // font size
    $pdf->Set_Font_Size(10);
    
    // font family
    $pdf->Set_Font_Name('arial');
    
    // numero di etichette da lasciare vuote
    $pdf->skipLabels(0);
    
    // recupero dati dal db 
    $serverdb = "localhost";
    $userdb = "usermio";
    $passdb = "pwdmia";
    $db = mysql_connect($serverdb, $userdb, $passdb);
    mysql_select_db("sunserve_blogger",$db);
    $query=mysql_query("SELECT * FROM iscrizioni");
    $row=mysql_fetch_array($query);
    $nome=$row['nome'];
    $cognome=$row['cognome'];
    $indirizzo=$row['indirizzo'];
    $citta=$row['citta'];
    $provincia=$row['provincia'];
    $cap=$row['cap'];
    
    // testo dell'etichetta
    $text = $nome;
    $text.= $cognome;
    $text.= $indirizzo;
    $text.= $citta;
    $text.= $provincia;
    $text.= $cap;
    $pdf->Add_PDF_Label($text);
    
    // output del PDF con le etichette
    $pdf->Output('labels.pdf','D');
    
    ?>
    ma mi da questo errore
    FPDF error: Some data has already been output, can't send PDF file


    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  4. #4
    Premessa: Non conosco la classe FPDF, ma vado a naso.

    Da quello che vedo, fai un SELECT * senza clausole e poi non cicli l'array generato dal fetching.

    Prova a fare così:
    Codice PHP:
    $query=mysql_query("SELECT * FROM iscrizioni");

    while (
    $row=mysql_fetch_array($query)) {
      
    $nome=$row['nome'];
      
    $cognome=$row['cognome'];
      
    $indirizzo=$row['indirizzo'];
      
    $citta=$row['citta'];
      
    $provincia=$row['provincia'];
      
    $cap=$row['cap'];

    // testo dell'etichetta
      
    $text $nome."
    "
    ;
      
    $text.= $cognome."
    "
    ;
      
    $text.= $indirizzo."
    "
    ;
      
    $text.= $citta."
    "
    ;
      
    $text.= $provincia."
    "
    ;
      
    $text.= $cap."
    "
    ;

      
    $pdf->Add_PDF_Label($text);
    }

    // eccetera... qui metti il resto del tuo script 
    Vedi un po'?
    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  5. #5
    Ciao,
    di deve essere una riga prima di <?php vuota.
    <?php deve iniziare dalla prima riga del file.

    In pratica
    1.
    2. <?php

    dovrebbe diventare
    1. <?php

    Spero di essermi spiegato
    Pecos Bill

  6. #6
    Credo che molto probabilmente ha ragione "pecos", infatti il problema è dato dal fatto che c'è un output prima che il file venga visualizzato a video e quindi da l'errore "FPDF error: Some data has already been output, can't send PDF file"
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

  7. #7
    Originariamente inviato da alcio74
    Premessa: Non conosco la classe FPDF, ma vado a naso.

    Da quello che vedo, fai un SELECT * senza clausole e poi non cicli l'array generato dal fetching.

    Prova a fare così:
    Codice PHP:
    $query=mysql_query("SELECT * FROM iscrizioni");

    while (
    $row=mysql_fetch_array($query)) {
      
    $nome=$row['nome'];
      
    $cognome=$row['cognome'];
      
    $indirizzo=$row['indirizzo'];
      
    $citta=$row['citta'];
      
    $provincia=$row['provincia'];
      
    $cap=$row['cap'];

    // testo dell'etichetta
      
    $text $nome."
    "
    ;
      
    $text.= $cognome."
    "
    ;
      
    $text.= $indirizzo."
    "
    ;
      
    $text.= $citta."
    "
    ;
      
    $text.= $provincia."
    "
    ;
      
    $text.= $cap."
    "
    ;

      
    $pdf->Add_PDF_Label($text);
    }

    // eccetera... qui metti il resto del tuo script 
    Vedi un po'?
    stesso errore
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  8. #8
    grazie a voi... funziona....
    ecco lo script.. qualora servisse a qualcuno

    Codice PHP:
    <?php


    require 'class/PdfLabel.php';
    // crea l'oggetto e imposta il formato
    $pdf = new PdfLabel(PdfLabel::$labelFormats['101700']);
    $pdf->Open();

    // font size
    $pdf->Set_Font_Size(10);

    // font family
    $pdf->Set_Font_Name('arial');

    // numero di etichette da lasciare vuote
    $pdf->skipLabels(0);


    // recupero dati dal db 
    $serverdb "localhost";
    $userdb "user";
    $passdb "pwd";
    $db mysql_connect($serverdb$userdb$passdb);
    mysql_select_db("sunserve_blogger",$db);
    $query=mysql_query("SELECT * FROM iscrizioni"); 

    while (
    $row=mysql_fetch_array($query)) { 
      
    $nome=$row['nome']; 
      
    $cognome=$row['cognome']; 
      
    $indirizzo=$row['indirizzo']; 
      
    $citta=$row['citta']; 
      
    $provincia=$row['provincia']; 
      
    $cap=$row['cap']; 

    // testo dell'etichetta 
      
    $text $nome." "
      
    $text.= $cognome."\n"
      
    $text.= $indirizzo."\n";
      
    $text.= $cap." ";
      
    $text.= $citta." ";
      
    $text.= $provincia."\n"
       


      
    $pdf->Add_PDF_Label($text); 
    }

    // output del PDF con le etichette
    $pdf->Output('labels.pdf','D');

    ?>
    grazie a tutti
    L'intuizione creativa più di ogni altra cosa è l'unico elemento per cui la vita vale la pena di essere vissuta (D.W)

  9. #9
    Quote Originariamente inviata da Stanislao Visualizza il messaggio
    grazie a voi... funziona....
    ecco lo script.. qualora servisse a qualcuno

    Codice PHP:
    <?php


    require 'class/PdfLabel.php';
    // crea l'oggetto e imposta il formato
    $pdf = new PdfLabel(PdfLabel::$labelFormats['101700']);
    $pdf->Open();

    // font size
    $pdf->Set_Font_Size(10);

    // font family
    $pdf->Set_Font_Name('arial');

    // numero di etichette da lasciare vuote
    $pdf->skipLabels(0);


    // recupero dati dal db 
    $serverdb "localhost";
    $userdb "user";
    $passdb "pwd";
    $db mysql_connect($serverdb$userdb$passdb);
    mysql_select_db("sunserve_blogger",$db);
    $query=mysql_query("SELECT * FROM iscrizioni"); 

    while (
    $row=mysql_fetch_array($query)) { 
      
    $nome=$row['nome']; 
      
    $cognome=$row['cognome']; 
      
    $indirizzo=$row['indirizzo']; 
      
    $citta=$row['citta']; 
      
    $provincia=$row['provincia']; 
      
    $cap=$row['cap']; 

    // testo dell'etichetta 
      
    $text $nome." "
      
    $text.= $cognome."\n"
      
    $text.= $indirizzo."\n";
      
    $text.= $cap." ";
      
    $text.= $citta." ";
      
    $text.= $provincia."\n"
       


      
    $pdf->Add_PDF_Label($text); 
    }

    // output del PDF con le etichette
    $pdf->Output('labels.pdf','D');

    ?>
    grazie a tutti
    Perfetta...è da tempo che la cercavo..

    unica domanda:
    c'è modo di filtrare i contatti di cui stampa le etichette?
    esempio dirgli di stampare tutti i contatti nella tabella "iscrizioni" che hanno "provincia = Roma RM"???
    Se si, come?

    Oppure se creo altre pagine php che fanno semplici query tipo quella di prima (ossia filtrano i contatti secondo una particolare provincia), c'è modo di dire al php da te postato di usare una di queste query pre-fatte??
    chiedo troppo? ;-)))

    grazei mille

  10. #10
    Devi cambiare la query al database. La riga magica è:
    Codice PHP:
    $query=mysql_query("SELECT * FROM iscrizioni"); 
    Aggiungi una condizione WHERE:
    codice:
    "SELECT * FROM iscrizioni WHERE provincia = Roma"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.