2011-11-25 46 views
0

我在php中使用ODBC连接了sqlserver。我能够连接数据库并进行查询,但在结果部分我没有得到正确的结果。如何在显示结果的php中删除此通知

我得到这个通知:

server connected 
Notice: Use of undefined constant CName - assumed 'CName' in  
D:\Installations\wamp\www\connectweb\newfile.php on line 21 
Turmeric 
    Notice: Use of undefined constant CName - assumed 'CName' in  
    D:\Installations\wamp\www\connectweb\newfile.php on line 21 
Neem 
Notice: Use of undefined constant CName - assumed 'CName' in 
D:\Installations\wamp\www\connectweb\newfile.php on line 21 
Coriander 
    Notice: Use of undefined constant CName - assumed 'CName' in  
    D:\Installations\wamp\www\connectweb\newfile.php on line 21 
Almond 

这是我的代码:

 <?php 

     $connect = odbc_connect('ServerDB','sa', 'admin'); 

    if (!$connect) { 
    die('Something went wrong while connecting to MSSQL'); 
    } 
     else 
    echo "server connected"; 
     $query = "SELECT CName FROM dbo.Conc"; 
     $result = odbc_exec($connect, $query); 

    while(odbc_fetch_row($result)){ 
     $name= odbc_result($result,CName); 
    echo("$name \n"); 
    } 

    ?> 

我是新来的PHP,我不知道我被困。 dbo.Conc表有一个字段CName。我使用odbc连接到数据库。

回答

4

From PHP docs:

为odbc_result第二个参数:

字段名称被检索。它可以是包含 所需字段的列号的整数;或者它可以是包含字段名称的字符串 。

你需要做的是这样的:

$name= odbc_result($result,'CName'); 
+0

@Akshara - 如果你的意思是CNAME是一个变量,而不是一个字符串,请确保您解决语法和定义它。请不要放弃看不见的方式,通过降低报告级别来放松心情。如果你只是想要一个标识列的字符串,看看xbonez的回答。 –