davinci34

Inscris le 20/03/2008 à 22:34
  • Nombre de sujets
    1
  • Nombre de messages
    4
  • Nombre de commentaires
    Aucun
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses dernières news

Aucune news

Ses derniers sujets sur les forums

forum
davinci34
Bonjour,

J'essayes depuis 2 jours de créer une image avec du texte à l'aide de la librairie GD!

Le but: créer une image à partir d'un formulaire ou on peut choisir une police dans une liste déroulante et écrire un texte dans un champ texte.
Le problème: j'arrives à la 1ère soumission à créer l'image avec le texte et la police sélectionnés mais lorsque je veux faire une seconde tentative, le formulaire disparait laissant place à l'image créée la 1ère fois avec le même texte et lorsque je veux faire 'actualiser' l'image reste et le formulaire n'apparaît plus!
Si vous avez une ou des pistes je suis preneur!

Voici le code HTML/PHP:
dyn_img.php
<?php
if(isset($_POST['SEND']))
{
if(isset($_POST['TYPO']) && isset($_POST['TEXTE']))
{
// Définission de la variable d'environnement pour GD
putenv('GDFONTPATH=' . realpath('.'));

// Nom de la police à utiliser
$typo = $_POST['TYPO'];
$texte = stripslashes($_POST['TEXTE']);

//Création de l'identifiant de l'image
$image = imagecreate(800, 50);

// couleur de fond de l'image
$fond = imagecolorallocate($image, 255, 255, 255);

// définition des couleurs du texte
$noir = imagecolorresolve($image, 100, 100, 100);
//$blanc = imagecolorresolve($image, 255, 255, 255);
//$rouge = imagecolorresolve($image, 240, 0, 0);
//$bleu = imagecolorresolve($image, 150, 150, 255);
//$vert = imagecolorresolve($image, 0, 150, 0);

// On écrit le texte provenant du formulaire avec la typo sélectionnée et la couleur noire
imagettftext($image, 20, 0, 20, 30, $noir, $typo, $texte);

// modification des entêtes
header("Content-type: image/jpeg");
// Envoi au navigateur
imagejpeg($image, "dyn_img.php", 100);
$ressource = "ok";
// Libération des ressources
imagedestroy($image);
}
}
?>
<html>
<head>
<title>TEST ::&gt; Création d'une image dynamique en PHP</title>
</head>

<body>
<p>Choisissez une typo dans la liste déroulante et écrivez votre texte</p>
<form method="post" action="">
<fieldset>
<legend>:: Choix TYPO et TEXTE ::</legend>
<p>Quelques polices True Type (.ttf): <select name="TYPO">
<option value="arial">Arial</option>
<option value="ariblk">Arial Black</option>
<option value="tahoma">Tahoma</option>
<option value="times">Times New Roman</option>
<option value="verdana">Verdana</option>
</select></p>
<p>Votre texte: <input type="text" name="TEXTE" value="" size="70" maxlength="200" />&nbsp;<input type="submit" name="SEND" value="Tester" /></p>
</fieldset>
</form>
<?php
if(isset($ressource))
{
echo "<p>Vous avez choisi la typo ". $typo ."</p>\n";
echo "<p><img src=\"dyn_img.php\" /></p>\n";
unset($ressource, $_POST['SEND']);
}
?>
</body>
</html>

Etrangement, lorsque je renvoie mon fichier par FTP et que j'actualise dans le navigateur le formulaire se réaffiche?!

Je demande simplement à quel endroit de mon code je fais 'fausse route' :-)

Ses derniers messages sur les forums

forum
davinci34
Bonsoir,
Je dirais problème de point de concaténation inversé après la variable $message sur la ligne 13 :
$message_html = "<html><head></head><body> Bonjour, voici le nom de la personne qui vous envoie le message : <i>".$nom."<i> , et son adresse: <i>".$adresse."<b> , /n/n".$objet."<b> , /n/n".$message".<i></body></html>";

P.S. : je ne vois pas trop à quoi servent les /n/n ?

Cordialement smiley
davinci34
le 10/01/2016 à 18:36
Variables globales non reconnues.
Bonsoir,
A la lecture de ton bout de code, il est normal que PHP n'affiche pas la valeur de $a parce qu'elle est vide :
<html>
variable $a =
<? print $a ?>
&lt;
</html>


Testes comme ceci :
<?php $a= 5; ?>

<html>
variable $a =
<?php print $a ?>
&lt;
</html>


P.S. : évites les shortags tags PHP
<? //Code ?>

Préfères cette syntaxe
<?php //Code ?>


Cordialement smiley
davinci34
Salut,

Je pensais que l'on pouvais faire tout (code PHP+HTML) sur une même page!
Je testerais ce soir après le boulot, en séparant le code traitement PHP du code HTML.
Merci de ta réponse LA GLOBULE smiley

Ses derniers commentaires de news

Aucun commentaire de news

Ses derniers commentaires de sites

Aucun commentaire de sites

Ses derniers commentaires de wall

Aucun commentaire wall
LoadingChargement en cours