Ditt formulär onsubmit
verkar vara fel. onsubmit
bör vara en javascript-funktion
inte en php-fil
. om du behöver skicka till php-filen bör du använda action
attribut för form
. för närvarande har du angett det som report.php
. du kan behöva ändra den till yearpdf.php
eller omdirigera i report.php
EDIT 1:
problemet är att du anropar window.open
som öppnar en webbadress men inte skickar in ditt inmatningsvärde. så första gången händer ingenting. men i nästa window.open
eller vid nästa uppdatering finns sessionsvariabeln från report.php och hämtar därmed data. du kan följa några alternativ
- lägg in koden för report.php för att bearbeta inlämningen i yearpdf.php och ändra formuläret "action" till yearpdf.php. och ta bort onclick-funktionen
- ELLER Omdirigera från report.php till yearpdf.php i slutet av report.php. För omdirigering kan du använda
header('Location:http://www.yoursite.com/ yearpdf.php ');
. och ta bort onclick-funktionen - ELLER ändra din JavaScript-kod för att skicka något sånt här
window.open("yearpdf.php" + "?course_year=" + document.getElementsByName("course_year")[0].value)); och ändra din
$r1=$_SESSION['year1'];
till$r1=$_GET['kursår'];
i yearpdf.php
Alternativ 1 är det rekommenderade och enkla sättet. Alternativ 2 är en overhead och fungerar inte om du matar ut någon html före omdirigering. och alternativ 3 ger ett onödigt fönster.