Beste ...
Ik wil een dynamisch plaatje laten weergeven op mijn site dat telkens een andere 3 letterige/cijferige code laat zien. Ik heb gezocht op internet en DB Library gedownload en geinstalleerd. Vervolgens een script op mijn site gezet en het plaatje komt er te staan (tot zo ver geen probleem) maar ik krijg het niet voor elkaar om telkens een andere tekst te laten zien.
Dit is mijn code:
Zoals je ziet heb ik een mogelijkheid om tekst op het plaatje te laten weergeven maar ik wil dus elke keer een andere tekst laten zien.
Als tweede vraag heb ik hoe ik het voor elkaar krijg om:
als ik dus elke keer een andere tekst op het plaatje krijg, de gebruiker de code in te laten typen en dan via een script te controleren of die code klopt. (dit wordt ook gebruikt bij registratieformulieren, een voorbeeld is bij hotmail.com)
Ik wil een dynamisch plaatje laten weergeven op mijn site dat telkens een andere 3 letterige/cijferige code laat zien. Ik heb gezocht op internet en DB Library gedownload en geinstalleerd. Vervolgens een script op mijn site gezet en het plaatje komt er te staan (tot zo ver geen probleem) maar ik krijg het niet voor elkaar om telkens een andere tekst te laten zien.
Dit is mijn code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| <?php
// Maak een PNG header
header("Content-type: image/png");
// Kopieer het plaatje van een reeds bestaand bestandje
$plaatje = ImageCreateFromPNG("button.png");
$zwart = ImageColorAllocate($plaatje, 333, 111, 255);
// Zoek hoe breed en hoe hoog de tekst gaat worden
if (!isset($text)) $text = "[b]Hier vul ik de tekst in die op het plaatje moet komen te staan[/b]";
$font = "verdanab.ttf";
$box = ImageTTFBBox(16, 0, $font, $text);
$hoogte = $box[1] - $box[7];
$breedte = $box[2] - $box[0];
// Bereken de "default" coordinaten
$x_coordinaat = $box[0];
$y_coordinaat = $hoogte - $box[1];
// Bereken nu de verschuiving die nodig is om de tekst de centreren
$offset_x = (int)((ImageSX($plaatje) - $breedte) / 2);
$offset_y = (int)((ImageSY($plaatje) - $hoogte) / 2) - 2;
// Teken de tekst
ImageTTFText($plaatje, 16, 0,
$x_coordinaat + $offset_x,
$y_coordinaat + $offset_y,
$zwart, $font, $text);
// Schrijf de ouput weg
ImagePNG($plaatje);
ImageDestroy($plaatje);
?> |
Zoals je ziet heb ik een mogelijkheid om tekst op het plaatje te laten weergeven maar ik wil dus elke keer een andere tekst laten zien.
Als tweede vraag heb ik hoe ik het voor elkaar krijg om:
als ik dus elke keer een andere tekst op het plaatje krijg, de gebruiker de code in te laten typen en dan via een script te controleren of die code klopt. (dit wordt ook gebruikt bij registratieformulieren, een voorbeeld is bij hotmail.com)