Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2016
    Messaggi
    3

    chiedo aiuto: form che restituisce immagine

    Salve a tutti! Sto riscontrando dei problemi con alcuni codici da me creati (sono un dilettante ) che in un sito funzionano bene mentre se li eseguo in un altro più aggiornato in fatto di versioni php et simila non ne vuole sapere.
    I codici hanno questo scopo:

    l'utente inserisce in un form le informazioni richieste, preme invio, e gli si apre una nuova finestra popup in cui compare un immagine in cui è stato stampato il testo inserito nel form.
    Solamente che quando vado ad eseguire questa azione nel nuovo sito che sto mettendo su mi esce l'icona dell'immagine non caricata con accanto la scritta "aaa" (che sicuramente prende da alt=aaa).

    Aiutatemi a capire.

    Ecco i tre file php che collaborano per creare quanto detto:

    questo è il form

    codice:
    <?phpif(isset($_POST['nome'])){
    $filename = $_POST['nome'];
    }
    if(isset($nome)){ 
    echo $nome;
    };
    if(isset($_POST['grado'])){
    $filename = $_POST['grado'];
    }
    if(isset($grado)){ 
    echo $grado;
    };
    if(isset($_POST['officiante'])){
    $filename = $_POST['officiante'];
    }
    if(isset($officiante)){ 
    echo $officiante;
    };
    if(isset($_POST['arcibat'])){
    $filename = $_POST['arcibat'];
    }
    if(isset($arcibat)){ 
    echo $arcibat;
    };
    if(isset($_POST['diobat'])){
    $filename = $_POST['diobat'];
    }
    if(isset($diobat)){ 
    echo $diobat;
    };
    if(isset($_POST['databat'])){
    $filename = $_POST['databat'];
    }
    if(isset($databat)){ 
    echo $databat;
    };
    if(isset($_POST['submit'])){
    $filename = $_POST['submit'];
    }
    if(isset($submit)){ 
    echo $submit;
    };
    ?>
    <html>
    <head>
    <title>Certificato Battesimo</title>
    </head>
    <body>
    <form action="certificato_battesimo.php" method="post" target="foo" onsubmit="window.open('', 'foo','width=520,height=620,status=yes,resizable=yes,scrollbars=yes')">
    Nome Battezzato:<br />
    <input type="text" size="12" maxlength="20" name="nome"><br />
    Officiante Battesimo:<br />
    <input type="text" size="12" maxlength="20" name="officiante"><br />
    Grado:<br />
    <select name="grado">
    <option value="Papa">Papa</option>
    <option value="Cardinale Camerlengo">Cardinale Camerlengo</option>
    <option value="Cardinale Arcidiacono di Roma">Cardinale Arcidiacono di Roma</option>
    <option value="Cardinale Romano Elettore">Cardinale Romano Elettore</option><option value="Cardinale Nazionale Elettore">Cardinale Nazionale Elettore</option>
    <option value="Cardinale Nazionale Suffragante">Cardinale Nazionale Suffragante</option>
    <option value="Cardinale Emerito">Cardinale Emerito</option>
    <option value="Arcivescovo Metropolita">Arcivescovo Metropolita</option>
    <option value="Arcivescovo">Arcivescovo</option>
    <option value="Vescovo">Vescovo</option>
    <option value="Parroco">Parroco</option>
    <option value="Abate Cistercense">Abate Cistercense</option>
    <option value="Priore Cistercense">Priore Cistercense</option>
    <option value="Monaco Cistercense">Monaco Cistercense</option>
    <option value="Monaco Domenicano">Monaco Domenicano</option>
    <option value="Presbitero">Presbitero</option>
    <option value="Diacono">Diacono</option>
    <option value="Suddiacono">Suddiacono</option>
    <option value="Vicario Parrocchiale">Vicario Parrocchiale</option>
    <option value="Arcidiacono Primo">Arcidiacono</option>
    <option value="Vicario Genarale">Vicario Genarale</option>
    <option value="Arcidiacono">Arcidiacono</option>
    <option value="Vicario Diocesano">Vicario Diocesano</option></select><br />
    Arcidiocesi Battesimo:<br />
    <select name="arcibat">
    <option value="Aquileia">Aquileia</option>
    <option value="Genova">Genova</option>
    <option value="Milano">Milano</option>
    <option value="Firenze">Firenze</option>
    <option value="Pisa">Pisa</option>
    <option value="Siena">Siena</option>
    <option value="Ravenna">Ravenna</option>
    <option value="Roma">Roma</option>
    <option value="Capua">Capua</option>
    <option value="In Nave">In Nave</option></select><br />
    Parrocchia Battesimo:<br />
    <select name="diobat">
    <option value="Venezia">Venezia</option>
    <option value="Padova">Padova</option>
    <option value="Parenzo">Parenzo</option>
    <option value="Pola">Pola</option>
    <option value="Portogruaro">Portogruaro</option>
    <option value="Treviso">Treviso</option>
    <option value="Mantua">Mantua</option>
    <option value="Udine">Udine</option>
    <option value="Genova">Genova</option>
    <option value="Chiavari">Chiavari</option>
    <option value="La Spezia">La Spezia</option>
    <option value="Albenga">Albenga</option>
    <option value="Ventimiglia">Ventimiglia</option>
    <option value="Milano">Milano</option>
    <option value="Como">Como</option>
    <option value="Lodi">Lodi</option>
    <option value="Alessandria">Alessandria</option>
    <option value="Novara">Novara</option>
    <option value="Savona">Savona</option>
    <option value="Pavia">Pavia</option>
    <option value="Firenze">Firenze</option>
    <option value="Pistoia">Pistoia</option>
    <option value="Montevarchi">Montevarchi</option>
    <option value="Pisa">Pisa</option>
    <option value="Volterra">Volterra</option>
    <option value="Livorno">Livorno</option>
    <option value="San Miniato">San Miniato</option>
    <option value="Massa">Massa</option>
    <option value="Siena">Siena</option>
    <option value="Orbetello">Orbetello</option>
    <option value="Grosseto">Grosseto</option>
    <option value="Santa Fiora">Santa Fiora</option>
    <option value="Piombino">Piombino</option>
    <option value="Modena">Modena</option>
    <option value="Mirandola">Mirandola</option>
    <option value="Guastalla">Guastalla</option>
    <option value="Parma">Parma</option>
    <option value="Fornovo">Fornovo</option>
    <option value="Piacenza">Piacenza</option>
    <option value="L'Aquila">L'Aquila</option>
    <option value="Arezzo">Arezzo</option>
    <option value="Montepulciano">Montepulciano</option>
    <option value="Teramo">Teramo</option>
    <option value="Silvi">Silvi</option>
    <option value="Chieti">Chieti</option>
    <option value="Sulmona">Sulmona</option>
    <option value="Avezzano">Avezzano</option>
    <option value="Tagliacozzo">Tagliacozzo</option>
    <option value="Terracina">Terracina</option>
    <option value="Pontecorvo">Pontecorvo</option>
    <option value="Capua">Capua</option>
    <option value="Sessa Aurunca">Sessa Aurunca</option>
    <option value="Gaeta">Gaeta</option>
    <option value="Sora">Sora</option>
    <option value="Verona">Verona</option>
    <option value="Rijeka">Rijeka</option>
    <option value="In Nave">In Nave</option></select><br />
    Data battesimo:<br />
    <script language="javascript" type="text/javascript" src="datetimepicker.js">
    
    
    //Date Time Picker script- by TengYong Ng of http://www.rainforestnet.com
    //Script featured on JavaScript Kit (http://www.javascriptkit.com)
    //For this script, visit http://www.javascriptkit.com 
    
    
    </script>
    
    
    <input id="demo1" type="text" size="25" name="databat"><a href="javascript:NewCal('demo1','ddmmyyyy')"><img src="http://virgus87.altervista.org/images/cal.gif" width="16" height="16" border="0" alt="Pick a date"></a><br /><br />
    
    
    <input type="submit" value="submit" name="submit">
    </form>
    questo file chiamato creaimm_batt.php crea l'immagine dal form

    codice:
    <?function imagettftextalign($image, $size, $angle, $x, $y, $color, $font, $text, $alignment='L')
    {
    
    
    //check width of the text
    $bbox = imagettfbbox ($size, $angle, $font, $text);
    $textWidth = $bbox[2] - $bbox[0];
    switch ($alignment) {
    case "R":
    $x -= $textWidth;
    break;
    case "C":
    //$x -= $textWidth / 2;
    $x=ceil((500 - $bbox[2]) / 2);
    break;
    }
    
    
    //write text
    imagettftext ($image, $size, $angle, $x, $y, $color, $font, $text);
    
    
    }
    
    
    if(isset($_GET['databat'])){
    $filename = $_GET['databat'];
    }
    if(isset($databat)){ 
    echo $databat;
    };
    if(isset($_GET['nome'])){
    $filename = $_GET['nome'];
    }
    if(isset($nome)){ 
    echo $nome;
    };
    if(isset($_GET['grado'])){
    $filename = $_GET['grado'];
    }
    if(isset($grado)){ 
    echo $grado;
    };
    if(isset($_GET['officiante'])){
    $filename = $_GET['officiante'];
    }
    if(isset($officiante)){ 
    echo $officiante;
    };
    if(isset($_GET['diobat'])){
    $filename = $_GET['diobat'];
    };
    if(isset($diobat)){ 
    echo $diobat;
    };
    if(isset($_GET['arcibat'])){
    $filename = $_GET['arcibat'];
    }
    if(isset($arcibat)){ 
    echo $arcibat;
    };
    //$riga1="In data $datamat nella parrocchia di";
    $riga1="Il nuovo fedele dell'Altissimo chiamato";
    $riga2= "$nome";
    $riga3= "ha ricevuto il sacramento del battesimo,";
    $riga4= "dal $grado $officiante";
    $riga5= "nella parrocchia di $diobat, arcidiocesi di $arcibat,";
    $riga6= "in data $databat.";
    
    
    // Intestazione per la creazione di un'immagine jpeg
    header('Content-Disposition: Attachment;filename=certificato_battesimo.jpg'); 
    header("Content-type: image/jpeg");
    
    
    $immagine = imagecreatefromjpeg("1zgdi07.jpg");
    
    
    // Creazione del colore del testo dell'immagine
    $ctesto = imagecolorallocate($immagine, 72, 48, 24);
    
    
    $font = './CloisterBlack.ttf';
    // parametri: nome immagine, dimensione font, inclinazione, posx, posy, colore testo, font, testo
    imagettftextalign($immagine, 16, 0, 100, 360, $ctesto, $font, $riga1, "C");
    imagettftextalign($immagine, 20, 0, 200, 390, $ctesto, $font, $riga2, "C");
    imagettftextalign($immagine, 16, 0, 110, 420, $ctesto, $font, $riga3, "C");
    imagettftextalign($immagine, 16, 0, 190, 450, $ctesto, $font, $riga4, "C");
    imagettftextalign($immagine, 16, 0, 50, 480, $ctesto, $font, $riga5, "C");
    imagettftextalign($immagine, 16, 0, 180, 510, $ctesto, $font, $riga6, "C");
    
    
    // Stampa a video dell'immagine
    imagejpeg($immagine);
    
    
    // Distruzione dell'oggetto image
    imagedestroy($immagine);
    ?>


    infine questo chiamato certificato_battesimo.php restituisce nel frontend aprendo il popup l'immagine con il testo stampato

    codice:
    <html><head>
    <title>Certificato di Battesimo</title>
    </head>
    <body>
    <?php
    if(isset($_POST['nome'])){
    $filename = $_POST['nome'];
    }
    if(isset($nome)){ 
    echo $nome;
    };
    if(isset($_POST['grado'])){
    $filename = $_POST['grado'];
    }
    if(isset($grado)){ 
    echo $grado;
    };
    if(isset($_POST['officiante'])){
    $filename = $_POST['officiante'];
    }
    if(isset($officiante)){ 
    echo $officiante;
    };
    if(isset($_POST['arcibat'])){
    $filename = $_POST['arcibat'];
    }
    if(isset($arcibat)){ 
    echo $arcibat;
    };
    if(isset($_POST['diobat'])){
    $filename = $_POST['diobat'];
    }
    if(isset($diobat)){ 
    echo $diobat;
    };
    if(isset($_POST['databat'])){
    $filename = $_POST['databat'];
    }
    if(isset($databat)){ 
    echo $databat;
    };
    if(isset($_POST['submit'])){
    $filename = $_POST['submit'];
    }
    if(isset($submit)){ 
    echo $submit;
    };
    ?>
    <img src="creaimm_bat.php?databat=<?=$databat?>&diobat=<?=$diobat?>&nome=<?=$nome?>&grado=<?=$grado?>&officiante=<?=$officiante?>&arcibat=<?=$arcibat?>&" border="0" align="top" alt="aaa" />
    </body>

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    1 - metti <? mentre ci vuole <?php

    2 - prova a guardare il codice sorgente della pagina html generata. Comunque sia ti aiuterà ad eliminare una possibile causa xche forse sono i parametri passati a creaimm_bat.php che non vanno.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2016
    Messaggi
    3
    Grazie per la risposta. Ho aggiustato il codice come mi hai suggerito e verificato il codice sorgente con F12. In effetti nel popup creato da certificato_battesimo.php. mi esce tra le varie parti di codice della pagina alcuni avvisi come "notice: undefined variable: officiante" ad esempio. Per tutte le mie variabili.

    Ho notato inoltre che levando questa parte di codice:

    <img src="creaimm_bat.php?databat=<?=$databat?>&diobat= <?=$diobat?>&nome=<?=$nome?>&grado=<?=$grado?>&off iciante=<?=$officiante?>&arcibat=<?=$arcibat?>&" border="0" align="top" alt="aaa" />
    non appare come giusto che sia nessuna immagine e credo che l'errore possa risiedere in creaimm_bat.php. Eppure su un altro sito tutto funziona!
    Ultima modifica di lolalfa; 14-06-2016 a 10:43

  4. #4
    Utente di HTML.it L'avatar di Luke70
    Registrato dal
    Jul 1999
    Messaggi
    767
    Nel primo file assegni tutti i valori $_POST alla variabile $filename e quindi non dai mai una valore a $nome $grado $officiante...

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.