formuláře – vložení hodnoty do proměnné ze Select Boxu
- hnus
- Člen | 6
zdravim,
chtel bych se prosim zeptat na nejlepsi zpusob jak ze Select Boxu definovat
promennou.
jsem zacatecnik, kod nize je takova skladacka z ruznych kodu. Potreboval bych do promennych $domaci a $hoste dostat textovou hodnotu tech tri pismen (napr ‚spa‘) – pripadne to pole zapsat jinym zpusobem.
Jako dalsi vec bych chtel po zmacknuti tlacitka a provedeni te funkce, vratit zpet ve formularich ty setPrompt a vypsat text nad formularem „HOTOVO“. Vim ze je funkce reset, ale muze fungovat i kdyz je napsana az za echo $form;?
diky
<?php
include ("vendor/autoload.php");
use Tracy\Debugger;
use Nette\Utils\Image;
use Nette\Forms\Form;
use Nette\Utils\Arrays;
// formulare
$form = new Form;
$form->setAction('');
$form->setMethod('GET');
$teams = [
'spa' => 'Sparta',
'kom' => 'Kometa',
'lib' => 'Liberec',
'kld' => 'Kladno',
'tri' => 'Trinec',
];
$form->addSelect('home_team', 'Domácí:', $teams)
->setPrompt('Vyber domácí tým');
$form->addSelect('away_team', 'Hosté:', $teams)
->setPrompt('Vyber hostující tým');
$form->addSubmit('submit', 'Odeslat');
echo $form;
if ($form->isSuccess()) {
echo 'Formulář byl správně vyplněn a odeslán';
$values = $form->getValues();
spojObrazky();
dump($values);
}
// spojeni obrazku
function spojObrazky(){
$team1 = $domaci . ".jpg";
$team2 = $hoste . ".jpg";
$team1_img = Image::fromFile($team1);
$team2_img = Image::fromFile($team2);
$image = Image::fromBlank(1280, 627);
$image->place($team1_img, 0, 0); // vložíme na pozici 0px, 0px
$image->place($team2_img, 640, 0); // vložíme na pozici 640px, 0px
//$image->send(); //ukazat
$image->save('final.jpg'); //ulozit
}
- dms
- Člen | 94
Ahoj, musíš ta data do funkce spojObrazky nějak předat, jinak o nich ta funkce neví. Úplně jednouše:
<?php
function spojObrazky($values) {
$domaci = $values->home_team;
$hosta = $values->away_team;
...
}
?>
a pak samozřejmě v horní části kódu do této funkce z formuláře poslat
<?php
if ($form->isSuccess()) {
$values = $form->getValues();
spojObrazky($values);
}
?>