Van externe aanroep naar functie die vaker aangeroepen kan worden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jan te Pas

Jan te Pas

28/08/2017 17:19:10
Quote Anchor link
Ik heb een code die ik gebruik om een tekst op een plaatje te zetten en dankte presenteren. Dat gaat goed. Nu wil ik de plaatjes op een eerder moment genereren, zodat de images getoond kunnen worden.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
34
35
36
37
38
39
40
<?php
// Print two names on the picture, which accepted by query string parameters.
// <img src="createImage.php?n1=winter&n2=seizoen&n2=rood" />


//tekst 1, boven

$n1 = $_GET['n1'];
//tekst 2, onder
$n2 = $_GET['n2'];
//achtergrondbeeld
$n3 = $_GET['n3'];

Header ("Content-type: image/jpeg");

switch ($n3):
     case
"rood":
     $image = imageCreateFromJPEG("images/rood.jpg");
     break;
     case
"blauw":
     $image = imageCreateFromJPEG("images/blauw.jpg");
     break;
     case
"groen":
     $image = imageCreateFromJPEG("images/groen.jpg");
     break;
     default:

     $image = imageCreateFromJPEG("images/basis.jpg");
endswitch;


$color = ImageColorAllocate($image, 255, 255, 255);
$color1 = ImageColorAllocate($image, 169, 169, 169);

//  Wrtie text to horizontal alignment for the names.
imagettftext($image, 70, 0, 150, 185, $color, 'font/HermesRegular.ttf', $n1);
imagettftext($image, 40, 0, 500, 240, $color1, 'font/HermesRegular.ttf', $n2);
// nu opslaan
// in dite geval als file anders naam NULL geven

imagejpeg($image, "images/'.$n1.'.jpg", 80);
// vernietig file in geheugen
ImageDestroy($image);
?>


Nu wil ik er dus graag een functie van maken. Wie kan mij helpen?
Gewijzigd op 28/08/2017 17:52:35 door Jan te Pas
 
PHP hulp

PHP hulp

18/04/2024 16:35:05
 
- Ariën  -
Beheerder

- Ariën -

28/08/2017 17:26:14
Quote Anchor link
Heb je dit al gelezen?
https://www.w3schools.com/php/php_functions.asp

Waar loop je op vast?
 
Jan te Pas

Jan te Pas

28/08/2017 17:34:25
Quote Anchor link
Hoi Ariën,
Ik loop vast omdat de functie terug moet gaan, een return. En dat eindigt volgens de voorbeelden met een vergelijking. Maar ik wil niets vergelijken. Dat snap ik even niet.

Toevoeging op 28/08/2017 17:39:17:

Ik had dit ervan gemaakt, maar weet niet of dit goed is, op deze manier. Graag een kennersblik.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
function maakafbeelding($n1, $n2, $n3) {

// Header ("Content-type: image/jpeg");

switch ($n3):
     case "rood":
     $image = imageCreateFromJPEG("images/rood.jpg");
     break;
     case "blauw":
     $image = imageCreateFromJPEG("images/blauw.jpg");
     break;
     case "groen":
     $image = imageCreateFromJPEG("images/groen.jpg");
     break;
     default:
     $image = imageCreateFromJPEG("images/basis.jpg");
endswitch;

$color = ImageColorAllocate($image, 255, 255, 255);
$color1 = ImageColorAllocate($image, 169, 169, 169);

//  Wrtie text to horizontal alignment for the names.
imagettftext($image, 70, 0, 150, 185, $color, 'font/HermesRegular.ttf', $n1);
imagettftext($image, 40, 0, 500, 240, $color1, 'font/HermesRegular.ttf', $n2);
// nu opslaan
imagejpeg($image, 'images/'.$n1.'.jpg', 80);
// vernietig file in geheugen
ImageDestroy($image);
return;
}
Gewijzigd op 28/08/2017 20:58:20 door Jan te Pas
 
- Ariën  -
Beheerder

- Ariën -

28/08/2017 19:57:38
Quote Anchor link
Ziet er op sich goed uit. Onthoud wel dat je dit in een apart bestand moet uitvoeren die de afbeelding toont. Uiteindelijk roep je die dus in je img-tag van je HTML aan.
 
Jan te Pas

Jan te Pas

28/08/2017 20:24:42
Quote Anchor link
Ik wilde de afbeelding maken als een formulier ingevuld is. Dan wordt de afbeelding weggeschreven, en vervolgens getoond. De oude php toonde direct de afbeelding. Maar nu stopt alles na de functie. Er wordt wel een bestand weggeschreven, maar de code gast niet verder. Tevens zie ik een klein blokje bovenin het scherm. Moet hier geen return in de functie komen?
 
- Ariën  -
Beheerder

- Ariën -

28/08/2017 20:31:27
Quote Anchor link
Comment je header, en kijk eens of je foutmeldingen krijgt.
 
Ben van Velzen

Ben van Velzen

28/08/2017 20:40:16
Quote Anchor link
De header hoort er sowieso niet. Je bent niet aan het weergeven, maar aan het opslaan.
 
Jan te Pas

Jan te Pas

28/08/2017 20:57:38
Quote Anchor link
Ik heb de header gecommented, en ik heb return; toegevoegd. En nu werk het.

Dank dank. Code pas ik hierboven aan. Wellicht willen anderen dit ook gebruiken.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.