Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.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 connect SQL server 2008-如何使用odbc\u connect设置utf-8_Php_Sql_Sql Server_Utf 8 - Fatal编程技术网

PHP connect SQL server 2008-如何使用odbc\u connect设置utf-8

PHP connect SQL server 2008-如何使用odbc\u connect设置utf-8,php,sql,sql-server,utf-8,Php,Sql,Sql Server,Utf 8,我喜欢使用ODBC连接sql server 2008 $virtual_dsn = 'DRIVER={SQL Server};SERVER=MyServerName;DATABASE=myDatabase'; $conn = odbc_connect($virtual_dsn,'sa','mypass') or die('ODBC Error:: '.odbc_error().' :: '.odbc_errormsg().' :: '.$virtual_dsn); if (!$conn){

我喜欢使用ODBC连接sql server 2008

$virtual_dsn = 'DRIVER={SQL Server};SERVER=MyServerName;DATABASE=myDatabase';
$conn = odbc_connect($virtual_dsn,'sa','mypass') or die('ODBC Error:: '.odbc_error().' :: '.odbc_errormsg().' :: '.$virtual_dsn);

if (!$conn){
    if (phpversion() < '4.0'){
      exit("Connection Failed: . $php_errormsg" );
    }
    else{
      exit("Connection Failed:" . odbc_errormsg() );
    }
}

// This query generates a result set with one record in it.
$sql="SELECT TOP 10 * FROM Mytable";

# Execute the statement.
$rs=odbc_exec($conn,$sql);

// Fetch and display the result set value.
if (!$rs){
    exit("Error in SQL");
}
while (odbc_fetch_row($rs)){


    $col1=odbc_result($rs, "name");
    echo "$col1 <br>";

}

// Disconnect the database from the database handle.
odbc_close($conn);

如何使用odbc\u connect设置utf-8谢谢

odbc\u exec不接受“设置名称utf8”作为第二个参数。第二个参数必须是查询

要仅为变量设置utf8,请使用或

警告:odbc_exec():SQL错误:[Microsoft][SQL Server本机客户端10.0][SQL Server]“名称”不是可识别的集合选项,SQL状态37000位于C:\xampp\htdocs\SQL\index.php中的SQLExecDirect的第32行


这不是错误,而是警告。但请检查手册以确保所有。

此输出是否输出到web浏览器?您是否在输出内容类型中设置了正确的字符集?另请参见@MichaelBerkowski I have
标题(“内容类型:text/html;charset=utf-8”)在顶部但不工作,并且使用iconv(“Windows-1256”、“UTF-8”、“$col1”)
仍然不工作?我的专栏有
排序规则:SQL\u Latin1\u General\u CP1\u CI\u AS,nvarchar(3000)
?这可能已经回答了您的问题:[如何设置SQL连接的字符集][1][1]:
 Warning: odbc_exec(): SQL error: [Microsoft][SQL Server Native Client 10.0][SQL Server]'names' is not a recognized SET option., SQL state 37000 in SQLExecDirect in C:\xampp\htdocs\sql\index.php on line 32
$col1=utf8_decode(odbc_result($rs, "name"));
$col1=odbc_result($rs, "name");
iconv("UTF-8", "CP1252", $col1);