トップページ⇒php
1001コメント330KB

【PHP】下らねぇ質問はここに書き込みやがれ 41

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/03/06(火) 15:39:46ID:naBsdy1Z
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 40
http://pc11.2ch.net/test/read.cgi/php/1172151461/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ http://pc10.2ch.net/php/subback.html
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで http://pc10.2ch.net/db/subback.html
0653nobodyさん2007/03/13(火) 01:45:19ID:???
犬阪人はチョソ。
0654nobodyさん2007/03/13(火) 01:45:49ID:???
PHPに限らずだけど、web開発してると必ずネックになってくる > SSL対応

>>652
レン鯖のサービスはあくまで再販だから、コストを下げるという観点からは無意味。
っていうか鯖屋のピンハネ分が乗るので余計にコスト高。
0655nobodyさん2007/03/13(火) 01:54:20ID:???
>>654
こういうやつだったら安く済むんじゃないの
ttp://www.asj.ne.jp/techinfo/ssl_asj.html
0656nobodyさん2007/03/13(火) 01:57:45ID:WB3nwZIO
SimpleXMLで
<cat>
<name>mike</name>
<name>tama</name>
<name>buchi</name>
</cat>
を
SimpleXMLで
<cat>
<name>mike</name>
<name>tama</name>
<name>buchi</name>
</cat>
を
SimpleXMLで
<cat>
<name>mike</name>
<name>tama</name>
<name>buchi</name>
</cat>
を
<cat>
<name>mike</name>
<name>tama</name>
</cat>
に変更するときはどうすればいいのでしょうか?
0657nobodyさん2007/03/13(火) 02:02:05ID:???
>>656
日本語でおk
0658nobodyさん2007/03/13(火) 02:03:53ID:???
>>655
それも海外業者の再販でしょ。あと携帯対応がイマイチねぇ・・・。

そもそも一番ユーザの多いドコモに対応するには、
事実上の独占企業VeriSignしか選択肢が無いのが痛い。

社民や共産は下らない言葉狩りとかやってないで、こういう見えにくい部分を追及してほしいぜ。
06596562007/03/13(火) 02:12:17ID:WB3nwZIO
すいません。コピペしすぎました。
正しいのはこれです。
SimpleXMLで
<cat>
<name>mike</name>
<name>tama</name>
<name>buchi</name>
</cat>
を
<cat>
<name>mike</name>
<name>tama</name>
</cat>
に変更するときはどうすればいいのでしょうか?
0660nobodyさん2007/03/13(火) 02:37:01ID:???
ラピッドSSL安くないか?
0661弟子 ◆xSK1SiC5MI 2007/03/13(火) 02:58:43ID:TI4gTUTc
10日で覚えるPHPて本買ったけどPHPが動作する環境すら得られません
XPなんだけどどこから手をつけるべきですか?
0662nobodyさん2007/03/13(火) 03:18:05ID:???
>>661
そんな調子じゃ10日は無理だなw買う本間違えたんじゃない?
とりあえず、最低限Apache+PHPをインストールしておいで。
個々のインストールがめんどくさかったり
よくわからないならXAMPPを入れたほうがいいかも。
そしたら次はフリーのPHP用IDEを入れる。
EclipseのPHPプラグインあたりがデバッグも容易だしおすすめ。
0663弟子 ◆xSK1SiC5MI 2007/03/13(火) 03:19:36ID:TI4gTUTc
>662ありがとう100日かかっても覚えられる気がしない罠w

0664弟子 ◆xSK1SiC5MI 2007/03/13(火) 03:38:56ID:TI4gTUTc
>662 XAMPPでzipとなんかとexeファイルダウンロードしました

あとはhttp://www.atmarkit.co.jp/fjava/rensai3/eclipsejava01/eclipse01.html#40

をダウンロードでOKですか?
0665nobodyさん2007/03/13(火) 03:53:58ID:???
>>664
PHPは仕事で使うのか?

もしそうならそんなにあわてなくても良いじゃん。
ゆっくりやればいいよ。

俺はXAMPP+EclipseよりはPHPとApacheだけ
入れたほうが良いと思うんだけどどう?
0666nobodyさん2007/03/13(火) 04:00:27ID:???
俺ならxamppとphpエディタを勧める。
0667nobodyさん2007/03/13(火) 05:49:39ID:???
phpエディタの雑多な感じは正直好きではないが、
初心者ならphpエディタのほうがいいかもね。
Eclipseに慣れている人なら当然そっちのほうがいいけど、
元々あれはJava開発者向けだし、最初の設定やらが若干めんどくさいからね。
0668nobodyさん2007/03/13(火) 08:55:58ID:???
>>664
ローカルに環境作らないで、無料のPHP使えるサーバー借りて勉強すればいいんでない?
ある程度PHPを覚えてくると、今までさっぱりだったapacheやphpの設定も不思議と見えてくる。
0669nobodyさん2007/03/13(火) 09:18:01ID:???
いきなり共用鯖使わせる気かよ
0670nobodyさん2007/03/13(火) 09:31:45ID:???
無限ループで鯖ダウン\(^o^)/オワタ
0671nobodyさん2007/03/13(火) 09:33:48ID:???
回答者もゆとり世代になったか
0672nobodyさん2007/03/13(火) 09:57:54ID:???
無限ループごときでダウンするレン鯖も今時無いと思うが
0673nobodyさん2007/03/13(火) 10:31:36ID:8uoeVZuh
ケータイサイトで
<form method="post"action="a.php">..</form>
のようなログインフォームを用意しています。
パスワードを入力してログインすると
ログイン後のページが表示されるようになっているのですが
一部端末でログインできない(ログインボタンを押しても
ログイン画面が再表示されてしまう)
という問題が現象が発生しています。

端末は V302H V603SH A5502K W32S 702NH などです
(端末の設定に依存するのかもしれません
回避策などありましたら教えてください。
0674nobodyさん2007/03/13(火) 10:40:10ID:???
>>640
MySQLのバージョンによってうまくいかない可能性があるが
set names のクエリを接続したあと1回必ず送るようにすると
うまくいくかも

これでもうまくいかないときは素直にmy.cnfを書き換えたほうがいい
書き換えてもうまくいかないときはalterでデータベースの文字コードを
設定しなおしたらいい
0675nobodyさん2007/03/13(火) 10:57:30ID:???
>>673
回避策というかバグなんだからデバッグしろよ
とりあえずa.phpでprint_r($_POST);とかして値がわたってるかチェックかな
0676nobodyさん2007/03/13(火) 11:00:42ID:???
>>672
今時無いと思うが、ローカルでテストするようにしろ

だろ?お前も推奨派かタコが
0677nobodyさん2007/03/13(火) 11:03:20ID:8uoeVZuh
>>675
返答ありがとうございます
例に出した機種以外では渡っているようでした
0678nobodyさん2007/03/13(火) 11:06:42ID:???
>>677
昔の携帯はPOST使えないよ
0679nobodyさん2007/03/13(火) 11:08:16ID:???
>>678
どんだけ昔なのか機種名、またはソース教えてくれよ
06806402007/03/13(火) 11:09:32ID:???
>>674
ありがとうございます!無理なのかと思いました・・。

とりあえずレン鯖なんで、my.cnfの書き換えは出来ないのですが、
以下の分を環境設定ファイルに書き足したところ、登録・表示できました。
$set_names = mysql_query("SET NAMES ujis", $conn);

少ししか試していませんが、特に重いと言う事もないので、これで乗り切ろうと思います。
アドバイスありがとうございました。
0681nobodyさん2007/03/13(火) 11:17:31ID:8uoeVZuh
昔と言ってもログインできないのは
2年ほど前の機種です
0682nobodyさん2007/03/13(火) 11:20:37ID:???
>>623
どうもありがとうございました
書き出す場合は中身が構造化されたテキストっぽいから自分でやっつけるしかないみたいですね
0683nobodyさん2007/03/13(火) 11:21:17ID:???
>>673
V302H V603SH A5502K W32S 702NH
で検索したけど1個しかヒットしなかった
http://www.google.co.jp/search?sourceid=navclient-ff&ie=UTF-8&rls=GGGL,GGGL:2006-26,GGGL:ja&q=V302H+V603SH+A5502K+W32S+702NH+
0684nobodyさん2007/03/13(火) 11:25:18ID:???
formのname指定してみ。
携帯によってはパラメーターちゃんと設定しないと送信されなかったりもする。
0685nobodyさん2007/03/13(火) 11:26:59ID:???
>>683
ほぼ同じ文章でワロタwww
0686nobodyさん2007/03/13(火) 11:27:34ID:8uoeVZuh
ありがとうございます!
やってみます!
0687nobodyさん2007/03/13(火) 11:28:47ID:???
>>659
<?php
$xmlstr = <<<XML
<cat>
<name>mike</name>
<name>tama</name>
<name>buchi</name>
</cat>
XML;

$xmlsrc = new SimpleXMLElement($xmlstr);
$xmldst = new SimpleXMLElement("<cat></cat>");

foreach($xmlsrc->name as $name) {
 $xmldst->addChild("name", $name);
}
?>
0688nobodyさん2007/03/13(火) 11:30:53ID:???
修正
foreach($xmlsrc->name as $name) {
 if($name != "buchi")
  $xmldst->addChild("name", $name);
}
0689虚弱PHP2007/03/13(火) 11:57:54ID:???
>>673
そもそもa.phpの内部の処理なんか、誰にも分からないんですけど。
06906592007/03/13(火) 12:02:43ID:WB3nwZIO
ありがとうございます。
今PHPが使える環境にないので、後でやってみます。
0691nobodyさん2007/03/13(火) 13:05:05ID:???
>>673
それらの機種には問題ない。
お前のコーディングに問題がある。

おそらく適切なヘッダーを吐いてないんじゃないか。
0692nobodyさん2007/03/13(火) 14:21:08ID:Y+fr5f3l
テンプレート的にページ表示する仕組みをクラスを用いて作りました。
テンプレートとなるPHPスクリプトには必ずTemplateクラスを実装するようにし、表示メソッドを持たせました。

例えば、以下のように複数のテンプレートPHPスクリプトを用意しておき、
表示時に、好きなテンプレートを選択できるようにしたわけです。
template1.php,template2.php,template3.php...

しかし問題に気付きました。
一つだけのテンプレートをrequireして何度も表示するだけなら良いのですが、
複数のテンプレートを一つのPHPスクリプトからrequireする場合があったのです。
「Fatal error: Cannot redeclare class ...」 です。
Templateクラスの多重定義エラーになってしまうのです・・!

PHPは定義の解除もオーバーライドもできない。
ああ、納品は今日だというのに、今まで気がつかなかった私が馬鹿であったのですが・・。

どうにかうまくやり抜ける方法はないものでしょうか?
おまえら知恵を貸しやがれです!
0693nobodyさん2007/03/13(火) 14:24:16ID:???
>>692
結論=無理。氏ぬがいいw

っていうか単なるテンプレート的な使い方のためだけにテンプレートエンジンだの
クラスだのと難しいことをする必要はない。
単に任意の変数を埋め込んだHTMLを拡張子.phpで用意しておき、
それをロジック・スクリプトからrequireして変数部分を展開すればいいだけ。
0694nobodyさん2007/03/13(火) 14:26:27ID:???
納品って言いたかっただけだろw
0695nobodyさん2007/03/13(火) 14:29:49ID:???
>>692
どういうファイル構成になってるんだかさっぱりなんだが
クラス定義ファイルの読み込みはrequire_onceでやるか
クラス定義のとこで定義済みかどうかを判別するだけでは。
まさか複数ファイルにクラス定義をそれぞれ書いてるとかいう
ありえない設計をしてるわけもないだろうし。
0696nobodyさん2007/03/13(火) 14:42:22ID:Y+fr5f3l
簡潔にするとこんな感じです。

print.php
-----------------------
require_once(テンプレートA);
$A = new Template;
//うぁぁTemplateが解除できねぇぇ
require_once(テンプレートB);
$A = new Template;

templateA.php , templateB.php
-----------------------
class Template extends TemplateBase
{
...
}

>>693
現状から少々の追加・修正でなんとかできないでしょうか・・
各テンプレートPHPで宣言しているクラス名を修正しても良いです。

>>695
ありえない設計になっていますでしょうか・・
0697nobodyさん2007/03/13(火) 14:52:53ID:???
クラス名一緒とかどんな糞設計なんだよ
0698nobodyさん2007/03/13(火) 15:01:48ID:Y+fr5f3l
この場合は、クラス名を統一しておかなければ
テンプレートオブジェクトの生成コード
new Template が統一して使用出来ないと思ったからなんです。
newには静的にクラス名を与えるしかないですよね・・?
0699nobodyさん2007/03/13(火) 15:08:19ID:???
質問です
1000 2000 3000 の整数値が入った変数があったとして
これら3つの中から最も低い数値だけ抜き出すアルゴが知りたいです
もちろんif文などでも実現できますが、何かいい関数がないかと思いまして
無知なところすみませんがよろしくお願いします
0700nobodyさん2007/03/13(火) 15:19:02ID:???
>>698
$obj_tpl = new Templete($str);でコンストラクタでどれ読むか書けばいいような
0701軟式PHP2007/03/13(火) 15:20:46ID:???
>>699
<?php
$nums = array(2000,1000,3000,5000,100,7000);
sort($nums);
print $nums[0];
?>
0702nobodyさん2007/03/13(火) 15:22:00ID:???
>>696
バカだバカがいるwwww
お前クラスを何だと思ってるんだ
0703虚弱PHP2007/03/13(火) 15:30:04ID:???
>>696
ありえない設計だね。

設計変えずに素早くなんとかするとしたら、
可変クラス名でも使ってやるしかないんじゃないかな。
・クラス名はテンプレート毎。
・テンプレートクラスのファイル先頭に$TemplateClassName = <テンプレートクラス名>
$A = new $TemplateClassName();
0704nobodyさん2007/03/13(火) 15:34:44ID:???
>>696
だからさぁ、テンプレートの仕組みはこんな感じ↓にすれば簡単なのに。
なぜ皆わざわざテンプレートエンジンとか難しいことやろうとするの?

●print.phpの中身
$hoge = "これを表示するべ";
require_once(template.php);
-----------------------
●template.phpの中身
echo <<< EOM
<html><body>
↓ここの表示は自由自在だぜ!<br>
{$hoge}
</body></html>
EOM;
0705虚弱PHP2007/03/13(火) 15:41:13ID:???
>>704
ループ使ったり、条件分岐つかったり、修整子使ったり、
キャッシュ使ったりしたいからじゃないかな?
0706軟式PHP2007/03/13(火) 15:42:48ID:???
>>704
いや明らかにテンプレートエンジンのほうが簡単。
というかそれはテンプレートとは言えるレベルじゃないと思うが。
Smartyのforeachelse、cycleなどを使い始めると離れづらいと思うが。

Smartyの例
●print.phpの中身
$tpl = new mySmarty(); //Smartyを継承したクラス
$tpl->assign("hoge","これを表示するべ");
$tpl->display("template.php");

●template.php
<html>
<body>
↓ここの表示は自由自在だぜ!<br>
{$hoge}
</body></html>
0707nobodyさん2007/03/13(火) 15:49:51ID:???
>>701
ありがとうございます
役にたちました
0708nobodyさん2007/03/13(火) 15:54:58ID:Y+fr5f3l
>>700
$strは何を指すのですか?
憶測ですが、new TemplateをLoadTemplateのような関数と同じ意味だと思っていませんか?
多分そのやり方ではクラスを使う意味がないです。

>>703
ありがとうございます。
PHPは可変クラスなんてのが使えたんですね。
そういった機構が無いか何度も探してみたのですが、見つけられていませんでした。
まだ試してみてはいませんが、勉強になります。

なお、先の件につきまして、一応自力で解決できました。
>>703の手法に似ていますが、可変〜を使わないものです。
print.phpのテンプレート出力関数内で、空の$template_objを用意し
テンプレートスクリプトにて、global $template_objによりアクセス可能にした
$template_objへnewテンプレートしオブジェクトインスタンスを格納するようにしました。
コンストラクタの引数も同様に受け渡しをしました。
ちょっと再利用性が落ちるやり方でまた怒られそうですね。

とにかく、皆様どうもありがとうございました。
と書いている間にまたレスがついてますね。
>>703以降落ち着いたらじっくり読ませていただきます。
クラスの使い方がなってないと散々怒られてしまいましたので
よろしければ、後学のためどのような設計にすべきだったのかアドバイス頂けると幸いです。
ではでは、また死んできます。
0709nobodyさん2007/03/13(火) 16:31:20ID:???
>>705
>ループ使ったり、条件分岐つかったり
それはロジック側でやっといて、最終的に出力したい状態に整形してから
テンプレートに変数として渡せば済む話では??

>>706
その手法と>>704の手法と比べた場合、どんなメリットがあるのかサッパリ分からないっす。
っていうか結果的に同じことを単に複雑にしてるだけ、って気が・・・。
0710nobodyさん2007/03/13(火) 16:43:09ID:???
>>709
項目数の可変なテーブルを出力したいときはどうする。
$table = "<table〜</table>";
とかやってからテンプレに渡すの?
0711nobodyさん2007/03/13(火) 16:52:56ID:???
数字に3桁毎にコンマつける関数ありませんか?
0712nobodyさん2007/03/13(火) 16:57:13ID:???
711続き

1000とあったら1,000になるようなやつです
0713nobodyさん2007/03/13(火) 16:58:53ID:???
711続き

自己解決しました
0714軟式PHP2007/03/13(火) 16:59:36ID:???
>>709
簡単なやつだからね。修飾子とか使えるし実際見やすいよ。
同じ処理を行った場合の一例
・Smarty
{$hoge | escape | replace:"これ":"それ" }
・ロジック
$hoge = str_replace( "これ", "それ" ,htmlspecialchars( $hoge ) );

>>711
number_format()
0715虚弱PHP2007/03/13(火) 17:03:11ID:???
>>709
そうすると、色々やってるうちにロジック側にHTMLが入ってくるようになると思うよ。
0716nobodyさん2007/03/13(火) 19:22:17ID:???
>>708
君はもうだめかもわからん

class Template {
 function __construct($_str) {
   /* 引数の値に応じてテンプレートを読み込む */
 }
}

こう書いてもわからんというのかね
クラスに引数つけた場合はデフォルトコンストラクタではなく定義されたコンストラクタが呼び出される
クラスの概念とか判らないのならC++かJavaからやったほうがいいよ
0717nobodyさん2007/03/13(火) 19:40:10ID:???
コード変換いついて教えてください
UTF-8の"�T"(E78484)を mb_convert_encoding を使って
EUC-JPに変換すると化けてしまいます
これは mb_convert_encoding のバグでしょうか?
また対応策等ありましたらお願いします
0718nobodyさん2007/03/13(火) 19:44:17ID:???
$str = mb_ereg_replace("\x87\x40", "(1)", $str);

こんな感じで検索文字を文字コード指定で指定して変換するときは、
str_replace でも大丈夫でしょうかね?
str_replace だとパラメータに配列が使えて便利なので
0719nobodyさん2007/03/13(火) 19:46:12ID:???
PHPのページで他のPHPを呼び出すためのタグを教えてください。
猫手をindex.phpに使用していたのですが、間違えて消してしまい、
どういうタグを描いていたかも忘れてしまい・・・
0720nobodyさん2007/03/13(火) 20:05:58ID:???
タグ?
<include>another.php</include>
こんな感じか
0721nobodyさん2007/03/13(火) 20:08:01ID:???
<?php
ぬるぽ(include.php);
?>
0722nobodyさん2007/03/13(火) 20:14:01ID:???
>>719
include("index.php");
require("index.php");
require_once("index.php");

上にいくほど高速
0723nobodyさん2007/03/13(火) 20:18:16ID:???
GET受け取った値(内部処理及びHTML出力に直接使う)を最も安全に加工したいと思うのですが
htmlspecialcharsだけでは不十分でしょうか?おすすめの処理あれば教えてください
0724nobodyさん2007/03/13(火) 20:19:17ID:???
>>719
そしてさらに上までいって>>1を読むと納得
0725nobodyさん2007/03/13(火) 21:23:04ID:6kJO88Vk
>>723
1. <input type='text' name='hoge' value='<?php print(htmlspecialchars($_GET['hoge'])); ?>'>
2. <script type="text/javascript"><?php print(htmlspecialchars($_GET['foo'])); ?></script>

この二つがなぜ危険になる可能性があるのかを説明できれば大丈夫だと思う。
0726nobodyさん2007/03/13(火) 21:36:05ID:???
>>722
嘘おしえてんなよ!はげきち
0727nobodyさん2007/03/13(火) 21:48:59ID:FbvNPOWY
メールマガジンを送信するプログラムを作りたいんですが、cronを使用して
毎日 10 時に メールを 1万通送信するプログラム を作るとサーバーに相当な負荷がかかってしまうと
思います。

この場合どういう風に作ればサーバーに負荷をできるだけかけずにプログラムを作れるでしょうか。
というより、どうすればいいんでしょうか。
一般的なメルマガ発行システムなどはどうやって処理しているのか教えてください。
よろしくお願いします。

0728nobodyさん2007/03/13(火) 21:56:24ID:???
>一般的なメルマガ発行システムなどはどうやって処理しているのか

メールを送信する処理をPHPでやっているシステムは見たことない。
0729nobodyさん2007/03/13(火) 22:01:49ID:neUD+ow6
>>727
*/1 * * * * メール送信処理
1分おきにメール送信するとサーバーに負荷かからないよ
0730nobodyさん2007/03/13(火) 22:08:49ID:???
PHPの配列って実はハッシュなんですか?
0731nobodyさん2007/03/13(火) 22:14:16ID:???
>>729
1分おきに10000通のメールを送るとすると:
    60(秒) * 10000(通) = 600000(秒)

時間になおすと:
    600000 / (60 * 60) = 166.666666667

すなわち、全てのメールを送信するのに約7日かかることになる。
そんなもの使いものにならんよ。
0732nobodyさん2007/03/13(火) 22:14:59ID:???
>>730
そうだよ
0733nobodyさん2007/03/13(火) 22:19:48ID:???
>>731
意味不明
0734nobodyさん2007/03/13(火) 22:30:27ID:???
1分500通で10000/500=20分
つまり20分で10000通メール送信ってことだよな
0735nobodyさん2007/03/13(火) 22:32:04ID:???
1分500通でも多すぎだろ。
さらに時間はかかるがw
07367342007/03/13(火) 22:34:10ID:???
>>735
以前に出会い系のサクラでメール配信していたが、
500通くらいなら20秒くらいで送信できたと思う
0737nobodyさん2007/03/13(火) 22:36:05ID:???
またスパまーか
0738nobodyさん2007/03/13(火) 22:38:16ID:???
>>737
登録者に送ってるだけだからスパムではない
0739軟式PHP2007/03/13(火) 22:49:36ID:???
俺は適当にSleep入れてログ取りながらバッチで回してるよ。
3万人まで送信したことあるけど、今のところ問題なし。
もし途中で何らかの原因があって止まってもログから再送信させる。
0740nobodyさん2007/03/13(火) 22:50:14ID:???
>>738
聞き方変えてるだけかと
0741nobodyさん2007/03/13(火) 23:44:54ID:jbwAF33v
文字コードについて質問です
phpmyadmin内にutf-8で格納してあります。
ブラウザーに表示するときもutf-8統一してあるのですが
文字化けしてしまいます。
<p>php</p>部分 数字は表示されるのですが
漢字 ひらがなの部分が化けしてしまいます
文字化け対策を調べてみたのですが、なかなか直らなくて
PHP 5.2.1
phpMyAdmin 2.9.2
Apache 2.2.4
MySQL 5.0.33
(xampp)以上です よろしくお願い致します 
0742nobodyさん2007/03/13(火) 23:47:33ID:???
変数を格納する為だけのクラスで、
class Hoge {
function set($key,$value) {
$this->$key = $value;
}
}
$hoge->set('name', 'ほげほげちゃん');

と言う風に、varで定義していない変数を作るのってやめた方が良いですか?
PHP5なら__set、__get使ってひとつの配列に入れておくことも出来るんですが
PHP4なのでどうしようかと思いまして・・・。
むしろ、もうそろそろPHP4の事は考えない方がいいですか?
0743nobodyさん2007/03/13(火) 23:49:28ID:???
>>741
どんな風に文字化けするのか

>ブラウザーに表示するときもutf-8統一してあるのですが
どこをどういじってutf-8にしたの?
0744nobodyさん2007/03/14(水) 00:15:06ID:???
>>742
どういう理由でやめたほうが良いと?
0745nobodyさん2007/03/14(水) 00:15:32ID:lS0gqu9t
743 有難うございます。
<META http-equiv="Cont
ent-Type" content="text/html; charset=utf-8">
と エディエターもutf-8セットしました CSVファイルも
utf-8に変更しました
mysql内はいじっていません
[mysqld]
default-character-set = utf8
[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8
等 
0746nobodyさん2007/03/14(水) 00:16:30ID:???
>>745
php.iniもUTF-8?
ブラウザで見て文字コード変えて試してみた?
07477092007/03/14(水) 01:45:21ID:???
>>710 うん、今のところはそのような感じでやってます・・・

>>714 なるほど、慣れるとSmarty記法のほうが可読性が高いんですかね。

>>715 そうなんですよ、実際、ロジックに可変テーブルなどのHTMLが入り込んでて、
   可読性が落ちるからどうやって解決したものかな〜〜と常々思っとりました。
   にも関わらず、Smartyとか導入するのが面倒なのでやってませんorz
0748nobodyさん2007/03/14(水) 02:39:55ID:???
>>742
function set($k, $v){
$this->storage[$k] = $v;
}
だとどういう不都合があるの?
例外処理の恩恵受けられるならPHP4切る価値はあると思う。
0749nobodyさん2007/03/14(水) 03:41:39ID:BjDS8gcH
PHP5.2で
//ファイルはSJIS
mb_internal_encoding("SJIS");
mb_http_output("UTF-8");
ob_start("mb_output_handler");
はおkなんだけど、

//ファイルはUTF-8
mb_internal_encoding("UTF-8");
mb_http_output("SJIS");
ob_start("mb_output_handler");
は化けませんか?

(iconv_set_encodingでも同じ)
0750nobodyさん2007/03/14(水) 05:17:14ID:???
ラピットはボリ杉。オフィスで説明聞きに言ったとき殿様みたいな対応されて腹がたった。
女子社員はかあいかったなww
0751nobodyさん2007/03/14(水) 05:21:06ID:???
>>661
おれももってるけどあんまりおすすめしない。記述も古いし。
0752nobodyさん2007/03/14(水) 05:28:22ID:???
だれだかわかりませんがwiki更新おつかれさまです。wktkしてみてます。
■ このスレッドは過去ログ倉庫に格納されています