Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.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
Javascript 通过Php通过ajax从MSSQL服务器获取数据_Javascript_Php_Jquery_Sql Server_Ajax - Fatal编程技术网

Javascript 通过Php通过ajax从MSSQL服务器获取数据

Javascript 通过Php通过ajax从MSSQL服务器获取数据,javascript,php,jquery,sql-server,ajax,Javascript,Php,Jquery,Sql Server,Ajax,我使用AJAX使用Php从MSSQL server 2017检索数据,并在文本框中显示这些值。一个MSSQL查询正在给出,但另一个没有给出。 在data.php中,当这里的$stmt等于从rmmaster中选择rmtype时,数据将加载到AJAX.php中的文本框中,但当这里的$stmt等于从rmmaster中选择*时,其中rmnumber='102'没有值。但是,如果在SQLManagementStudio中运行这两个查询,则这两个查询都正常工作并有结果 连接中没有错误,仅此操作可用于一个,而

我使用AJAX使用Php从MSSQL server 2017检索数据,并在文本框中显示这些值。一个MSSQL查询正在给出,但另一个没有给出。 在data.php中,当这里的$stmt等于从rmmaster中选择rmtype时,数据将加载到AJAX.php中的文本框中,但当这里的$stmt等于从rmmaster中选择*时,其中rmnumber='102'没有值。但是,如果在SQLManagementStudio中运行这两个查询,则这两个查询都正常工作并有结果

连接中没有错误,仅此操作可用于一个,而不用于另一个

这是AJAX.php

引导示例 按钮 $'element'。单击,函数E{ $.ajax{ url:'data.php', 键入:“GET”, 成功:functiondata{ 警报数据; $'usr'.valdata; } }; };
您的代码总是读取第一个结果行,然后不处理它,基本上忽略它

此If从结果集中读取第一行

if( $stmt->fetch() === false) {
    die( print_r( sqlsrv_errors(), true));
}
因此,删除IF,当您仅选择一行时,它将起作用;当您选择多行时,它还将返回所有行

include_once ('home.php');
if( $conn === false ) {
    die( print_r( sqlsrv_errors(), true));
}


$name="102";

$stmt = $conn->query("SELECT * FROM rmmaster where rmnumber='$name'"); // this is not giving results
//$stmt = $conn->query("SELECT rmtype FROM rmmaster"); // this is giving answers

if( $stmt === false ) {
    die( print_r( sqlsrv_errors(), true));
}

/*
if( $stmt->fetch() === false) {
    die( print_r( sqlsrv_errors(), true));
}
*/

while ($row = $stmt->fetch()){
    echo ($row['rmtype'].$name);   
}

但是在这里,一个查询正在获取结果,而另一个则没有。表中是否有一行rmnumber=102?rmnumber是整数还是varchar/text?是的,102有一条记录,它是char格式的。我尝试以整数和字符格式传递102。您是否尝试将102硬编码到调试查询中,例如从rmmaster中选择*其中rmnumber='102'。尝试此操作时会发生什么?是的,我尝试过,但它不会将值加载到文本框中。但当在管理工作室中输入时,它会发出记录。谢谢!,是的,这就成功了。但是,有没有其他方法可以确定查询是空的还是有值的?在删除查询之前的IF应该这样做