这是关于https://stackoverflow.com/questions/1791082/utf-8-php-and-xml-mysql ,我仍然试图让我的头。 我有几个单独的问题,希望能帮助我理解如何解决我遇到的问题。 我正在尝试从数据库中读取值并将其输出到UTF-8格式的文件中。 但是我有编码问题,所以我想我会去掉所有的代码,然后开始: $string = "Otivägen"; // then output to a file. 但在vim我甚至不能input该string,每当我粘贴它,我得到Otivägen 我试图创build一个空白的PHP文件只有该string,并上传,但是当我再次Otivägen文件,我得到Otivägen 。 我的问题是… 1) Why is `vim` displaying it like this? 2) If the file is downloaded would it display correctly if an application was expecting UTF-8? 3) How can I output this string into a file that will eventually […]
我有一个MySQL数据库,它最初是使用默认的latin1字符集和latin1_swedish_cisorting规则设置的。 我曾经这样使用数据库,直到我注意到我的生产网站上有奇怪的字符,这个字符是由我的开发机器导出的数据库驱动的。 此时,我将数据库和表的默认字符集更改为utf8 ,将sorting规则更改为utf8_unicode_ci ,将每个表内的latin1数据转换为utf8 (使用“convert data”选项),并将数据库导出为单个SQL文件使用HeidiSQL。 当在记事本++中打开生成的SQL文件时,几个字符呈现不正确。 例如,虚线( – )显示为– ,带重音符号(e)的e显示为“ é 。 我将文件的编码从ANSI更改为UTF-8 (使用Notepad ++中的编码菜单选项),并且正确地呈现违规字符。 我保存了新的utf8编码的SQL文件,并尝试将内容导入到我的生产服务器上的MySQL数据库中。 导入过程失败,出现以下错误: /* SQL Error (1064): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?# ——————————————————– # Host: ' at line […]
我正在使用Xpdf的pdftotext从Ubuntu上的一些希伯来语pdf文件中获取文本。 在我的本地机器上,这工作得很好。 然后,我试图在另一台机器上执行此操作,并且希伯来字符不显示在文本文件中。 我证实我有语言包(见下面为什么我这么认为)。 我还能在哪里find这个问题? >> tail -2 /etc/xpdf/xpdfrc include /etc/xpdf/includes >> cat /etc/xpdf/includes # This file was automatically generated by /usr/sbin/update-xpdfrc. # Instead, add or remove files in /etc/xpdf/ then run # /usr/sbin/update-xpdfrc to regenerate this file. include /etc/xpdf/xpdfrc-latin2 include /etc/xpdf/xpdfrc-thai include /etc/xpdf/xpdfrc-greek include /etc/xpdf/xpdfrc-turkish include /etc/xpdf/xpdfrc-arabic include /etc/xpdf/xpdfrc-hebrew include /etc/xpdf/xpdfrc-cyrillic >> cat /etc/xpdf/xpdfrc-hebrew […]
编辑:这是一个语法错误 – IP不应该在这一行。 所以与编码无关。 启动错误:“108.174.194.111 mta10.domain.com”中的错误:域中的无效字符(“',0x20) 我试图启动一个程序(PowerMTA)时得到这个错误。 我编辑Windows下的configuration文件,我猜它的一些编码错误? 我尝试使用dos2unix,但仍然得到相同的错误。 这个0x20是空间的代码。 (错误信息中的string空间应该在那里)我也在linux下编辑了这个文件,但是仍然是一样的。 有任何想法吗? tyia
服务器运行Windows 2003与IIS 6.0.3790.1830 x86(iis.dll)。 我的数据库服务器是Microsoft SQL Server 2000.我的PHP版本是5.3。 原始应用程序托pipe在appserv1 ,数据库位于dbserv1 。 它工作正常,一切都调整好,运行良好。 需要将相同的应用程序(不同的模块)放在另一台服务器上,用于其他用途,所以我复制了数据库到dbserv2 ,configuration了appserv2来托pipe应用程序,所以我实现了两个几乎相同的副本。 dbserv1和dbserv2使用相同的编码, appserv1和appserv2都使用相同的PHPconfiguration在IIS6上。 我也尽我所能在IIS中有相同的设置。 我也确保了我使用http-equiv传递了HTTP头文件和meta标签中的编码信息。 这两个应用程序使用utf-8。 问题是,即使浏览器正确检测到页面的UTF-8编码,应用程序的副本也不会在浏览器中正常显示非ASCII字符。 首先,我认为这是一个数据库问题,因为MSSQL 2000不支持UTF-8,而是使用UCS-2,但是当我redirect到appserv2上的应用程序与appserv2上的数据库一起工作时,相同的编码问题。 这就是为什么我问我能以什么方式使它工作。 感谢您的阅读。
在哪里可以configuration(如果可能)Sql Server 2005如何“解释”通过TDS协议发送的string数据的字符编码(在这种情况下,从Web应用程序)? 也许如果我描述整个有问题的情况会更好: 当插入区域性字符如:,Ą,,,,((等等 – 波兰语区域字符)时,通过TDS协议 – 从Web应用程序中“插入到”查询,它们在mssql表中显示为:a ±),A(而不是Ą),c,L,z等 目标列types是nvarchar(MAX) 我查看了“槽线”(使用WireShark)发送的数据,所有数据都使用UTF-16编码发送,看起来没问题:例如,Ą以U + 0104发送。 当将相同的string插入到本地数据库实例(Microsoft SQL Server Express Edition)时,它可以正常工作,但是在远程主机上(在客户位置 – 它是Microsoft SQL Server标准版64位)发生此“解除区域化”。 这就是为什么我想这是关于SQL Server的configuration,因为唯一的区别是从Web应用程序端select其他的SQL Server(所以TDS的驱动程序,configuration,连接设置等是相同的)。 我希望有人能帮助我。
当我试图访问像%20xyz.jpg这样的url时,我得到了一个404错误。 当我查看日志时,Apache将%20转换为\ xa9(每个URL编码的字符都转换为它们的\ xXY值,而不是正确的字符(在这种情况下是空格)。 我尝试了AllowEncodedSlashes但是这不起作用。 我应该把哪个Apache指令放在我的VirtualHost或.htaccess中来做类似的事情 /img/cms/MISC/Certifi%C3%A9%20AB.jpg 成为: /img/cms/MISC/Certifié AB.jpg 并不是 : /img/cms/MISC/Certifi\xc3\xa9 AB.jpg 这是我的Apacheconfiguration: <VirtualHost *:80> ServerName mywebsite.com Redirect / http://www.mywebsite.com/ </VirtualHost> <VirtualHost *:80> DocumentRoot "/home/mywebsite.com/www/" ServerName www.mywebsite.com <Directory "/home/mywebsite.com/www/"> Options Includes FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/mywebsite.com.error.log LogLevel warn CustomLog /var/log/apache2/mywebsite.com.access.log combined ServerSignature Off </VirtualHost> 而我的.htaccess(由Prestashop生成): # .htaccess […]
最近我有一个关于urlencode的奇怪问题,我碰巧在url的pathinfo和querystring部分都有一个“+”。 例如: http://example.com/A + B?s=C + D 我在firefox中使用tamperdata,可以确保thafox firefox已经将url编码为以下内容: http://example.com/A%20+%20B?s=C%20+%20D 而在服务器端,我有Apache的URL重写启用以下指令: RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !=/favicon.ico RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] 然后,在PHP中,我得到了以下几点: $_REQUEST['q'] = 'A B'; $_REQUEST['s'] = 'C D'; $_SERVER['QUERY_STRING'] = 'q=A + B&s=C%20+%20D'; 正如我们所知,php会自动使用urldecode来将查询stringparese到$ _REQUEST超级variables,这就解释了为什么'A + B'变成了'AB','C + D'变成了'C D''。 url重写必须解码所有的字符才能进行rewirte映射。 FLAG B将有助于在映射后将其重新映射。所以重写规则变成了跟随着B FLAG的应用。 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d […]
我有一个问题,如何重写一个url,并在网站上有一个很好的答案,它的工作,但有一些字符,我无法find如何编码和iis根本不喜欢 原来的问题是这样的: 如何使用iis中的特定variablesredirect特定的url 问题中的字符是: http://www.domain.com/login.aspx?TargetURL=%2fxxx%2fDefault.aspx%3f%26RoomID%3dyyy%26GameID%3dxxx&RoomID=yyy&GameID=xxx` 我尝试了几乎所有的networking来解决这个问题,但是一些像=和/这样的字符不起作用。 我知道,例如,用& 工作,但其他人是真正的问题。
通过参数“-movflags frag_custom”,我的avconv说 [mp4 muxer @ 0x8d05f60] [Eval @ 0x7fffcc763f00]未定义的常量或丢失'('in'frag_custom'[mp4 muxer @ 0x8d05f60]无法parsing选项值“frag_custom” [mp4 muxer @ 0x8d05f60]错误设置选项movflags值为frag_custom。 但与avconv编译与mp4 muxer,所以最新的问题是什么? 版本是avconv 0.8.1-4:0.8.1-0ubuntu1