Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.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/9/javascript/382.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、Javascript和SQL代码混淆_Php_Javascript_Sql - Fatal编程技术网

PHP、Javascript和SQL代码混淆

PHP、Javascript和SQL代码混淆,php,javascript,sql,Php,Javascript,Sql,嗨,我有这段代码,它将从数据库中提取客户端名称和地址。 它在下拉列表中回显每个条目的客户端名称(您在单词中缺少分号。它应该是。编辑:实际上不需要这样做,结尾?>会自动关闭语句 要添加更多内容,正如@Witty所说,您没有将$client变量存储在循环外部,因此无法访问它!请更改此设置!您创建了用于填充div元素的函数。但是,此时,该函数仅被定义,从未被执行 您需要为选择框设置onchange处理程序来调用javascript函数 另外,输出到javascript中的php在您的while循环之外

嗨,我有这段代码,它将从数据库中提取客户端名称和地址。
它在下拉列表中回显每个条目的客户端名称(
您在单词
中缺少分号。它应该是
。编辑:实际上不需要这样做,结尾?>会自动关闭语句


要添加更多内容,正如@Witty所说,您没有将$client变量存储在循环外部,因此无法访问它!请更改此设置!

您创建了用于填充div元素的函数。但是,此时,该函数仅被定义,从未被执行

您需要为选择框设置onchange处理程序来调用javascript函数


另外,输出到javascript中的php在您的while循环之外。

执行javascript时(客户端),php已经完成(服务器)。您需要在while循环内从php构建javascript,并将其发送到页面后面的浏览器:

// in while
$javascript .= "case $client:
document.getElementById('content').innerHTML = '<h2>$client</h2>
    <b>Postal Address:</b>$postal_add'
break;"

// later in page
switch (document.getElementById("combobox").value)
{    
<?php echo $javascript; ?>
}
//在
$javascript.=“案例$client:
document.getElementById('content')。innerHTML='$client
邮政地址:$邮政地址'
打破
//稍后在第页
开关(document.getElementById(“组合框”).value)
{    
}

使用ajax在下拉列表中选定选项的基础上更新div

 $('#dropdown').change(function() {
                    var id = $("#option").val();
                    var url = ajax action from where u will get the data for the selected option 
                    var data = {OptionID:id};
                    $.ajax({
                        type: 'POST',
                        url: url,
                        data: data,
                        success: function(data) 
                        { 
                            append the values in div here using div.innerhtml
                    });
            });

目前的问题是,javascript代码中的php变量没有传递任何内容。您的javascript只会在页面加载时执行。而不是在您选择选项时执行。您应该在select组件中添加一个
onchange
事件。问题更大。$client在中声明在他的while循环旁边,当他试图打印到JS时将无法访问。他也没有事件处理程序。@InGodITrust有关信息,关闭PHP块之前不需要分号。请参阅:“PHP代码块的结束标记自动暗示分号;不需要分号来终止PHP代码块的最后一行。"@RemcoOverdijk对此表示感谢,我不知道。将更新答案accordingly@WayneWhitty我可以为$client创建一个全局变量吗?@Janey它是在一个while循环中声明的。循环的每次迭代,前一个客户机都会被当前客户机覆盖,这意味着最后一个客户机就结束了。哟您应该将客户端存储在PHP数组中。您还需要将onchange事件处理程序添加到您的选择框中。对不起,我正在使用一个jquery库自动完成,我已经将它放在另一个文档中,所以change()正在被调用。我一直在尝试完成类似的任务。我需要将$javascript声明为全局变量吗?因为它仍然没有在javascript中被调用。是的,我很傻。您将PHP包装在函数中,所以将$javascript声明为全局变量,或者删除函数(…行)并直接运行PHP。
 $('#dropdown').change(function() {
                    var id = $("#option").val();
                    var url = ajax action from where u will get the data for the selected option 
                    var data = {OptionID:id};
                    $.ajax({
                        type: 'POST',
                        url: url,
                        data: data,
                        success: function(data) 
                        { 
                            append the values in div here using div.innerhtml
                    });
            });