【PHP】下らねぇ質問はここに書き込みやがれ 55
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/09/29(土) 18:35:56ID:YlkpEUW6PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 54
http://pc11.2ch.net/test/read.cgi/php/1189309377/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0136nobodyさん
2007/10/02(火) 00:02:18ID:???>やらないのは確かだが一応できるよ
>ただ非効率だしパスワードなんかもソース見れば丸見えだし
(・д・)ぽか〜ん
パスワード丸見えなのにログイン処理が「一応できる」と思ってるなんて凄いな。尊敬するよ。
0138nobodyさん
2007/10/02(火) 00:20:34ID:???技術的にどうかという問題なわけでセキュア云々ではない
セキュアだとやらないというだけで技術的にできることには変わりはない
気休めだが一応暗号化もできるしな
PHPでSQLインジェクション抱えてるようなサイトとたいしてかわらんだろw
0139nobodyさん
2007/10/02(火) 00:24:01ID:???0140nobodyさん
2007/10/02(火) 01:05:03ID:ykBGND+D大阪府大阪市中央区いいい2丁目3-4 202号室
こういう住所があるとして、「○○○号室」だけを取り出すには
どのように正規表現のコードを書けばいいのでしょうか?
0141nobodyさん
2007/10/02(火) 01:14:12ID:???0142nobodyさん
2007/10/02(火) 01:22:06ID:???0143nobodyさん
2007/10/02(火) 01:48:53ID:???正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/
0144nobodyさん
2007/10/02(火) 01:51:57ID:???0145nobodyさん
2007/10/02(火) 01:53:07ID:???0147nobodyさん
2007/10/02(火) 10:31:53ID:???0148nobodyさん
2007/10/02(火) 10:55:06ID:???0149nobodyさん
2007/10/02(火) 10:58:26ID:???0150phpでJSありのサイトへログイン
2007/10/02(火) 11:05:23ID:NjRsQqKRとりあえずJSの解読からはじめます。
0151148
2007/10/02(火) 11:10:47ID:???もし良ければ、その方法を教えていただけませんでしょうか。
PHPのマニュアルを探しましたが、それらしき記述は見つけられませんでした。
0152nobodyさん
2007/10/02(火) 12:17:34ID:???OSはFreeBSD 6.1-RELEASE
phpはPHP 5.2.0です。
この環境に限らずここら辺みろやっていうあたりでも教えていただけると幸いです。
0153nobodyさん
2007/10/02(火) 12:42:31ID:???マニュアルに書いてあるよ!
ttp://www.php.net/manual/ja/internals2.php
...けどmysqlとかのエクステンションを読んだ方が早いかもね。
0156nobodyさん
2007/10/02(火) 13:08:56ID:sEvSh0XVありがとうございます。<(_ _)>
ちょっと読んでみます。
0157nobodyさん
2007/10/02(火) 13:11:34ID:vuWCHJUh0159nobodyさん
2007/10/02(火) 14:36:45ID:NjRsQqKRそれは…挫折してからにします。
0160nobodyさん
2007/10/02(火) 16:13:41ID:vuWCHJUhUTF-8から変換すると??になるんだが・・・
0162nobodyさん
2007/10/02(火) 16:17:23ID:vuWCHJUh携帯で半角カナが使えないというのはこういうことか・・・
0163nobodyさん
2007/10/02(火) 16:35:12ID:???ISO-2022-JP=7ビットコード体系
使用可能=ASCII, JISX0201, JISX0208-1978, JISX0208-1983
除外=JISX0201(片仮名)
0164nobodyさん
2007/10/02(火) 16:41:05ID:???0165nobodyさん
2007/10/02(火) 16:41:05ID:???固体識別情報にezwebを吐く携帯が文字化けを引き起こしてる
mb_convert_encodingでEUC-JPにするも全くダメ
自分がその携帯を持ってないのでなんともむず痒い
0169nobodyさん
2007/10/02(火) 16:57:14ID:???一応ここ2年以内に発売されたぐらいの携帯だときちんと見れるよ?
自分が持ってるdocomoでも見れるし投稿処理もきちんとできるよ
友人のvodaphoneでもいけてるしね
0171nobodyさん
2007/10/02(火) 17:05:40ID:???UTF-8、Shift_JIS、EUC-JPとやってみたんだけど、
Shift_JISは障害が多すぎて自分では手に負えなかった
んでUTF-8にしてみたんだけど原因は忘れたけど、これも問題出たからやめたはず
それに表示がEUC-JPやShift_JISに比べてなんか違和感あった
んでEUC-JPでやってみたらezwebの問題以外すべてクリアだったんでEUC-JP使ってる
なんで真剣にアホスなのか意味がわかんないので教えて
EUC-JPでいまんところそれ以外に問題なくて使えてるのにどこがいけないのかサパーリ
0173nobodyさん
2007/10/02(火) 17:11:06ID:???別にinternalはEUC-JPで全然かまわないから
せめて出力は変換しとけ。
全機種対応してない文字コードで携帯サイトとかバカか。
0174nobodyさん
2007/10/02(火) 17:12:07ID:???0175nobodyさん
2007/10/02(火) 17:12:58ID:???0176nobodyさん
2007/10/02(火) 17:13:56ID:???1日に50万アクセスぐらいあるけど、ezwebの問題以外特にクレームとかこないよ
自分で持ってる携帯からだとちゃんと狙った感じになってるから問題ないかと思ってた
METAタグでcharset設定したらちゃんと見れるから大丈夫だとおもったんだけどなぁ。。。
0177nobodyさん
2007/10/02(火) 17:14:45ID:???腹痛いwwww
0178nobodyさん
2007/10/02(火) 17:19:10ID:???どんなコードで飛んでくるんだろう >絵文字
0179nobodyさん
2007/10/02(火) 17:21:55ID:???なにか面白いこと言った?
>>178
厳密には携帯専用サイトじゃなくて、普通のPCで見れるページを携帯用にも作ってる感じ
だから絵文字はPC用ページだと表示できないから排除するようにしてる
0180nobodyさん
2007/10/02(火) 17:29:00ID:SNciDcYfポストバックによる処理をどこに入れるかだけど、今まではHTMLの最初の方にズラッと書いていました
どこかのサンプルソースを見てみたらFunctionを使いまくっていました
ひょっとして普通はFunctionを使いまくるのでしょうか?
0181nobodyさん
2007/10/02(火) 17:47:09ID:???し、信じられないかもしれないが有りのままを話す
何言ってんだかサッパリわからねぇ
俺もなんて答えたいのか俺自身にもわからねえんだ
0182nobodyさん
2007/10/02(火) 18:39:43ID:eqW2/Vd2今3つ通してるんですけど、あと3つほどとうそうかと・・・
10万〜12万PV/日ぐらいのサイトで、そこそこ重い処理をしてるので、あんまり重くなるようなら考えます
3つを6つにしてもあんまり変わらないでしょうか?
0183nobodyさん
2007/10/02(火) 18:42:20ID:???全然問題なく化けないぜ
>>179
とりあえずお前はググる能力を身につけような
EUC-JPなんかじゃ、SoftBank(3G, SH系除く)は絵文字送信ができないぜ
0184nobodyさん
2007/10/02(火) 19:12:06ID:???includeする際の検索順序、ファイル分割する事によるメモリへの貢献、OS自身のディスクキャッシュ、HDD自体のキャッシュ etc.
色んな影響があるので、実際に試してみるのが一番いい。
0185nobodyさん
2007/10/02(火) 19:21:42ID:???179だけど、PCと同じページを作ってるから特殊記号入れられないように排除してるんだよ
だから絵文字の処理なんかは必要ない
ググってもShift_JISでないとキャリアが対応してないとか、絵文字がどうのとかしか
出てこないけど、今の時代Shift_JISでなくても閲覧できるし、絵文字とかわざと排除してるから
他に叩かれるような覚えはないんだよねぇ
それ以外でEUC_JPで作ってたら真性バカの烙印押される理由が知りたい
0186nobodyさん
2007/10/02(火) 19:33:59ID:???それでどこにも存在しないファイルを検索すると重くなると思うけど、
最初の方のパスで大半が検索Hitしてる分には特に重くならないかと。
でもパス6つくらいなら全然普通のレベルだと思うけどね。
0187nobodyさん
2007/10/02(火) 19:35:32ID:???とりあえずEUC-JP非対応のキャリア、機種くらいは判定して
そこだけSJIS出力に切り替えてやれば?
それしないで「一部機種が対応してるからそれで通す」はバカだと思うけど。
0188nobodyさん
2007/10/02(火) 19:40:14ID:???functionにするかしないかはシステムの規模によるかな。
あんまりにも小規模ならわざわざfunctionにしない。
でも中規模以上なら関数化しといた方が後で楽。
0189nobodyさん
2007/10/02(火) 20:13:22ID:???なるほど
つまりまともに閲覧できてない機種があるってことなんだね
docomoもvodaphoneも知人の持ってるauもいけてたから
見れてないのはないもんだと思ってたわ
html生成方式だからSJISにするのは簡単なんだけど、そういうことだったのね
でも本当に見れてないんだろうか?・・・
0190nobodyさん
2007/10/02(火) 20:38:39ID:???0192nobodyさん
2007/10/02(火) 21:26:27ID:???0193nobodyさん
2007/10/02(火) 21:31:10ID:???0195nobodyさん
2007/10/02(火) 22:47:05ID:???UTF-8からISO-2022-JPに変換すると半角カナが??なる
ってんで電子メイル絡みの話題かと思っていた
唐突に>>165がEUC-JPとか1日に50万アクセスとか言い出した
「なに言ってるんだ、こいつ?」
現れる必然性が俺には理解できねえ
まるで鈍器で頭を強打されたくらいの衝撃を受けた
で…ここはPHP絡みの雑談するスレだっけか?
どうも認知症の進行著しく自分がどこにいるのかもわからねえ
0196nobodyさん
2007/10/02(火) 22:54:37ID:???perlではShift_JIS使ってうまくいってたけど、phpではそんな不具合があって
ちょうどphpの文字コードの話が出たからなんかの足しになればと思って書き込んだだけだけど
それがみんなの気分を悪くしたみたいだね
もう書き込まないから安心してください、でわでわ
0197nobodyさん
2007/10/02(火) 23:06:23ID:???いや気分悪くなんてしてないから
釣りと間違われないよう華麗にリードすればいいから
では次の患者さん どうぞ
0198nobodyさん
2007/10/03(水) 01:44:33ID:???0200nobodyさん
2007/10/03(水) 02:00:16ID:???0201198
2007/10/03(水) 04:20:36ID:???echo mklover("美代ちゃん");
?>
上記のコードを実行させてみると以下のようなエラーがでました。
Fatal error: Cherry boy cannot use function mklover() in /var/www/html/cretateGirlFriend.php on line 2
どうすれば良いでしょうか?
0203nobodyさん
2007/10/03(水) 04:35:16ID:???トリミングしてくれるライブラリや関数は無いだろうか?
一応、gdやImagick、MagickWandの関数を調べたり実際に試したりしてみたんだが、どうも見当がつかない・・・・・・
いったんjpgに分割してトリミング後に再結合とかはできるみたいだけど、
それだと結局、delay値取得するためにヘッダを解析しなきゃならなそうでなあ。
もし何か良い方法知っていれば教えて欲しい。
0205nobodyさん
2007/10/03(水) 09:35:05ID:I/i9laybを入れないとValidは通るのですが入れろといわれるので、入れると
エラーがでるのでechoに入れてみるとページすべてでエラーになります。
<?xml version = "1.0" encoding = "utf-8"?>の部分をヒアドキュメントに入れても
同じようにエラーが出ます。
phpページでValidを通す時みなさんはどうしてますか?
本体のページはTransitionalで
<?xml version = "1.0" encoding = "utf-8"?>はいれずに通ります。
問題があるのがCompact HTMLの携帯ようサイトです。
0207nobodyさん
2007/10/03(水) 10:02:24ID:???でダメだったって事?
0208nobodyさん
2007/10/03(水) 10:10:37ID:???xml宣言の<?とphp宣言の<?がかぶってしまうため起こる問題でしょ?
<?php echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"; ?>
とviewの1行目に入れればいいんじゃない
0209nobodyさん
2007/10/03(水) 10:26:22ID:???それならechoやヒアドキュメントではエラー出ないだろ。
根本的にどっかPHPの構文間違ってるんだよ、多分。
0210nobodyさん
2007/10/03(水) 10:37:07ID:xx+cFlmVPHPのmb_send_mail関数を使ってメール送信をしているのですが、届くドメインと届かないドメインが
あり困っています。
サーバーはロリポップを使っているのですが、
お聞きしたいのはメールサーバのログの見方です。
ググってみたりしたんですが、方法が良くわかりませんでした。。。
OSは、macOSX 10.4.10です。
どなたか、宜しくお願い致します
0212nobodyさん
2007/10/03(水) 10:45:07ID:???macってクライアントが?
クライアントは関係ないんじゃないの?
ロリポのメールサーバが何使ってるか知らないけど
サーバ側のシステムログなんてサーバ管理者しか普通見れないよ
0213nobodyさん
2007/10/03(水) 10:53:12ID:xx+cFlmVそうなんですね。ありがとうございます。
できればmail()の利点をご教示頂けますでしょうか。。。
>>212
クライアントがmacです。
ロリポップはqmailというメールサーバを使っている様です。
色々調べてみたら、メールが届かない時はとりあえず
メールログを見ろと書いてあるところが多かったもので。。。
0214nobodyさん
2007/10/03(水) 11:06:01ID:???オッパッピ?
0215nobodyさん
2007/10/03(水) 11:36:14ID:zZ6Mc9LXたとえばメニューを登録するプログラムがあって、 menu と priceの2種類のフィールドを
DBが持ってるとします(それと自動インクリメントのID)。
これに対して、登録用フォームで3つのメニューを一度に登録したい時、
どういう処理をしたらいいんでしょう?
メニュー1:<input type="text" name="menu"> <input type="text" name="price">
メニュー2:<input type="text" name="menu"> <input type="text" name="price">
メニュー3:<input type="text" name="menu"> <input type="text" name="price">
これじゃダメですよね?
それぞれにユニークのフィールドを持たせるのが一番無難かもしれないですが、
なんかイヤなので…(実際には3つでなく任意の数にしたいんです)
1メニューずつ追加登録してくのがいいんでしょうか?
それとも、上記のやり方でも解決できるPHPのくみ方があれば
教えて欲しいです。
よろしくお願いします。
0217215
2007/10/03(水) 12:33:24ID:zZ6Mc9LXごめんなさい どういうことでしょう?
HTML側は上に書いた通りでよくて、PHPで用意したmenu配列とprice配列に
入れるってことですか?
DBへの登録はmenu[0]〜menu[N]までループで処理??
そんなことできるのかな? 大雑把にでも教えてもらえれば嬉しいです。
0218nobodyさん
2007/10/03(水) 12:41:59ID:???menu[0]〜[2]
price[0]〜[2]
みたいに振り分ければ?
>そんなことできるのかな?
プログラムは「できるかな?」じゃなくやってみるんだ
やるまえに「できるかな?」と尋ねると進歩しない
0219nobodyさん
2007/10/03(水) 12:43:16ID:???mb_send_mail()はmail()のwrapperだよ
mail()にマルチバイト文字変換処理を付加したもの=mb_send_mail()
よってメイル送信前の処理は全て自前で行わなければならない
0221nobodyさん
2007/10/03(水) 12:47:42ID:???レンタルサーバを利用している時点で貴方が掌握できるのは
PHPで作ったプログラム(フロントエンド)の部分だけ
バックグランドで何が起きているのか知る術は無いから諦めろ
0222nobodyさん
2007/10/03(水) 12:58:51ID:???そうだねぇ、自分で全て面倒みれる人ならmail()の方が良いかも
mb_send_mail()はSubjectと本文しか処理しないしね
例えば"おいら<[email protected]>"ってヘッダにつけると
"おいら"が化けるから予めMIME処理しなけりゃならん
結局、手間はたいして変わらなくなる
0223nobodyさん
2007/10/03(水) 13:03:01ID:???0224213
2007/10/03(水) 13:59:15ID:xx+cFlmV>>221さん
ありがとうございます。大変勉強になります。
今ロリポップのサーバーからテスト運用しているのですが、
独自ドメインとgmeilの方へは送信できるのですが、
yahooアドレスや携帯のアドレスへ送信しようとすると
デーモンよりfailure noticeとして帰ってきます。
<=?ISO-2022-JP?B?省略[email protected]>:
Sorry, no mailbox here by that name. (#5.1.1)
と、宛先が文字化けしている様です。
0225213
2007/10/03(水) 14:02:17ID:xx+cFlmV以下にコード晒します。
mb_language("Ja");
mb_internal_encoding("UTF-8");
$mailfrom = mb_encode_mimeheader($name)."<".$email.">";
$mailto = mb_encode_mimeheader("[email protected]");
$subject = "WEBサイトよりお問い合わせです。";
$content = wordwrap($content, 70);
$header = "To: <{$mailto}>\r\n" .
"From: {$mailfrom}\r\n" .
"X-Mailer: PHP/" . phpversion();
$param = "-f" . $email;
if (mb_send_mail($mailto, $subject, $content, $header, $param))
{
echo("メール送信完了しました。");
} else {
echo("メール送信に失敗しました。");
}
$email,$nameはフォームからの入力値になります。
サーバーのphpはver.4.4.6となります。
宜しくご教示お願い致します。
0226nobodyさん
2007/10/03(水) 14:21:34ID:???ヘッダーで文字コード指定してやれば?
0227213
2007/10/03(水) 14:25:09ID:xx+cFlmVありがとうございます。
おっしゃるとおりで、コピペです。。。
ヘッダーで文字コード指定試してみます!
0228nobodyさん
2007/10/03(水) 14:35:21ID:???$mailto = mb_encode_mimeheader("[email protected]");
こいつはMIMEエンコードをしないで$mailto = "[email protected]";
$header変数にこいつ→ "To: <{$mailto}>\r\n" を含めない
ヘッダにTo:句が重複して現れてないか?
0229213
2007/10/03(水) 14:47:29ID:xx+cFlmV>>$mailto = mb_encode_mimeheader("[email protected]");
>>こいつはMIMEエンコードをしないで$mailto = "[email protected]";
これを試したら届きました!
本当にありがとうございます。
よく分からずにWEBで拾ったコードを信用していたのが原因でした。
やはりPHPマニュアル以外はあまり参考にならないのですね。
To:が重複していたのもおっしゃるとおりで、解決しました。
皆様ありがとうございました。
0230nobodyさん
2007/10/03(水) 15:00:48ID:???http://jp.php.net/html#faq.html.arrays
0231205
2007/10/03(水) 15:39:42ID:I/i9laybindex.phpの内容は
<?xml version = "1.0" encoding = "utf-8"?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD Compact HTML 1.0 Draft//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>test</title>
</head>
<body>
test
</body>
</html>
です。このままだと、
Line 1, Column 0: end of document in prolog.
とでるので、<? echo '<?xml version = "1.0" encoding = "utf-8"?>'; ?>と修正すると
Line 1, Column 104: no system id specified.や
Line 3, Column 5: element "head" undefined.
などすべての行でエラーがでます。レスいただいた
<? echo "<"."?xml version = \"1.0\" encoding = \"utf-8\"?".">"; ?>
も試しましたが全く同じエラーです。
0233nobodyさん
2007/10/03(水) 15:43:55ID:???0234nobodyさん
2007/10/03(水) 15:55:44ID:???普通にこれで通らないか?
<?php
echo "<?xml version = \"1.0\" encoding = \"utf-8\" ?>\n";
?>
0235nobodyさん
2007/10/03(水) 16:00:37ID:???■ このスレッドは過去ログ倉庫に格納されています