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

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

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

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

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

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0307nobodyさん2008/03/25(火) 22:40:56ID:???
>>303
DBを使う代わりに、セッションにログイン情報を格納すればすむという安易な考えが本当素人考え。
0308nobodyさん2008/03/25(火) 22:55:33ID:???
>>306
流行ってるわけない。
春休みで変なのが沸いてるだけだから華麗にヌルー
0309nobodyさん2008/03/26(水) 00:43:09ID:???
>>307
エスパーか藻前は?
03103072008/03/26(水) 00:57:54ID:???
なんでわかったんですか!
はい、伊藤です。
0311nobodyさん2008/03/26(水) 02:43:19ID:???
エスパーときたら、魔美
0312nobodyさん2008/03/26(水) 02:46:00ID:???
>>311
kwsk
0313nobodyさん2008/03/26(水) 03:44:58ID:???
毎回のように娘をベッドの上で裸にする父親が
主人公のアニメ・漫画。
0314nobodyさん2008/03/26(水) 06:12:28ID:???
愛情の反対は嫌悪じゃなくて、無関心だと言う。

どうしてココの住民は、無関心ではいられないのだろうか。
何かとすぐ切れやすい子どもが、このスレに体現されているとしか評価しようがない。
0315nobodyさん2008/03/26(水) 07:17:30ID:BV+jSJbq
phpの質問なのかmysqlの質問なのかわからないのですが、
やりたい事がphpを使って操作する事なのでこちらで質問させて頂きます。

php+mysqlでアクセス解析を作りたいのですが、UA、リファラー、現在の日時等を取得して、
UA、リンク元、累計アクセス数、日別・月別・曜日別アクセス数などを表示したい場合、
全て1つのテーブルに保存するのと、項目ごとに別のテーブルに保存するのではどちらが効率的でしょうか?

書き方がわかりにくいと思いますが、全て1つのテーブルに保存する場合、
1行目 useragent=IE6, referer=http〜, date=2008/1/1 0:00:00
2行目 useragent=IE5, referer=http〜, date=2008/1/1 0:00:00
という形になり、テーブルの内容を全て配列に入れてからphp側で検索・ソート等して出力するか、
表示したい項目ごとにデータベース側で検索して出力する事になると思います。

項目ごとにテーブルを作る場合、
テーブル「useragent」
name count
IE6  2
IE7  5
という形になり、テーブルの内容をほとんどそのまま出力すればいいだけになります。

アクセス時の処理では前者の方が後者より速く負荷もかからないと思うのですが、
表示時の処理はログが増えるほど前者が後者より遅く、高負荷になるのではないかと考えています。

mysqlについてはphpmyadminで軽く触った程度なので、根本的に間違っているor意味不明な質問かもしれませんが、
「ここはおかしい」や「こうした方がいい」等のアドバイスでも構いませんので、ご回答お願い致します。
0316nobodyさん2008/03/26(水) 09:07:29ID:???
>>315
サイトのアクセス状況による
一日数十とか数百単位しかアクセス無いなら前者で良いだろうけど
2ちゃん並にくることが予測されるなら後者の方が良いと思う
とりあえず前者でサイト開いてみて段階踏んだらどうよ?

あとログとしてデータが残り続けるなら前者である一定の値にきたら
offsetかましてcountの効率を上げる方法もある…
0317nobodyさん2008/03/26(水) 09:14:01ID:???
>一日数十とか数百単位しかアクセス無いなら前者で良いだろうけど
>2ちゃん並にくることが予測されるなら後者の方が良いと思う

10か3億か、ってお前極端すぎww

病院に行け
0318nobodyさん2008/03/26(水) 09:15:32ID:???
テーブル設計の問題だなぁ
>>315
dbスレ行ったほうがいいんじゃね?

つか普通は全部纏めて入れる
日ごとにUAの集計したら「午前中」とか「リファラの無いIE6」とかが欲しくなった時どうにもならないし

表示スクリプトは数十行だろうから、とりあえず両方書いてダミーデータで速度見るのもいいかもね
03193022008/03/26(水) 09:50:54ID:ynVuNR2N
やっぱり無理ですよね・・・
0320nobodyさん2008/03/26(水) 11:09:58ID:???
>>319
何がしたいのかよくわかんねーんだわ
0321nobodyさん2008/03/26(水) 11:19:54ID:ynVuNR2N
>>320
mixiなりアマゾンなり、phpからログインして情報取れますよね?
例えば今回liveアカウントへいこうとすると
javascriptを有効にしてくださいというページに飛ばされてしまいます
単純にnoscriptでジャンプされてしまうのですが、どうしたら良いのか思いつかず・・・
0322nobodyさん2008/03/26(水) 11:22:07ID:???
phpで取得したときに勝手に飛ばされるっけ?
0323nobodyさん2008/03/26(水) 11:55:25ID:YOiMNcCa
>>322
いや飛ばされない。IEで解決。
0324nobodyさん2008/03/26(水) 12:00:13ID:???
意味分からんことばっか言って混乱させるなよ・・orz
0325nobodyさん2008/03/26(水) 12:03:32ID:???
奥さん、昨晩旦那が浮気していましたよ。
03263022008/03/26(水) 12:12:25ID:ynVuNR2N
ちなみにPEARでやってみているんですが
最初のレスポンスの時点でjs有効にしてねというページが返ってきます
0327nobodyさん2008/03/26(水) 12:16:09ID:???
まさかmetaが入ってる文字列を出力して開いてるなんてオチじゃないだろうな?
0328nobodyさん2008/03/26(水) 12:37:10ID:tSZRDvWr
PHPでXML(Atom)をつかっての送受信をしたいのですが、
署名による認証のしかたがわかりません・・。
(PEARにもXML-RPCはあるのですが、暗号化や複合化ができるようなものはなさそうで)
わかる方がいればおしえてください。
03293022008/03/26(水) 14:58:59ID:ynVuNR2N
標準関数でも
いろいろ試して見ましたが、解決せず
PEARスレに行ってきます
ありがとうございました
0330nobodyさん2008/03/26(水) 15:07:16ID:???
行ってらっしゃ、気をつけて。(^ー^)ノ~~
0331nobodyさん2008/03/26(水) 16:08:50ID:oGx/hZT1
$test = "1,2,99";
if(strstr($test,"9")){
echo "含まれています";
}

とした場合、$test内に「9」が含まれていないのに、
「99」でもヒットされてしまいます。どういう風に修正すればいいのでしょうか?
0332nobodyさん2008/03/26(水) 16:08:58ID:???
奥さん、昨晩旦那が浮気していましたよ。
0333nobodyさん2008/03/26(水) 16:22:02ID:???
エスパー解釈で難癖つけるのが流行っているのか?
0334nobodyさん2008/03/26(水) 16:22:07ID:???
>>331
は?
何がしたいの?

$test_ary=explode(".",$test);
foreach($test_ary as $val){
if(strstr($val,"9")){ echo "含まれています"; }
}

でもすれば?
0335nobodyさん2008/03/26(水) 16:28:34ID:???
>>331
>$test = "1,2,99";
>if(strstr($test,"9")){
>echo "含まれています";
>}

>とした場合、$test内に「9」が含まれていないのに、

9って思いっきり含まれてるじゃん。
0336nobodyさん2008/03/26(水) 16:31:41ID:???
strstrの使い方が違うような。
0337nobodyさん2008/03/26(水) 16:48:42ID:???
>>331にとっては「99はあるけど9は含まれてない」という感覚なんだろうね。

explode するとループで悩む年頃だろうから
if (preg_match('/\D9\D/', $test)) 辺りでどうですか。

>>334
質問者と同じ地雷を踏んでますよ。
0338nobodyさん2008/03/26(水) 16:54:54ID:???
9という数値なのか、9という文字なのか
まぁそういう概念がないんだろうけど
0339nobodyさん2008/03/26(水) 16:55:41ID:???
配列にして==9にすりゃいいじゃん
03403372008/03/26(水) 16:56:21ID:???
$test = "9,1,2,3" とか $test = "1,2,3,9" のことを考えてなかった。
眠いので修正せず放置しとこう。
0341nobodyさん2008/03/26(水) 17:05:24ID:???
しかし、そもそもこのフォーマットは何なんだ??
せめてカンマ区切りにしとけばいいのに・・。
0342nobodyさん2008/03/26(水) 17:15:35ID:???
配列にしてるのに
態々==9とかあほかw
in_arrayでいいだろ

0343nobodyさん2008/03/26(水) 17:32:49ID:???
>>334 と >>341 にはCSVに見えないのか
0344nobodyさん2008/03/26(水) 17:45:18ID:???
中高生ですから
0345nobodyさん2008/03/26(水) 18:04:16ID:???
含まれてるじゃなくてイコールじゃないのにっ真になるのがおかしいと言いたいのだろうか・・・
でも本人が含むって言葉思いっきり使ってるし$testを配列みたいに解釈してしまってんだろうか。
ひょっとして
$test = "1,2,99";
$test_ary=explode(".",$test);
foreach($test_ary as $val){
if($val ==9){ echo "含まれています"; }
}
みたいなことをしたいのか?これだと99と9はイコールじゃないが。
しかしこれだtstrstr使う意味がないしarray使うべきだし・・・難問だ。
0346nobodyさん2008/03/26(水) 18:11:56ID:???
本人が登場してくれない限りは解決出来ないな。
0347nobodyさん2008/03/26(水) 18:12:53ID:???
みんながいじめるから質問者が逃げちゃったじゃないか!
03483152008/03/26(水) 18:18:00ID:???
>>316,>>318
個人の趣味サイトなので、アクセス数は最大でも重複カウントなしで1000/日というところです。
>>318さんのおっしゃる通り、今後条件別にログを表示させたくなった時に前者の方が良さそうですね。

ログ表示ページはそれほど頻繁に閲覧されるものでもないと思うので、
表示に関して多少非効率的になっても、前者の方法を使う方向でいきたいと思います。

インデックスとか>>316さんの言うoffset等、理解できていない部分が沢山ありますので、
データベース関連のサイトやスレなどを見て勉強してきます。

回答ありがとうございました。
0349nobodyさん2008/03/26(水) 18:29:36ID:???
質問者よりも explode(".",$test) さんの悩みのほうが深刻そうだ。
0350nobodyさん2008/03/26(水) 21:34:16ID:???
中高生の悩みは性だけじゃないのか。
0351nobodyさん2008/03/27(木) 02:13:01ID:???
中高年の悩みも性だな。
0352nobodyさん2008/03/27(木) 06:31:18ID:???
echo "<body>"とすると何故か3〜5秒くらいラグが発生してしまいます。

<html>
<head></head>
<?php
echo "<body>";
?>
テスト
</body>
</html>

これだけの記述でもタイムラグが発生するのですが、body要素をphpで出力するのには何か問題があるのでしょうか?
それとも、xreaの無料サーバーを使っているのですが、このサーバー側の仕様か何かなのでしょうか?
0353nobodyさん2008/03/27(木) 07:12:29ID:???
単にサーバが重いだけでは?
時間おいてためすべし。
03543532008/03/27(木) 07:14:52ID:???
あ、あと1つ言い忘れたけど、
xrea無料といえば自動挿入広告が重い原因にもなるから、
htaccessで広告表示しないようにして手動広告はるのがお勧め。
0355nobodyさん2008/03/27(木) 07:18:47ID:???
1ヶ月PHP勉強してきましたが、全然意味不明。
いざ自分でコード書こうと思ったら意味不明
PHP考えた人まじ天才 もうわけわからないっす
0356nobodyさん2008/03/27(木) 07:34:07ID:???
それはない
03573522008/03/27(木) 09:24:16ID:???
>>354
レスありがとうございます
確認したところ、どうやら広告関係の問題だった様です

広告は手動で挿入しており、出力後のソースを見ても自動の広告が無かったので、
手動で広告を入れると勝手に切り替わるものだと思っていました
サポートページ等を見ながら修正したいと思います
ありがとうございました
0358nobodyさん2008/03/27(木) 09:41:52ID:5276Wbjq
snoopyクラスってマイナー?
0359nobodyさん2008/03/27(木) 09:50:33ID:???
すぬーぴー?
0360nobodyさん2008/03/27(木) 10:31:06ID:???
マイナーじゃないかな。
俺もチラッと触っただけだけど。
0361nobodyさん2008/03/27(木) 10:42:00ID:5276Wbjq
そうか・・・
0362nobodyさん2008/03/27(木) 11:53:37ID:???
>>355
おれもそう思う、感心する
PHPでプログラムできる人たちマジ神ですね
リスペクトしてます
0363nobodyさん2008/03/27(木) 12:07:08ID:???
そこまで分からなかったら、他の言語やってからにすれば?
0364nobodyさん2008/03/27(木) 12:15:59ID:???
PHPが「全然意味不明」だとどの言語ダメな気がする
0365nobodyさん2008/03/27(木) 12:25:39ID:???
「なでしこ」とかはどう?

俺の場合、BASIC->C->C++->Java->PHPだな。
0366nobodyさん2008/03/27(木) 12:36:13ID:???
>>365
C++からJavaとか、JavaからPHPとか頭が退化してんじぇねーの?
0367nobodyさん2008/03/27(木) 13:07:09ID:2PjNLBe+
$_POST['email']にSQLインジェクション対策を行おうとしています。

echo $_POST['email']."<br>";
$_POST['email'] = mysql_real_escape_string($_POST['email']);
echo $_POST['email']."<br>";

しかし、mysql_real_escape_stringにPOSTのデータを通すと$_POST['email']の中身がfalseになります。
ちなみに、POSTで送るデータは[email protected]等です。
どこが間違っているんでしょうか?
0368nobodyさん2008/03/27(木) 13:10:27ID:???
>>366
確かにそうだなw
でも、しょうがないじゃん。これで食ってるんだから。
0369nobodyさん2008/03/27(木) 13:10:55ID:???
>>366
レベルひっくー
0370nobodyさん2008/03/27(木) 13:11:15ID:???
ずっと$_POSTを引きずり回さなくても・・。
0371nobodyさん2008/03/27(木) 13:16:48ID:???
職業プログラマは自分で言語を選べないんだよ…
0372nobodyさん2008/03/27(木) 13:27:47ID:2PjNLBe+
>>370
問題はそこじゃないわけで(ry
ちなみに

$email = mysql_real_escape_string($_POST['email']);
echo $email;

でも

echo mysql_real_escape_string($_POST['email']);

でもだめでした。
0373nobodyさん2008/03/27(木) 13:32:35ID:???
>>367
> 注意: mysql_real_escape_string() を利用する前に、MySQL 接続が確立されている必要があります。
> もし存在しなければ、E_WARNING レベルのエラーが生成され、FALSE が返されます。

問題はここですか。
0374nobodyさん2008/03/27(木) 13:33:13ID:???
>>367
http://www.php.net/manual/ja/function.mysql-real-escape-string.php
> 注意: mysql_real_escape_string() を利用する前に、
> MySQL 接続が確立されている必要があります。
> もし存在しなければ、 E_WARNING レベルのエラーが生成され、
> FALSE が返されます。link_identifier が指定されなかった場合は、
> 直近の MySQL 接続が用いられます。
0375nobodyさん2008/03/27(木) 13:39:44ID:???
>>367さんは値を受け取ってすぐmysql_real_escape_stringするつもりなのかもしれないけど、
これは普通、sql発行する直前に書かない? 当然、その前で何らかのチェックはするけど。
0376nobodyさん2008/03/27(木) 13:50:36ID:???
アアーッ

すみませんでした
preg_matchでマッチングさせた後mysql_connect()の前でやってました
ありがとうございました
0377nobodyさん2008/03/27(木) 14:33:15ID:???
>>376
どうでもいいけど、今時mysql_connect()なんか使わないで、PDOを使えよ。
0378nobodyさん2008/03/27(木) 14:40:55ID:???
>>377
ここにいる基礎が出来ないヤツらに、PDO勧めるのは間違い。
0379nobodyさん2008/03/27(木) 14:51:12ID:???
だってphp4系なんだもん
0380nobodyさん2008/03/27(木) 15:26:27ID:???
>>378 ぷっ
0381nobodyさん2008/03/27(木) 15:56:56ID:???
SVG形式のデータを画像(jpeg等)にして、保存したり、別の画像に重ね合わせたりしたいのですが
どなたか、良いアイデアをご教示願えないでしょうか。
当初、imagickを使用すれば良いと単純に考えていたのですが
今回の開発環境がPHP4系だったもので、上記ライブラリは使用不能であり
煮詰まってしまいました。

どなたか、お助けください。
0382nobodyさん2008/03/27(木) 16:11:42ID:???
>>381
>>1
0383nobodyさん2008/03/27(木) 16:22:31ID:???
>>381
rsvg-convert
0384nobodyさん2008/03/27(木) 17:29:35ID:wJkba3DR
php.iniにて
mbstring.internal_encoding = eucJP-win
と設定しております。
<?=phpinfo()?>
でブラウザから確認するとちゃんとeucJP-winとなるのですが、
コマンドラインから実行する際に
print mb_internal_encoding();
としたらEUC-JPとなってしまいました。
コマンドラインではphp.iniの設定は読まれないのでしょうか?
またどこで設定すれば良いのでしょうか?
0385nobodyさん2008/03/27(木) 18:36:22ID:???
>>381
svgなんて死んだ規格使うなよ
0386nobodyさん2008/03/27(木) 18:38:13ID:8KxLf7TG
PHP5.2.5をインストールしたところ、

PHP -v

とやると

PHP Warning: PHP Startup: Unable to load dynamic library
'./xsl.so' - ./xsl.so: cannot open shared object file:
No such file or directory in Unknown on line 0

こんな感じのエラーがいくつも出てしまうんですが、なぜでしょう?
ちゃんと
/usr/lib64/php/modules/xsl.so
はあるんですけども。。。
0387nobodyさん2008/03/27(木) 18:44:21ID:???
>>386
見つからない './xsl.so' の './' はどこでしょう。
03883862008/03/27(木) 19:03:53ID:8KxLf7TG
>>387

ああ、カレントですね。で、

cd /usr/lib64/php/modules/

php -v

PHP Warning: PHP Startup: dom: Unable to initialize module
Module compiled with module API=20050922, debug=0, thread-safety=0
PHP compiled with module API=20060613, debug=0, thread-safety=0
These options need to match
in Unknown on line 0

です・・・。今一歩?いや、離れた?.soファイルの位置ってどの段階で
指定しているのだろう・・・?
03893862008/03/27(木) 19:12:46ID:???
というか、rpmをきちんと削除しないでインスコしたのが元凶な
気がしてきた。
0390nobodyさん2008/03/27(木) 19:39:44ID:???
>>388
つい昨日、いろんな理由で、PHPをsrc.rpmからいれて
同じような問題がおこって設定した。

.soファイルの位置は/etc/php.iniのextesionなんたらで指定できる。

俺は面倒だったから絶対パス指定に書き換えた。
03913862008/03/27(木) 20:33:09ID:???
>>390

どうも。

そのようにやったら、メッセージが386から388のに変わった。
要するに、入ってる*.soが古いらしいんだが、なんでPHPの
インストールで入ってくれないのか分からん。
0392nobodyさん2008/03/27(木) 21:23:38ID:???
>>391入れなかったから入ってくれなかったんじゃねーの?
03933902008/03/27(木) 21:46:16ID:???
俺はsrc.rpmからいれたんでちょっと違うんだが、
それでも(configureをいじって)rpmパッケージを作成してから
入れたので参考になるかもしれん。

rpmはphp本体とモジュールで分かれていた。
つまり、php-なんたら-xsl-なんたら.rpmを入れるんじゃね?
って>>392といっている事同じなんだが。
0394nobodyさん2008/03/27(木) 22:16:05ID:xfNpn7Y+
phpというよりはhtmlよりの質問で申し訳ないのですが、
プログラムやってる人じゃないとフォームはなかなか使わないと思うので、
スレ違いとはわかっていますがご指南お願いします。

アンケートを作っています。回答を選択する場合、一般的にはselectを使いますよね?
<select name="vote">
<option value="1">value1</option>
<option value="2">value2</option>
</select>

適切な回答内容がない場合、その他という形でテキストフォームから追加できるようにしたいのですが、
その場合の書き方の検討がつきません。

<input type="radio" name="select">
<select name="vote">
<option value="1">value1</option>
<option value="2">value2</option>
</select>
<input type="radio" name="select">
<input type="text" name="vote">

フォーム配置のイメージとしてはこんな感じなのですが・・・

textのほうのname名を別名(たとえばavote)にして、

if ($_POST['select'] && $_POST['avote'])
という感じにして処理するしかないのでしょうか?
0395nobodyさん2008/03/27(木) 22:24:40ID:???
>>394
<select name="vote">
<option value="1">value1</option>
<option value="2">value2</option>
<option value="3">その他</option>
</select>
<input type="text" name="avote">
として、その他を選んだ場合のみavoteを参照するってのが一般的かと
03963942008/03/27(木) 22:26:52ID:???
>その他を選んだ場合のみavoteを参照するってのが一般的かと
あーなるほど。盲点でした。
voteにその他を追加すればよいのですね。
どうもありがとうございます。
0397nobodyさん2008/03/27(木) 22:58:32ID:???
imagick2.1.1を入れました

$image = new Imagick();
$image->readImage($url);

これだと外部にある画像を読み込んでくれません
URLを読み込むにはどうしたいいのでしょう?
マニュアル調べても分からなくて
0398nobodyさん2008/03/27(木) 23:09:22ID:6a96K/LD
A〜Zまでを一つずつではなく、連続で表示したいのですが
どういう風に書けばいいのでしょうか?
0399nobodyさん2008/03/27(木) 23:11:58ID:U1kIZSVM
質問します
var_dump()をかけると、以下を返す連想配列$evDayAryがあります
Array ( [2008-03-01] => 1 [2008-03-02] => 2 [2008-03-07] => 1 [2008-03-09] => 1 [2008-03-13] => 1 [2008-03-15] => 2 [2008-03-16] => 1 [2008-03-29] => 1 [2008-03-30] => 1 )
これに対して、
if($evDayAry["{$scheResult->fields[8]}"]){処理;} とするとき、
{$scheResult->fields[8]}が
2008-03-13 2008-03-15 2008-03-16 2008-03-29 2008-03-30 の時は処理をするのに、
2008-03-01 2008-03-02 2008-03-07 2008-03-09 の時は処理してくれません。
何故でしょう?どうしたらいいんですか? 七転八倒したんですが良くわかりません
どなたかご回答お願いします
0400nobodyさん2008/03/27(木) 23:53:54ID:???
>>399
{$scheResult->fields[8]}
日がゼロサプレスすると、1桁ってのがヒントかもしれぬ
0401nobodyさん2008/03/28(金) 00:01:40ID:???
>>398
foreach (range('A','Z') as $c) echo $c;

echo implode(range('A','Z'));
一つずつの意味がよくわからんけどこういうことがしたいのかな。
0402nobodyさん2008/03/28(金) 00:05:40ID:???
GDのImageCreateFromJpegで読み込んでImageJPEGで生成したものを
Imagickに受け渡してなんとかなった気がする
すごい無駄な処理を噛んでる気がするけど
0403nobodyさん2008/03/28(金) 00:28:16ID:AaqCMoS5
<?php
if($_POST['address']){
$mailto=$_POST['address'];
$mailsubject=mb_convert_encoding("【メールのサブジェクト】","JIS","EUC-JP");
$mailbody=mb_convert_encoding("メールを送信しました。","JIS","EUC-JP");
$mailheader="From: php mail<[email protected]>";
mb_language("Japanese");
if(mb_send_mail($mailto,$mailsubject,$mailbody,$mailheader)) print "送信完了";
else print "送信失敗";
}
print<<<STD
<html><head><title></title></head><body>
<a href="mail.php" style="font-size:10pt;">更新</a><br><br><br>
<form action="mail.php" method="POST">
<div style="border:1px #A5ACB2 solid;text-align:center;padding:15px; 0px 10px 0px;">
<div style="margin:0px 0px 0px 0px;font-size:10pt;color:#6b6b6b;">メールアドレスを記入して送信して下さい</div>
<input type="text" name="address" style="width:250px;border:1px #A5ACB2 solid;">
<input type="submit" value="送信" style="width:80px;border:1px #909eb2 solid;background-color:#f0f0f0;margin:10px 10px 0px 0px;">
</div></form></body></html>
STD
?>
記入したメールアドレスに宛ててメールを送信するスクリプトを作っているのですが、
どうしてもメールのサブジェクトが文字化けしてしまいます・・・。
どうしたら良いでしょうか?
0404nobodyさん2008/03/28(金) 00:32:27ID:???
>>403
mb_convert_encoding();
で指定
04053982008/03/28(金) 00:52:16ID:???
>>401
これです!上手く行きました。ありがとうございました。
04064032008/03/28(金) 00:59:07ID:AaqCMoS5
>>404
どうしても
「【メールのサブジェ%/%H![ 」と言う感じに文字化けしてしまいます・・・
0407nobodyさん2008/03/28(金) 01:46:26ID:g+1Sesc4
<a>
<b>
<c>abcde</c>
<d>efghi</d>
<children>
<a>
<b>
<c>abcde</c>
<d>efghi</d>
<children>
<a>
<b>
<c>abcde</c>
<d>efghi</d>
</children>
</children>
<a>
<b>
<c>abcde</c>
<d>efghi</d>

こういうxmlで<children>の数が不規則な場合、どうやってすべての<c>と<b>を取得すればいいでしょうか?
simplexmlを使えるのですがどう書けばいいかわかりません
ご教授ください
■ このスレッドは過去ログ倉庫に格納されています