Вашият формуляр onubmit
изглежда грешно. onubmit
трябва да бъде javascript функция
не е php файл
. ако трябва да изпратите php файл, трябва да използвате action
атрибут на form
. в момента сте го дали като report.php
. може да се наложи да го промените на yearpdf.php
или пренасочване в report.php
РЕДАКТИРАНЕ 1:
проблемът е, че извиквате window.open
който отваря URL адрес, но не изпраща вашата входна стойност. така че първия път нищо няма да се случи. но все пак на следващия window.open
или при следващото опресняване има променливата на сесията от report.php и по този начин извлича данните. можете да следвате някои опции
- поставете кода на report.php, който да обработи подаването в yearpdf.php и променете формуляра "действие" на yearpdf.php. и премахнете функцията onclick
- ИЛИ Пренасочване от report.php към yearpdf.php в края на report.php. За пренасочване можете да използвате
header('Местоположение:http://www.yoursite.com/ yearpdf.php ');
. и премахнете функцията onclick - ИЛИ модифицирайте своя JavaScript код, за да изпратите нещо подобно
window.open("yearpdf.php" + "?course_year=" + document.getElementsByName("course_year")[0].value));код> и променете своя
$r1=$_SESSION['year1'];
към$r1=$_GET['course_year'];
в годинаpdf.php
Вариант 1 е препоръчителният и прост начин. Вариант 2 е излишен и няма да работи, ако изведете html преди пренасочване. и опция 3 създава ненужен прозорец.