Javascript 使用ajax和php的两个DropDownList

Javascript 使用ajax和php的两个DropDownList,javascript,php,mysql,ajax,oracle,Javascript,Php,Mysql,Ajax,Oracle,我有一个查询,它返回一个数组,我在第一次选择时显示它,然后当您单击选择的一个选项时,它返回所选名称的id,因此我在生成与第一次选择匹配的最后一次选择时遇到问题,这是代码: <html> <head> <script language="javascript" type="text/javascript"> function ajaxFuncio(selectobj){ var i = selectobj.selectedIndex; var

我有一个查询,它返回一个数组,我在第一次选择时显示它,然后当您单击选择的一个选项时,它返回所选名称的id,因此我在生成与第一次选择匹配的最后一次选择时遇到问题,这是代码:

<html>
<head>

<script language="javascript" type="text/javascript">

function ajaxFuncio(selectobj){
    var i = selectobj.selectedIndex;
    var idOptionFirst = selectobj[i].getAttribute('id');
    return idOptionFirst;
    //alert(idOptionFirst);
}

function secondSelect(){
    var ajaxRequest; 
    try{
    // Opera 8.0+, Firefox, Safari
        ajaxRequest = new XMLHttpRequest();
    }
    catch (e){
    // Internet Explorer
        try{
            ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e){
            try{
                ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e){
                alert("En el teu navegador no funciona!");
                return false;
            }
        }
    }

    // Crear una funció que envia dades al servidor 
    //i actualitza la seccio div
    ajaxRequest.onreadystatechange = function(){
        if(ajaxRequest.readyState == 0){
            var ajaxDisplay = document.getElementById('info');
            ajaxDisplay.innerHTML = ajaxRequest.responseText;
            alert("asdf");
        }
    }

    // Agafem els valors passats
    var selectPrimer = document.getElementsByName('selActi');
    var codi = ajaxFuncio(selectPrimer);
    var cadenaconsulta = "?idTActivitat=" + codi ;
    ajaxRequest.open("GET", "test_ajax.php" + cadenaconsulta, true);
    ajaxRequest.send(null); 
}

</script>
</head>
<body>

<?php

$conn=oci_connect('*******','****','****')
    or die("Failed to connect to Oracle: ".mysqli_error());

//PRIMER SELECT
$sqlFirstSel=oci_parse($conn, 'SELECT * FROM ACTIVIDAD');
oci_execute($sqlFirstSel);

$cadena = "<form id='formActis' method='POST' action='test_ajax.php'>";
$cadena .= "<table>";
$cadena .= "    <tr>";
$cadena .= "        <td>";
$cadena .= "            <select name='selActi[]' onChange='ajaxFuncio(this);'>";
$cadena .= "                <option selected>Selecciona l'Activitat:</option>";
$cadena .= "                <option></option>";
while (($row=oci_fetch_array($sqlFirstSel,OCI_BOTH))!=false){
    $cadena.="              <option name='idFirstSel' id='".$row['ID']."'>".$row['NOM']."</option>";
}
$cadena .= "            </select>";
$cadena .= "        </td>";
$cadena .= "        <td>";
$cadena .= "            <input type='button' onclick='secondSelect();' value='enviar'/>";
$cadena .= "        </td>";
$cadena .= "    </tr>";
$cadena .= "</table>";

//SEGON SELECT
$sqlSeconSel=oci_parse($conn, 'SELECT * FROM TIPO_ACTIVIDAD WHERE ID_ACTIVIDAD='.$idTActivitat.';');
oci_execute($sqlSeconSel);

$cadena .= "<table>";
$cadena .= "    <tr>";
$cadena .= "        <td>";
$cadena .= "            <select name='selTActi[]'>";
$cadena .= "                <option selected>Selecciona Tipus Activitat:</option>";
$cadena .= "                <option></option>";
while (($row=oci_fetch_array($sqlSeconSel,OCI_BOTH))!=false){
    $cadena.="              <option name='idSecondSel' id='".$row['ID']."'>".$row['NOM']."</option>";
}
$cadena .= "            </select>";
$cadena .= "        </td>";
$cadena .= "    </tr>";
$cadena .= "</table>";
$cadena .= "</form>";

echo $cadena;
echo "<div id='info'></div>";
?>

</body>
</html>
以及我可以在浏览器上看到的带有结果的图片:


在查询字符串中使用之前是否定义了
$idTActivitat
?否,因为我在javascript中使用它来处理url:var-selectPrimer=document.getElementsByName('selActi');var codi=ajaxFuncio(选择引物);var cadenaconsulta=“?idTActivitat=“+codi;打开(“GET”,“test_ajax.php”+cadenaconsulta,true);ajaxRequest.send(空);这似乎是你的问题。在查询中使用它之前,需要在PHP脚本中定义它
Notice: Undefined variable: idTActivitat in C:\xampp\htdocs\UF4\test_ajax.php on line 85

Warning: oci_execute(): in C:\xampp\htdocs\UF4\test_ajax.php on line 86

Warning: oci_fetch_array(): in C:\xampp\htdocs\UF4\test_ajax.php on line 94