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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/01/24(水) 22:10:29ID:???
PHPに関する質問用スレです。ここならお前の下らない質問に回答があるかも知れません。

まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

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

◆質問する時の注意
・ 自分の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
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
 しかし初心者が目的も定めずに速度を気にしたところでほとんど意味は無いぞ
0652nobodyさん2007/02/01(木) 05:15:21ID:???
↑はimap_mail関数になってますが、mail()でもmb_send_mail()でもダメでした。
0653nobodyさん2007/02/01(木) 05:19:38ID:???
実際に送れる鯖なの?
なんかスパマーの温床になりそうなんだが(^ω^;)
0654650.6522007/02/01(木) 05:22:40ID:???
>>651
すんません。5時間程色々いじりながら悩んでいる間に、$が取れちゃったみたい。
今夜はもう寝て明日詳しい人捕まえに行きます。
ホントにスイマセンデス OTL。
0655650.652,6542007/02/01(木) 05:27:29ID:???
>>653
sendmailが使用可ならmail関数も使えるんだろな・・・みたいに勝手に思い込んでましたが、だめなのかな。
あちこちレンタル鯖見て回ったんだけど、ほとんどの鯖は「sendmail使用OKだけどあんまり無茶したら起こるよ」て
感じだったから、スパムやメルマガで使ったら追い出されるのかな・・・と考えてた。
0656nobodyさん2007/02/01(木) 06:04:37ID:???
>>655
っていうか、sendmailなんか使わずにqmail使えよw
何で今さらsendmail何だよ!
0657nobodyさん2007/02/01(木) 07:20:06ID:???
>>656
レンサバでは名前はsendmailでも中身はqmailとかだったりするよ
TOK2がどうかは知らないが
0658nobodyさん2007/02/01(木) 08:04:47ID:???
trimで半角空白と全角空白をとりたいのですが両方同時に取ることは可能でしょうか?
現在はこんな感じでとっているのですが、どうも見栄えが…
trim(trim($hoge), " ")
0659nobodyさん2007/02/01(木) 08:06:43ID:???
>>658
wtrim(string str);
0660nobodyさん2007/02/01(木) 08:09:13ID:???
>>659さん
マニュアルに載ってないんですが…
とりあえずやってみます
ありがとうです
0661nobodyさん2007/02/01(木) 08:34:38ID:???
>>656
qmailの方が今更。なんでこんなどうしようもないMTAがもてはやされるのか理解不能だ。
0662nobodyさん2007/02/01(木) 09:06:45ID:???
>>661
MySQL信者降臨乙
0663軟式PHP2007/02/01(木) 09:37:49ID:???
('A')??
Postfix信者とかならわかるけど…。オレモナー
0664nobodyさん2007/02/01(木) 09:56:07ID:oQPP/iVz
rssの記事の日時取得するにはどうすれば
0665軟式PHP2007/02/01(木) 10:20:40ID:???
>>664
記事のタイトルとかは取れてるの?
<dc:date></dc:date>に囲まれてるところを取得すればいいとおもふ。
0666nobodyさん2007/02/01(木) 10:29:03ID:f6cNG9NM
ユーザー関数を呼び出すときに、関数()と書くことを覚えました。
あるPHPファイルから、どんな関数()というのが使えるのか調べるにはどうしたらいいのでしょうか?
0667nobodyさん2007/02/01(木) 10:29:28ID:???
っマニュアル
0668nobodyさん2007/02/01(木) 10:39:23ID:f6cNG9NM
マニュアルに調べ方書いてあります?
0669nobodyさん2007/02/01(木) 10:48:24ID:oQPP/iVz
軟式さんありがとう、やってみまつ
0670スナイダーズ2007/02/01(木) 10:55:25ID:???
>>658
$str = "任意の文字列(スペース含む)";//改行が無い文字列
$rm = "( | |\\t|\\n|\\r|\\0|\\x0B)";
$str = preg_replace("/^$rm+|$rm+$/","", $str);

※textareaとかで各行対象ならば、 $rm ="/(?<=\r|\n|^)$rm+|$rm+(?=\r|\n|$)/"
0671nobodyさん2007/02/01(木) 10:55:59ID:oQPP/iVz
2007-02-01T10:21:00+09:00

これの10:21のところだけをとりだしたいのですが
0672虚弱PHP2007/02/01(木) 11:02:36ID:???
>>671
substr();
0673nobodyさん2007/02/01(木) 11:10:03ID:oQPP/iVz
substr($***, 12, 16);じゃだめみたいです
0674nobodyさん2007/02/01(木) 11:11:01ID:oQPP/iVz
substr($***, 12, 16);じゃだめみたいです
0675nobodyさん2007/02/01(木) 11:12:09ID:oQPP/iVz
すいません、
substr($***, 11, 15);じゃだめみたいです
0676nobodyさん2007/02/01(木) 11:12:56ID:???
何がどうだめなんですか
0677虚弱PHP2007/02/01(木) 11:13:33ID:???
>>658
trim($hoge, '  ');
↑全角スペースと半角スペースのリスト
0678nobodyさん2007/02/01(木) 11:13:47ID:???
なにがしたいんだぜ
0679nobodyさん2007/02/01(木) 11:15:12ID:oQPP/iVz
2007-02-01T10:21:00+09:00
これの10:21のところだけをとりだしたいのですが
substr($***, 11, 15);じゃ
01:38:07+09:00
こうなってしまうんです
0680nobodyさん2007/02/01(木) 11:16:12ID:oQPP/iVz
ミスです、何度もすいません

2007-02-01T10:21:00+09:00
これの10:21のところだけをとりだしたいのですが
substr($***, 11, 15);じゃ
10:21:00+09:00
こうなってしまうんです
0681nobodyさん2007/02/01(木) 11:19:36ID:???
>>680
http://jp.php.net/substr
substr関数の動作についてちゃんと見てないからだと思います
0682nobodyさん2007/02/01(木) 11:21:14ID:???
substr(文字列, 開始位置, 抽出するサイズ) だぜ
俺釣られましたか?
0683nobodyさん2007/02/01(木) 11:26:40ID:oQPP/iVz
すいません、>>682を理解できてませんでした!

substr($***, 11, 5);でできました。
くだらない質問すいませんでした。
0684nobodyさん2007/02/01(木) 11:27:48ID:???
人に物を教えてもらったら感謝の言葉を述べるってお母さんに習わなかったか?
0685nobodyさん2007/02/01(木) 11:31:02ID:oQPP/iVz
みなさん、ありがとうございました。
お手数おかけしてすいませんでした。
0686nobodyさん2007/02/01(木) 11:37:54ID:???
>>685
もっと誠意をみせろ!カス
0687軟式PHP2007/02/01(木) 11:46:25ID:???
ヒドスw スルーせずにちゃんとお礼言ってるから許してやりなはれ('A';)
0688nobodyさん2007/02/01(木) 11:48:56ID:???
たぶんID:oQPP/iVzがこの数スレで得たものは何も無い
0689虚弱PHP2007/02/01(木) 12:01:35ID:???
>>685
めげずにがんばれ
0690nobodyさん2007/02/01(木) 12:08:20ID:???
>>677
マルチバイトはリストに出来ません
0691虚弱PHP2007/02/01(木) 13:23:00ID:???
>>690
ありゃ?以下のソースで問題なく動いたから大丈夫かと思ったよ…。
<?php
$str = ' trim  ';
var_dump($str);
$str = trim($str, '  ');
var_dump($str);
?>

めげずにがんばれ>>俺
0692nobodyさん2007/02/01(木) 14:29:11ID:???
>>691
Shift JISだと@もトリムされる
$str = '@@@trim@@@';
0693nobodyさん2007/02/01(木) 14:44:46ID:???
>>691
$str = 'あ';
いきなり死亡。(文字コードにもよるけど)
0694nobodyさん2007/02/01(木) 16:23:40ID:???
PHP5 で Fatal error を捕捉する方法はありますか?
例えば Fatal error: Call to undefined function とか。
set_error_handler() ではダメでした。
0695nobodyさん2007/02/01(木) 16:46:03ID:???
>>694
try〜catch
0696 ◆4XkUU6.J/k 2007/02/01(木) 16:52:09ID:???
>>640どなたかわかりませんか?
0697nobodyさん2007/02/01(木) 16:52:44ID:???
MySQLにデータいれる際addslashesでサニタイズしているのですが、「おれおれ詐欺」という文字を何気なく入れて見るとエラーになってしまいました・・
エラー文を見たところ「無効な句読点文字」ということは分かったのですが対処法が分かりません。。
ご教示お願い致します。

エラー文
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '、筅ノ、熙?ム',
0698nobodyさん2007/02/01(木) 16:53:51ID:???
>>697
文字コード
0699nobodyさん2007/02/01(木) 16:53:57ID:???
>>696
「\n」←これで改行させたら?
タブも同じような記号あったはず
0700nobodyさん2007/02/01(木) 16:54:55ID:???
>>697
シフトJISの文字を直接ぶっこんでるって事無いよな?
07016972007/02/01(木) 17:00:00ID:???
返答ありがとうございます。
シフトJISをmb_convert_encodingでEUC-JPに変換して入れています。
携帯サイトなのでシフトJISは替えられません。。
0702軟式PHP2007/02/01(木) 17:04:21ID:???
>>697
SJISをaddslashesは色々と問題があるからmysql_escape_stringを使った方がいいんじゃないカニ。
0703 ◆4XkUU6.J/k 2007/02/01(木) 17:05:38ID:???
>>699
ありがとうございます。
実はそれはすでに実験済みでして、

$newchild->addChild('aaa', "aaa\n"); だと
<aaa>aaa
</aaa>
となり、

$newchild->addChild('aaa', "\naaa"); だと
<aaa>
aaa</aaa>
となります。

外側で\nを入れても、addChildの間にecho "\n";をしてもだめでした。
0704nobodyさん2007/02/01(木) 17:12:53ID:???
mysql_escape_stringに替えてみたんですが、変わりませんでした…
引き続きお願いしますm(_ _)m
07056972007/02/01(木) 17:19:48ID:???
'".$hoge." '
このように$hoge(おれおれ詐欺)の後に半角空白を入れたところ解決しました。
これ以外には方法はないでしょうか?
0706nobodyさん2007/02/01(木) 17:20:03ID:???
>>704
コード出して
0707nobodyさん2007/02/01(木) 17:22:28ID:???
>>704
一応確認なんだが
1・受け取った文字列はほんとにSJISか
2・EUCに変換するのは正常に行われているか
を確認してみれ。
mb_detect_encodingの結果を出力してみて要確認。
問題なければ、その部分のソースプリーズ。
0708nobodyさん2007/02/01(木) 17:24:18ID:???
軟式PHP様へ
是非ともこちらにお越しください。
http://pc10.2ch.net/test/read.cgi/php/1170317609/
ニートの僕が10日間でオークションサイトを作ろうと思っています。
是非、軟式PHPさんにご教授お願いしたいです。
できれば10日間付き合ってください。お願いします。
0709nobodyさん2007/02/01(木) 17:26:16ID:???
>>703
何故、汚いソースを気にするの?
XMLファイルを直で開いて編集等を行うのは、問題ありだと思うけど…

ブラウザからみれば、自動でインデントなどが入りきれいに見えるでしょ?
それでも気になるなら、simple_xml系を自分で編集するしかないかと…
0710nobodyさん2007/02/01(木) 17:26:49ID:???
>>708
10日は無理。
というかきっとまず君がすぐに飽きる。
まずデータベース設計から学べ
0711nobodyさん2007/02/01(木) 17:26:59ID:???
>>708
お前はアホか?
10日間付き合ってくれってw
給料でも払うのか?
0712nobodyさん2007/02/01(木) 17:29:35ID:???
>>708
オークション運営は個人では厳しいぞ。
許可の関係もあるし、詐欺や違法出品も目を光らせとかなければお前がタイフォされる。
個人情報の為にSSLも導入しなけりゃならないし、
鯖落ちなんかは言語道断だから、かなり高価な安定したサーバと回線も必要。

万が一、鯖落ちして取引できない時の金銭被害の補償とかはどうするの?

なんの技術も無いニートが一攫千金狙ってバカな夢みてるんじゃないよw
0713nobodyさん2007/02/01(木) 17:30:01ID:???
10日でオークションって…
30人月くらいの案件じゃねーかw
0714 ◆4XkUU6.J/k 2007/02/01(木) 17:31:13ID:???
>>709
>ブラウザからみれば、自動でインデントなどが入りきれいに見えるでしょ?
確かにそうなんですけど、なんだか気味が悪くて・・・
simplexmlの仕様ということならば、諦めたいと思います。
どうもお答えありがとうございました。
0715nobodyさん2007/02/01(木) 17:33:56ID:???
今更オークションサイトっていうのも・・・
しかもPHPでっていうのはさすがにないw
保守が大変そうな上に、メモリの無駄遣いしそう。
まぁ本気で頑張りたいと思うなら他人に頼る前に、
自分のスキルを磨くべき。
作ったとしても保守もサポートもできないようじゃ意味ないしね。
ニートで親からあれこれいわれて焦ってるんだろうが、
まずは外にでるといいよ。
0716軟式PHP2007/02/01(木) 17:35:35ID:???
>>708
皆が言ってるように10日じゃ絶対無理だわ〜。
DBmagazine1月号の特集にDeNAのモバオク構築特集があるから読んでみてw
独自のモジュール(仮想メモリDB等など)やらかなり凄いことをやってる。
オークション運用についても色々書いてるから本当に作ろうと思ってるんなら参考になると思うよ。
0717nobodyさん2007/02/01(木) 17:35:55ID:???
あれだよな、佐藤くん。
引きこもってエロゲー作って儲けよーってやつ
ヒヒヒっ
0718nobodyさん2007/02/01(木) 17:37:47ID:???
DBの作り方をどうすればいいですか、なんてレベルなら、真面目にやって一年はかかる。
それでも「とりあえずは動きます」ってレベル。
商用にしたいなら、そっからもう一年。
07196972007/02/01(木) 17:38:48ID:???
>>707さん
受け取ったときはSJIS、EUC-JPへの変換も正常に出来ていました。
ソースは以下になります。

$name="おれおれ詐欺";
$name= mb_convert_encoding(mysql_real_escape_string($name), 'EUC-JP', 'SJIS');
$query=
"INSERT INTO `data` (`name`) VALUES ('".$name."')";
0720nobodyさん2007/02/01(木) 17:41:51ID:???
逆にせい
0721707 2007/02/01(木) 17:42:38ID:???
>>719
逆逆。
それだと、エスケープされてからエンコードしちゃう。
エンコードかけてからエスケープ。
0722nobodyさん2007/02/01(木) 17:48:14ID:???
>>718
俺は一応、この手の業種プロだが、
俺が完全に一人でやって、とりあえず動きますレベルまで1ヶ月。
実用可能なレベルまで詰めるのに4〜5ヶ月。

プロでも一人なら半年はかかるな。
ど素人が作るには2年じゃ事足りない。
0723nobodyさん2007/02/01(木) 17:53:37ID:???
>>722
引きこもって真面目にそればかりやり続ければいけないかなあ?
…って考えてみたら、やっぱたらんわな。
俺も半人前Web開発やってるけど、一年はほしいもんなあ。
0724nobodyさん2007/02/01(木) 17:57:31ID:???
オークションとかおれおれ詐欺とかきなくさくなってきたな
07256972007/02/01(木) 18:00:07ID:???
>>720-721さん
できたぁ(;ω;)ーー
ありがとうございます…
今から、自分が作ったシステム(稼動中のも)修正します…
07267082007/02/01(木) 18:00:43ID:???
絶対10日間で作ります。
とりあえずDBの構築だけでも教えてください。
冗談で言ってるわけじゃないです。
必ず10日間で作って見せます!
0727nobodyさん2007/02/01(木) 18:01:22ID:???
>>726
じゃぁまずDBの構築を覚えような!
0728便乗2007/02/01(木) 18:01:39ID:???
配列を一気にaddslashesしたいんですがそんな関数ないですよね?
0729nobodyさん2007/02/01(木) 18:02:05ID:???
おまえ便所くせー
0730nobodyさん2007/02/01(木) 18:04:00ID:???
>>728
あるから探せ
0731nobodyさん2007/02/01(木) 18:05:18ID:???
>>728
$array = 配列
foreach ($array as $key <= $value){
$array[$key] = addslashes($value);
}
0732nobodyさん2007/02/01(木) 18:09:14ID:???
>>726
お前は本気かもしれんが、博識者からみたら冗談にしか見えないんだよ。
まずは、本屋にいってDB関連の初心者本を買いあされ。

まぁお前ならDBをローカルに立ててそれにクエリを発行するまで数日はかかるかなw
プログラムから超単純なDBコントロールを勉強しているだけで10日なんで過ぎると思うがww

つか、論外だからあきらめろ。
10日でプロ野球選手になってホームラン打ちまくります!って少年野球チームの補欠がいっているようなモンだよw
0733nobodyさん2007/02/01(木) 18:10:39ID:???
>引きこもって真面目にそればかりやり続ければいけないかなあ?
ちゃんとした職場で少しずつ成長していく方が早道だろう
いきなりゼロから一人で商用サイトは遠すぎる
ゼロから一人でも出来るやつも居るだろうが、いきなり他人に10日間付き合ってくれと頼むタイプでは無理
諦めて普通に就職した方が良い
07347082007/02/01(木) 18:12:34ID:???
>>733
おま俺をなめすぎ
0735nobodyさん2007/02/01(木) 18:13:42ID:???
これだからニートは・・・
>>ALL
以後放置しような。
0736nobodyさん2007/02/01(木) 18:13:44ID:???
>>708を見て舐めるなというのが無理
世の中を舐めすぎ
0737nobodyさん2007/02/01(木) 18:19:07ID:???
>>734
では超簡単な問題です。

DBにテーブルAとBがあります。
それぞれのテーブル構造は以下のようになります。

・テーブルA
 番号・名前・住所
・テーブルB
 番号・メールアドレス・ホームページアドレス
※テーブルAとテーブルBの番号はそれぞれ同じ人物をさすデータとなります。

テーブルAの中から名前に'T'の文字が含まれるデータを抽出して、
それらの名前とメールアドレスを表示するSQLを書きなさい。
なおクエリ発行は一度に行う物とする。
0738nobodyさん2007/02/01(木) 18:21:43ID:???
出題者も五十歩百歩だな
0739nobodyさん2007/02/01(木) 18:27:48ID:???
構ってあげるなら
http://pc10.2ch.net/test/read.cgi/php/1170317609/
こっちに移動して。
0740nobodyさん2007/02/01(木) 18:28:36ID:???
>>738
無理スンナw
そういう下らない煽りをいれるのは、あせっている証拠だろw
07417082007/02/01(木) 18:42:39ID:???
>>734は俺じゃないです。
0742nobodyさん2007/02/01(木) 18:43:48ID:???
>>741
>>737
0743nobodyさん2007/02/01(木) 18:45:43ID:???
>>741
ちょ>>734は俺じゃないって>>726はお前なのかよw

アホな妄想してないで、さっさと就職活動しろ。
今のお前は宝くじが当たったらどうしよう…って考えている程度のレベル
0744nobodyさん2007/02/01(木) 18:46:37ID:???
その話はあちらでやってください。
0745nobodyさん2007/02/01(木) 18:49:41ID:???
>>741
お前にぴったりのスレを見つけてきたぞ。

【手取り足取り】10日間でオークションを構築するスレ【教えます】
http://human6.2ch.net/test/read.cgi/dame/1170233151/
0746nobodyさん2007/02/01(木) 18:58:42ID:???
その話すんなら向こうのスレへどうぞ
07477082007/02/01(木) 19:06:37ID:???
もうここでは質問しません。
ご迷惑おかけしました。
もしよろしければあちらにも遊びに来てください。
絶対、誰に何と言われようと10日間でオークションサイト作って見せます。
では失礼します。ありがとうございました。
0748nobodyさん2007/02/01(木) 19:08:41ID:f6cNG9NM
PHPで書いた掲示板スクリプトがあります。
これをShift-JISで配布する場合、5c対策の対策さえしておけばいいのでしょうか?

UTF-8とEUCでも配布しようと思ってます。
0749nobodyさん2007/02/01(木) 19:13:01ID:???
>>747
じゃぁ10日後に見に行ってプギャーしてやるw
0750nobodyさん2007/02/01(木) 19:13:46ID:???
>>748
EUCだけでいいんじゃね?
0751nobodyさん2007/02/01(木) 19:20:19ID:f6cNG9NM
ありがとうございます。
EUCだけで大丈夫なんでしょうか?
Shift-JISでないとダメっていう共有サーバってないですよね?
■ このスレッドは過去ログ倉庫に格納されています