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

【PHP】くだらねぇ質問はここに書き込みやがれpart9

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/09/03(土) 11:53:32ID:7OO4C5e5
PHPに関するくだらない質問用すれです。
ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい

・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
【PHP】くだらねぇ質問はここに書き込みやがれpart7
http://pc8.2ch.net/test/read.cgi/php/1121100429/
【PHP】くだらねぇ質問はここに書き込みやがれpart8
http://pc8.2ch.net/test/read.cgi/php/1123431535/
0652nobodyさん2005/09/15(木) 16:55:25ID:???
PHPって楽しいよな!
0653軟式PHP2005/09/15(木) 17:48:14ID:???
>>651
2台サーバーがあって、ロードバランサーとかで振り分けてる場合に
使うと一番利点が高いような気がする。俺は。
0654nobodyさん2005/09/15(木) 19:15:35ID:???
>>653
あー、なるほど。サンクスです。
0655nobodyさん2005/09/15(木) 19:37:29ID:???
関数の定義(プロトタイプ)を読むには
http://php.s3.to/man/about.prototypes.html

ここを読んでいるんだけど、「needle」ってなに?
辞書引くと「針」とか出るんだけど、文脈からすると「検索文字列」とかそんな感じだと思うんですが。
「needleとは」でググッてもいまいち、ぱっとするものが出てこないなぁ
0656nobodyさん2005/09/15(木) 20:30:36ID:???
>>655
スカーレットニードルしか思い浮かばん
0657PHP初心者2005/09/15(木) 20:41:48ID:VaGG+gkL
どなたか、掲示板等に表示されるIPからIDを生成する仕方を教えてください。
0658nobodyさん2005/09/15(木) 20:43:34ID:???
>>655
(look for) a needle in a haystack
干し草の山の中の針(を探す) ((不可能な事, むだ骨などのたとえ)).
0659nobodyさん2005/09/15(木) 21:54:01ID:???
>>657
$id = md5 ( $_SERVER['REMOTE_ADDR'] );
0660nobodyさん2005/09/15(木) 22:00:45ID:???
cryptと md5はどう使い分けるべきですか?
md5の方が良い場合はどんな時ですか?
0661PHP初心者2005/09/15(木) 22:05:02ID:VaGG+gkL
>>659
ありがとうございます。早速ためしてみます。
0662nobodyさん2005/09/15(木) 22:46:21ID:???
md5でid作るって池沼としか
0663nobodyさん2005/09/15(木) 23:32:45ID:???
携帯の個体識別情報を取得したいのですが
どう変更したらいいのか教えていただけますか?

sub write{
&asyuku;
#携帯機種を取得
$agent = $ENV{HTTP_USER_AGENT};
#$agent = "J-PHONE/3.0/J-SH05";
if($agent =~ /DoCoMo/){
@agents = split(/\//,$agent);
$agent = $agents[2];
}
elsif($agent =~ /J-PHONE/){
@agents = split(/\//,$agent);
$agent = $agents[2];
}
elsif($agent =~ /UP\.Browser/){$agent = 'EZweb';}
elsif($agent =~ /Mozilla/){$agent = 'PC';}
else{$agent = '?';}
0664nobodyさん2005/09/16(金) 00:00:04ID:???
It's CGI.
Fuck guy!
06656632005/09/16(金) 00:11:04ID:???
すみません間違えました
0666nobodyさん2005/09/16(金) 00:43:20ID:???
置換に関する質問。
A03という文字があったとして、数字の部分は二桁or一桁の動く数字。
数字の部分に対してタグを入れたい。

$levelm = "/A([1-9]|[1-9])?([0-9]|[0-9])([^0-9]|[^0-9])/"
preg_replace ($levelm , "A<span class=\"level\">$1$2</span>", $buffer);

これだと全ての数字にマッチしてしまう。
どうすればいいですか。
0667nobodyさん2005/09/16(金) 01:31:08ID:0dogEF/n
Web制作板からの移動です

この板には「罪と罰」というネットゲームをご存じの方はいらっしゃるでしょうか?
そのように複数のプレーヤーの様々な数値を共有するようなことはどのように制作するのでしょうか?
拡張子を拝見してCGIを使用していることまでは分かったのですが内容までは分かるはずもなく知りたいという欲求にかられています。
自分のスキル不足、無知を知っていての質問です。
どうがご講義願います。
0668nobodyさん2005/09/16(金) 01:35:28ID:???
そういうのを自分で作りたいの?
06696672005/09/16(金) 01:42:35ID:???
>>668さん
あつかましいようですが作ってみたいです。
作りたいのは罪と罰のようなRPGとは少々違うのですがプレーヤーに数値があるのと多人数参加型のゲームであることは変わりは割りません。
でも私はCGIの知識はまったくと言って良いほど無く現状では無理です。
こういう私がこんな発言してすみません。
0670nobodyさん2005/09/16(金) 01:50:15ID:???
Web板の住人だ
こんな奴を押し付けちまってスマン

>>667
ここはPHPのスレッドだからこっち行こうな
そもそも技量が足りてなさすぎだが

Perlコーディング初心者質問スレ Part 43
http://pc8.2ch.net/test/read.cgi/php/1123777607/
0671nobodyさん2005/09/16(金) 01:51:31ID:???
そういうのって基本的にcgiじゃ向いて無いと思うよ
windowsアプリケーション向き
0672nobodyさん2005/09/16(金) 01:56:05ID:???
BBSに投稿された他人のレスを皆が見られるのと基本的に同じ
0673nobodyさん2005/09/16(金) 08:11:38ID:BzI51Y3f
PHPのLDAP関数では、Windows認証ってできますか?
DNを指定するのではなく…。
0674nobodyさん2005/09/16(金) 15:23:31ID:bO5oShWU
違う板でも聞いてしまったんですが
strtrで\nの記号は消せるんですけど
普通の改行が消せません。
<TEXTAREA>から送ってるんですが改行したまま送信するとその改行がログファイルにそのまま出ちゃうんですよねー
どうにかなりませんか?
0675nobodyさん2005/09/16(金) 15:34:37ID:???
>>674
俺はstr_replace()使う
0676nobodyさん2005/09/16(金) 15:35:31ID:???
'\n'はリテラルの\n。改行を削除するには"\n"とする
けど*nix系サーバの\nはLF(ラインフィード)

Macから送られてくる改行記号は\r = CR(キャリッジリターン)
Windowsは\r\n = CRLFでマッチしないことがある

対策としては\rと\nをそれぞれ削除するか、キャラクタクラスを使って
/[\r\n]+/、/(\n|\r|\r\n)+/のようにする等
0677nobodyさん2005/09/16(金) 16:27:06ID:???
どうか教えてくださいませ

検索データを保持しつつ、いろいろなパターンのソートを
したいのですがどのようにすればよいのでしょうか
0678nobodyさん2005/09/16(金) 16:33:23ID:???
諸先輩方、教えてください。

$name1 = "山田";
$name2 = "中村";

for($i=1; $i<3; $i++)
{
$nameN = "\$name" . $i;
print $nameN . "<br>\n";
}

これを実行すると出力結果は
$name1
$name2
となってしまいます。
山田
中村
と出力させるには
↓この部分どう変更したらよいでしょうか?
print $nameN . "<br>\n";

お願いします。
0679nobodyさん2005/09/16(金) 16:46:15ID:???
>>678
$nameN = "name$i"; // バックスラッシュいらない
print $$nameN . "<br>\n"; // ドルマーク2つ

ってやればできるけど、そもそもなぜ配列を使わない?
この手の質問(変数名に数値を入れちゃうパターン)やたらよく見かけるけど。
いいから配列使えって。

>>677
配列のソートだったら
http://www.php.net/manual/ja/ref.array.php
から探して。
それともDB?
0680nobodyさん2005/09/16(金) 17:09:18ID:???
ファイルの最終更新日時を変更したいのですが、そのようなことは可能でしょうか?
もし可能であれば、どの関数を使えばいいのでしょうか?
0681nobodyさん2005/09/16(金) 17:09:38ID:???
>>679
早速のご回答有難うございます。
配列にしてやってみます。
0682nobodyさん2005/09/16(金) 17:16:46ID:???
>>677です。

>>679さま
ありがとうございます

DBからの検索結果を保持したままいろいろソートしたいの
ですが、どのようにしたらよろしいのでしょうか
0683nobodyさん2005/09/16(金) 17:24:40ID:???
>>680
http://www.php.net/manual/ja/ref.filesystem.php
0684nobodyさん2005/09/16(金) 17:35:04ID:???
>>680
タッチ (実写版)
0685nobodyさん2005/09/16(金) 17:36:57ID:???
>>682
DBにソートしなおさせる
又は全部配列に入れてPHPでソートする
以外にない
0686nobodyさん2005/09/16(金) 17:40:27ID:???
685さま

ご回答ありがとうございます

配列に入れてみます
0687nobodyさん2005/09/16(金) 18:01:40ID:???
>>683-684
早速試してみます。
本当にありがとうございました。
0688nobodyさん2005/09/16(金) 18:06:04ID:???
phpの解説本の「スクリプトは1つにまとめられる」みたいな章に載ってた例文を
そのまま打って実行してみたのですが、エラーになってしまいます。
私の打ち間違いだと思うのですが、どこがおかしいか教えていただけないでしょうか?

<html>
<body>

<?php if(empty($_GET["yyyy"])): ?>
<form action="test41.php">
西暦<input type=text name=yyyy>年
<input type=submit>
</form>

<?php else:
$meiji=$_GET["yyyy"]-1866;
$taisyo=$_GET["yyyy"]-1911;
$syowa=$_GET["yyyy"]-1925;
$heisei=$_GET["yyyy"]-1988;

print "西暦{$_GET["yyyy"]}年は明治{$meiji}年、大正{$taisyo}年、<br>\n"
."昭和{$syowa}年、平成{$heisei}年となります。<br>\n;
endif;
?>

</body>
</html>
0689nobodyさん2005/09/16(金) 18:13:25ID:???
688です。
すいません、自己解決しました。
"を付け忘れてました。
どうも失礼しました。
0690nobodyさん2005/09/16(金) 18:17:00ID:???
どっかで見たことあると思ったら徹底攻略か
今思うとすごい文法だな。
0691軟式PHP2005/09/16(金) 18:23:50ID:???
凄いクソースだな…w
0692nobodyさん2005/09/16(金) 18:28:33ID:???
>>691
と言う事はあの本で勉強しないほうが良いですか??
0693nobodyさん2005/09/16(金) 19:07:54ID:???
いやいいと思うよ俺は
ソースが汚くてもそれで読者がPHPを理解できるようになれば
それであの本の役目は果たしてるだろ
0694nobodyさん2005/09/16(金) 21:08:31ID:???
>>666
0695nobodyさん2005/09/16(金) 21:12:32ID:???
頑張れよ。
0696nobodyさん2005/09/16(金) 23:35:06ID:???
フォームを作ってテキストを入力してそれを$_REQUEST["〜"]で受け取って
$bunに代入しました。それで、$bunに特定の言葉が入っているか判断する(例えば「yahoo!」と言う文字が有るか無いかで次の処理を変える)
ようにしたいのですが、どうやったら良いかいまいち分かりません。
ifを使ってやると思うのですが、、、ヒントを頂けないでしょうか?
0697nobodyさん2005/09/16(金) 23:45:43ID:???
>>696
preg_match
0698nobodyさん2005/09/16(金) 23:47:15ID:???
>>696
http://www.php.net/manual/ja/function.strpos.php
http://www.php.net/manual/ja/function.ereg.php
http://www.php.net/manual/ja/function.preg-match.php
0699nobodyさん2005/09/17(土) 00:46:56ID:???
>>697
>>698
やってみたらできました!
ありがとうございました!
0700z208.219-127-36.ppp.wakwak.ne.jprlo2005/09/17(土) 00:53:05ID:ILTk3jyK
Anime Land-2004 otzoi
0701nobodyさん2005/09/17(土) 04:05:58ID:???
掲示板のデータを修正して、書き直しする部分を作ったのですが、
修正データを書き込む箇所で、該当レコードの次のレコードが削除されてしまい、四苦八苦しました。
そこで、試しにレコード番号に−1をしたところ削除されないようになり正常動作しました。

しかし、なぜ−1になるかわかりません

【環境】winXPsp2 + apache2 + php5


$input = implode(",",array($recode,$renen,$remake)); //入力データ作成
$dfile = file($data_file);   //既存ファイルの読み出し
$fp = fopen($data_file, "w");  //オープン

for($i=0; $i<sizeof($delfile); $i++){
 list($dcode,$dnen,$dmake) = split( ",", $dfile[$i]);

  if ($recode == $dcode) {   //該当データか判断
    $dfile[$i-1] = $input;   //該当箇所の書き換え  ←問題の箇所
  }
 fputs($fp,$dfile[$i]); //書き出し
}
fclose($fp);

該当レコードが0番目の場合
FPUTSで、レコード−1番にインプットが入って、fputsではレコード0を書き出している。
次に1を書き出して・・とやっていくと、−1は書き出されない計算になると思うのですが・・・

書いてることが支離滅裂になってきたけど、わかってください
とにかく気持ち悪いんです
0702↑続き (勘違いでした)2005/09/17(土) 04:15:17ID:???
すみません。修正されてませんでした。

−1すると、修正できませんが、直後のレコードも削除されません。
−1をとると修正はできますが、直後のレコードが削除されます。

どーすれば普通にできるんでしょうか?早く寝たい・・

原因は fput か for か どっちでしょうか?
0703nobodyさん2005/09/17(土) 04:18:23ID:???
データファイルの各行のサイズが固定でないと出来ない方法だね。
0704nobodyさん2005/09/17(土) 04:23:06ID:???
forの条件式は delfile -> dfileの間違いだとして、、
>>701が言ってるように、書き出されないはずだよ。

他にヤバそうな所といえば、file()は改行コード付きで読み込まれるから、
$inputの最後に改行コードが無いとつじつまが合わない事になるくらいかな。
そのせいで実際のデータファイル内では1行に2レコード入っちゃってるんじゃないかな。
それを別の表示用のスクリプトで見ているから あたかも消えたように見えるとか。
0705701and7022005/09/17(土) 04:29:37ID:???
>>704さん
ありがとうございます!
それでした。
$inputの後ろの改行コードが無く、1行2レコードになってました。

こんな時間なのに、的確なチェックありがとうございました。
0706nobodyさん2005/09/17(土) 07:43:35ID:7NQoGAMZ
gz圧縮するには、以下のようにすればいいようですが、

<?
ob_start("ob_gzhandler");
?>
<html>
<body>
<p>This should be a compressed page.
</html>
<body>

ちゃんと圧縮されているかどうか確認する方法はないでしょうか?
レスポンスヘッダに「圧縮した」という情報が付加されているのかと思い見てみたのですが、
それらしき情報はありませんでした。
07077062005/09/17(土) 07:48:14ID:7NQoGAMZ
2chのヘッダを見ると
Content-Encoding: gzip
がありました。
これがないということはちゃんと動作していないということでしょうか?
ZLib Support はenabled になっているのですが…。
0708nobodyさん2005/09/17(土) 07:50:21ID:???
>>706
telnet
0709nobodyさん2005/09/17(土) 08:28:08ID:???
ob_gzhandlerが全て面倒を見てくれるよ。
・リクエストヘッダのAccept-Encodingの内容の確認
・それに応じて圧縮するか否か
・必要であればリスポンスヘッダ(Content-Encoding)の追加

telnetで確認するのなら、リクエストに
Content-Encoding: gzip, deflate を追加する時としない時とで比較すればよいかと。
0710nobodyさん2005/09/17(土) 08:28:59ID:???
>>706
今試してみたけどちゃんとヘッダー出してますよ

Date: Fri, 16 Sep 2005 23:26:50 GMT
Server: Apache/2.0.54 (Win32) PHP/5.1.0b2 mod_perl/2.0.0 Perl/v5.8.6
X-Powered-By: PHP/5.1.0b2
Content-Encoding: gzip
Vary: Accept-Encoding
Content-Length: 1212
Keep-Alive: timeout=15, max=92
Connection: Keep-Alive
Content-Type: text/html; charset=Shift_JIS
Content-Language: ja

200 OK
0711nobodyさん2005/09/17(土) 08:29:11ID:???
>>706
FirefoxでLive HTTP Headers
07127062005/09/17(土) 08:33:33ID:???
ありがとうございます。
もう一度試してみたらちゃんと出ました。
レスポンスも悪くないし、今まで何故使っていなかったのだろうという感じです。
0713z84.61-45-20.ppp.wakwak.ne.jprlo2005/09/17(土) 09:11:42ID:mvdEHd47
Anime Land-2004 otzoi
0714nobodyさん2005/09/17(土) 09:36:38ID:???
すいません、ある鯖で自作のPHPスクリプト動かしたときには
エラーがあればきちんとエラー情報が表示されたんですが、
別の鯖に移ったら、エラー表示が出なくなりました。

具体的には、たとえば行末の「;」を忘れた時に普通はエラー表示されますよね?
それが、真っ白な画面が出るだけで、エラーメッセージが出ないのです・・・。
これはPHPの設定の問題でしょうか??
0715nobodyさん2005/09/17(土) 09:54:12ID:???
>>714
本番鯖でデバッグするのはあんまりよくないかと。
訪問者に余計な情報を表示しないというポリシーから表示しない事の方が多いんじゃないかな。

PHPの設定(php.ini)に、
エラーをレベル分けした時にどのレベルから出力するかというレベル分けの設定と、
画面やログファイルなどのどこに出力するかという出力先の設定があります。
この辺 ttp://www.php.net/manual/ja/ref.errorfunc.php
0716nobodyさん2005/09/17(土) 11:00:24ID:???
あんまりよくないとかじゃなくて底なしの大馬鹿野郎
共有にしろ専有にしろ
0717nobodyさん2005/09/17(土) 11:43:48ID:???
714じゃないけどモジュール版のPHPは
暴走させても致命的なダメージはないのでは?
特に専鯖の場合はApacheリスタートでほとんど無問題と思う
まあやらない方がいいに決まってるんだけど
0718nobodyさん2005/09/17(土) 12:10:32ID:???
趣味グラマって怖いこと言う人が多いね
0719nobodyさん2005/09/17(土) 12:55:28ID:???
絶対やらないゲームのネタばれでも必死で避けてしまうよな。
0720nobodyさん2005/09/17(土) 14:41:15ID:???
そもそも、ローカルでテストすらしてないPHPを鯖に上げるって時点で('A`)

まぁ、>>714はローカルにテスト環境構築しろ。って事で
0721nobodyさん2005/09/17(土) 15:24:20ID:???
なによりまずlintでシンタクスチェックを
07227142005/09/17(土) 16:55:28ID:???
や、なるべく本番に近い環境でデバッグしたほうが結局なにかと早いので、
本鯖と同じ仕様で、デバッグ専用の専鯖も一つ借りてるんです。最近はかなり安くなりましたし。
以前はいちいちローカルでテストしてましたが、Windowsマシンだし、あとメール環境の違いとか
cron絡みとか、PHPのバージョンの違いとかで微調整が面倒くさかったので。。

>>715
参考になりました。ありがとうございます。
0723nobodyさん2005/09/17(土) 17:00:28ID:???
こんなレベルなら、地面でも掘ってるほうが頭使わなくていいんじゃないの?
0724nobodyさん2005/09/17(土) 17:00:47ID:???
じゃあ「デバッグ専用の専鯖」の意味がないじゃん。
脳内鯖?
0725nobodyさん2005/09/17(土) 17:02:01ID:???
会社もかわいそうだよな。こんなの雇って。
0726nobodyさん2005/09/17(土) 17:12:21ID:???
ホームラン級の馬鹿だな
0727nobodyさん2005/09/17(土) 19:17:35ID:???
例のようにPHPで毎アクセスごとに同一ページのアドレスを変化させる
ことは可能ですか?


例

1回目アクセス時 http://www.abc.co.jp/php=?410ulp
2回目アクセス時 http://www.abc.co.jp/php=?584ajok
3回目アクセス時 http://www.abc.co.jp/php=?kefop78
0728nobodyさん2005/09/17(土) 19:32:11ID:???
>>727
意図が分からんので適当に答えると、uniqid md5 substrあたりを組み合わせればよいかと。
0729nobodyさん2005/09/17(土) 19:52:35ID:???
>>727
業者か?
0730nobodyさん2005/09/17(土) 20:51:43ID:???
>>723-726
貧乏人乙の僻み乙。
0731nobodyさん2005/09/17(土) 21:44:08ID:???
>>730
燃料投下するにしても、的はずれ過ぎっすよ。
0732nobodyさん2005/09/17(土) 21:45:59ID:???
>>728
どうも。
0733nobodyさん2005/09/17(土) 21:59:53ID:???
関数の中で関数は使えないの?
0734nobodyさん2005/09/17(土) 22:37:33ID:???
コーディングしていると、ユーザー関数、変数、ファイル名などの名称で悩むことが
度々あるのですが、その際に、大文字、小文字、似たような意味を持つ英単語の
区別など、本来ならば問題にする価値もない部分まで気になってしまいます。
ぜひとも皆様のご意見を聞かせていただければと思い、質問させていただきました。
よろしくお願いします。
0735nobodyさん2005/09/17(土) 22:43:40ID:???
クラス名・変数名に迷ったら書き込むスレ。Part5
http://pc8.2ch.net/test/read.cgi/tech/1109330204/
0736nobodyさん2005/09/17(土) 22:56:32ID:???
>>734
うまく動いてるのに、変数名とかフィールド名が気に入らないだけの理由でプログラムに手を加えて、エロイ事になった漏れがやってきましたよ。
いろいろやってるうちに自分なりのパターンが出来てくると思う。
0737nobodyさん2005/09/17(土) 23:13:50ID:???
メール送信のスクリプトを作ったのですが実行すると
「Fatal error: Call to undefined function mb_language() in C:\○○○\mail.php on line 10」
とエラーが出てしまうので、10行目のコードを確認したのですが原因が分かりません。
どこが間違っているのでしょうか?
よろしくお願いします。
0738ソースです2005/09/17(土) 23:14:31ID:???
◆フォーム

<html>
<head><title></title></head>
<body>
<h2>メール送信スクリプト</h2>
<form action="mail.php" method="past">
宛先:<input type="text" name="address"><br>
件名:<input type="text" name="subject"><br>
本文:<br><textarea name="message" rows="5" cols="30"></textarea><br>
<input type="submit" value="送信">
</form>
</body>
</html>
0739ソース2です2005/09/17(土) 23:15:03ID:???
◆メール送信

<html>
<head><title></title></head>
<body>
<?php
$address = $_POST['address'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$header = "Content-Type: text/plain;charset=iso-2022-jp";

mb_language("Japanese"); //10行目
if(mb_send_mail($address, $subject, mb_convert_encoding($message,"JIS", "EUC-JP"),$header)){
print("送信完了しました。");
}else{
print("エラー:送信に失敗しました");
}
?>
</body>
</html>
0740nobodyさん2005/09/17(土) 23:15:22ID:???
PHP-Usresでスルーされてしまったため、こちらで聞きます。


PHPで使えるDOMで、DTDを無視して読み込みが出来るできるラ
イブラリってありますか。
winのvc++で、某社のXMLライブラリを使って出来てはいるの
ですが、同じことをPHPでしたいです。

スレ違いだったら誘導願います。
0741nobodyさん2005/09/17(土) 23:20:54ID:???
> Fatal error: Call to undefined function mb_language() in C:\○○○\mail.php on line 10
致命的エラー: 定義されていない関数 mb_language() が C:\○○○\mail.php の10行目で呼び出されました。
なので、鯖のPHPがmb_language関数を使えるようになっていないのでしょう。
他のmb_*関係の関数(mb_send_mail、mb_convert_encoding)も使えないんじゃないかな。
phpinfo(); を実行した時に、mbstringの項目を見るとはっきりします。

対策は、その鯖の設定(場合によってはインストールから)を変更するしかないです。
鯖を管理している人に相談してみましょう。
0742nobodyさん2005/09/17(土) 23:22:07ID:???
>>737
原因は下記の通りです
Call to undefined function mb_language()
0743nobodyさん2005/09/17(土) 23:29:49ID:???
>>735-736
初心に帰って英和辞典でも読んでみることにします。
ありがとうございました。
0744nobodyさん2005/09/17(土) 23:47:15ID:???
>>741
ご丁寧な
説明ありがとうございます。
上の結果はサーバーではなく、ローカルで実行したときのものです。
説明が足りませんでした。すみませんorz

SMTPサーバーをlocalhostにしているのですが、それが原因でしょうか?
もしそうなら、SMTPサーバーはyahooメールやGmailのものでも代用可能なのでしょうか?

また、phpinfo(); を実行してmbstringという項目を探したのですが、見当たりませんでした。

バージョンは下記の通りです
PHP5.0.5
Apache/2.0.54 (Win32)
0745nobodyさん2005/09/17(土) 23:57:42ID:???
>>744
php_mbstring.dllをphpに組み込む。

インストールの説明をちっとも読んでないみたいだから、
googleで適当なサイトでも探していっぺん読んでこい。
0746nobodyさん2005/09/18(日) 00:00:38ID:???
>>745
ありがとうございます。
少し勉強してきます
0747nobodyさん2005/09/18(日) 01:06:27ID:???
php.iniとSMTPの設定をした後、再度さっきのスクリプトを実行したところ
今度は「Warning: mb_send_mail() [function.mb-send-mail]: Missing To: field in C:\○○○\mail.php on line 11」
と警告がでてしまいます。
エキサイトで翻訳してみたところ「警告: mb_は_メールを送ります。() function.mbはメールを送ります: 欠けているTo: Cの分野」
となりました。
欠けている、というのは・・

11行目のソースを見ても間違いが分かりません・・。
今度は何が原因なのでしょうか。
ご教授お願いします_| ̄|○
0748ソース2005/09/18(日) 01:07:56ID:???
<html>
<head><title></title></head>
<body>
<?php
$address = $_POST['address'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$header = "Content-Type: text/plain;charset=iso-2022-jp";

mb_language("Japanese");
if(mb_send_mail($address, $subject, mb_convert_encoding($message,"JIS", "EUC-JP"),$header)){  //11行目
print("送信完了しました。");
}else{
print("エラー:送信に失敗しました");
}
?>
</body>
</html>
0749nobodyさん2005/09/18(日) 01:21:06ID:???
Windowsで動かしているんじゃないかな?
この辺りに詳しく書いてあるのでOSの事に注意しながら読んでみてください。
ttp://www.php.net/manual/ja/ref.mail.php
0750nobodyさん2005/09/18(日) 02:08:40ID:???
>>747
Missing TO: field
なんだからメール送信に必要な「TO:」が設定されてないですよ。
って事なんじゃないの?
0751nobodyさん2005/09/18(日) 03:17:27ID:???
>>736
同志!
■ このスレッドは過去ログ倉庫に格納されています