通过与数据库

时间:2017-09-26 10:41:13

标签: javascript php html

我有一个页面,用户可以在其中输入产品详细信息。有两个类别,Main和Sub。主类别包含父项值,例如“car”,子类别包含与主类别相关的值,例如“Ferrari”。大约有15个主要类别选择和100个子类别选择。

我希望能够选择父类别“摩托车”并让子类别自动更新其值以满足摩托车子类别,例如“Yamaha R1”,而不是具有与“摩托车”无关的子类别“比如”PS4“。

所有类别值都存储在数据库中。

为了让我这样做,我相信我需要从主类别中获取用户输入值,使用Javascript,使用Ajax将其发送到PHP,PHP执行sql查询,如(SELECT DISTINCT sub-cat from PRODUCT)其中MainCAt =“CAR”);获取返回的任何值,将该值发送回javascript然后我将能够更改子类别值。

但是我被卡住了,我不知道php是否获得了Main类别值。即使它是我不知道接下来该做什么。 任何建议都将不胜感激。

此外,欢迎您更改标题,因为我找不到更好的标题。

HTML:

<select name="Cat" id="Cat" onchange="subCatActivation()">
    <option value="BlanketsAndTowels">Blankets And Towels</option>
    <option value="Candles" onclick="">Candles</option>
    <option value="Cards">Cards</option>
    <option value="Children">Children</option>
    <option value="Christmas">Christmas</option>
    <option value="Cushions">Cushions</option>
    <option value="Frames">Frames</option>
    <option value="Hand-Made">Hand-Made</option>
    <option value="Lanterns">Lanterns</option>
    <option value="Outside">Outside</option>
    <option value="Soaps">Soaps</option>
    <option value="Vintages">Vintages</option>
</select>

JAVACRIPT:

function subCatActivation(){
    var selectedBox = document.getElementById("Cat");
    var val = selectedBox.options[selectedBox.selectedIndex].value;
    var httpRequest;
    httpRequest = new XMLHttpRequest();
    if(!httpRequest){
        return false;
    }
    httpRequest.onreadystatechange = function(){
        if(httpRequest.readyState === XMLHttpRequest.DONE && httpRequest.status === 200)
        {
            var response = JSON.parse(httpRequest.responseText);
        }
    }
    httpRequest.open('POST', 'index.php');
    httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    httpRequest.send('catVal=' + val);

    updateLayout();

}

PHP:

if (isset($_POST['catVal'])){
    echo "test";
    exit();
}

0 个答案:

没有答案