Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 通过在选择框中切换选项,在不同的表列中显示不同的数据_Php_Html_Mysql_Jquery - Fatal编程技术网

Php 通过在选择框中切换选项,在不同的表列中显示不同的数据

Php 通过在选择框中切换选项,在不同的表列中显示不同的数据,php,html,mysql,jquery,Php,Html,Mysql,Jquery,我的问题如下: 我有一个ajax函数,它根据selectselected的选项,将数据库中的一条记录关联起来,并填充另一个输入,即p标记 我有两个必须填充的td标签。必须显示不同的数据,因此我希望,根据第一个选择上的输入,在第二个td上有输入y,在第三个输入z,依此类推。。。怎么可能呢?如果我尝试将数据附加到多个标记,那么相同的数据将显示在所有td列中 这里我附上我的代码 Main.php $(document).ready(function() { $('#L_NAME0').ch

我的问题如下:

我有一个ajax函数,它根据selectselected的选项,将数据库中的一条记录关联起来,并填充另一个输入,即p标记

我有两个必须填充的td标签。必须显示不同的数据,因此我希望,根据第一个选择上的输入,在第二个td上有输入y,在第三个输入z,依此类推。。。怎么可能呢?如果我尝试将数据附加到多个标记,那么相同的数据将显示在所有td列中

这里我附上我的代码

Main.php

$(document).ready(function() {  
    $('#L_NAME0').change(function() {
        var L_NAME0 = $("#L_NAME0").val();
        $.ajax({
        type: "POST",
        url: "elaborazione_dati.php",
        data: "L_NAME0=" + L_NAME0,
        dataType: "html",
        success: function(msg) {
            $("#L_AMT0").html(msg);
            $("#L_DESSERV").html(msg); 
        },
        error: function() {
            alert("Call failed");
        }
    });
 });    
});
Form.php

                                     <label for="L_DESSERV">Descrizione del servizio</label>
<p class="L_DESSERV" id="L_DESSERV"></p>
        </td

        <td class="h4">  
                                     <label for="L_AMT0">Costo del servizio</label>
<p class="L_AMT0" id="L_AMT0"></p>                
        </td>
elaborazione_dati.php

$tipologia_selezionata = $_POST['L_NAME0'];

$sql = "SELECT * FROM acquisti WHERE durata = '$tipologia_selezionata' ";
$q = $db->prepare($sql);
$q->execute();

$q->setFetchMode(PDO::FETCH_ASSOC);

while($caratt = $q->fetch()) {
    echo '<input readonly="readonly" type="hidden" name="L_NAME0" value="'.$caratt['durata'].'"/>';
    echo '<input readonly="readonly" type="hidden" name="L_AMT0" value="'.$caratt['prezzi'].'"/>';
    echo $caratt['prezzi']; ?> &euro; <?php
} 
有什么建议吗


非常感谢

您需要分割结果,最简单的方法是从PHP返回JSON,然后在js代码中处理它以生成字段和文本。 因此,在PHP中,类似于:

while($caratt = $q->fetch()) {
    $result->durata = $caratt[duratta];
    $result->prezzi = $caratt[prezzi];
}
echo json_encode($result); 
   $('#L_NAME0').change(function() {
        var L_NAME0 = $("#L_NAME0").val();
        $.ajax({
        type: "POST",
        url: "elaborazione_dati.php",
        data: "L_NAME0=" + L_NAME0,
        dataType: "json",
        success: function(data) {

            $("#L_AMT0").html("<input type='hidden' name='L_NAME0' value='"+data.duratta+"'/>"+data.duratta);
            $("#L_DESSERV").html("<input type='hidden' name='L_DESSERV' value='"+data.prezzi+"'/>"+data.prezzi+"&euro;"); 
        },
        error: function() {
            alert("Call failed");
        }
    });
然后在js中,类似于:

while($caratt = $q->fetch()) {
    $result->durata = $caratt[duratta];
    $result->prezzi = $caratt[prezzi];
}
echo json_encode($result); 
   $('#L_NAME0').change(function() {
        var L_NAME0 = $("#L_NAME0").val();
        $.ajax({
        type: "POST",
        url: "elaborazione_dati.php",
        data: "L_NAME0=" + L_NAME0,
        dataType: "json",
        success: function(data) {

            $("#L_AMT0").html("<input type='hidden' name='L_NAME0' value='"+data.duratta+"'/>"+data.duratta);
            $("#L_DESSERV").html("<input type='hidden' name='L_DESSERV' value='"+data.prezzi+"'/>"+data.prezzi+"&euro;"); 
        },
        error: function() {
            alert("Call failed");
        }
    });

但是,如果您将另一个名为L_NAME0的输入(select控件的id)放入,这似乎令人困惑,但是,嘿,这是您的代码…:

SQL查询返回多个结果还是只返回一个?给出一个例子,说明如果一切都按预期工作,表单应该是什么样子。SQL查询根据所选的第一个选项只返回一个。表格是这样写的:标题1 NVar 1Var NStill不清楚。从PHP中,您可以回显2个不可见字段和一个价格。因此,在td中,两个

中唯一可见的是价格。我举个例子的意思是,表单在调用前的外观以及调用后的外观示例。是的,奖励将是在一个td中可见的var,描述将在另一个td中显示,等等。。。