Jude Hargan
Jude Hargan

Reputation: 33

Passing multiple variables to another page

I am trying to pass the variables from 3 dropdown menus to another page. The first dropdown (course) is dynamically loaded from the database and is passing to the other page fine. However the other 2 dropdowns, whose data is manually set is not passing to the other page.

<script>
function showCourse() {
    var course = document.getElementById('selectCourse').value;
    var year = document.getElementById('selectYear').value;
    var semester = document.getElementById('selectSemester').value;


        if (window.XMLHttpRequest) {
            // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        } else {
            // code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange = function() {
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
            }
        }
        xmlhttp.open("GET","generateTT.php?course="+course+"&year="+year+"&semester="+semester,true);
        xmlhttp.send(null);
}//showCourse   

Above is the script that gets the data and sends to other page

<?php
    $db_host = 'localhost'; $db_user = 'root'; $db_pass = 'golftdi105'; $db_name = 'finalproject';

    $con = mysqli_connect($db_host,$db_user,$db_pass, $db_name);
    if (!$con) {
        die('Could not connect: ' . mysqli_error($con));
    }   

    $sql = "SELECT CourseId, CourseName FROM courses";

    $result = mysqli_query($con, $sql) or die("Error: ".mysqli_error($con));

    while ($row = mysqli_fetch_array($result))
    {
        $courses[] = '<option value="'.$row['CourseId'].'">'.$row['CourseName'].'</option>';
    } 

Above is the dynamically loaded dropdown

<select class="StyleTxtField" id="selectYear" >
       <option value = "">Select Year</option>
       <option value = "">1</option>
       <option value = "">2</option>
       <option value = "">3</option>
       </select>

       <select class="StyleTxtField" id="selectSemester" >
       <option value = "">Select Semester</option>
       <option value = "">1</option>
       <option value = "">2</option>
       </select>


    <input type="submit" value= "submit" class="StyleButtonField" onclick="showCourse();" />

Above is the code that is hard coded.

$course = mysql_real_escape_string($_GET['course']);
$year = mysql_real_escape_string($_GET['year']);
$semester = mysql_real_escape_string($_GET['semester']);

Above is the code on the page the data is being passed to. I have tried echoing out these variables but only the COURSE variable is echoing out.

Thanks for any help, tried to include as much information as possible.

Upvotes: 0

Views: 92

Answers (2)

Arg0n
Arg0n

Reputation: 8423

All the options have the value set to "".. Set them to value="1" etc.

Upvotes: 0

Tony DeStefano
Tony DeStefano

Reputation: 829

You don't have any values set in your hard-coded select options.

<option value="1">1</option>
...

Upvotes: 4

Related Questions