У вас есть несколько синтаксических проблем с вашим кодом PHP.
Во-первых, суперглобальный PHP для извлечения данных формы должен быть либо $_POST
, либо $_GET
, в зависимости от вашего <form method="post">
, если method
атрибут отсутствует или имеет значение method="get"
, вам нужно будет использовать $_GET
.
Во-вторых, PHP учитывает регистр при доступе к индексам массива, поэтому, поскольку вы используете <input name="Chpinummer">
, ваш PHP долженсоответствуют имени поля формы.Таким образом, вы использовали бы $_POST['Chpinummer']
для извлечения переданного значения, при условии, что метод формы действительно method="post"
.
В-третьих, использование $$
с переменной PHP приведет к тому, что значение вернет ссылку на переменная переменная .Поскольку вы объявляете цвет imagecolorallocate
как $black
, вам необходимо использовать $black
, а не $$black
.
Наконец, нет способа узнать, какие значения объявлены как $hvalpe_data
, так как выне предоставил пример в вашем вопросе.Поэтому для краткости я удалил ссылки на них, чтобы сосредоточиться только на конкретной проблеме.
$image = imagecreatefrompng('stamtavle.png');
imagealphablending($image, true);
$black = imagecolorallocate($image, 150, 0, 0);
imagefttext($image, 40, 0, 850, 390, $black, 'verdana.ttf', $_POST['Chpinummer']);
Кроме того, рекомендуется указывать полный (абсолютный) путь к ресурсам ссылочных файлов,то есть: /full/path/to/file
.Если ваши файловые ресурсы находятся в том же каталоге, что и ваш PHP-скрипт.то есть: /var/www/public/script.php
и /var/www/public/stamtavle.png
вы должны использовать __DIR__ . '/stamtavle.png'
.Для получения дополнительной информации см __DIR__
$image = imagecreatefrompng(__DIR__ . '/stamtavle.png');
imagealphablending($image, true);
$black = imagecolorallocate($image, 150, 0, 0);
imagefttext($image, 40, 0, 850, 390, $black, __DIR__ . '/verdana.ttf', $_POST['Chpinummer']);