Ihr Formular onsubmit
scheint falsch zu sein. onsubmit
sollte eine javascript function
sein keine php file
. Wenn Sie an eine PHP-Datei senden müssen, sollten Sie action
verwenden Attribut von form
. derzeit haben Sie es als report.php
angegeben . Sie müssen es möglicherweise in yearpdf.php
ändern oder umleiten in der report.php
BEARBEITEN 1:
Das Problem ist, dass Sie window.open
aufrufen die eine URL öffnet, aber Ihren Eingabewert nicht übermittelt. also beim ersten mal passiert nichts. dafür aber beim nächsten window.open
oder beim nächsten Refresh gibt es die Session-Variable aus report.php und ruft damit die Daten ab. Sie können einigen Optionen folgen
- Fügen Sie den Code von report.php ein, um die Übermittlung in yearpdf.php zu verarbeiten, und ändern Sie das Formular "action" in yearpdf.php. und Onclick-Funktion entfernen
- ODER Umleitung von report.php zu yearpdf.php am Ende von report.php. Für die Weiterleitung können Sie
header('Location: http://www.yoursite.com/yearpdf.php');
. und Onclick-Funktion entfernen - ODER ändern Sie Ihren JavaScript-Code, um so etwas zu senden:
window.open("yearpdf.php" + "?course_year=" + document.getElementsByName("course_year")[0].value));
und ändern Sie Ihr$r1=$_SESSION['year1'];
zu$r1=$_GET['course_year'];
in jahrpdf.php
Option 1 ist der empfohlene und einfache Weg. Option 2 ist ein Overhead und funktioniert nicht, wenn Sie HTML vor der Umleitung ausgeben. und Option 3 erzeugt ein unnötiges Fenster.