[Codeigniter-users] スクリプトの移植で

Back to archive index

Kenji Suzuki kenji****@gmail*****
2010年 2月 5日 (金) 10:54:39 JST


Kenji です。


On Thu, 4 Feb 2010 23:16:27 +0900
kaz <okui****@sanne*****> wrote:

> こんばんは kazです。
> こないだからVine4.2で使っていたものをPuppy431JPに移植していますが、よくわからないところがあります。
> Vine4.2(euc) CI_1.7.1 php-4.4.8(ServerAPI:Apache2.0 Handler) MySQL-server-5.0.27  apache2-2.2.3
> Puppy431JP(utf8)  CI_1.7.2  php-5.2.9(ServerAPI:CGI/FastCGI)  mysql5.1.35  Hiawatha 6.16
> 
> スクリプトはCI_1.7.1ではshift-JISでしたがPuppy431JPではUTF-8に変更しました。
> 
> webserverをApacheからHiawathaに変更したのでURLを少し変更しただけで動作したんですが一部動作しないところがありました。
> http://pana/localhost/?recording_list/title_list/index/kita20100204-1045-T1.mp3でアクセスしたら"500 InternalServerError"となってしまったのでアクセス先のtitle_list.phpスクリプトをみたら、そのなかでkita20100204-1045-T1.mp3を$fileで参照しているのですが何故かこれが"kita20100204-1045-T1_mp3"のようにピリオド"."がアンダーライン"_"に変更されてました。そのためでDBからデータを出せなかったようです。
> 
> なぜピリオド"."がアンダーライン"_"に変更されるのでしょうか、php.iniはみましたがそれらしきものが見当たらず悩んでいます。
> なにかあればご教示お願いします。

Hiawathaについて全く知りませんので、違うかも知れませんが。

たぶん、CI 内部の問題だと思います。URI に ? が含まれるからです。

config.php の
$config['uri_protocol'] = "AUTO";

を変えると動作が変わるかもしれません。


// Kenji


> title_list.phpの前半部分のみ(テストのため$fileを表示するように変更)
> <?php
> class Title_list extends Controller{
> 	function Title_list()
> 	{
> 		parent::Controller();
> 	}
> 	function index($file,$offset=0)
> 	{
> 		$this->page($file,0);
> 	}
> 	function page($file,$offset=0)
> 	{
> 		$this->load->library('table');
> 		$limit=20;
> 	echo $file; <-- kita20100204-1045-T1_mp3と表示される
> 	exit;
> 
> 		$this->db->limit($limit,$offset);
> 		$query=$this->db->query("SELECT * FROM recording_file where file='$file'");
> 
> _______________________________________________
> Codeigniter-users mailing list
> Codei****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users




Codeigniter-users メーリングリストの案内
Back to archive index