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

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

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

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

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

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0079nobodyさん2008/01/12(土) 20:28:02ID:???
プログラミング経験なし。28のWEBデザイナーです。

これからコツコツとPHP勉強するならどの教材がオススメ?
「独習PHP」というのにちょっとひかれているのですが…。
0080nobodyさん2008/01/12(土) 20:39:45ID:???
>>78
小出しであいまいにじゃなくて全てを正確に出して
0081nobodyさん2008/01/12(土) 20:44:35ID:???
>>79
>>1
>まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
>PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。

>◆質問する時の注意
>・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
0082nobodyさん2008/01/12(土) 20:47:18ID:C+S8ANQW
pearをアップグレードしようとしたら

HTTP error, got response: HTTP/1.1 404 Not Found
Didn't receive 200 OK from remote server. (HTTP/1.1 404 Not Found)

というエラーが出てしまいます。
これってどうすればいいんですか?
0083682008/01/12(土) 20:49:49ID:g6/EhvFh
>>68です。すべてのデータをまとめます。(不要部分削除)

同じドメイン上、違うフォルダに3つのPHPがあり、それぞれ

----A.php----
include("B.php");
echo 'A部分:';
var_dump($_COOKIE);

----B.php----
echo 'B部分:';
var_dump($_COOKIE);

----C.php----
setcookie("guest", "guest", time()+3153600, "/");

です。

C.phpを実行したあとに、A.phpを表示させると

B部分:NULL
A部分:array(1) { ["guest"]=>  string(5) "guest" }
(↑当然ですが、ひとつのページに表示されます)

と表示がでます。最終的にはB.phpでcookieによる
条件分岐を実施したいのですが、B部分でcookieに値が
入っていないので断念しています。

B部分でもcookieが読み込めない理由がわかれば教えてください。
php4.4.7 さくらインターネットです。よろしくお願いします。
0084nobodyさん2008/01/12(土) 21:01:28ID:???
>>83
俺の環境でやったらA部分も出たよ
0085nobodyさん2008/01/12(土) 21:02:26ID:???
間違えた,B部分ね
0086682008/01/12(土) 21:11:51ID:g6/EhvFh
>>84
なぜなんでしょうか。。。原因わかりません。

今判明したのですが、B.phpを単独で表示させると
array(1) { ["guest"]=>  string(5) "guest" }
と表示されるので、phpの記述ミス等は無さそうです。。
0087nobodyさん2008/01/12(土) 21:23:51ID:???
>>82
大きく変更があった。ttp://pear.php.net/ を参照。

>>86
>>83にあるコードそのものなら問題は起きない筈。
実際その数行のコードだけで試してみたら動作すると思うよ。
include時に httpから始めてたりしたら笑うな
0088832008/01/12(土) 21:38:01ID:g6/EhvFh
>>87
>include時に httpから始めてたりしたら笑うな

そのとおりでした。。解決しました。
皆さんありがとうございました!
0089nobodyさん2008/01/12(土) 21:38:08ID:C+S8ANQW
>>87
thx.
とりあえずやってみたんですが、

# pear upgrade --force http://pear.php.net/get/Archive_Tar http://
pear.php.net/get/XML_Parser http://pear.php.net/get/Console_Getopt
downloading Archive_Tar-1.3.2.tgz ...
Starting to download Archive_Tar-1.3.2.tgz (17,150 bytes)
......done: 17,150 bytes
downloading XML_Parser-1.2.8.tgz ...
Starting to download XML_Parser-1.2.8.tgz (13,476 bytes)
...done: 13,476 bytes
downloading Console_Getopt-1.2.3.tgz ...
Starting to download Console_Getopt-1.2.3.tgz (4,011 bytes)
...done: 4,011 bytes
No handlers for package.xml version 2.0

というというエラーが・・・・・・
0090892008/01/12(土) 21:58:02ID:???
スマソ
自己解決しました
0091nobodyさん2008/01/12(土) 22:31:33ID:???
>>88
だから
>正確に出して
って書いたのに。
どんだけ他人の時間と労力を無駄にしたと思ってるんだ。
0092nobodyさん2008/01/12(土) 23:26:50ID:???
情報小出し厨は放置の方向で
0093nobodyさん2008/01/13(日) 09:27:43ID:rbyeeIhv
�@var_dump($_POST);
�Aecho "f_cate1>>>".$_POST["$f_cate1"]; とやって、
�@の方は
array(21) { ["act"]=> string(6) "修正" ["f_cate1"]=> string(37) "FOODメニューのカテゴリ名1"〜
って中身返すのに、
�Aはf_cate1>>> ってだけで中身返さない

なんで? ちなみにソース見ようとするとキャッシュがクリアされたから再送信しますていう(firefox)
0094nobodyさん2008/01/13(日) 09:57:05ID:???
$_POST["$f_cate1"] と $_POST["f_cate1"] とは違うから。
また、$_POST[$f_cate1] と $_POST["f_cate1"] も違う。
0095932008/01/13(日) 10:11:54ID:rbyeeIhv
>>94
ありがとうございます、var_dumpをみると、値の引渡し自体は上手くいってると
考えていいんですよね? ただ引き出し方がおかしいだけで…
今までこの程度で詰まったことなかったので逆に戸惑っています
寝ぼけて変なことやってるかなぁ
0096nobodyさん2008/01/13(日) 10:42:01ID:???
>>95
http://www.php.net/manual/ja/language.types.string.php
0097932008/01/13(日) 11:07:41ID:???
すみません、解決しました ボケボケでした
$_POST["$f_cate1"];じゃなくて.$_POST['f_cate1'];ですね 恥ずかしい…

>>94 >>96 ありがとうございました
0098nobodyさん2008/01/13(日) 17:24:32ID:0nLyIgyH
以下で使っているuksort()と同じ動きをするように出来る組み込み関数ってありますか?
希望する動作は、キーと値の保持がされつつ、$array[$hoge]の順番を$array[$hoge]['priority']の値でソートしたいのです。

<?php
function callback($a1, $a2){
return $a1['priority'] > $a2['priority'];
}
$array = array(
'therd' => array(
'c1' => 3,
'c2' => 'c',
'priority' => '2',
),
'first' => array(
'c1' => 1,
'c2' => 'a',
'priority' => '0',
),
4 => array(
'c1' => 3,
'c2' => 'c',
'priority' => '4',
),
'second' => array(
'c1' => 2,
'c2' => 'b',
'priority' => '1',
),
);
uksort($array,'callback');
var_dump($array);
0099nobodyさん2008/01/13(日) 17:27:47ID:???
あれいまるちそーと
0100nobodyさん2008/01/13(日) 17:52:28ID:???
1.学校で性教育を受けたがどうやって卵子と精子が出会うのかが謎
2.女にはちんこが無いのにどうやって小便するのかが謎
3.女にちんこが無いというのは都市伝説で実は股に挟んでるだけじゃないのか?
おながいします
0101nobodyさん2008/01/13(日) 17:53:07ID:k2tfZ1QQ
trimの代わりに
$hoge = preg_replace('/^[  ]*(.*?)[  ]*$/', '$1', $hoge);
という処理をしています。(全角スペースも除去)
EUC-JPでは問題なく動いていたのですが、UTF-8ではうまくいきません。
具体的には、先頭のひらがなカタカナが化けます。漢字や半角英数は問題ないようです。
あいうえお→・・いうえお

何かよい方法はありますか?
0102nobodyさん2008/01/13(日) 17:53:58ID:???
>>99
レスありがとうございます。
array_multisort()を使ってどのように書けば良いかも教えていただいて良いですか?
0103nobodyさん2008/01/13(日) 17:56:41ID:???
>>102
どの辺がわからんの?
0104nobodyさん2008/01/13(日) 17:59:10ID:???
>>101
preg_replace('/^[  ]*(.*?)[  ]*$/u', '$1', $hoge);
これで。修飾子については
http://jp.php.net/manual/ja/reference.pcre.pattern.modifiers.php
を。
0105nobodyさん2008/01/13(日) 17:59:10ID:???
>>101
正規表現の検証とかはしてないけど/regex/ => /regex/u でいけると思う。
0106nobodyさん2008/01/13(日) 18:03:22ID:???
>>103
どのような引数を渡せば良いのかが、どうにもイメージ出来ないのです。
よろしければサンプルとしてどのようにするかを見せていただけると、
それを元に理解が出来るかもしれないので助かります。
0107nobodyさん2008/01/13(日) 18:04:46ID:???
>>106
サンプル→http://php.net/array_multisort
0108nobodyさん2008/01/13(日) 18:09:04ID:???
>>107
精読します。ありがとうございました。
01091012008/01/13(日) 18:15:23ID:???
>>104-105
それでいけました。ありがとうございます。
0110nobodyさん2008/01/13(日) 18:44:50ID:???
せいどく 【精読】
(名)スル
内容を細かく吟味しつつ、丁寧に読むこと。熟読。
「古典を―する」
0111nobodyさん2008/01/13(日) 22:36:50ID:zh5BCzxe
PHP5でクラスメソッドをstaticにして呼び出すのとインスタンス化して呼び出す決定的な差がピンときません。

前者のメリットは、staticにした方が早い。
名前空間がないので、クラスを名前空間代わりに使ってstaticで呼び出しているだけで関数と差異はない。
Singletonが実装できる。(インスタンスを一つだけに制限できる)

逆にインスタンス化する場合のメリットは、
クラス内でプロパティを共有できる。
複数のオブジェクトが必要な場合、インスタンス化が必須。

自分の中でいくつか考えてみたので、何かフィードバックください。
0112nobodyさん2008/01/13(日) 22:41:28ID:???
>>111
hoi
http://www.nextindex.net/java/static.html
0113nobodyさん2008/01/13(日) 23:03:49ID:zh5BCzxe
>>112
ありがとうございます。staticについてちょっと理解が深まりました。

ウェブアプリだったらユーザーからのリクエストに応じて処理して返すだけだったら、
ほとんどstaticで済む気がするのに、
全体的にstaticが使われるのが少ない気がするんですがなんででしょうか。
0114nobodyさん2008/01/13(日) 23:07:07ID:???
>>113
Javaスレいって聞いてきな。
あっちは純粋なオブジェクト指向言語だしいい回答が返ってくると思う。
少し前にJavaメインでやってるPGの知り合いに同じような質問ぶつけてみたが忘れたぜ・・・
0115nobodyさん2008/01/13(日) 23:36:29ID:???
ループ回数が多い中で呼び出すなら
staticで呼び出さないほうが良いよ遅いし
0116nobodyさん2008/01/13(日) 23:43:20ID:???
インスタンスメソッドとクラスメソッドの区別がつかないうちは
全てインスタンスにしとけばOK
0117nobodyさん2008/01/14(月) 00:33:13ID:fNJFgJhz
インスタンスとクラスの違いは理解しているつもりなんですが、
ウェブアプリでDBやLOGオブジェクトなんかは全部staticでいいと思うんです。
でも、インスタンス化されている場合も多くてこれは実装が下手なのか何か意味があるのか分からないしだいです。

>>114
やっぱJavaですかね。いってきます。
0118nobodyさん2008/01/14(月) 00:56:54ID:eVMtNzBz
PHP上から次のSQL文を実行しているのですがエラーになります。
ORACLEだとSYSDATE等が使えるのですがMYSQLでは使えないのでしょか?

INSERT INTO TB_TEST
(
C1_NAME,
C2_DATE
)
VALUES
(
'NAME',
date --DATEでも駄目。
)

日時を登録するには何型を設定すれば良いのでしょか?
0119nobodyさん2008/01/14(月) 01:12:17ID:???
>>118
sqlの構文だろ?なんでphpスレなんだ
mysqlのスレで聞けば良いのに
now()
0120nobodyさん2008/01/14(月) 01:22:05ID:eVMtNzBz
>>119
スレチだったかもしれません。これだけ質問させてください。
お願い致します。

実は、NOW()ですと確かに登録は出来るのですが
'2009-11-11'
こういうデータが登録されてしまいます。

私が登録したいのは、年・月・日・時間・分・秒(つまり"sysdate"
も格納したいのです。

※データカラムをDATE型では無く、TIMESTAMP型にすれば良いのでしょうか?
そしてinsert時には"NOW()"では無く、Oracleで言うところの"SYSDATE"に
相当するコマンドを入れなければ行けないかと思いますが、MySqlの場合です
と何になるのでしょか?

0121nobodyさん2008/01/14(月) 01:27:43ID:???
date型は日付だけ
datetime型だと日付と時間
TIMESTAMPだとunixタイムスタンプ
timestampはnullを指定するかその項目を指定しなかったら
insert時に自動で値が入る(更新時にも変わる)

それ以外の場合はmysqlにNOW()って関数があるから
''無しでNOW()って書けば良い

アプリ側の時間に合わせるならphp側でてきとーに整形して
つっこんでやって
01221202008/01/14(月) 01:44:20ID:eVMtNzBz
>>121さん
詳しい解説をして頂きまして、本当にありがとうございます。
勉強になります。
0123nobodyさん2008/01/14(月) 12:57:52ID:???
会社 PHPやJavaを使用したWeb開発
募集条件 やる気のある方 PHPやJavaをやったことのある方歓迎(独学可)

面接官 PHPの経験があるってことはWebアプリにたいしてのノウハウはある程度あるのかな?
俺 はい一般人よりはそれなりに
面接官 おkwww採用wwwwwwww研修がんwwwwwばwww

そんなこんなでPHPが好きだったからこの誰でもおkみたいな会社に入ったわけだ

先輩 PHPの案件はないからVB勉強して下さい(本どっさり)

全俺が泣いた
0124nobodyさん2008/01/14(月) 13:29:47ID:???
辞めろ
0125nobodyさん2008/01/14(月) 13:35:53ID:???
PHPの案件安いからって零細企業でも蹴ってるとこあるけど
こんなんだから業務で使えるPHPエンジニア育たないんだよね
このPHP冷遇の時代を乗り切らないと完全に趣味言語になってしまう
PHPの地位をもっとあげるために
Zendをはじめ開発陣は企業に使ってもらえるようなアイデアや仕様を取り込んでくれないとな・・・
もっともこんな状態なのは日本だけなのかもしれないけど
0126nobodyさん2008/01/14(月) 13:56:31ID:???
日本人は自分を安売りすることを「誠意を見せる」ことと勘違いしている
こんな国は発展しないよな
0127nobodyさん2008/01/14(月) 14:01:56ID:eVMtNzBz
>>123
VB位やれ

俺はこれくらいはマスターしている(業務レベルで)
C#/VB.net/VB6.0/C++/ASP.net(C#・VB.net)/PHP5/
Java/Windwsシェル/Unix-C/Cobole/PL_SQL

0128nobodyさん2008/01/14(月) 14:02:45ID:???
MySQLは?
0129nobodyさん2008/01/14(月) 14:03:50ID:???
マスターしてる奴がこのスレで質問すんのかw
0130nobodyさん2008/01/14(月) 14:08:14ID:???
ID消し忘れ恥ずかしいwwwww
知ってるの並べたとかじゃないの?ねえどうなの?www
0131nobodyさん2008/01/14(月) 14:16:49ID:???
こぼーれ
0132nobodyさん2008/01/14(月) 14:29:03ID:eVMtNzBz
MySQLは知らん。
MySQLなんて書いてないでしょ?

cobolね。
0133nobodyさん2008/01/14(月) 14:33:26ID:???
phpはマスターしてるんだw
0134nobodyさん2008/01/14(月) 14:33:50ID:???
おちこぼーれなんだな
0135nobodyさん2008/01/14(月) 14:34:50ID:eVMtNzBz
まぁ、PHPは他の言語と比べてかなり簡単だからね。

0136nobodyさん2008/01/14(月) 14:56:57ID:???
PHP質問スレじゃなくて雑談スレみたいなのないかな
0137nobodyさん2008/01/14(月) 15:05:57ID:???
>>136
今日はこの辺が
http://pc11.2ch.net/test/read.cgi/php/1197383840/l50
0138nobodyさん2008/01/14(月) 15:22:16ID:???
>>137
サンクス

PHP総合雑談スレでも立ててみるわ
0139nobodyさん2008/01/14(月) 15:23:53ID:kFFYYs1+
サイト内検索はどうやって作っているのでしょうか。
ページ全てをデータベースに放り込んで、
そこから当てはまるURLを取得して表示しているのですか?

もっと簡単な方法とかありましたら教えてください。
0140nobodyさん2008/01/14(月) 15:33:39ID:???
>>139
ページを作ってからデータベースに放り込むのではなく、
データベースに放り込んだものからページを生成する。
0141nobodyさん2008/01/14(月) 15:35:41ID:kFFYYs1+
>>140
つまり、ページは自動生成ということですか?
ってことは、既に複数のページを作成してしまったから無理かorz
0142nobodyさん2008/01/14(月) 15:38:47ID:???
>>140
>ページは自動生成ということですか?
YES。ブログみたいのを思い浮かべれば簡単じゃないかな。
最初からちゃんと設計しないとだめだねえ。
Namazuでもつかっとけばおk
0143nobodyさん2008/01/14(月) 15:39:32ID:kFFYYs1+
>>142
やっちまったZE☆
Google様にお世話なります・・・。
0144nobodyさん2008/01/14(月) 15:41:21ID:???
データベースに移行して、既に作成してある複数のページはデータベースに放り込めばいいじゃん。
GoogleのAPI使ってもいいと思うけど。

http://code.google.com/apis/ajaxsearch/
01451442008/01/14(月) 15:41:53ID:???
リロードしてなくて俺脂肪wwwwwwwwwww
0146nobodyさん2008/01/14(月) 15:42:03ID:???
phpで全HTML読み込んでstrpos()でもかけりゃおk
0147nobodyさん2008/01/14(月) 15:44:23ID:???
>>146
お前頭いいな
0148nobodyさん2008/01/14(月) 16:04:24ID:HAlmIBpU
WINのanhttpdで phpファイル動かそうと思ったが
tplファイルというのが
syntaxerrorで動かない。 linuxのapacheだと動くのだろうか?
ちょっとぐぐったがでてこない。
www.itmedia.co.jp/enterprise/0401/23/epn01_5.html
↑ここが参照元

tplファイルをphpに関連つけるには?
php5.2です。
0149nobodyさん2008/01/14(月) 16:15:02ID:???
tplとか見るからにただのテンプレートファイルだろ
includeで読み込まれて使われてるとかだろ

つうか当たり前の話だが拡張子phpにしないとphpとして動作しない
anhttpdとかマイナーなの使ってないでapacheにして下さい
tplをphpとして動かしたいというならapacheでそういう設定にすればいいんじゃね?
0150nobodyさん2008/01/14(月) 16:20:48ID:???
>>148
使ったことないけど、それはサーバ側で設定するしかない。
0151nobodyさん2008/01/14(月) 18:01:11ID:hiecVsD+
PHPで掲示板を製作しているのですが、
「【PHP】下らねぇ質問はここに書き込みやがれ 62」という文字列があった場合
自動的に「【PHP】下らねぇ質問はここに書き込みや....」という感じに文字列を省略させたいのですが、
どうしたらよいでしょうか?
0152nobodyさん2008/01/14(月) 18:13:23ID:???
>>151
まずはチンポ洗って清潔にしてからこいや。
そんときゃ詳しく教えたる。

0153nobodyさん2008/01/14(月) 18:13:55ID:???
>>151
substr
strlen
0154nobodyさん2008/01/14(月) 18:34:26ID:kFFYYs1+
Warning: simplexml_load_file() [function.simplexml-load-file]: http://example.com/xml.php parser error : Premature end of data in tag rss

PHPで吐き出したXMLを読み込もうとするとこのようなエラーが出てしまいます。
YahooのRSSを真似たので、中身は同じだと思うのですが、なぜこんなエラーが出るのでしょうか
0155nobodyさん2008/01/14(月) 18:35:43ID:hiecVsD+
>>153
ありがとうございます。できました。
0156nobodyさん2008/01/14(月) 18:36:16ID:kFFYYs1+
とおもったら閉じタグなかったorz
サーセン
0157nobodyさん2008/01/14(月) 18:45:35ID:???
>>155
http://jp.php.net/manual/ja/function.mb-strimwidth.php
専用の関数があるよー。
0158nobodyさん2008/01/14(月) 20:18:32ID:???
何でもあるなw
0159nobodyさん2008/01/14(月) 21:19:43ID:???
>>157
吹いたwwwwwwwwwww
0160nobodyさん2008/01/14(月) 23:07:59ID:???
丸めるのもmb_substerより優秀なので
文字列切り取りもmb_substerよりこっちのがいいよ
0161nobodyさん2008/01/14(月) 23:08:26ID:???
あ、mb_substrな・・・
0162nobodyさん2008/01/15(火) 00:20:26ID:Yg4ty3XI
これまで、Perlでプログラミングをしていて、PHPは全くの初心者です。
PHPの特徴を学びながら、コードを書いていきたいなと思っています。
以下のサイトで、PHPのメリットを読んだのですが、Perlとの違いで
大きな部分はイメージやPDFファイルが作れたりするところですよね。
http://www.php.net/manual/ja/intro-whatcando.php

まずは、Perlで自作した掲示板をPHPに移植するところから
やってみようと思ったのですが、この移植の場合は、特にメリットや
書き方のスタイルに違いは無いと思ったのですが、それであっているのでしょうか?

処理内容
・ユーザの書き込みをログファイルに書き込む。
・ログファイルの内容をhtml出力する。
・検索をし、該当するデータのみを表示させる。

プログラミングの全体構成
・POSTのデータを取得し、処理を行う関数を振り分ける。
・各種パラメータはグローバル変数で設定する。
0163nobodyさん2008/01/15(火) 00:55:25ID:???
>>162
まずはチンポ洗って清潔にしてからこいや。
そんときゃ詳しく教えたる。


0164nobodyさん2008/01/15(火) 02:12:22ID:???
>>162
PerlもPHPも出来ることは一緒
なのでやることも一緒
0165nobodyさん2008/01/15(火) 03:16:32ID:???
>>160
優秀についてkwsk
0166nobodyさん2008/01/15(火) 10:31:18ID:???
>>162
>大きな部分はイメージやPDFファイルが作れたりするところですよね。
Perlやったことないから知らないけど、なくても自作すれば作れるようになるでしょ。(大変そうだけど)

Perlって構文が特殊だから少し戸惑うだろうけど慣れればほぼ一緒。
書き方のスタイルは少し違ってくるだろうけど、大きなメリットは別にないんじゃない?
強いて言うなら小規模の物ならPerl/CGIと比べてパフォーマンス面で優れてるぐらいかな。
最近のPC事情を考えるとその辺は割りとどうでもいいような気はするけどね。

それよりDB使った掲示板にこの際移行してみたら?
0167nobodyさん2008/01/15(火) 10:47:34ID:9YYFPVXq
UTF-8⇔utf8
Shift_JIS⇔sjis
EUC-JP⇔ujis

のような相互変換をしてくれる関数とかありませんか?
0168nobodyさん2008/01/15(火) 13:07:16ID:SIMemfh4
<form name="test" method="post" action="index2.php">
<input type="text" name="test"/><input type="submit"/>
</form>
<?php
$test = $_POST['test'];
echo $test;
?>

上記のようなフォームを送信後、その値を表示する簡単なプログラムを作ったのですが
携帯電話(au)から入力して送信すると文字化けしてしまいます。

123→123\0
あいう→%82%a0%82%a2%82%a4\0

上記のようになってしまうのですが、正常に表示させるにはどういった処理が必要なのでしょうか?
phpファイルの文字コードを変更して保存しても意味がないようでした。
よろしくお願いします。
0169nobodyさん2008/01/15(火) 13:22:57ID:???
>>168
文字コードじゃなく、urlencodeされた状態のままになってる。
普通は$_POSTで取得したときに勝手にデコードされてるはずなんだが・・・
01701682008/01/15(火) 13:48:56ID:SIMemfh4
urlencodeで検索した結果
urldecode ($test);
を使ってデコードすることで解決しました。
処理を掲示板に組み込むので、全ての変数にこれを入れておきたいと思います。
ありがとうございました。
0171nobodyさん2008/01/15(火) 14:06:19ID:???
>>167
preg_replace( array( '/UTF-8/', '/Shift_JIS/', '/EUC-JP/' ), array( 'utf8', 'sjis', 'ujis' ), $string );
0172nobodyさん2008/01/15(火) 14:07:04ID:???
レベルh(ry
0173nobodyさん2008/01/15(火) 14:08:09ID:9YYFPVXq
>>171
ありがとうございます。
専用の関数はないのですね。
自分で作ってみます。
0174nobodyさん2008/01/15(火) 15:28:05ID:???
クラスに変数を渡すとき面倒だから一括してglobal化してんだけど、何か問題あります?
0175nobodyさん2008/01/15(火) 15:44:28ID:???
おっしゃってる意味がわかりません
0176nobodyさん2008/01/15(火) 16:05:50ID:9YYFPVXq
もしかしてevalの中でfunction内にあるfunction使えない!?
0177nobodyさん2008/01/15(火) 17:36:36ID:WIMu7eDH
質問です
メールフォーム作ってその内容をメールで通知するとすると、
やはりメールサーバが必要になるんですか?
そこまでフォローしてくれる関数とかはないの?
0178nobodyさん2008/01/15(火) 17:39:48ID:???
>>177
メールはPHPの範囲外
なので鯖が必要
■ このスレッドは過去ログ倉庫に格納されています