【PHP】下らねぇ質問はここに書き込みやがれ 37
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 ・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
しかし初心者が目的も定めずに速度を気にしたところでほとんど意味は無いぞ
【簡易FAQ】
1.文字コードは何を使えばいいの?
→1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
→
http://example.com/が例文などのために予約されている 。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
→ Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
→ 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
→ {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
→ cronかタスクスケジューラを使え。
7.extractって危険なの?
→変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
→ URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
→ .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
10. そもそもインストールの時点でうまくいかない
→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
11. SQLの質問はどこで?
→ データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
→ ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
→ 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
→ よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40 15. クッキーの情報をユーザから隠したい
→ セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
→ strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
→ まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
→ C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(
http:// 〜とか)を扱う際の限界
→ fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
→19.を参照
21. 画像処理一般 or GDの限界
→ ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
→ 好きにしてください
「エスパーきぼんぬ」「氏ね」「(゚Д゚)ハァ?」等のレスを貰う八ヶ条。 1. ハードウェア、OSのバージョン等には一字一句触れない。 2. 大切な個人情報が漏れるとまずいので、己の行った操作、変更などは秘密。 3. エラーメッセージの類は決して書かない。「エラーが出るんです」で留める。 目の前で生じている現象をそのまま具体的に書くなどもっての外。 事実より俺様の脳内解釈を優先すべし。 4. 独り言文体で必勝。 「…なんだけど、どうすればいいのかなぁ」「何が悪いんだろう?」 5. 「急いでいます」「困っています」等、自分の都合を全面に押し出す。 6. もう試したことを得意げに指摘してくる奴には、厳しく対応。 「それが駄目だったから質問してるんです」「それはもう試してみて駄目でした」 "どう"だめだったのか、本当に実際それを行ったかどうかなんか問題じゃない。 7. ストレートに答えを書かないもったいぶったレスには、逆切れで対応。 「だからどうすればいいんですか?」「分からないなら引っ込んでろやゴルァ」 示されたURL等を参照するなんて態度は、回答者を甘やかすことに他ならないので 絶対に避ける。 8. 情報は小出しに。 「エスパーきぼんぬ」 補足 上の八ヵ条を「一つでも」満たす者は質問者として不適格だということだ。 そのような悪い質問に対して答えられるのは, 質問者の意図をすべて汲み取ることのできるエスパーでもなければムリ, という意味であって,決して,高度な技術を持つユーザに対する尊称でなはい。 まちがっても「エスパーの方,回答お願いします」 なんて痛い質問するな。つうか氏ね。
? なんで?
mb_strpos関数を使って、 【 を検索してみてるんですが、マッチしません。 mb_strpos関数で【は検索可能なんでしょうか?
簡単な質問かもしれませんがお願いします。 session_start(); を開始していなければ unset($_SESSION); も無効になってしまうのでしょうか?
session_startが何をする関数なのかじっくり考えてみれば、自ずと答は出てくるよ。
13 :
11 :2007/01/24(水) 23:11:17 ID:???
>>12 そんなごだくはいいから、さっさと教えろよ。ウゼーな。
14 :
12 :2007/01/24(水) 23:24:59 ID:???
>>9 正規表現スレはそこにない=ややこしいだけ
って前スレに書いてた
初歩的な質問かもしれませんが 現在○人のユーザーがログイン中です。 と表示させたいのですが、どのようにやるとできますでしょうか?
echo "現在○人のユーザーがログイン中です。";
19 :
nobodyさん :2007/01/25(木) 00:55:44 ID:KaiYlOaD
MySQLのVERが4.0.27の為ON DUPLICATE KEY UPDATE 節が使えません。 PHPにてこれと同様のSQLを実行させるにはどうしたらいいですか?
ON DUPLICATE KEY UPDATEがやってることをそのまま実行させればええやん ってかそんな機能があるの初めて知った。 むしろ今まで自分で処理書いてたわ。 かなり便利じゃないですか。ありがとう。
21 :
nobodyさん :2007/01/25(木) 01:09:32 ID:rTvcy6Yy
ヘッダー関数でPOSTうてますか?
22 :
nobodyさん :2007/01/25(木) 01:12:22 ID:UB7tAD/4
質問です。 異なるページへの値の受け渡しに、FROM、includeやrequireを使用しない場合、どのような方法がありますか?
23 :
nobodyさん :2007/01/25(木) 01:12:27 ID:JUAs7x/5
出力した画像の保存方法を模索しています・・・。どなたかご教授ください/(^o^)\ $src = imagecreatefrompng('xtree.png'); $dst = imagecreate(32,64); //イメージの抜き取り imagecopy($dst,$src,0,0,0,0,32,64); //1,1のピクセルの色を取得 $rgb = imagecolorat($src, 0, 0); $r = ($rgb >> 16) & 0xFF; $g = ($rgb >> 8) & 0xFF; $b = $rgb & 0xFF; //背景色の設定 $black = ImageColorAllocate ($dst, $r, $g, $b); ImageColorTransparent($dst, $brack); これで、$dstを表示はできるのですが、保存をする場合はどうすればよいのでしょうか・・・? fwriteだとエラーがでて、copyでもエラーが出てしまいました。。
26 :
19 :2007/01/25(木) 01:25:18 ID:KaiYlOaD
>>20 > むしろ今まで自分で処理書いてたわ。
そこを教えて下さい
27 :
nobodyさん :2007/01/25(木) 01:31:04 ID:JUAs7x/5
>>25 オプションがつけられたのか・・・しらんかった/(^o^)\
ありがとうです
>>26 何かあと1個くらい俺が知らなそうなMySQLの便利な機能教えてくれたらいいよ
初歩的な質問ですが 現在何人ページを閲覧してるか表示するスクリプトを教えてください。
30 :
19 :2007/01/25(木) 01:40:42 ID:2PZ2IHXN
>>29 作成依頼スレではないのでそちらで頼むか検索して見つけてください
わかりました。勉強にもなりますのでぐぐってみます。
>>26 というか一度 key でクエリーして分岐するだけじゃね?
>>29 そういう機能もったもの探してソースでも見るよろし。
wikiト化にもそんなのがあったきがするけど、
あのクラスはさすがにスクリプト多くて読む気にならないな。
>>29 session.savepathにあるsessから始まるファイルをカウントするだけじゃん
36 :
22 :2007/01/25(木) 02:47:05 ID:UB7tAD/4
DBから取得したそれなりに大きい配列データだったりするんですが、POST等で渡しても良いものなのでしょうか? 何分Web開発初心者なもんですいません。 あと、同じようなモノにSESSIONというのもありますが、そちらでも可能ぽい感じはしますね。
初心者を免罪符にするな
>>37 免罪じゃなくて、贖罪だろ。
技術者っていうのは、片言の日本語しかできない馬鹿ばかりだな。
それで、説教とは・・・
贖ってるの?
>>22 マジレスすると、
言ってる事がメチャクチャなのでPHP以前にHTML/CGIの基本を学ぼう。
Googleへ行って「とほほ」を検索するといいよ。
免罪符で意味通ってるし、贖罪は意味がまったく違う。 それで、馬鹿呼ばわりとは・・・
免罪符はそもそも歴史用語 信仰を売りつけたんだよ 贖罪は刑に服役すること
歴史用語だと何なんだ? 贖罪はそもそも宗教用語だが。
水掛け論聞いてたって話しにならん
,.-===ュ、__ ,.イ.:.:::l:i:::`丶、\``> r、 /.:/.:::::;:川ト、ィ;l:ヽ V、 >\__ !.:::l:::::ノノ リ,ィtナl.::;;! 1::', (ミム )X^ヽ リ.:;:Vtソ 、 `ー' |;;/ |::::', 下らねぇ質問は `ーく_ノ `ー-r─‐‐ヽ:::;、 「 ヽ イ1米|:::::', ここに書き込みやがれ `ヽ、 |\ i `l>、`ー' イ:::| |::::::l こんちくしょーっ `フ| ヽ |米|.:::゙、 ̄>くl米|::::::| ./ .:| | ,1 |.:::::{i //介l」 |:::::r‐、
46 :
nobodyさん :2007/01/25(木) 07:04:05 ID:6PquWBKX
セッションにてユーザIDを管理しています グループ内に共有端末(スキャナが繋がっている唯一のパソコン)があり Firefoxがインストールされています 複数のタブを開いて左のタブはユーザ1、右のタブはユーザ2というように 利用させたいのですが、同じCookieを読むようでうまくいきません タブごとにユーザを分けるうまい方法はないでしょうか よろしくお願いいたします
GETでセッションIDなりユーザIDなりを渡せば良いのでわ?
>>46 どういう環境が必要なのかいまいちわからん
1ブラウザでタブごとに利用者分けるって、どういう理由から?
12のPHP最適化テクニック
ttp://phpspot.org/blog/archives/2006/11/12php.html 01. staticメソッドが使えるなら使おう。速度は4倍になる
02. __get, __set, __autoload は使わない
03. require_once は重い
04. include, requireで読み込むファイルはフルパスにしよう
05. スクリプト開始時のUNIXタイムを $_SERVER['REQUEST_TIME'] で取れる
06. strncasecmp関数やstrpbrk関数を使えるケースはこれらを使い、正規表現は使わない
07. preg_replaceはstr_replaceより速い、しかし、strtrはpreg_replaceより4倍速い
08. 引数を、単体か配列かで自動判別するようなコードは出来るだけ避ける
09. @ を使ったエラー制御はとても遅い。→ @fputs($fp, "?");
10. $row["id"] は $row[id] より7倍速い
11. PHPのエラーメッセージは重い( noticeとかwarningとか)
12. for ($x=0; $x < count($array); $x) のように、forの中でcountを使うと毎回countが呼ばれるので使わない。
(参考)
PHPの最適化は本当か?
ttp://jigen.aruko.net/archives/433/
50 :
軟式PHP :2007/01/25(木) 11:16:34 ID:???
そのネタは秋田。
52 :
nobodyさん :2007/01/25(木) 11:57:57 ID:Ah56ZYS8
>>49 > 02. __get, __set, __autoload は使わない
> 03. require_once は重い
この2点気になったので質問させて下さい。
今、PHP5を使って、スクリプトの最初でrequire_onceを使ってやっています。
ですが、最近__autoloadを使うことでパフォーマンスが改善されるということで、
移行を考えていたのですが、上の話だとどれも使えなくなってしまいます。
私の場合は、__autoloadで実装するにも、クラスをディレクトリで分けているので、
クラス名でif文で保存先ディレクトリを決定しなければいけず、かなり面倒な実装になります。
require_onceでロードしているのは、40クラスほどです。
この場合、どのような実装をすべきかアドバイスいただけますか?
つっこみだが現在ログイン中のユーザーてセッションで正確に求められないとオモウケド
54 :
nobodyさん :2007/01/25(木) 12:55:46 ID:2sRqrwpV
URLからドメイン名だけを抜き出したいんですけど 一番簡潔な書き方ってどんな方法ありますでしょうか? preg_matchとか使うと2行になるのでなるべく一行でしたいんですけど・・
>>54 1行は難しいんじゃ無かろうか
parse_url で我慢
56 :
nobodyさん :2007/01/25(木) 13:13:19 ID:2sRqrwpV
57 :
nobodyさん :2007/01/25(木) 13:23:34 ID:SxBEk0zx
XSSについての質問です: if($_SERVER["REQUEST_METHOD"] != "POST") exit("不正な投稿です"); $hoge = $_POST["hoge"]; しばしば、こういったソースをよく見るのですが、ユーザーリクエストで GET方式でリクエストしたパラメータの値が $_POST に代入されてしまうことなんてありえるのでしょうか?
>>49 それだが、実際に組んでベンチ取るとかしてみた方がいいみたいだぞ?
環境にも左右されるし一概に全部の環境に当てはまるとは言い切れないし
逆の結果を叩き出す事もあるから
つまり、鵜呑みにする必要性は全くない情報になります。
GET←POSTについて365PHPの掲示板スクリプトを読んでみろ。
forで使う$iとかfunction内で使う変数とか、今まで被ったら駄目だと 思っていたのですが、この中だったら1ファイル内でも何度 同じ変数使っても良いんですよね?
↑コイツは数学ができない
↑コイツは道徳がわからない
同時書き込みワロタ
65 :
62 :2007/01/25(木) 13:44:03 ID:???
>>63 あ?コラ!テメェ殺すぞ!俺のどこか道徳がわからないって??
ころしてください。はい、どうぞ
>>66 ∩ :・:∵
⊂、⌒ヽ∴: L/ ,r=''""゙゙゙li,
⊂( 。Д。)つ > 、、,,_ ,r!' ...::;il! ...
V V ; Y⌒r!'゙゙´ `'ヾ;、, ..::::;r!'゙
グハッ ,i{゙‐'_,,_ :l}..::;r!゙
. ,r!'゙´ ´-ー‐‐==、;;;:.... :;l!:;r゙..
,rジ `~''=;;:;il!::'li
. ill゙ .... .:;ll:::: ゙li
..il' ' ' '‐‐===、;;;;;;;:.... .;;il!:: ,il!
..ll `"゙''l{::: ,,;r'゙
..'l! . . . . . . ::l}::;rll(,
'i, ' ' -=====‐ー《:::il::゙ヾ;、
゙i、 ::li:il:: ゙'\
゙li、 ..........,,ノ;i!:.... `' 、 ∧_∧
`'=、:::::;;、:、===''ジ゙'==-、、,,,__ `'(・∀・)
`~''''===''"゙´ ~`'''' ヽ ノつ
〜( ,,(~)
ヽ)
見事な自演だな
>>66 /⌒'\
( ,i::::::::::::i ./⌒\
〉ノ:::::::::::| | ○゜ i ) )
/;/:::::::::::」/.〉 /
___.i;;.i::::::::::::i/ ..: .', /
./ ヾ .|;;i:::::::::::/.. ..;;〉.」
.__ .\|;.i:::::::::/ / ...;;/
_ノ\i_) i:::::::/ ...;;/ //
 ̄ .|; i:::::/ / ..;;/
__.|;_i::/ ...;;/
___/ .....;;/
.|;; i ...;;イ
ノ;; ,.‐ ;;-.;i
/;;; /' '' ;;;X
|;; ;i;;.. 〜 ;;|
X〜 ;i;;; ;;,. ;;;/
ヽ;;__\_;;/
70 :
nobodyさん :2007/01/25(木) 14:28:34 ID:ycYUptW9
$_COOKIEが$_REQUESTに含まれるのと$_FILESが$_REQUESTに含まれないのは変な仕様だと感じるのだが、 皆さんのご意見をお聞かせ願いたい。
REQUESTの文字ベースのデータでFILESはバイナリだから? 別にどっちでもいいとおも
>>70 FILESだけ用途が特化してるし、POSTの特殊な型だし、特別扱いされても違和感は感じない。
JavaScript の escape() 関数と同じことしてくれるコードを教えてくれませんか。
>>74 昔のescapeならurlencodeで出来たけど
今のIEの仕様はPHPには無いから自分で実装
>>76 ですよね。
きっと誰かが実装したと思うので、
それを活用したいな、と。
78 :
nobodyさん :2007/01/25(木) 16:44:05 ID:oQdflHFX
php.iniのmbstring.http_outputの値をphpのプログラム上で取得する方法ってありますか?
>>78 まずは mb_http_output() を試してみては
>>74-76 escape() されたものの解読はあるけど、
escape() を実装したものはないのかな
classで連続処理する場合って、その都度newをしなければいけないのでしょうか? $obj->new Hogehoge(); $obj->name="あああ"; //一人目の名前を選択 $obj->nameTest(); $obj->name="いいい"; //二人目の名前を選択 $obj->nameTest(); みたいにしたのですが、二人目の方は出力されません。
二人目に悪いことしたんじゃね?
$obj->new Hogehoge(); こんなこと出来るのか・・・?
打ち間違えです。↓です。 $obj=new Hogehoge();
>>82 何がどうしたいのか、そのソースじゃわからない
出力されてない部分は、そのソースのどの部分
よくわからんが、HogeHogeの引数で初期化しなさい。
ゲッター、セッターの基本は抑えとこう。
89 :
nobodyさん :2007/01/25(木) 18:34:28 ID:zTPKRyAb
>>89 ブラウザに変なキャッシュが残っている可能性がある。
ブラウザをインストールし直してみて。
91 :
nobodyさん :2007/01/25(木) 18:40:10 ID:zTPKRyAb
>>90 会員ページなんですけど
最初に開く⇒hogehoge.phpが存在しない
ログイン(セッション使う)⇒hogehoge.phpが存在する
ログアウト(セッション一部削除)⇒hogehoge.phpが存在する
こんな感じです
再インスコしても同じでした・・・
hogehoge.phpの中身がどうなってるかわからんけど、別のページへリダイレクトする処理を いれていたらそれが怪しいかもなぁ。
93 :
nobodyさん :2007/01/25(木) 19:10:27 ID:zTPKRyAb
>>92 header("Location:index.html");←これならあります
94 :
nobodyさん :2007/01/25(木) 19:11:00 ID:zTPKRyAb
あ。ちなみにhogehoge.phpの中身はjsです 紛らわしくてすみませんでした
95 :
nobodyさん :2007/01/25(木) 19:15:43 ID:zTPKRyAb
あ、すみません hogehoge.phpの中にあったincludeで 読み込まれているPHPにheader("Location:index.html"); があったのが原因でした 無事解決しました
(゚д゚)
97 :
92 :2007/01/25(木) 19:40:58 ID:???
(゚д゚)… エスパーな俺を誰かほめてくれ。
(゚д゚) なかなかいいエスパーぶりだった
ローカルでちょっとしたコードを検証するのにこんなものを作りました。
こうした方が良い、というようなところはありますでしょうか。
<?php
header("Content-type: text/html; charset=UTF-8") ;
$_POST['code'] = mb_convert_encoding($_POST['code'], 'utf-8', mb_internal_encoding()) ;
function eval_posted_code() {
ob_start() ;
eval(($_POST['code'])) ;
echo htmlspecialchars(ob_get_clean()) ;
}
?>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "
http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd ">
<html xmlns="
http://www.w3.org/1999/xhtml " xml:lang="ja">
<head>
<title>コード実行</title>
</head>
<body>
<form action="./<?php echo basename(__FILE__) ?>" method="post">
<div>
<textarea name="code" cols="80" rows="20"><?php echo htmlspecialchars($_POST['code']) ?></textarea>
<input type="submit" value="実行" />
</div>
</form>
<pre><?php eval_posted_code() ?></pre>
</body>
</html>
>>97 :::::::::::::::::...... ....:::::::゜::::::::::.. (___ )(___ ) ::::。::::::::::::::::: ゜.::::::::::::
:. .:::::。:::........ . .::::::::::::::::: _ i/ = =ヽi :::::::::::::。::::::::::: . . . ..::::
:::: :::::::::.....:☆彡:::: //[|| 」 ||] ::::::::::゜:::::::::: ...:: :::::
:::::::::::::::::: . . . ..: :::: / ヘ | | ____,ヽ | | :::::::::::.... .... .. .::::::::::::::
::::::...゜ . .::::::::: /ヽ ノ ヽ__/ ....... . .::::::::::::........ ..::::
:.... .... .. . く / 三三三∠⌒>:.... .... .. .:.... .... ..
:.... .... ..:.... .... ..... .... .. .:.... .... .. ..... .... .. ..... ............. .. . ........ ......
:.... . ∧∧ ∧∧ ∧∧ ∧∧ .... .... .. .:.... .... ..... .... .. .
... ..:( )ゝ ( )ゝ( )ゝ( )ゝ無茶しやがって… ..........
.... i⌒ / i⌒ / i⌒ / i⌒ / .. ..... ................... .. . ...
>>100 ちょっとしたコードを検証ってなんのことをいってるかわからんが、
とりあえずデバッグしっかりやって動くスクリプトをよこしてくれ。
正規表現で <meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> の、Content-Typeの部分とtext/html; charset=euc-jpの部分を取得したいのですが どのようにすれば良いのでしょうか?
たとえばこうかな。 $str = '<meta http-equiv="Content-Type" content="text/html; charset=euc-jp">' ; preg_match('/(?<=http-equiv=")(.+?)".*(?<=content=")(.+?)"/', $str, $match) ; var_dump($match) ;
すみません、サッパリ理解ができませんでした、出直してきます・・・
>>106 それだと↓こうなっちゃうとおもうんですけど><
text/html; charset=euc-jp">
不特定のmetaタグを解析する予定なら、予め全て小文字に表記を統一して、 正規表現を書けるのを忘れずに、それを考慮を忘れると再現不定期のバグに悩まされることになるぞ。
>>109 パターン修飾子iを正規表現につければいいだけなのでは?
preg_match('/<meta\shttp-equiv="([^"])"\scontent="([^"])"/i', $string, $matches);
<meta http-equiv="Content-Type" content=""> 最近気づいたけど↑みたいにマッチすべきとこが空だと .+? の動作が誤爆するから .*? の使用をオススメする 無駄が多いだろうけど微妙に厳密にチェック "/<meta\s[^>]*(?<=\s)http-equiv=([\"\'])([^>]*)\\1\s[^>]*(?<=\s)content=([\"\'])([^>]*)\\3[^>]*>/i"
ローカルテスト用でwindowsにapache2+php5でSQLiteいじってるんだが ファイルロックがかかりっぱなしになって操作できなくなる SQLiteDatabaseクラスの実装に問題でもあるんだろうか
もう
'/="(.*?)".*="(.*?)"/'
でええやん。
>>113 自分でトランザクション指示しなくてもなるの?
115 :
113 :2007/01/25(木) 23:55:04 ID:???
ああ、トランザクションのせいだったのか。 難しいわけじゃにけど気難しいなあSQLiteは。 ありがと。
116 :
nobodyさん :2007/01/26(金) 00:03:38 ID:K9qOTFvk
>>71 なるほど。
>>72 特殊だから$_POSTと分離するのは分かるが、$_REQUESTからも外すのはやり過ぎではなかろうか、と思う。
前はそんなことなかったらしいが、何が理由で仲間外れにされたのだろうか。
>>73 修正も遅いし、間違いも多い。
117 :
nobodyさん :2007/01/26(金) 00:32:59 ID:pMsBDfiC
条件に合うデータがいくつあるのかを調べるためのコードを書きました。 for($i = 0; $word[$i] != null; $i++) { $hit_query[$i] = " SELECT COUNT(*) FROM " . "ZIP" . " WHERE KeyWord LIKE '%$word[$i]%' "; $hit_result[$i] = mysql_query($hit_query[$i]); $hit[$i] = mysql_fetch_array($hit_result[$i]); } foreach ($hit as $key => $value) { echo "$hit_query[$key]" . "<br>"; echo "$hit_result[$key]" . "<br>"; echo "$hit[$key]" . "<br>"; echo "ここまで" . "$key" . "<BR>"; } } echo "$hit[$key]" . "<br>";のところで件数が出るのかと思ったんですが、 Arrayと返されてしまいます。 上記のphpをブラウザで見ると、 SELECT COUNT(*) FROM Gazou WHERE KeyWord LIKE '%test]%' Resource id #3 Array となります。 どこが悪いのか御指摘下さい。お願いします。
ちょっと前にオブジェクト指向の話があるけど、 PHP5も複数の親クラスから派生できないのは致命的だな。 これって何か問題があって出来なくなってるの? 多重継承使えば同じ事できるけど、コードが冗長になるのが気に入らない。。。
むやみやたらに配列を作るから分からなくなるんだろう。 QUERYなんて上書きでいいじゃん。可読性が悪すぎる。 まぁ、結論からいうとhit[$i] = mysql_fetch_arrayで二次元配列になってるからだ。
>>117 どういう結果を求めてどこが悪いと思うんだ?
お前の指定している結果が普通に出力されていると思うぞ・・・
121 :
nobodyさん :2007/01/26(金) 01:37:03 ID:1J/Ng2RM
MySQLのバージョンを取得する方法ってありますか?
PHPがデストラクタもないビッチ言語なので困ってます どうしたらいいですか?
class aaa{ function AAA(){}; abstract function BBB(); } class bbb extends aaa{ function BBB(){print 123;}; } とした場合、$obj = new bbb(); $obj->AAAって感じできるのですか?
AAA();
あ、()忘れてましたね。ありがとうございます。 継承?ってのはスーパークラスの全部が継承されるんですね。
データベース使えば早いんですけど、今回それはなしで コンマ区切りのcvsファイルから共通項目が2つもしくはそれ以上ある行を指定して 別ファイルに追記して行きたいんですが、どうすればいいですか? 例) 元ファイル 書き込みファイル aaa,bbb,ccc,ddd aaa,bbb,ccc,ddd ada,bbb,ccc,dee → ada,bbb,ccc,dee aaa,bbb,dcc,dcd この場合、指定は2項目をbbbで指定して3項目をcccで指定してます
少しでも自分で書いて、行き詰ったらそこを質問しろ 端から丸投げすんな
129 :
127 :2007/01/26(金) 04:10:23 ID:???
私自身phpは全然分からないんですが、 知り合いがこんなカンジで話してて詰まってるって聞いてたんで 聞いてみたんです。 都合よすぎましたよね、すいませんでした。
>>117 mysql_query()はりソースを返すし
mysql_fetch_array()は配列を返すから当然そうなるね
>>117 echo "$hit[$key]" を print_r($hit[$key]); にすればわかるだろう。
>>118 多重継承は複数の親をもつ継承。言いたいのは多段じゃね?
PHPはオブジェクト指向言語じゃないけど、
多重継承なんか使わなくても問題ない。
設計を見直せ。
interfaceつかえば?
>>122 デストラクタあります。
__destruct()
どなたか分かる方いたら教えてください。 URLでa.phpを実行して、a.phpからb.phpにある関数をコールし、 b.php内で実行したURLのphpファイル名を取得しようと、 下記の抜粋して掲載したプログラムの☆☆☆で__FILE__を実行したら「b.php」が取得されました。 「b.php」ではなく「a.php」が取得出来る環境変数みたいなものってありますか? 対処例で関数のパラメータで__FILE__を渡してあげれば出来るのですが、 そうではなくb.phpの☆☆☆の部分だけで対処出来る方法があれば教えてください。 (b.phpが色々な所から呼ばれる関数のため、関数のパラメータを追加すると呼び元の全ファイルの修正になってしまうもので…。) [a.php] require_once "b.php"; test(); [b.php] function test(){ ☆☆☆ }
>>132 色々出力すりゃわかると思うけど・・・
$_SERVER['PHP_SELF']
135 :
132 :2007/01/26(金) 10:02:40 ID:???
>>133 ありがとうございますっ☆
無事「a.php」が取得出来ました♪
136 :
134 :2007/01/26(金) 10:36:37 ID:???
自己解決しました。
>>134 ちょww丁度書いてたところなのにw
まぁ、解決したならいいや。
138 :
134 :2007/01/26(金) 10:50:52 ID:???
ハッカーの仲間入りになれました。一応書いてくれてもいいですよ。
139 :
122 :2007/01/26(金) 11:31:06 ID:???
>>134 も、本当だ・・・
PHP4でなかったからないと思いこんでました。
ビッチ言語なんて言ってごめんね>PHP
>>134 <?php
function escape($str, $encoding="sjis") {
$str = mb_convert_encoding($str, "UTF-16BE", $encoding);
$unicode = unpack("n*", $str);
$escape = "";
foreach($unicode as $val) {
if ($val <= 255) {
if ($val >= 48 and $val <= 57) {
$escape .= chr($val);
}
elseif ($val >= 65 and $val <= 90) {
$escape .= chr($val);
}
elseif ($val >= 97 and $val <= 122) {
$escape .= chr($val);
}
else {
$escape .= sprintf("%%%02x", $val);
}
}
else {
$escape .= sprintf("%%u%04x", $val);
}
}
return $escape;
}
?>
141 :
137 :2007/01/26(金) 13:10:05 ID:???
>>140 あら、俺が書いたのとは大分違うな…。
俺のも書いてみる。穴あるかな。
<?php
function escape($para,$type="EUC_JP"){
$ret = "";
for( $pos = 0; $pos < mb_strlen( $para, $type ); $pos++ ){
$ret .= "%u".bin2hex(mb_convert_encoding(mb_substr($para,$pos,1,$type),"UTF-16",$type));
}
return $ret;
}
?>
142 :
140 :2007/01/26(金) 14:09:16 ID:???
改良版 <?php function escape($str, $encoding="sjis") { $str = mb_convert_encoding($str, "UTF-16LE", $encoding); $unicode = unpack("v*", $str); $escape = ""; foreach($unicode as $val) { if ($val <= 255) { $escape .= rawurlencode(chr($val)); } else { $escape .= "%u" . dechex($val); } } return $escape; } echo escape("_-.あaい!う"); ?>
143 :
121 :2007/01/26(金) 14:42:59 ID:???
144 :
134 :2007/01/26(金) 14:51:04 ID:???
>>140-142 すご。ありがとうございます!!
# 136, 138 は別人です(^^;
シェルを普段それほど使わないのでよく理解できないのですが、 escapeshellcmd() と escapeshellarg() の使い分けがよくわかりません。 とりあえずsystem()とかで外部からの入力値を使う場合は、 escapeshellcmd()をかけてますが、 問題ありでしょうか?
get_loaded_extensions()で、 GDがインストールされているかチェックしたいのですが、 <?php foreach (get_loaded_extensions() as $value) { if (preg_match("/gd/", $value)) { echo "GDがインストールされてます"; } } ?> これじゃちょっとチェックが弱いですか?
ファイルアップロード時に他のパラメータもアップロードしたいのですが どうすればいいですか? hiddenで渡しても、$_REQUESTや$_POSTに何も入ってません。
コード貼って
>>146 GDだけ確認するんだったら
extension_loaded('gd')
で十分。
150 :
146 :2007/01/26(金) 15:33:37 ID:???
>>149 そんな関数があったのですね。マヌアル見落としてました。
どうもありがとうございます。
151 :
147 :2007/01/26(金) 15:35:27 ID:???
単なるバグでした すみません
GDのサンプルを見ると imagedestroyしているものが多いですがこれは必須ですか? GDで使用したメモリがphp終了後に残ることもあるのでしょうか。
153 :
nobodyさん :2007/01/26(金) 16:17:20 ID:cz0hND8g
調べてみたのですが見つからなかったので質問させてください。 「PHPでは変数宣言が必要ない」ということがよく書いてありますが、 逆に変数宣言を必須にするようなモードなどはありますでしょうか。
>>152 PHP終了とともに開放されるけどGDは結構メモリ食うから使い終わったらさっさと開放しようとは思わんかね。
天然富豪か
157 :
153 :2007/01/26(金) 17:12:23 ID:cz0hND8g
>>154 レスありがとうございます。
しかし具体的にどこにどのように書けばいいのかわからず、
「ALL ERROR」のキーワードを手がかりに
マニュアル見たりぐぐったりして見ましたがわかりませんでした。
具体的にどこにどのように書けばいいのか、
または解説しているサイトなどありましたらお教えくださいますと幸いです。
ねぇだろw
$a = "aa"; if ($a != "aa") { $a = "xaa"; } elseif ($a != "bb") { $a = "xbb"; } elseif ($a != "cc") { $a = "xcc"; } else { $a = "xxx"; } if($a == "xaa"){ print "aaじゃない"; } if($a == "xbb"){ print "bbじゃない"; } if($a == "xcc"){ print "ccじゃない"; } このように記述した場合、「bbじゃない」としか表示されないのですが、 「ccじゃない」も表示させたいです。どうしたら良いのでしょうか?
>>157 error reporting
E_ALL
161 :
nobodyさん :2007/01/26(金) 17:44:46 ID:3bBneFQb
>>159 if($a == "xbb"){
print "bbじゃない";
print "ccじゃない";
}
>>159 「じゃない」にしたいなら != をつかわないか普通
163 :
159 :2007/01/26(金) 18:09:17 ID:???
>>161 ,162
レスありがとうございます。
できれば $a = "xbb"; と } elseif ($a != "cc") { の間で
$aを"aa"に戻し、「bbじゃない」と「ccじゃない」を表示させたいんです。
これって可能でしょうか?
>>163 $a = "aa";
if($a != "aa") print "aaじゃない";
if($a != "bb") print "bbじゃない";
if($a != "cc") print "ccじゃない";
165 :
nobodyさん :2007/01/26(金) 20:02:07 ID:Ratl1Nqj
POSTとGETの受け取りについてですが、最も効率の良い受け取り方はどのような処理でしょうか? みなさんのご意見をお聞かせ下さい。
(゚д゚)
PHPをアンインストール
$_POST['hoge'] と $_GET['hoge']
$_REQUEST['hoge']
ヤフーで「PHP」で検索すると出てくる 完全無料のPHPスクール行った奴いる?
171 :
軟式PHP :2007/01/26(金) 21:40:00 ID:???
>>170 見てみた。
>短期間で即戦力となれるようなスキルを実につけることが出来ます。
(´・∀・`)ヘー
>Webの申込フォームやメール送信、管理画面(DB連携、検索、リスト抽出、編集、削除)を作成可能なレベルを目指します。
( ゚д゚)
(つд⊂)ゴシゴシ
(;゚д゚)
(つд⊂)ゴシゴシ
_, ._
(;゚ Д゚)
172 :
165 :2007/01/26(金) 22:27:06 ID:Ratl1Nqj
例えば、 <form method="POST" action="./○○○.php?mode=kakusei"> <fieldset> <legend></legend> <dl> <dt>覚醒レベル</dt> <dd><input type="text" name="level" /></dd> </dl> <p> <input type="submit" /> <input type="reset" /> </p> </fieldset> </form> このように、POSTもGETもスクリプトに送りたいのですが、両方を受け取ることは可能でしょうか? また、どの様な処理で受け取ることができるでしょうか?
173 :
nobodyさん :2007/01/26(金) 22:33:58 ID:fmcX9VXG
php4.4.4です。 あるPHPファイルで ereg("^[ ]+$" , $name) ←半角スペースと全角スペース で、入力された値が空白かチェックしております。 ここではきちんと動作しているのですが、 最初のファイルはpublic_html/bbs/test.php にあります。 public_html/test.php で全く同じものを実行すると全角スペースがチェックにひっかかりません。 これはなんでなのでしょう? eregのオーバーロードはされているみたいです
>>172 可能だよ
この例だと $_GET['mode'], $_POST['level'] で受け取れる
>>173 どっかが違ってるとしか思えん
コードは同じでも $name に渡しているのが違うとか
それから空白文字のチェックなら ctype_space 使った方が楽だよ
>>174 両方とも$_REQUESTで取ればいいんじゃない?
177 :
165 :2007/01/26(金) 23:33:49 ID:???
みなさん、ご回答ありがとうございます。 私は1つの配列にGETもPOSTも入れられないか、と悩んでいました。 解決策として、($_GET + $_POST)を返す関数を作成しました。 あと、$_REQUESTはできるだけ使用するな、と言われましたがどうなんでしょう。。。 さらに質問ですが、みなさんはZendやPearコーティング規約に則していますか? 宜しければお答えくださいm(_ _)m
178 :
nobodyさん :2007/01/26(金) 23:34:30 ID:sVVIcX6W
2次元配列の変数をカウントした時って、何がカウントされるんでしょうか。 想像どおり2次元目の配列は無視してカウントされますか? 今、PHP触れない環境で紙とペンでプログラム作ってます。 誰か教えてください(>_<)
>>176 $_REQUEST ってデフォルトで"EGPCS"と全部入るから無用な混乱を避けるためにも
あらかじめ分かっている部分には $_GET, $_POST を使い分けた方がいいかなぁと
まぁ俺のポリシーなんだけどね
>>178 $a = array(range(0, 10), range(0,10), range(0,10)) ;
echo count($a) ;
これの出力結果が知りたいということ?
181 :
nobodyさん :2007/01/26(金) 23:43:31 ID:sVVIcX6W
>>177 POSTから受け取りたい変数がGETで渡された場合にも代入されちゃうから
あんまりよくないけど、わかってれば大丈夫。
大抵、表示部分はGETでやって、サーバー側に記録するような受け渡しは
POSTでやる。
俺は、タブが空白4文字だっけ?あれ以外はZENDのコーディング規約と同じで
phpのみの場合<?php 〜 exit;で行の文字数も広げすぎないようにしてる。
空白4文字だと、タブと違って作る時や消す時にメンドイ。
あの理由は、あらゆる人のエディターで
同じインデント幅って意味だと思うから一人で作る時は関係ない。
あとの規約は
if(){
}
と
function
{
}
って書き方くらいだったはず。
182 :
nobodyさん :2007/01/26(金) 23:44:19 ID:sVVIcX6W
>>180 そうですよろしくお願いしますm(__)m
>>177 他の人も言ってるけど、わかってて使う分には問題ない。
ただ、CSRF攻撃の対策だけは考えといてね。
何でやってみれば分かる質問するんだろう・・
$_REQUEST使いまくり。 POSTとGETのところで気をつかっても仕方ないぞw
全部$_REQUESTだとスクリプト使わなくても 他人の自動登録リンク集にクエリ付きでURL登録するだけでイタズラし放題。
>>185 聞けば必ず正しい答えが返ってくると信じてるからじゃない?
これからIDださないで質問してくるやつは容赦なく叩くからね。
>>185 初心者はエディタを即起動して、ちょろっとプログラム書いて、即実行できるような環境作りができていないことが多いからだと思われ。
191 :
nobodyさん :2007/01/27(土) 02:41:39 ID:G9yQMd4B
例えば2chだったら、"書き込む"を押す必要がありますが、 この 書き込む ボタン や 特定のリンクなど を"キーボードからの操作"で 即選択させられるようにするか、押す 方法はありませんかね?
>>190 大抵の入門向けの書籍って環境作りから書いてあったりするのに…
テスト環境を作るのが初心者の最初の課題だろう
ローカルなテスト環境作らない奴っていきなりレン鯖でテストするのか?
GETデータのリンクをAltで関連付ければ万事おk
195 :
191 :2007/01/27(土) 03:24:29 ID:???
>>194 アリガトウゴザイマス
そちらのスレッドへ行ってみマス
196 :
173 :2007/01/27(土) 09:18:48 ID:???
>>175 やっぱりそこまでの過程は全く同じでした。
なぜだか原因がわかりません。
だけど教えていただいたctype_spaceつかったらうまく行きました。
原因はわからないけど、とりあえず希望する結果が得られたので、ありがとうございました。
197 :
nobodyさん :2007/01/27(土) 12:09:05 ID:P0eOVa/K
$str = "あいうえお"; $array['comment'] $smarty->assign('age', $age); など"と'が使える場所で、変数を展開することがない場合は'を使ったほうがいいのでしょうか?
198 :
nobodyさん :2007/01/27(土) 13:20:57 ID:pVD/5wi/
>>192 >大抵の入門向けの書籍って環境作りから書いてあったりするのに…
おいらは、あれでページ稼ぎしているのかと思ってたw
>>197 きちんと理解できているのなら、どちらでもいい。
好きなほうでやるべし。
ニュー速の名記者の名前を教えてください。その記者の記事のみ取得するスクリプト作りたいんですが携帯からだと流れの早い板においつけなく、また検索できなくて困ってます。
またエスパーか
PDOからSQLiteのテーブルの定義を調べるにはどうしたらいいですか?
204 :
203 :2007/01/27(土) 18:37:52 ID:???
ごめん自分で解決した
204は偽者です。いい大人が恥を知れ。
206 :
203 :2007/01/27(土) 20:19:21 ID:???
事故解決しました。ヤフーでググったらすぐ分かった。 これくらいすぐ教えてくれたらいいのに
203大杉ワロス
質問者はID表示しるって書いてあるのになあ
206は偽者です。こういうことがあるとそのスレの程度がしれるよね。
210 :
nobodyさん :2007/01/27(土) 21:08:09 ID:8H08hEUC
すみません、質問させてください 今、二次元配列の勉強してるんですが 以下のスクリプトがうまくいきません。どこが悪いんでしょうか。 <?php $artist = array( "ピカソ" => array( "出身地" => "スペイン", "性別" => "男", "タイプ" => "キュビズム", "代表作" => "自画像"), "ゴッホ" => array( "出身地" => "オランダ", "性別" => "男", "タイプ" => "印象派", "代表作" => "ひまわり"), "モロー" => array( "出身地" => "フランス?", "性別" => "男", "タイプ" => "神秘派", "代表作" => "出現") ); echo $artist["ピカソ"]["出身地"]."<br>"; echo $artist["ゴッホ"]["代表作"]."<br>"; echo $artist["モロー"]["出身地"]."<br>"; ?> 項目をどれか一つ(一人)に絞れば大丈夫みたいなんですが、、 どこか間違ってるでしょうか。こんなので4時間くらいはまっています…
211 :
203 :2007/01/27(土) 21:08:10 ID:???
>>209 私は本物ですよ。
もしかして、貴方も私の質問の回答を知りたいんですか?
調べたら簡単にわかりますよ。
>>210 エラーの内容ぐらいかけ!っと何度(ry
214 :
nobodyさん :2007/01/27(土) 21:25:44 ID:8H08hEUC
>>212-213 スイマセン エラーの内容は、全く何も画面に表示されないんです
ググッて調べたりもしたんですが、上手くいかないんですよねー
phpは5だけど、バージョンが関係するような大した物じゃないし。。
>>214 PHP5の自鯖環境で、
>>210 のコードをコピペしたら、
普通に↓のように出力されましたが・・・
スペイン
ひまわり
フランス
218 :
nobodyさん :2007/01/27(土) 21:36:37 ID:8H08hEUC
>>215 アドバイスありがとうございます。
しかし文字コードは関係ないような。。単純に配列の要素を減らしたら表示されるんです。
↓みたいのならOKです
<?php
$artist = array(
"ゴッホ" => array(
"出身地" => "オランダ",
"性別" => "男",
"タイプ" => "印象派",
"代表作" => "ひまわり")
);
echo $artist["ゴッホ"]["代表作"];
?>
>しかし文字コードは関係ないような。。 じゃあいいです
>>218 "フランス?" を
"フランス" にすると結果どうなる?
>>222 だからそんなのは関係ない。
文字コードが原因。
>>216 の環境では実行できる。
>>210 の環境では実行できない。
こんな単純なコードが実行環境によって変わると思うか?
変わるのは表示している環境。
>>223 いや、だからSJISが原因なのは明白だから
「?」を消すと分かってもらえるだろうと思ってさ。
225 :
nobodyさん :2007/01/27(土) 21:57:32 ID:8H08hEUC
>>222 ?とっても結果同じでした。
すみません
>>223 文字コードですか…
phpの保存形式もphpのcharsetもShift-jisです。
自分なりに調べたりしてますが、文字コード良くわからないんです まいったな
226 :
nobodyさん :2007/01/27(土) 22:00:00 ID:M7VqTPnR
便乗で知りたいです。 具体的に文字コードの何? SJISで2次元配列使うとダメなんですか? パッとみエスケープするべき文字は 入ってない気がするんだけど。 ひょっとしてEUCでもKEYに'〜'とか使ったらおかしくなります??
227 :
nobodyさん :2007/01/27(土) 22:04:38 ID:51nHlwTU
すみません、少し聞きたいのですが mb_send_mail関数から送ったメールのタイトルの最初に ”ご"という文字が入っていると文字化けするのですが なにか対処法があるますでしょうか? mb_language(ja)やっても同じですしmb_internal_encodingはEUCです。 ちなみに"ご"という前に空白とか入れると問題ないですし逆に最初に "ご"を入れると次の文字も化けています。
SJISだと"ピカソ"がダメっぽいですね。 internalでEUCです。
>>223 すまん俺の恥ずかしい勘違いでした
>>225 うちの環境ではSJISでは空白、EUCで保存するとうまくいったよ
231 :
nobodyさん :2007/01/27(土) 22:12:31 ID:M7VqTPnR
あ〜ソっか〜 2次元配列って"を使ったときの挙動おかしい?? echo "$arr["hoge"]["hage"]";だと展開されずにエラーになる。 echo $arr["hoge"]["hage"];だと上手く行く。 一番良いのは echo $arr['hoge']['hage'];っぽい。 これだとおっぱい括弧要らない。
>>226 少なくとも「ソ」と「表」にバックスラッシュ入ってる。
EUC-JPならもちろん無問題。
234 :
nobodyさん :2007/01/27(土) 22:19:43 ID:8H08hEUC
>>228 ピカソ がトラブルの原因ですか。。 そんなの想像も出来ないですね
アドバイスにしたがってEUCで対応しようと思いますが、
<meta http-equiv="content-type" content="text/html; charset=EUC">
で、
保存形式もEUCにしたのに、ローカルテストで化けています。
トクトクのレンタルスペースならちゃんと表示するのに…
そろそろウザイですね、、文字コード勉強しなおしてみます
皆さんありがとうございました。<(_ _)>
二次元配列をFOREACHを使わずに展開する方法ってありますか?
>>234 >そんなの想像も出来ないですね
(゚д゚)
>>235 print_r(藁
正直知らん。
二次元配列でも、配列の中の値はただの配列だから
普通にやればいいんじゃないかな。
辞典買ったけど、二次元配列用に便利な関数とかは特に無かったと思う。
>>238 最初は皆そんなもんだろ。
英語圏だったら良かったのにって何度思ったことか…
ところでユニコードでセキュリティの
大問題が発見されたみたいだけどPHPは大丈夫なのかな?
後で試してみるけど。
っていうかキーに日本語使うって普通なのか? あんまりオススメできない気がするが
>>242 慣れてくればやらなくなる気もするし、
最初に使わないルールを覚えさせた方が後で苦労しない気もするw
244 :
nobodyさん :2007/01/27(土) 23:02:29 ID:u45Vq17A
"name , type, value, primary key(name,type)" この文字列をsplitにより,で分割(ただしカッコ内は除外)するにはどういう正規表現にすれば良いですか
フォームのテキストボックスに記入して登録ボタンなどをクリックした場合の質問です。 普通は戻るボタンをクリックすると先ほどの文字が記入したままになっているのですが フォームのphpファイルでセッションを使っていると記入した文字が消えてしまいます。 記入したままにするにはどうしたらいいでしょうか? よろしくお願いします。
>>245 クライアントのリクエストに対して
動的に生成するページでは
戻るとフォームは空になる
POST して戻らせるようにすればいい
247 :
nobodyさん :2007/01/27(土) 23:40:55 ID:SMgvGaRS
PHP5.2.0にしたら環境変数$_ENVが取得できなくなってるぽい (俺鯖のメールをPHPに渡して処理させるスクリプトで) ほかに同じ人いますか?
>POST して戻らせるようにすればいい どゆこと?
>>244 その文字列なら楽勝
split(', ', "name , type, value, primary key(name,type)");
>>247 仕様です
環境変数はgetenv関数で取得しましょう
>>248 フォームに戻るボタンを設置してPOSTさせる
よく見かけるだろ
252 :
247 :2007/01/27(土) 23:56:48 ID:SMgvGaRS
>>250 ええっ
そうなんですか?
$_SERVERに同じのがセットされてるようなのでそれで間に合わせましたよ
getenv関数は思いつかなかった
サンクスです
#もしかしてqmailの設定いじることになるのかと思って頭が真っ白になった
#しかしなんでこう覚えておくのが多いのか
#昔やった設定なんか綺麗サッパリ忘れとるがな
253 :
245 :2007/01/28(日) 00:29:50 ID:???
よくわからないんでソースいただけませんか?一応自分で教えてもらったことで動くか確認したいです。
254 :
244 :2007/01/28(日) 00:40:37 ID:???
(´・ω・`)
255 :
nobodyさん :2007/01/28(日) 00:40:45 ID:DJ+K1g0b
>>186-187 それは腕のないプログラマーの話じゃない?
俺が今修正させられてるサイトは、バカが作ったプログラムだから、フォームが全部POST。
ちゃんと考えて作られてれば問題ないんだけど、ユーザーがブラウザの戻るボタンを押したら
二重注文とか、エラーで最初からやり直しとか、操作は最後まで完了できてるけど
予約が入ってないとか、そんなんばっか。
腕がないんだったら(ユーザーがどんな操作をするか予測する能力がない)、最初からGET
で作って、GETで操作されても問題ないフォーム作りを心がけた方がいい。
3つぐらいステップアップできるよ。
ねえ、からかってますか?
>>245 入力ページの次の画面で、フォームの値をセッションに入れているなら、
もとの入力ページを表示する際に、セッションから値を引いてフォームに入れる。
セッションに値が無い時(そのページに初めて来た時など)は、デフォルト値を入れる。
ブラウザのキャッシュは切る。
それ、ちょっとフォームの項目変えたらいちいちセッションも変更しなきゃいけないし
超めんどくさい
それと、253は245じゃありません
>>253 いい加減にしろよ
IPアドレス見えてないとでも思ってるのか
自演乙
技術系のスレで IP でんでん(なぜか変換できない)言っても 釣られるやつはいないだろ
乙乙
>>261 「でんでん」のパターンははじめて見たな。
しかし居るんだな、技術系スレでも。
ここは質問スレだし初心者も結構居るんじゃない
ネタに初心者も糞もn(ry
>>264 技術系スレがどうした?
おまえのようなたいした技術もないやつの集まりだろここはw
なんか可哀相な奴が湧いてるな
先頭から5文字を抜き取るにはどうしたらいいでしょうか? 例えば $a = "abcdefg"; ならabcdeを抜き取って $a = "fg"; にしたい。
>>269 $a=substr("abcdefg",5);
>>268 あっ?かわいそうなのはテメェだろwwwwwwwwww
今、お前のIP抜いて解析かけてるから、覚悟しろよww
お前の個人情報をここにさらしてやるよwwwwwwwwww
謝るならいまのうちだぞwwwwww後で泣きっ面するなよ!低脳君wwwwwwwwwwwwwwwwwwww
もう春休みだっけ?
オワタ
環境:FreeBSD6.1 Apache1.3.37 PHP4.4.4 新しくPHPスクリプトのページを追加するために 同じ場所に置いててちゃんと動作してるPHPスクリプトから MySQLコネクトをしてる数行だけコピペしてきたらいきなり新しい方のPHPが動かなくなって まったく同じ内容を手入力したら動いたんだけど こんな経験ある人居る? 原因がさっぱりわからんですごく気持ち悪くて 原因わかれば教えて欲しい コピペした内容は↓ require "php_config.php"; $link = mysql_connect($sql_server, $sql_user, $sql_user_passwd); mysql_select_db($web_database_name); このたった3行だけ コピペする前に新しい方のPHPに書いてたのはprint文2行だけ で、コピペしたら動かなくなって(エラーとか表示無しで、printも実行されてない) この3行とまったく同じのを手書きしたら動いた もうさっぱりワケワカンネ
改行コードじゃね?
>>274 コピペ時に全角スペースでも混入してたんじゃないかな。
エディターによっては気が付かない。
ソース表示して比較すればいいと思うよ
>>274 PHP4.4.4でFreeBSD6.1、APACHEが1.3.37って
ひょっとしてさくらの共有サーバー?
PHP5で個人的なサイト作りたいんだけど
専用借りるのも高いし、自鯖じゃ電気代かかるし
良いとこないかな。
>>278 俺はXREAのPHP5サーバを使ってる
それなりに快適
>>279 名前知ってたけど調べてなかった
ありがトン
PHPでのMVCパターンによるWebアプリケーションの開発は効率が良いの? いろいろ批判とかもあるけど・・・
個人でやる分には好きにしろとしか
var_dumpで変数を調べたら string(0) "" と帰ってきました。これは空の変数ではないんでしょうか?? issetやemptyなどの関数では値があると帰ってきてしまいます。 ifとかで条件分岐するにはどうしたらいいんでしょうか・・・
>>283 $a = "";
if($a == ""){
print "空白だよ";
}
>>275 それは思ったんですが、どっちも文字コードEUCの改行LFのみでやってるんですよね
念のためバイナリエディタで見てもちゃんと0Aでしたし
>>276 使用エディタは秀丸で、タブ・半全角スペースは表示するように設定してるので
>>277 目が痛くなるくらい眺め回しました
ブラウザに表示されたもののソースは見ても意味無いので見てませんが
>>278 そです
さくらのFAQ見ても改行コードとか文字コードとかしか書いてなくて、イマイチすっきりしません・・・
ttp://www.appletz.jp/ とかどうですか
確かPHP5使えたはずですが
さくらほど安くないですけどね・・・
>>287 そもそもコピペってなんでやったの?
秀丸?
289 :
nobodyさん :2007/01/28(日) 15:59:41 ID:lDMu9zNs
つdiff
コピペ時に間違って括弧か;消してるとか? それ以外なら動くっしょ。 コピペして文字コード変わってるとか? 直接打ってるのと違うとしたらここら辺ぽいけど 日本語入って無いなら関係ないよな。 多分、なんかしら勘違いだと思うけど。
マルチバイト文字が含まれてなければ、文字コード変わっても大丈夫だよね やっぱなんか勘違い? まさか require "php_config.php"; $link = mysql_connect($sql_server, $sql_user, $sql_user_passwd); mysql_select_db($web_database_name); ってprint含まれてないけど・・
php_config.phpを置いてないとか言ったら怒るぞ
>>274 1. ツール使ってファイルを比較しろ
2. パーミッションを確認しろ
3. エラーが起きたら分かるようにしろ(display_errors設定しろ)
4. 下らねぇ質問はここに書き込みやがれ
いや、
>>293 のまさかの通りで
コピペ時に丸ごとprint文消しちゃったんだろw
これなら白紙でエラーが出ないのも納得だ。
requireは最初に書くことが多いし間違いないと思う。
requireの失敗はwarningじゃなくてfatal errorだから
さくらの通常設定時でも表示される様な気がする。
もうね、あほかと馬鹿かと…
297 :
nobodyさん :2007/01/28(日) 17:55:51 ID:s3/X511e
ある文字列があり その文字列のうちある文字列が入っている以降のデータをほしい場合とかどうしたらいいでしょうか? 例えば$str='abcdefgh';があってdefという文字列以降がほしい場合とか。
strstr()
299 :
nobodyさん :2007/01/28(日) 18:03:17 ID:/Lwtdyv9
preg_replace('/^.*?(?=def)/s', '', $str)
300 :
297 :2007/01/28(日) 18:10:10 ID:s3/X511e
ありがとうございました。
そんな質問毎回するぐらいなら、関数の逆引き本買ったほうがメチャクチャ早い気がするが・・・
302 :
nobodyさん :2007/01/28(日) 19:15:59 ID:CE5BMVcn
time();から現在の時間を取得したい場合はどうしたらいいでしょうか?
304 :
302 :2007/01/28(日) 19:28:52 ID:???
追記 たとえばここのアドレス 1169644229を○月○日○時○分に変換することは可能でしょうか?
date('m月d日H時i分','1169644229')
dateでできる。大抵のPHP入門書の最初の方に出てくる。 SJIS環境で年とかをdate関数に入れて整形しようとすると date関数がマルチバイトに非対応の為、文字化けするから工夫が必要。
308 :
302 :2007/01/28(日) 19:45:28 ID:???
309 :
307 :2007/01/28(日) 19:46:58 ID:???
>>292 ,293,296
そのへんは無いです
目が痛くなるほどしらみつぶしに見て確認済み
>>295 1. 例の3行以外まったく違うので・・・ファイルの一部だけ比較できるツールとか知らないので・・・
2. 755です、てか転送直後の644でも動きます
3. もともとONなの、phpinfo()で確認済み&エラー表示無しの白紙です
4. 今この辺
とりえあずそのふてぶてしい態度はやめたら?
>>307 date()がマルチバイトに対応とかそんな問題じゃない。
2byte目が5cだから。
phpでウェブアプリケーションは簡単に作れますか?
はい。
ではどういったサイトを参考にすればいいんでしょうか。 具グッ太限りではテンプレートみたいなのに沢山種類があって、 困ってしまいます。
IDださない質問者は回答スルーでおねがいします。
318 :
nobodyさん :2007/01/28(日) 22:32:27 ID:sRWETkcM
ではどういったサイトを参考にすればいいんでしょうか。 具グッ太限りではテンプレートみたいなのに沢山種類があって、 困ってしまいます。
319 :
nobodyさん :2007/01/28(日) 22:34:03 ID:CE5BMVcn
DBに時間を登録して その時間になるとメールを送信したい。 のですが、どうやるとできるでしょうか?
322 :
320 :2007/01/28(日) 22:56:24 ID:???
断る
>>318 何もわからんやつはとりあえず本屋行って入門本を立ち読みして選んで買って来い
リファレンスは本家のサイト行け
324 :
nobodyさん :2007/01/28(日) 23:29:59 ID:40Chmc0U
配列を関数に入れてvar_dumpしても中身が入っているのに 配列の中身をechoするとなぜか中身が全部 a になってしまう現象に心当たりのある人いませんか?
スレ違いだったらすみません。 現在MySQL3を使っているのですが、そのままバージョンを5に上げても大丈夫ですか?
>>325 作り方によるね。
特に文字化けについては結構面倒くさいよ。
テストに時間をかけるべし
>>326 文字化けについては
UTF-8からUTF-8
EUC-JPならEUC-JPで保存しています。
それをphpMyAdminで閲覧、編集しています。
phpMyAdminはいろいろな文字コードでページを切り替えてるのですが、
これは邪道なのでしょうか・・・?
330 :
nobodyさん :2007/01/29(月) 00:12:31 ID:pElYphps
>>328 $ary = file_get_contents($file名);
$ary = unserialize($ary); //配列の中身は$ary[url] = "
http://www.google.com " $ary[name] = "google"
function hoge($ary);
function hoge($ary){
var_dump($ary); // ここは配列の内容が出る
echo $ary["url"]; //ここは a と表示される。
}
生ソース貼ろうにもファイルとか他の関数とかあるからどうしたものだか・・・
>>330 試してみたが、aなんて表示されなかった。
<?php
$a = array('url' => "
http://www.google.com ", 'name' => 'google');
file_put_contents('tmp.txt', serialize($a));
$ary = unserialize(file_get_contents('tmp.txt'));
var_dump($ary);
echo $ary['url'], "\n";
hoge($ary);
function hoge($ary)
{
var_dump($ary);
echo $ary['url'], "\n";
}
>>330 ---------------------
$ary[url] = '
http://www.google.com ';
$ary[name] = 'google';
print_r($ary);
hoge($ary);
function hoge($ary){
var_dump($ary); // ここは配列の内容が出る
echo $ary['url']; //ここは a と表示される。
}
---------------------
だとどうなのよ
多分ファイルの中身の問題じゃない?
333 :
332 :2007/01/29(月) 00:51:47 ID:???
激しくかぶった・・ orz ついでに突っ込んでおこう function hoge($ary); が二回あるぞ
334 :
330 :2007/01/29(月) 01:05:54 ID:pElYphps
>>333 あああ、すんません。
最初のは普通に呼び出すつもりでした。
>>331 ですよね。普通出ませんよね。
file_put_contents知らなかった・・・
自作関数作ってまわしてました。これだけでも感謝。
>>332 print_rのところで関数内と同じ結果が表示されました。
>>334 $ary = file_get_contents($file名);
var_dump($ary);
$ary = unserialize($ary);
var_dump($ary);
hoge($ary);
336 :
330 :2007/01/29(月) 01:33:41 ID:pElYphps
異常ないですね・・・ 今日は寝てまた明日試してみます。 ありがとうございました。 なんで a なんだろなぁ(;´Д`)
さらに関数を通さないとどうなるの?
$aryをシリアライズすると
a:2:{s:3:"url";s:21:"
http://www.google.com ";s:4:"name";s:6:"google";}
という文字列になる。
どうせ、serializeを2回無駄にやった上でunserializeを1回しかしてないから、$aryは文字列と見なされ、[]演算子の中身がintにキャストされて0になり、1文字目のaが出力された、っていう釣りだったんでしょ。
preg_replace_callbackでクラス内のファンクションをコールバックしたいのですが、可能でしょうか? class hoge { function test() { $str = preg_replace_callback('/hoge([0-9]{3})/','hogehoge', $str); } function hogehoge($str) { 処理 } } この場合の処理になります。 hogehogeでも$this->hogeでもできませんでした
341 :
軟式PHP :2007/01/29(月) 09:17:26 ID:???
>>340 $str = preg_replace_callback('/hoge([0-9]{3})/',array('hoge','hogehoge'), $str);
でどうでせう。
第2引数に、array(クラス名、関数名)
>>341 できました!
ありがとうです
軟式さんって結構昔から拝見してますが同一ですか?
343 :
軟式PHP :2007/01/29(月) 09:31:50 ID:???
>>342 えがったです。同一です。3〜4年前からまったり住み着いてる暇人です。
ちなみにニート
345 :
nobodyさん :2007/01/29(月) 09:44:18 ID:N9zbSBSF
ひどい自演を見た・・気もする
だったら酷いな
347 :
軟式PHP :2007/01/29(月) 09:47:14 ID:???
暇人だが自演はしないぞ。
348 :
340 :2007/01/29(月) 09:59:30 ID:???
>>軟式さん そうなんですか^^ 応援してます! また、機会ありましたらご回答いただければと思います
軟式・・・?軟式テニスとかの軟式?
考えるな、感じるんだ
きみは、コスモを感じるか…!!!
352 :
軟式PHP :2007/01/29(月) 11:40:53 ID:N9zbSBSF
実は・・・自演でしたw
PHPからexecなどを使ってCの関数を呼ぶ際、 mainだけでなく、Cのライブラリを呼ぶことってできるんでしょうか? 今は、Cのライブラリに入っている関数を、一つ一つ分割して、mainとして扱っているのですが 面倒くさくてしょうがないので、何か良い手段があったらお願いします。
354 :
nobodyさん :2007/01/29(月) 13:14:50 ID:N9zbSBSF
>>353 質問者はageてIDを出すと回答を得やすいですよ。
システムコマンドとして実行出来るのであれば出来る、そうでないなら出来ない。
355 :
nobodyさん :2007/01/29(月) 14:22:44 ID:Uw0aytwH
SQL文等の書き方について相談なんですが $sqL="select * from table where culumA='".$_POST['A']."' and culumB='''.$_POST['B']."'"; って書くのと $sqL=sprintf("select * from table where culumA='%s' and culumB='%s'",$_POST['A'],$_POST['B'].); って書くのとどちらが良いと思われますか?
356 :
nobodyさん :2007/01/29(月) 14:43:26 ID:N9zbSBSF
読みやすければどれでもいいと思うけど。 $sqL="select * from table where culumA='{$_POST['A']}' and culumB='{$_POST['B']}"; が一番読みやすいのではと思っている。
357 :
nobodyさん :2007/01/29(月) 14:45:56 ID:MdfhpFZP
SQLiteに保存されたデータはどこのディレクトリに保存されるんですか?
358 :
nobodyさん :2007/01/29(月) 14:48:33 ID:N9zbSBSF
xmail使ってるんですが、php.iniにどう設定したらいいのでしょうか?
#外せ
361 :
nobodyさん :2007/01/29(月) 15:29:27 ID:Uw0aytwH
>>356 そうなんです。
他の人にソース渡した時どちらが読みやすいかなーって悩んでたんです。
わかりました、ありがとうございました。
363 :
nobodyさん :2007/01/29(月) 15:42:38 ID:CnmZSkwX
ヤフオクなどで、終了時間になるとメールが送信されますが あれはどうやって実現してるのでしょうか?
if文で書ける 時間の指定はdateで。 しかしあれをPHPで書いてるとは思えんがな
365 :
nobodyさん :2007/01/29(月) 15:47:06 ID:N9zbSBSF
>>363 ちったぁ考えたり調べたり勉強してから質問しろ。
せめてこう考えて、試したんですけど出来ませんでした・・ぐらいにして欲しいし、自分のためにもなる。
>>364 dateで時間を指定して、指定時間にPHPでメール送信できるの?
>>366 できなくはないが、なんでPHPに拘るのかね
368 :
nobodyさん :2007/01/29(月) 15:49:33 ID:zoLvlQlg
$str = "あああ" $str = htmlentities($str); echo $str; で、$strが文字化けしてしまいます。 なぜ文字化けしてしまうのでしょうか
369 :
nobodyさん :2007/01/29(月) 15:49:51 ID:N9zbSBSF
まずcrontabでも検索してください。
371 :
363 :2007/01/29(月) 15:53:28 ID:???
>できなくはないが、 どうやってできますか? >なんでPHPに拘るのかね ほかに質問するスレがなかったからです
setcookieを2回以上使うと最初に設定したクッキーしか保存されないのですが
374 :
372 :2007/01/29(月) 16:00:18 ID:kMiRiwy4
なんかこれだと説明足りないな 2回目以降のsetcookieでクッキーが保存されないんです
375 :
363 :2007/01/29(月) 16:00:26 ID:???
>>369 cronって、毎分実行するんですか?負荷がかかりそう…
ヤフオクはcronでやってるの?
>>373 ええと、そういうツールではなく…
376 :
nobodyさん :2007/01/29(月) 16:02:12 ID:Oci230Rv
379 :
nobodyさん :2007/01/29(月) 16:13:59 ID:N9zbSBSF
質問者はageてID出せ
ID隠して質問するやつは複数の質問してるやつと捉えてOKですか? 「ついsageくせで」という言い訳無用
ついsageくせで・・・
タダで2ちゃんねる見てるやつにはわからんがモリタポもってるとIPの一部が丸見えの件。
専ブラのデフォルトで・・・
●持ちの俺にはスケスケ
377みたいなウイルス貼るやつもいるから 質問者以外もID晒すべき
え、●持ってるのにID見えないんだけど・・・
389 :
nobodyさん :2007/01/29(月) 16:44:23 ID:+SKjWWSu
MacOS X 10.4 で PHP 5.2.0 をコンパイルすると、最後の ld のところで以下のようなエラーが出ます(gcc 4.0.1)。 googleで検索したところ、2年前の情報しかなく、5.2.0には該当しないようです。 だれか助けて。 /usr/bin/ld: warning multiple definitions of symbol _pcre_callout ext/pcre/pcrelib/pcre_globals.o definition of _pcre_callout in section (__DATA,__data) /usr/local/apache2/bin/httpd definition of _pcre_callout /usr/bin/ld: warning multiple definitions of symbol _pcre_stack_free ext/pcre/pcrelib/pcre_globals.o definition of _pcre_stack_free in section TA,__data) /usr/local/apache2/bin/httpd definition of _pcre_stack_free /usr/bin/ld: warning multiple definitions of symbol _pcre_stack_malloc ext/pcre/pcrelib/pcre_globals.o definition of _pcre_stack_malloc in section DATA,__data) /usr/local/apache2/bin/httpd definition of _pcre_stack_malloc /usr/bin/ld: multiple definitions of symbol _CRYPTO_add_lock /usr/lib/gcc/i686-apple-darwin8/4.0.1/../../../libcrypto.dylib(cryptlib.o) nition of _CRYPTO_add_lock /usr/local/mysql/lib/libmysqlclient.a(libtaocrypt_la-misc.o) definition of PTO_add_lock in section (__TEXT,__text) /usr/bin/ld: multiple definitions of symbol _CRYPTO_lock /usr/lib/gcc/i686-apple-darwin8/4.0.1/../../../libcrypto.dylib(cryptlib.o) nition of _CRYPTO_lock /usr/local/mysql/lib/libmysqlclient.a(libtaocrypt_la-misc.o) definition of PTO_lock in section (__TEXT,__text)
ソース載せろ
ここは、質問者より回答者のほうがレベルが低い 質問者はそれを理解したうえで質問するように。
393 :
nobodyさん :2007/01/29(月) 16:57:50 ID:N9zbSBSF
>>391 レベル高いなら間違い指摘してあげればいいじゃん。
口だけならいくらでも言えますよね。
395 :
軟式PHP :2007/01/29(月) 17:06:45 ID:???
>>389 mysqlのバージョンを5にしてみたらどうでせうか。
397 :
nobodyさん :2007/01/29(月) 17:32:54 ID:N9zbSBSF
>>389 残念ながらマックって時点で回答出来る人が相当絞られるんですよね。
勉強中ならまずは中古windowsでも買ってLinux(redhat系,vine linuxとか)ですることをオススメする。
情報も多いし。
399 :
389 :2007/01/29(月) 17:45:21 ID:???
>>398 どうもありがとうございます。
MySQLもそうなのですが、apache2でpcre関連がエラーになるのが困ってます。
エラーが multiple definitions of symbol ですので、phpとapacheとでpcreが
重複して使われているということなんでしょうか。
でもモジュールなんだから関係ないように思うんですが、そうでもないんでしょうか。
どなたかMacOS X(Tiger)でPHP5.2.0のコンパイルに成功された方はおられませんか。
何人かいらっしゃると思うのですが。
400 :
nobodyさん :2007/01/29(月) 17:49:33 ID:FPNoJzhr
あまりオブジェクト指向とかよくわかってなくて申し訳ないんですが class A { var $var = 1; function exec() { $this->var = 2; var_dump($this->var); // int(2) $o = new B; } } class B extends A { function B() { var_dump($this->var); // int(1) } } $o = new A; $o->exec(); こういったコードがあって、class Bからclass Aでセットされた値(2)を受け取るとかっていう方法は無いものなんでしょうか。 そもそもこういうの利用法は根本的に間違ってたりしますか? よろしくお願いします
なんかすごいソースだな
403 :
389 :2007/01/29(月) 18:15:18 ID:???
>>402 エー、排他的ですか?そうかなあ。
まあいいや。
>>402 のページは見たんですが、apacheの問題であってmysqlは関係ないだろうと
思ってパスしてました。
おっしゃるように、mysql4.1いれてupgradeを試してみます。
ありがとうございました。
見たのに試してないのかよ。 つーか、configureの引数を最小限にして試すなど、最低限のことは確認してから質問しに来ましょう。
>>400 できないと答えたほうがいいのかな
なにをしたいのかがちょっとわかりにくい
単にメンバ変数 var をAとB両方で共通に使いたい
というだけならできるけど、
>あまりオブジェクト指向とかよくわかってなくて
という状態ならあまりお勧めはしない
とりあえず、クラスを使えばオブジェクト指向だと思っている奴が結構いるなw
>>400 class Aのexecの中にある$oは何のためにあるんだろう?
これも$o->exec()をするのかな?
>class Bから「class Aでセットされた値(2)」を受け取る
ってことだけど、「class Bから」ってのが、class Bのクラス内からという意味なのか、class Bを通して外部からという意味なのか。
>>400 クラスAを継承したクラスBをインスタンス化して実行してるんだからその結果で当然
>>400 あと下のnew Aはnew Bだと思うが
だったらBのコンストラクタ内でparent::exec()とか
410 :
nobodyさん :2007/01/29(月) 18:49:37 ID:49CgLh+g
簡単なパスワード認証ページを作っているんですが、どの解説サイトも フォームと処理を別のファイルに分けています。(form.html,pass.php) そこで一つのファイルにまとめてみたんですが、パスワードを入力した後も フォームの部分が残ってしまいます。 フォーム部分を残さず、且つ一つのファイルで認証ページは作れますか? よろしくおねがいします。
411 :
nobodyさん :2007/01/29(月) 18:54:38 ID:Q3+Suxva
携帯サイト用のSJISのソースで"ソ"という変数を使いたいのですがソは文字化けしてしまうのでエラーになってしまいます。 対処法を教えてください先生!
\ソ
413 :
411 :2007/01/29(月) 18:57:42 ID:???
Sir! やってみます! Sir!
>>410 <?php
if (...) { ...; exit(); }
else if (...) { ...; exit(); }
else { ...; }
?>
>>410 ひとつのファイルにまとめればいーじゃん
>>410 その質問の仕方だと、作れます
という答えが返ってくるだけだと思う
>>416 それはお前だけ
お前って応用きかないタイプの人間だよな
418 :
410 :2007/01/29(月) 19:09:47 ID:49CgLh+g
すみません。ソースはこんな感じです。
<?php
echo<<<END
<form name="form" action="test.php" method="POST">
<input name="pass" type="text">
<input type="submit" value="ログイン">
</form>
END;
$pass = "1234";
$passwd = $_POST["pass"];
if("$passwd" == "$pass"){
echo<<<END
認証成功
END;
}elseif ("$passwd" == "") {
print "";
} else {
echo "認証失敗";
}
?>
>>414 exit();を入れてもダメでした…。
ここまで才能のないやつも珍しいなw ちょっとくらい、"自分で考える"という行動にはでないのか… ちょっとでもわからなければ、人に聞く… これが、ゆとりの影響か…
>>418 <?php
$pass = "1234";
$passwd = $_POST["pass"];
if("$passwd" == ""){
echo<<<END
<form name="form" action="test.php" method="POST">
<input name="pass" type="text">
<input type="submit" value="ログイン">
</form>
END;
}elseif("$passwd" == "$pass"){
echo<<<END
認証成功
END;
} else {
echo<<<END
認証失敗
END;
}
?>
こんな簡単なもの軽く書けよ
マニュアル嫁とか自慢げに書き込む
>>420 みたいなやつまじうぜえ
>>422 ID隠して自己援護乙。
だったらお前が書けよw
424 :
410 :2007/01/29(月) 19:39:22 ID:49CgLh+g
>>420 マニュアルも見て418のソースを作ったんですが、その先がわからなくて…。
>>421 ありがとうございます。無事実行できました。
自分のせいで場を荒らしてしまって申し訳ないです。
もっと精進します。。
>>418 今、思いついたんだけど、2つのファイルに分ければよくね?
例えば、form.htmlとpass.phpに・・・
もしかして俺って天才?
おまえら、マニュアル嫁だの、人をけなす発言だの、人を使ってネタにするのはやめれ マニュアルくらい誰でも読んでるっつーの それでもわからないから質問してんだろ それくらい気づけよ(自分ができたからと言って他人ができるとは限らない) とりあえずソース書いたりわかることだけを書け 回答が見つからない能無しは発言するな 以上
>>428 はいはい。
教えてもらう立場のド素人が必死ですねw
だから、お前が全て完璧に回答すれば済むはなしだろ。
どう回答しようが、書き込む奴の勝手。
>>410 みたいに何も考えずに丸投げするような奴にはマトモに回答しないのも回答者の勝手。
お前がそういう事を言える立場ではない。
430 :
nobodyさん :2007/01/29(月) 20:14:44 ID:ZRpW4KNd
あれだな。強制ID制にしないか?
431 :
428 :2007/01/29(月) 20:23:51 ID:???
俺は教える方の立場なわけだが おまえアホっぽいからもう1度言うぞ? とりあえずソース書いたりわかることだけを書け 回答が見つからない ”能無し” は発言するな 以上
能無しだから質問するんじゃね?
>>431 まぁID隠してたらなんとでもいえるワナ。
トリップ付けてID晒して、それでずっと回答しろよw
>>431 お前が質問しやすいようにスレをコントロールか?
ど素人はひっこんどけw
435 :
428 :2007/01/29(月) 20:35:01 ID:???
おまえら素人は黙ってろって言ってるだろ ぶっちゃけ俺は、このスレで一番詳しい 次の質問があと30分以内にきたら答えたるわ 30分過ぎたらなしね 明日忙しいから寝る どんな質問でもいいぞ さくさく回答したるわ
お先に失礼しまーす
トリップまだ?
>>435 質問する側として、貴方みたいな人に答えて欲しくない。
貴方一人よりも、他の何十というスレの人間が頼りになる。
質問者が遊ばれるのは、遊ばれるような質問内容だから。
ちゃんとテンプレ読んでればまともな質問するからそれに応じてちゃんと答えてくれる。
// 縦読みじゃないYO
>>435 とりあえずIDとトリップ付けろよ。
話はそれからだw
440 :
nobodyさん :2007/01/29(月) 20:47:42 ID:ycTHzwA7
$array = array('あ','い','う'); foreach ($array as $value){ echo $value; } で、表示結果が「tuv」になってしまいます。 なぜなのでしょうか?
441 :
428 :2007/01/29(月) 20:49:33 ID:???
>>438 ああそうかい
じゃあ俺はもう二度と答えないことにするよ
遊ばれるような内容の質問なら、答えずにバカにして遊んであげる
俺が抜けた穴はお前が埋めてくれ(お前がどれほどのスキル持ってるか知らないけど)
せいぜいがんばれ
何が分からないのか分からないレベルの質問の場合は、2chで質問しないでコテハン付けるのがデフォな場所探して質問した方がいいんじゃない
>>441 トリップのくだりを徹底無視するのは簡単にレベル高いってのが嘘っぱちだから?
ミス "簡単に"はいらんわ
>>443 とても回答できるようなレベルではない、質問者側の人間だから。
ID出せないって事は、今日質問した奴だろ。
446 :
428 :2007/01/29(月) 20:57:06 ID:???
だからID制にしようよ。運営に提出すれば切り替わるんだからさ。
>>446 >それを察して回答することもできない能無しは発言するなと何度言えば(ry
何度言っても無駄なのが2ch
特にお前みたいなキャラがスレの流れをまともに持っていけたのを見たためしが無い
5年ぐらいROMったら?
文字コードのせいでtuvと表示されるとは思えないが
>>446 何処の固定ハンドル制サイトからお越しで?
452 :
nobodyさん :2007/01/29(月) 21:21:57 ID:ycTHzwA7
ソースがSJISでブラウザの表示設定もSJISなのか? ブラウザがどう文字コード読み間違っても"あいう"が"tuv"にゃならん気がするが ソースは <?php $array = array('あ','い','う'); foreach ($array as $value){ echo $value; } ?> だけなのか? 別なファイルをアップしてたり間違ったURL指定してるってことは無いか?
素直なやつが一人巻き添え食らったなw
456 :
nobodyさん :2007/01/29(月) 21:51:22 ID:5v2qtpoj
$action = 'Main'; という変数がある場合に、 MainModel::execute(); ~~~~ ↑を$actionを用いて記述したい というように関数を実行したいのですが、どのように記述すれば良いですか? // {$action}Model::execute(); みたいにやっても駄目でした。。
変数じゃなくてクラス名だから可変変数は使えないんじゃない?
>>456 call_user_func(array($action.'Model', 'execute'));
460 :
nobodyさん :2007/01/29(月) 22:27:39 ID:aYLBeI0p
FileZillaFTPの質問ってどのへんに書けばいいかな?
462 :
nobodyさん :2007/01/29(月) 22:53:05 ID:+RdUXIWp
ループ処理中にprint文があります。(約4000回) ローカル環境では最終行まで表示されます。 レン鯖で実行すると、ブラウザへ表示される行数が約3000行になります。 但し、php自体は最後まで処理が終わっています。 php.iniの設定か何かでブラウザへ表示させる行数かサイズか何か制限する方法でもあるのでしょうか?
実行時間は?
PHPマニュアルのインクリメンタルサーチを実現したいんですが、マニュアルの全ページをうまい事DBに突っ込む方法ってないでしょうか。
465 :
462 :2007/01/29(月) 23:22:06 ID:+RdUXIWp
>>463 2-3分かかるので
set_time_limit(300);
で伸ばしています
>>465 実行時間がサーバの制限に引っ掛かってるんじゃないか?
分割するなり工夫しる
467 :
462 :2007/01/29(月) 23:37:54 ID:???
>>466 どうも勘違いしてたようで、最後まで表示されました。
(´゚д゚`)
ヽ(・ω・)/ ズコー \(.\ ノ
date()関数で1桁の分って何だったっけ?
>>470 substr(date("i"),-1)じゃダメなのか?
473 :
nobodyさん :2007/01/30(火) 00:34:34 ID:MllPmN0I
PHP5において、継承したクラスで親クラスのメソッドを呼び出すにはparent::を付けなきゃ駄目?
別に普通にコールすれば? $this->hoge();
くだらない質問ですいません -> って何ですか? ググってもでてこないので・・・
えぇーっ!?
477 :
nobodyさん :2007/01/30(火) 02:22:49 ID:yyajzISr
いやさ、$thisとかもそうだけど(Javaその他含む)、
俺も最初のこういうのが一番分かり難くて二度ほど挫折したよw
その後なんとか自力更生wしたけどw
>>475 アロー演算子でぐぐれ
超初心者はgoogleだけで済ませようとするより1500円ぐらいで入門本買ってきたほうがいい 余計な時間とストレスが発生するコストと比べたら安いもんだよ
480 :
nobodyさん :2007/01/30(火) 05:19:34 ID:kaI1ZM+O
すみません、質問です
文字コードと文字化けの問題がわからなくて、ずっと調べてるんですが
今は
ttp://tsuttayo.sytes.net/php/char_trn/を参考に勉強してます で、自分なりに理解したつもりなんですが、以下の認識で問題ないでしょうか?
1、プログラムの実行不具合を考えると、SjisでなくEUC形式で.phpを保存した方がいい
2、php.ini の「mbstring.http_output」と「mbstring.internal_encoding」はEUC-JPを指定
3、.phpのメタタグに<meta http-equiv="content-type" content="text/html; charset=EUC">を
追記した方がいい
あと、上記のルールで作ったphpにフォームで情報(名前とか)を引き渡す時は、
フォームhtmlのメタタグでの指示もeuc、保存形式もeucにすべきなんでしょうか?
一応テストするとshift-jisじゃphpで表示したとき文字化けしてしまうのですが…
時間に余裕がある方、ご回答いただけるようよろしくお願いします。
>>480 Dreamweaverで作ってるのかな?
だったら、ページプロパティのタイトル/エンコーディングでEUC-JPを指定してリロード
統一しておいたほうがいいと思う、全部
特に携帯のサイトとか作る予定がなければ
482 :
nobodyさん :2007/01/30(火) 06:14:48 ID:kaI1ZM+O
>>481 アドバイスありがとうございました
いえ、DreamWeaverじゃないんですが、phpのファイルをいじる度に
思わぬところで文字化けが起きるので、早いうちに理由と解決法を
ハッキリさせたいと。。
メタタグ部分はともかく、htmlまでEUC形式で保存するなんて
考えてもいなかったので、この辺が特に気になります
>>482 htmlもその形式で保存たほうが確実
本当に文字化けは意外なところで起こるから俺も困る
484 :
473 :2007/01/30(火) 07:08:09 ID:tblkgqsB
>>474 parent::hoge()だと動作するのですが、$this->hoge()だと
Fatal error: Using $this when not in object context in ...
というエラーが出力されます。
親クラスでも子クラスでも特別な宣言は必要ないんですよね?
おかしいなぁ・・・/^o^\オワタ
えー 携帯サイト作るとき苦労するじゃん・・・
つか、sjisで使いまくって「何々だからツカエネー」って失笑理解できるまで勉強した方がいいと思うぞ? euc-jpにしろutf-8にしろ最悪な文字コードを使い理解する事で 原因追及するフローが脳内に癖付くとツマンネ事で時間食わなくて良いから QAする時もeuc-jpやutf-8でしか組まない奴より回答が出しやすいし 自分がeuc-jpやutf-8で生きているから、思い込みでsjis使うなんて想定して考えないので QAも袋小路の死の洞窟を回ることとなる場合が多くなる
487 :
軟式PHP :2007/01/30(火) 09:08:00 ID:???
それじゃあ結局どのエンコードが一番よいんだよ
489 :
nobodyさん :2007/01/30(火) 09:34:35 ID:GaOLdV5Z
>>477 俺もだよ
特にオブジェクト指向系はむかつくな
で、何が違うっていうとPerl上がりの人が多いからだ
C++ でたまに this 使うのもめんどくさいのに……
>>355 SQLインジェクションが可能なのでどっちもダメ。
PDO使ってプリペアードするのが正解。
>>456 $class = $action.'Model';
$class::execute();
>>484 スタティックなメソッドをスタティック呼び出ししたんだと思う。
よって
>>487
492 :
491 :2007/01/30(火) 10:39:46 ID:???
っていうか->を知らずにスタティックしか使ってない状況で、何が利点でクラス使ってるんだろう・・・
494 :
411 :2007/01/30(火) 11:02:45 ID:???
>>412 日付越えのレスでアレですが、だめでした。
ぐぐってみたら「ソ\」ならいけるということで今はソ\でやってます。
しかし当たり前ですがファイルには「ソ\」のまま保存されてしまい再利用の時不都合がいろいろ起きるので
ソだけEUCで読み込むとかいろいろ試してます。ありがとうございました。
495 :
491 :2007/01/30(火) 11:37:42 ID:???
>>484 $thisが使えるのは$thisがインスタンスの場合のみ。
スタティックなら↓で呼び出すこと。
クラス名::hoge();
496 :
nobodyさん :2007/01/30(火) 12:49:11 ID:MwtZLe+V
違うサーバ(Aサーバ)上のtest.xmlと、 私のサーバ(Bサーバ)上のtest.xmlを比較して、 もしAサーバ上のtest.xmlが更新されていれば Bサーバにダウンロードし上書きする、 というようなシステムを作りたいんですが、 どの様にするのが一番軽いでしょうか? filemtime、filesizeで比較対象を取得出来ればと思ったんですが 違うサーバ上にあるファイルからの取得が無理っぽいので。。
スタティックメソッドを呼び出すんなら継承は必要ないしな
>>496 ネットワーク上のファイルでも普通にいけるだろ。
>>496 file_get_contentsで引っ張ってmd5で比較じゃだめなん?
>>499 それだと、どっちが新しいかわからんじゃん。
>>500 更新されるのはAサーバのファイルだけという意味だと思うけど
それを自サバにバックアップしたいんだろ
502 :
496 :2007/01/30(火) 13:14:11 ID:???
>>498 エラーが出るんです
Warning: filesize(): Stat failed for 〜っていう
>>501 そういう事です
>>496 だから原因はStat failed for 〜なんだろう
504 :
496 :2007/01/30(火) 13:18:59 ID:???
>>503 $file1 = filemtime($a_path);
$file2 = filemtime($my_path);
if ($file1 != $file2) { 〜 };
って書いてますが…
506 :
nobodyさん :2007/01/30(火) 13:38:51 ID:0DsgTBF0
gazou.html <FORM ENCTYPE="multipart/form-data" ACTION="gazou2.php" METHOD="POST"> <INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="1000"> 送信ファイル: <INPUT NAME="userfile" TYPE="file"> <INPUT TYPE="submit" VALUE="送信"> </FORM> ↑ 上のフォームでアップロードした画像を次のページ(gazou2.php)で表示するやり方がわかりません。 誰か教えください!
507 :
nobodyさん :2007/01/30(火) 13:39:24 ID:DjPp8hxs
>>504 その違うサーバからのファイルの取得ってHTTP?
ヘッダにLast-Modifiedがあるならそこから頂く方法もあるよ
$url = "
http://exaple.com/test.xml ";
$purl = parse_url($url);
$req = 'HEAD '.$url.' HTTP/1.0'."\r\n";
$req .= 'Host: '.$purl['host']."\r\n";
$req .= "\r\n";
$fp = @fsockopen($purl["host"], 80, $errno, $errstr, 5);
fputs($fp, $req);
while (!feof($fp)) $res .= fgets($fp);
fclose($fp);
preg_match('/Last-Modified:\s(.*)/', $res, $match);
echo strtotime($match[1]);
テキトーでスマソ
509 :
496 :2007/01/30(火) 13:39:34 ID:???
510 :
496 :2007/01/30(火) 13:47:47 ID:???
>>507 うぉぅ、URLは駄目なんですね。
失礼しました。。
>>508 同じファイルなのに、Last-Modifiedの値と、
落としてきたファイルのfilemtimeが微妙にずれてます、、
511 :
496 :2007/01/30(火) 13:51:44 ID:???
色々調整して自己解決してみます。 ありがとうございました。
>>506 gazou2.phpで$_FILEでアップロードされたファイルを取得して
クライアント側からアクセスできるパスに保存してそのパスを返せばいいんじゃね?
フォームで画像を送信しておきながらそれを保存してない悪寒
514 :
506 :2007/01/30(火) 14:13:18 ID:???
>>512 $pic = $_FILE['userfile'];
echo"<img src='$pic'>";
こんな感じで書いてみたんですが画像が表示されませんでした(>_<)
>>514 その$picっていうパスがどういう風に出力されているか確かめるとイイよ
includeして、ファイルがなかった場合 Warningエラーを出したくないのですがどうしたらいいですか?
そんなエサで
配列の中の値と、POSTされた変数が合致するかをチェックしたいのですが、 $array = array("value1", "value2", "value3"); if ($postvalue == $array[0] || $postvalue == $array[1]・・・ といった具合では汚いですよね? もっと綺麗な書き方ありませんでしょうか? forやforeachで、 foreach ($array as $value) { if ($postvalue == $value) { } } $count = count($array); for ($i=0; $i<$count; $i++) { if ($postvalue == $array[$i]) { } } なんてのも書いてみましたが、うまくいきませんでした。
in_arrayとかどう?
522 :
軟式PHP :2007/01/30(火) 17:59:33 ID:???
>>518 @include()
>>520 違うかもしれんが、こういうこと?
<?php
$postvalue = array('value1','value2','value3');//POST
$model1 = array('value1','value3','value2'); //postvalueと合致
$model2 = array('value1','value2','value4'); //postvalueと合致しない
if( sizeof( array_diff($postvalue,$model1) ) == 0 ){
print'model1と合致したよ。<BR>';
}else{
print'model1と合致しないよ。<BR>';
}
if( sizeof( array_diff($postvalue,$model2) ) == 0 ){
print'model2と合致したよ。<BR>';
}else{
print'model2と合致しないよ。<BR>';
}
?>
523 :
軟式PHP :2007/01/30(火) 18:00:38 ID:???
>>520 ああ、ごめん。勘違い。postvalueは値なのね…。
>>521 の関数でいけると思う。
524 :
521 :2007/01/30(火) 18:24:46 ID:???
>>522-523 早速使ってみたところうまくいきました。
助かりました。どうもありがとうございました。
JavaScriptでのlocation.hashをPHPで取得する方法ってあります? フレーム分割されたサイトでF5更新などをした時に、前回と同じ表示にしたいのですが
>>525 location.hashはサーバ側には送信されないから
JSで取得→PHPに渡す→JSで受け取って〜しかなさそう
527 :
518 :2007/01/30(火) 19:24:52 ID:???
軟式PHPさんありがとう @include() でエラーでないですね。知りませんでした。 でもなんでこんなこと知ってるの? どこで習ったのですか?
軟式PHPの人じゃないですが、
@はエラー制御演算子です。
本来はエラーが出るはずの、
$str = str; // String型なのに""で囲ってない
echo $str;
も@を変数の前に入れれば実行できてしまいます。
マニュアル眺めてれば全部書いてあるような気がしますね。
>>1 にも書いてる通りマニュアルが最良の教本だと思います。
531 :
518 :2007/01/30(火) 19:43:38 ID:???
>>528-530 ありがとうございます
今からマニュアル全部読みます
でもなんか字がいっぱいあって疲れそう
全部読むには何日くらいかかるですか?
ていうかis_fileを使った方が正しい
パスワードをばれないようにしたいのですが セッションに格納したらバレませんか?
>>526 ありがとうございます。
同一ページ内で移動した場合は、試行錯誤しても思いつきませんでしたが、
可能な場合は、ハッシュ値をPHPのセッションで保存して、
リロード時に <frame src= に入れようと思います。
>>534 でも、今更フレームってどうなの?っておもうな。
DHTMLでもっと複雑にかつ検索エンジンにも有効な手立てがいくらでもあるのに…
>>531 君にはプログラムは向いてないからやめろ
537 :
nobodyさん :2007/01/30(火) 21:43:46 ID:mKzbN4Cr
PHPでの配列のスライス(指定した範囲だけ取り出す)について教えてください。 例えばa〜zの値を持つ配列の2〜5(c〜f)を取り出すなど・・・
538 :
531 :2007/01/30(火) 21:47:53 ID:???
>>536 ありがとう!
なんだかやる気がでてきました!!
くっそー!がんばるぞー!!
>>537 名前のまんま array_slice() 使うとか
540 :
nobodyさん :2007/01/30(火) 21:50:37 ID:mKzbN4Cr
>>539 マニュアルでarray_spliceと見間違えて飛ばしてました・・・
ありがとうございましたm(_ _)m
超くだ質おねがいします! webサーバーをインストールせずに、ローカルでPHPのデバッグ(実行)する 方法ないでしょうか?
\ ∩─ー、 ==== \/ ● 、_ `ヽ ====== / \( ● ● |つ | X_入__ノ ミ 、 (_/ ノ /⌒l /\___ノ゛_/ / ===== 〈 __ノ ==== \ \_ \ \___) \ ======(´⌒ \ ___ \__ (´⌒;;(´⌒;; \___)___)(´;;⌒ (´⌒;;
544 :
340 :2007/01/31(水) 00:00:07 ID:???
create_functionで以下のような処理をしたいのですがどのようなやり方があるでしょうか? create_fuhnction('$matches','return $this->hoge_func($matches[1]);') $this->hoge_func($matches[1])の処理を行いたいのですがこれだとできません。(エラー Class::hoge_func($matches[1])だとできるのですが、プロパディの値が引き継がれず困っております よろしくお願いします。
545 :
nobodyさん :2007/01/31(水) 00:26:50 ID:+GskFciu
ローカルにて、あるphpのページに100のリクエスト回数、10の同時発行するリクエスト、 methotはpostを送ってテストを行いたいのですが、なにか良い方法はございませんか? apacheのabだとmethotは送れないですもんね。。。
546 :
nobodyさん :2007/01/31(水) 00:58:35 ID:Q4AIAbji
methotって何ですか ところで質問させてください。 PHP_SELFを使って作ったプログラムがあります。 このファイルをインクルードし場合、PHP_SELFは インクルードする側になってくれますでしょうか。 なってくれない場合、どうしたらいいですか。
自己解決しました。 正規表現で$_SERVER['PHP_SELF']を$selfに置き換え 読み込み元の読み込む前に $self = htmlspecialchars($_SERVER['PHP_SELF']);にしてみます。
インクルードし場合って何ですか 自己解決したようだからまぁ良いけど なにがしたいのかようわからんな
549 :
541 :2007/01/31(水) 01:33:55 ID:???
やっぱそうだよね
550 :
nobodyさん :2007/01/31(水) 01:44:43 ID:61waItYb
hiddenにデータを持つ場合って、valueの値をダブルクォートで囲みますよね。 <input type=hidden value="hoge"> ほんで気になってるのが、valueの値の中に、シングルコーテーションとか ダブルコーテーションが含まれる場合って、ダブルコーテーションで囲んでも 問題ないのでしょうか?
>>550 php のピの字はどこに含まれているん?
html に出力した後は
当然 html として正しくなるように
必要に応じてエスケープする必要があるよ
552 :
>>550 :2007/01/31(水) 02:05:24 ID:61waItYb
すいません、hiddenは画面に表示されないので、phpだと思ってました。 html版いってきます。。
えぇーっ! 普通ソース見るじゃん
>>552 html://www.cybergarden.net/references/charref/
HTMLというプロトコルが誕生した瞬間であった・・・
表示されないからPHP なかなか斬新な発想でした.ありがとう
hiddenの日本語訳も知らなそうだな
preg_replace('/[\s ][\s ]+/', ' ', $str); で全角スペース1個がヒットするんですが、sjisのせいでしょうか? 全角半角問わず連続してる場合は半角スペース1個に統一したい感じです。
559 :
nobodyさん :2007/01/31(水) 03:50:10 ID:oiEE4jjY
セッションについて質問させてください。 たとえばexample.com(サブドメ無し)とsub.example.com(サブドメ有り)で それぞれ違うセッションクッキーを発行したいと思っています。 スクリプトの中で session_name(_SESSION_NAME); session_start(); とやって、サブドメ無しと有りのサイトそれぞれで定数_SESSION_NAMEの値を変えています。 これでブラウザ側には、サブドメ無しの場合には意図した通りのセッションネームで クッキーが渡っている(&クッキーがサイトに渡される)のですが、 サブドメ有りのほうは、サブドメ無しと有りの両方のクッキーがブラウザから渡されてきてしまっています。 (FirefoxのアドオンLive HTTP Headersで確認しました) これはどのように解決すれば良いのでしょうか? session.cookie_pathあたりが関係しているよう気がしますが、 サブドメありとサブドメ無しの場合のクッキーの有効範囲の分け方がいまいち理解できません。
>>558 '/\s\s+| ( )+/'
マルチバイト文字もバイト単位でマッチされるから。
>>559 session.cookie_domain
563 :
nobodyさん :2007/01/31(水) 04:59:38 ID:oiEE4jjY
>>561 、
>>562 php.iniにてsession.cookie_domainを設定しております。
具体的には、サブドメ無しのphp.iniはsession.cookie_domain = example.comで、
サブドメ有りのphp.iniにはsession.cookie_domain = sub.example.comと記述してあります。
その状態で、sub.example.com/phpinfo.php(phpinfo()のみ実行するスクリプト)にアクセスしてみると、
_SERVER["HTTP_COOKIE"]の欄に、サブドメ無しのほうで発行したセッションネームおよびセッションIDが入ってしまっているのです…。
で、ブラウザからサブドメ有りのほうにアクセスすると、サブドメ有り無し両方のクッキーがサーバに渡されています。
>>544 create_functionが作り出す関数は、メソッドではなく普通の関数(つまりグローバルスコープに宣言したのと同じ)なので$thisとか無理です。
$thisにあたる情報を、create_functionで作られる関数に渡してやらないといけない。
565 :
nobodyさん :2007/01/31(水) 08:53:32 ID:C7U+zk86
すいません。教えてください $ab[$i][$j] $iは1〜9 $jは1〜9 $ab[1][1] = 14; $ab[1][2] = 3; $ab[1][3] = 5; ……… $ab[9][9] = 50; (数値は適当) このような配列を数値(14,3,5,…)で昇順にソートして ソート後に3番目にきた物の $i と $j の値を知りたい場合 どのようにすればいいのでしょうか?
566 :
nobodyさん :2007/01/31(水) 09:20:20 ID:2u/UeHzk
$a を定義せずに(一度も使わずに)
if ($a) { ..... }
などと条件判定に使用した場合、どのように評価されるのでしょうか?
また $a="" であれば、{} 内は実行されませんが、
$a="hoge" であれば、{} 内は実行されます。
これらの場合も最終的には TRUE か FALSE に評価
されているのでしょうが、具体的にどのようなルールで
型変換および評価が行われるのでしょうか?
Appendix P. PHP type comparison tables
http://www.php.net/manual/en/types.comparisons.php 以外にどのような情報源を見るべきでしょうか?
質問です。 snmpget関数を使ってmibを取ろうとしてるんですが、 返り値に「STRING : 」や「INTEGER : 」といったゴミが付いてきます。 このゴミを取らずにデータを取りたいんですが、何か方法ないでしょうか? 今のとこ、「snmp_set_valueretrieval( SNMP_VALUE_PLAIN );」を snmpget関数前に使ったらゴミはなくなったんですが、これでいいんでしょうか? よろしくお願いします。
568 :
567 :2007/01/31(水) 11:08:05 ID:???
誤爆です。すいません。専門スレ逝ってきます・・・
>>565 $tmp[14] = "1,1"
$tmp[3] = "1,2"
$tmp[5] = "1,3"
...
$tmp[50] = "9,9"
みたいな一時配列を作って出来上がった3番目の要素に
含まれる値を取得するってのはどうだ
$keys = array_keys($tmp);
for ($i = 0; $i < 3; $i++) {
$key = $keys[$i];
}
$idx = $tmp[$key];
list($i, $j) = explode(',', $idx);
>>565 そもそもそんなトリッキーなことをしないといけない時点で、
なにか設計が間違っている気がするんだよね。
SQLiteのメモリDBでも使ったら?
573 :
565 :2007/01/31(水) 12:37:12 ID:C7U+zk86
574 :
567 :2007/01/31(水) 12:57:52 ID:Shp2eHi4
snmpの専門スレは板違いと思ったんでこっちに書き込みました。
よろしくお願いします。
>>568 は別人なんで、ID晒しときます。
>>563 Cookieの仕様としては(後方一致でドメインの一致を見るので)不可能じゃないでしょうか。
使えるなら、pathを使うか、セッションネームが違うんだから、問題ないとあきらめるかぐらいかな。
フォームで受け取った値を変数に代入する時、 $ahiru = $_POST{'ahiru'}; $hiyoko = $_POST{'hiyoko'}; $dacho = $_POST{'dacho'}; …… と、こういうのが100個ほどあるのですが、 今後いくつフォームが増えようとも1行で済ませる方法はありますか? ちなみに$_POST{' '}の中身と、変数名は全て一緒です。
577 :
軟式PHP :2007/01/31(水) 14:06:20 ID:???
>>576 register_globals=onと同義になるため、セキュリティ的にオススメ出来ないが
extract( $_POST );
で一応展開は出来る。
>>577 register_globalsを変更出来なかったので悩んでたんですが
extractというのがあるんですか。
どうもありがとうございましたm(_ _)m
>>576 foreach($_POST as $Pkey=>$Pval){
$$Pkey = $Pval;
}
>>580 軽いっていうか、やり方によってはセキュリティ的に強固にできるだろ。
>>579 で
Parse error: parse error, unexpected '@' in /home/htdocs/haori/exform/form.php on line 6
出ましたorz
583 :
579 :2007/01/31(水) 14:25:04 ID:???
>>582 $$Pkeyの前の全角空白を削除してね
webからphpを利用してサーバ内でcmdプロンプトを立ち上げ、サーバのモニタ上に表示させるようにしたいと思ってるのですが、 system()でcmdを実行してもプロセス(cmd.exe)は立ち上がっているのですが、ウインドウが非表示になってしまいます。 表示で起動する方法はありますか?
586 :
579 :2007/01/31(水) 14:27:11 ID:???
あとね、
>>581 も言っている通りPOSTデータをそのまま使うより、
$$Pkey = sanitize($Pval);
みたいにして、クリーニングして使ったほうが安全だよ。
※sanitize()は自作する関数ね。
>>586 Fatal error: Call to undefined function: sanitize()
>>586 これでいいよね
foreach($_POST as $Pkey=>$Pval){
$Pval = trim($Pval);
$Pval = htmlspecialchars($Pval);
$Pval = mb_convert_kana($Pval,"KVa");
$$Pkey = $Pval;
}
>>590 それだと、想定外の変数も保持してしまうから、
せめて、想定した名前のPOSTかどうかをチェックした方がいいんじゃね?
593 :
576 :2007/01/31(水) 14:37:26 ID:???
>>592 一応フォーム送信元のURLはチェックする様にはしていますが大丈夫でしょうか
594 :
579 :2007/01/31(水) 14:40:22 ID:???
>>590 それは使用意図によるからなんともね。
本来必要な文字まで加工しちゃう可能性あるし、
htmlspecialcharsは出力の時にかけたほうが良いとは思う。
>>593 おまえって文章の読解力ないよな・・・アホですか?
>>576 根本的な問題として、
POSTで一括送信する項目が100ってのは多すぎませんか?
>>597 下らねぇ質問する奴と読解力のないアホは全くの別物だと思いますが?
599 :
576 :2007/01/31(水) 14:45:25 ID:???
>>584 PHP関係ないです。
窓板行ったほうが解決早いと思います。
603 :
nobodyさん :2007/01/31(水) 14:55:42 ID:p7FZ0Wca
パスワードをphpに書くと万が一の時に危険だと思いますが、 防御策としてはどういう方法がありますか?
>>603 別ファイルで変数にしておけばそうそう読めないと思うけど。
<?php
$pass = hogehoge;
?>
ってことね。
606 :
603 :2007/01/31(水) 14:58:04 ID:???
>>604 その場合、どうやってパスワードを読み込むのですか?
>>606 DB/file系の関数/ini系関数/include系・・・・
608 :
軟式PHP :2007/01/31(水) 15:01:20 ID:???
>>579 補足ありがd。
>>576 592が言ってるように、セキュアに考えるなら想定した名前の変数だけ取るようにしないといけない。
とりあえず、$_POSTならまだしも$_GETまで名前無視一括取得してたら
とんでもないことになるから、出来るかぎりやめたほうがいいよ。
とんでもない例)
--test.php
<?php
foreach($_GET as $Pkey=>$Pval){
$$Pkey = $Pval;
}
print"session:".$_SESSION["flg"];
?>
--test.php END
上のソースを作って保存して、「test.php?_SESSION[flg]=12345」でアクセス。
>>603 普通はパスワードの書かれたPHPが見えた時点で、
パスワード以上に大切な内部処理が見えるので、
パスワードだけ隠してもあまり意味無いですね。
PHP自体が見えない(見られない)ことに留意すべきかと。
610 :
軟式PHP :2007/01/31(水) 15:05:19 ID:???
>>603 ドキュメントルート以下にそういう設定ファイル系をおかない。
.htaccessを使って無条件アクセス拒否したディレクトリに設定ファイル系を置く。
というのをとりあえずやった方がいいとおもふ。
612 :
603 :2007/01/31(水) 15:10:56 ID:???
みなさんレスありがとうございます。 public_htmlより上位にフォルダ作ってそこに設定ファイルおいておくことにします。
>>611 ハッシュしちゃうとパスワード忘れたときに困る気がしてできない人がここに・・・
614 :
nobodyさん :2007/01/31(水) 15:15:55 ID:raaQ5cYF
プロジェクトとか数人でWebシステムを作る時とかガイドラインがあったほうがいいと思うのですが 皆さんどのようなものを使っていますか? ガイドライン作ったことないので教えて下さい。 また詳しいサイトとかあれば教えていただければ幸いです。
MD5→SHA1 の方がいいんじゃね。 それから、もっと言うなら SHA1+アプリ固有隠しキーだな。
パスワード再送なんてやってるとこは生のやつ持ってる訳だよな
>>616 そういうのは、DB保存でDBのアクセスキーは、DocumentRoot外におく。
>>614 ・クラスの命名規則のあるなし。あるならばそのルール。
・ディレクトリ配置
・定義情報の保管場所。環境変数なのか定義ファイルなのか、
ソースに直接べた書きなのか
・ユニットテストの有無。ある場合、どのレベル処理まで行うか。
・DBを使う場合はDB情報の共有化。
・共有ドキュメントの有無。Wikiでもいいから、全員が共有して簡単に
書き込めるものを使うなど。
619 :
nobodyさん :2007/01/31(水) 15:53:18 ID:JJLy/b+R
ブログ記事をrss取得してるんですが同時にトップページのurlも取得したいのですがどうすればいいでしょうか
>せめて、想定した名前のPOSTかどうかをチェックした方がいい 具体的にどうやるのですか? foreach($_GET as $Pkey=>$Pval){ if($Pval == "hoge"){ $$Pkey = $Pval; } } これでいい? できれば軟式PHPさん教えてください。
>>619 言ってる意味がわからないんだが、
ブログのRSSならトップページのURLも書いてあるだろ。
623 :
nobodyさん :2007/01/31(水) 16:00:07 ID:JJLy/b+R
>>621 記事のurlは取得できるんだけどトップページのurlが取得できないんです。
>>623 それだけじゃわからない。
まずブログといっても数種類あるし。
あとどのように取得してるかソース出さないと答えようがない。
625 :
nobodyさん :2007/01/31(水) 16:03:09 ID:JJLy/b+R
<?php class RSSReader{ var $channel; var $item; function getDate(){ return $this->item['dc']['date']; } function getTitle(){ return mb_convert_encoding($this->item[title], "EUC-JP", "auto"); } function getURL(){ return $this->item[link]; } function getMainTitle(){ return mb_convert_encoding($this->channel[title], "EUC-JP", "auto"); } } function date_sort($a,$b){ if($a->getDate() > $b->getDate()){ return -1; }else{ return 1; } } これでいいんでしょうか?
>>623 RSSのバージョンにもよるが<docs>とか最初の<link>とかの中に入ってると思うぞ。
627 :
nobodyさん :2007/01/31(水) 16:04:06 ID:raaQ5cYF
628 :
軟式PHP :2007/01/31(水) 16:04:42 ID:???
>>620 例えば、、
//名称定義配列(100個あるなら100個書く。)
$strParamList = array('ahiru','hiyoko','dacho');
foreach($_GET as $Pkey=>$Pval){
if(in_array($Pkey,$strParamList)){ //定義されたものだけ取得。
$$Pkey = $Pval;
}
}
とかかな。
安全に書くなら名称定義は全部やった方がいい。
// ?> 終了タグ有効 # ?> これも終了タグ有効 /* ?> これは無効 */ これって仕様ですか?
>>625 SimpleXML関数で取得できるようなものだったらそれでして、
無理そうなら、
file_get_contentsあたりで読み込んで正規表現使ってくりぬけばいい。
>>628 ありがとうごぜえます!
軟式さんは的確な答えを返してくれるから大好き。
>>629 仕様です。
一行コメントは「"改行"または"PHP コードのブロックの終わり"まで有効」
複数行コメントは「最初の"*/"まで有効」
お前はマニュアル読んだのかと、ちゃんと書いてあるのに何聞いてんだと小一時間(ry
633 :
nobodyさん :2007/01/31(水) 18:21:22 ID:bpZljW54
こんばんわ
2chとーくやってて
5N0y!'8ISKФjFJzL<?Xtf~g?m!;o7K7iBL\Y~"5?\Mb??xNO SL\&P]
ylueM7.A[y sq??f-9D&K`?z#RclYIkP[?=)dA:0⊆#@4/hzGI
(長いので1行を2行にしました)
gzipデータが返ってくるんだけどphpでgzip解凍コマンドgzuncompressしても
Warning: gzuncompress() [function.gzuncompress]: data error in C:\home\
ってなってしまいます。
応答ヘッダーが
HTTP/1.1 302 Found Date: Wed, 31 Jan 2007 09:11:06 GMT
Server: Apache/2.0.52 (Unix) PHP/4.3.10 mod_ssl/2.0.52
OpenSSL/0.9.7d Location:
http://www2.2ch.net/live.html Vary:
Accept-Encoding Content-Encoding: gzip Content-Length: 267
Connection: close Content-Type: text/html; charset=iso-8859-1
と返ってきます。
どうすれば渡されたgzipデータを解凍できるか教えてください。
>>629 "一行"コメントは、改行または PHP コードのブロックの終わり のうちどちらか最初にくる方までです。
つまり、// ... ?> あるいは # ... ?> の後に続く HTML コードは 表示されるということです。
?> により PHP モードを終了して HTML モードに戻ると、そこでは // あるいは # は何の影響も 及ぼしません。
asp_tags 設定ディレクティブが有効になっている場合、// %> および # %> でも同じような動作になります。
しかし、一行コメントの中の </script> では PHP モードを終了することは ありません。
<h1>これは <?php # echo 'シンプルな';?> 例です。</h1>
<p>上の見出しは 'これは 例です。' となります。
ちょっとした質問なのですが 一つhtml内でjavaでcsvテーブル展開 フォームとphpでcsvに追記とやっているんですが 書き込み後、戻りリンクで すぐテーブルページを開いても反映されておらず F5を押して初めて反映され もしくは、しばらく呼吸置いてからページ表示されると反映されているのですが なぜでしょうか・・・
ドコモが提供してる「iモードシミュレータ2」で リモートにあるコンテンツ(URL)にアクセスしようとすると 「接続が中断されました」と出ちゃってアクセスできません。 ローカルにあるコンテンツは問題なく表示できます。 また、「シミュレータ1(2じゃなく)」のほうでは、 ローカルもリモートも問題なくアクセスできます。 2のほうだけリモートへのアクセスが不可能なのは何故なんでしょうか? 皆さんも同じ症状になった方はいらっしゃいませんか? ※ドコモに問い合わせたところ、「シミュレータはサポート外」との返答でした。
639 :
638 :2007/01/31(水) 20:01:32 ID:???
しまった、よく考えたらスレ違いでしたね。 他スレを探してきます・・・
SimpleXMLElement->addChild()でXMLの子要素の追加をしてるのですが、 インデントや改行がされず、汚いソースが吐かれてしまいます。 何か解決策ありましたら教えてください。 【test.xml】 <?xml version="1.0" encoding="UTF-8"?> <test> <test2> </test2> </test> 【test.php】 $xml = "test.xml"; $load = simplexml_load_file($xml); $newchild = $load->test2->addChild('test3'); $newchild->addChild('aaa', 'aaa'); $newchild->addChild('bbb', 'bbb'); $newchild->addChild('ccc', 'ccc'); echo $load->asXml();
質問者はID出せ。
642 :
640 ◆4XkUU6.J/k :2007/01/31(水) 23:13:35 ID:6DHp5jCy
すみません宜しくお願いします。
置換ではなく $_SERVER["SERVER_NAME"]
649 :
647 :2007/02/01(木) 02:21:52 ID:???
おまえらは人力検索なんだからつべこべいうな
650 :
nobodyさん :2007/02/01(木) 05:09:41 ID:hSh+JslS
メールフォームを作ろうと思い、php・sendmailが使えるレンタルサーバ(TOK2)を借りて、 メールを送るサンプル動かしてみました。↓の様なコードで、ブラウザに「送信成功」って 出てるからmb_send_mail関数の戻り値はTRUEだと思うのですが、一向にメールが 送信されてきません。 なしてなの? <?php mb_language("Ja") ; mb_internal_encoding("EUC-JP") ; $mlto = "******@********"; $mlsb = "****"; $mlms = "****"; $mlfr = "From: *****@**********" . "\r\n" . "Reply-To: *****@*********" . "\r\n" . "X-Mailer: PHP/" . phpversion(); $blReturn = imap_mail(mlto, mlsb, mlms, mlfr); if ($blReturn) { print "<P>送信成功</P>"; } else { print "<P>失敗</P>"; } ?>
↑はimap_mail関数になってますが、mail()でもmb_send_mail()でもダメでした。
実際に送れる鯖なの? なんかスパマーの温床になりそうなんだが(^ω^;)
>>651 すんません。5時間程色々いじりながら悩んでいる間に、$が取れちゃったみたい。
今夜はもう寝て明日詳しい人捕まえに行きます。
ホントにスイマセンデス OTL。
>>653 sendmailが使用可ならmail関数も使えるんだろな・・・みたいに勝手に思い込んでましたが、だめなのかな。
あちこちレンタル鯖見て回ったんだけど、ほとんどの鯖は「sendmail使用OKだけどあんまり無茶したら起こるよ」て
感じだったから、スパムやメルマガで使ったら追い出されるのかな・・・と考えてた。
>>655 っていうか、sendmailなんか使わずにqmail使えよw
何で今さらsendmail何だよ!
>>656 レンサバでは名前はsendmailでも中身はqmailとかだったりするよ
TOK2がどうかは知らないが
trimで半角空白と全角空白をとりたいのですが両方同時に取ることは可能でしょうか? 現在はこんな感じでとっているのですが、どうも見栄えが… trim(trim($hoge), " ")
>>659 さん
マニュアルに載ってないんですが…
とりあえずやってみます
ありがとうです
>>656 qmailの方が今更。なんでこんなどうしようもないMTAがもてはやされるのか理解不能だ。
663 :
軟式PHP :2007/02/01(木) 09:37:49 ID:???
('A')?? Postfix信者とかならわかるけど…。オレモナー
664 :
nobodyさん :2007/02/01(木) 09:56:07 ID:oQPP/iVz
rssの記事の日時取得するにはどうすれば
665 :
軟式PHP :2007/02/01(木) 10:20:40 ID:???
>>664 記事のタイトルとかは取れてるの?
<dc:date></dc:date>に囲まれてるところを取得すればいいとおもふ。
666 :
nobodyさん :2007/02/01(木) 10:29:03 ID:f6cNG9NM
ユーザー関数を呼び出すときに、関数()と書くことを覚えました。 あるPHPファイルから、どんな関数()というのが使えるのか調べるにはどうしたらいいのでしょうか?
っマニュアル
668 :
nobodyさん :2007/02/01(木) 10:39:23 ID:f6cNG9NM
マニュアルに調べ方書いてあります?
669 :
nobodyさん :2007/02/01(木) 10:48:24 ID:oQPP/iVz
軟式さんありがとう、やってみまつ
>>658 $str = "任意の文字列(スペース含む)";//改行が無い文字列
$rm = "( | |\\t|\\n|\\r|\\0|\\x0B)";
$str = preg_replace("/^$rm+|$rm+$/","", $str);
※textareaとかで各行対象ならば、 $rm ="/(?<=\r|\n|^)$rm+|$rm+(?=\r|\n|$)/"
671 :
nobodyさん :2007/02/01(木) 10:55:59 ID:oQPP/iVz
2007-02-01T10:21:00+09:00 これの10:21のところだけをとりだしたいのですが
672 :
虚弱PHP :2007/02/01(木) 11:02:36 ID:???
673 :
nobodyさん :2007/02/01(木) 11:10:03 ID:oQPP/iVz
substr($***, 12, 16);じゃだめみたいです
674 :
nobodyさん :2007/02/01(木) 11:11:01 ID:oQPP/iVz
substr($***, 12, 16);じゃだめみたいです
675 :
nobodyさん :2007/02/01(木) 11:12:09 ID:oQPP/iVz
すいません、 substr($***, 11, 15);じゃだめみたいです
何がどうだめなんですか
677 :
虚弱PHP :2007/02/01(木) 11:13:33 ID:???
>>658 trim($hoge, ' ');
↑全角スペースと半角スペースのリスト
なにがしたいんだぜ
679 :
nobodyさん :2007/02/01(木) 11:15:12 ID:oQPP/iVz
2007-02-01T10:21:00+09:00 これの10:21のところだけをとりだしたいのですが substr($***, 11, 15);じゃ 01:38:07+09:00 こうなってしまうんです
680 :
nobodyさん :2007/02/01(木) 11:16:12 ID:oQPP/iVz
ミスです、何度もすいません 2007-02-01T10:21:00+09:00 これの10:21のところだけをとりだしたいのですが substr($***, 11, 15);じゃ 10:21:00+09:00 こうなってしまうんです
substr(文字列, 開始位置, 抽出するサイズ) だぜ 俺釣られましたか?
683 :
nobodyさん :2007/02/01(木) 11:26:40 ID:oQPP/iVz
すいません、
>>682 を理解できてませんでした!
substr($***, 11, 5);でできました。
くだらない質問すいませんでした。
人に物を教えてもらったら感謝の言葉を述べるってお母さんに習わなかったか?
685 :
nobodyさん :2007/02/01(木) 11:31:02 ID:oQPP/iVz
みなさん、ありがとうございました。 お手数おかけしてすいませんでした。
687 :
軟式PHP :2007/02/01(木) 11:46:25 ID:???
ヒドスw スルーせずにちゃんとお礼言ってるから許してやりなはれ('A';)
たぶんID:oQPP/iVzがこの数スレで得たものは何も無い
689 :
虚弱PHP :2007/02/01(木) 12:01:35 ID:???
691 :
虚弱PHP :2007/02/01(木) 13:23:00 ID:???
>>690 ありゃ?以下のソースで問題なく動いたから大丈夫かと思ったよ…。
<?php
$str = ' trim ';
var_dump($str);
$str = trim($str, ' ');
var_dump($str);
?>
めげずにがんばれ>>俺
>>691 Shift JISだと@もトリムされる
$str = '@@@trim@@@';
>>691 $str = 'あ';
いきなり死亡。(文字コードにもよるけど)
PHP5 で Fatal error を捕捉する方法はありますか? 例えば Fatal error: Call to undefined function とか。 set_error_handler() ではダメでした。
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 '、筅ノ、熙?ム',
>>696 「\n」←これで改行させたら?
タブも同じような記号あったはず
>>697 シフトJISの文字を直接ぶっこんでるって事無いよな?
701 :
697 :2007/02/01(木) 17:00:00 ID:???
返答ありがとうございます。 シフトJISをmb_convert_encodingでEUC-JPに変換して入れています。 携帯サイトなのでシフトJISは替えられません。。
702 :
軟式PHP :2007/02/01(木) 17:04:21 ID:???
>>697 SJISをaddslashesは色々と問題があるからmysql_escape_stringを使った方がいいんじゃないカニ。
>>699 ありがとうございます。
実はそれはすでに実験済みでして、
$newchild->addChild('aaa', "aaa\n"); だと
<aaa>aaa
</aaa>
となり、
$newchild->addChild('aaa', "\naaa"); だと
<aaa>
aaa</aaa>
となります。
外側で\nを入れても、addChildの間にecho "\n";をしてもだめでした。
mysql_escape_stringに替えてみたんですが、変わりませんでした… 引き続きお願いしますm(_ _)m
705 :
697 :2007/02/01(木) 17:19:48 ID:???
'".$hoge." ' このように$hoge(おれおれ詐欺)の後に半角空白を入れたところ解決しました。 これ以外には方法はないでしょうか?
>>704 一応確認なんだが
1・受け取った文字列はほんとにSJISか
2・EUCに変換するのは正常に行われているか
を確認してみれ。
mb_detect_encodingの結果を出力してみて要確認。
問題なければ、その部分のソースプリーズ。
>>703 何故、汚いソースを気にするの?
XMLファイルを直で開いて編集等を行うのは、問題ありだと思うけど…
ブラウザからみれば、自動でインデントなどが入りきれいに見えるでしょ?
それでも気になるなら、simple_xml系を自分で編集するしかないかと…
>>708 10日は無理。
というかきっとまず君がすぐに飽きる。
まずデータベース設計から学べ
>>708 お前はアホか?
10日間付き合ってくれってw
給料でも払うのか?
>>708 オークション運営は個人では厳しいぞ。
許可の関係もあるし、詐欺や違法出品も目を光らせとかなければお前がタイフォされる。
個人情報の為にSSLも導入しなけりゃならないし、
鯖落ちなんかは言語道断だから、かなり高価な安定したサーバと回線も必要。
万が一、鯖落ちして取引できない時の金銭被害の補償とかはどうするの?
なんの技術も無いニートが一攫千金狙ってバカな夢みてるんじゃないよw
10日でオークションって… 30人月くらいの案件じゃねーかw
>>709 >ブラウザからみれば、自動でインデントなどが入りきれいに見えるでしょ?
確かにそうなんですけど、なんだか気味が悪くて・・・
simplexmlの仕様ということならば、諦めたいと思います。
どうもお答えありがとうございました。
今更オークションサイトっていうのも・・・ しかもPHPでっていうのはさすがにないw 保守が大変そうな上に、メモリの無駄遣いしそう。 まぁ本気で頑張りたいと思うなら他人に頼る前に、 自分のスキルを磨くべき。 作ったとしても保守もサポートもできないようじゃ意味ないしね。 ニートで親からあれこれいわれて焦ってるんだろうが、 まずは外にでるといいよ。
716 :
軟式PHP :2007/02/01(木) 17:35:35 ID:???
>>708 皆が言ってるように10日じゃ絶対無理だわ〜。
DBmagazine1月号の特集にDeNAのモバオク構築特集があるから読んでみてw
独自のモジュール(仮想メモリDB等など)やらかなり凄いことをやってる。
オークション運用についても色々書いてるから本当に作ろうと思ってるんなら参考になると思うよ。
あれだよな、佐藤くん。 引きこもってエロゲー作って儲けよーってやつ ヒヒヒっ
DBの作り方をどうすればいいですか、なんてレベルなら、真面目にやって一年はかかる。 それでも「とりあえずは動きます」ってレベル。 商用にしたいなら、そっからもう一年。
719 :
697 :2007/02/01(木) 17:38:48 ID:???
>>707 さん
受け取ったときはSJIS、EUC-JPへの変換も正常に出来ていました。
ソースは以下になります。
$name="おれおれ詐欺";
$name= mb_convert_encoding(mysql_real_escape_string($name), 'EUC-JP', 'SJIS');
$query=
"INSERT INTO `data` (`name`) VALUES ('".$name."')";
逆にせい
721 :
707 :2007/02/01(木) 17:42:38 ID:???
>>719 逆逆。
それだと、エスケープされてからエンコードしちゃう。
エンコードかけてからエスケープ。
>>718 俺は一応、この手の業種プロだが、
俺が完全に一人でやって、とりあえず動きますレベルまで1ヶ月。
実用可能なレベルまで詰めるのに4〜5ヶ月。
プロでも一人なら半年はかかるな。
ど素人が作るには2年じゃ事足りない。
>>722 引きこもって真面目にそればかりやり続ければいけないかなあ?
…って考えてみたら、やっぱたらんわな。
俺も半人前Web開発やってるけど、一年はほしいもんなあ。
オークションとかおれおれ詐欺とかきなくさくなってきたな
725 :
697 :2007/02/01(木) 18:00:07 ID:???
>>720-721 さん
できたぁ(;ω;)ーー
ありがとうございます…
今から、自分が作ったシステム(稼動中のも)修正します…
726 :
708 :2007/02/01(木) 18:00:43 ID:???
絶対10日間で作ります。 とりあえずDBの構築だけでも教えてください。 冗談で言ってるわけじゃないです。 必ず10日間で作って見せます!
728 :
便乗 :2007/02/01(木) 18:01:39 ID:???
配列を一気にaddslashesしたいんですがそんな関数ないですよね?
おまえ便所くせー
>>728 $array = 配列
foreach ($array as $key <= $value){
$array[$key] = addslashes($value);
}
>>726 お前は本気かもしれんが、博識者からみたら冗談にしか見えないんだよ。
まずは、本屋にいってDB関連の初心者本を買いあされ。
まぁお前ならDBをローカルに立ててそれにクエリを発行するまで数日はかかるかなw
プログラムから超単純なDBコントロールを勉強しているだけで10日なんで過ぎると思うがww
つか、論外だからあきらめろ。
10日でプロ野球選手になってホームラン打ちまくります!って少年野球チームの補欠がいっているようなモンだよw
>引きこもって真面目にそればかりやり続ければいけないかなあ? ちゃんとした職場で少しずつ成長していく方が早道だろう いきなりゼロから一人で商用サイトは遠すぎる ゼロから一人でも出来るやつも居るだろうが、いきなり他人に10日間付き合ってくれと頼むタイプでは無理 諦めて普通に就職した方が良い
734 :
708 :2007/02/01(木) 18:12:34 ID:???
これだからニートは・・・ >>ALL 以後放置しような。
>>708 を見て舐めるなというのが無理
世の中を舐めすぎ
>>734 では超簡単な問題です。
DBにテーブルAとBがあります。
それぞれのテーブル構造は以下のようになります。
・テーブルA
番号・名前・住所
・テーブルB
番号・メールアドレス・ホームページアドレス
※テーブルAとテーブルBの番号はそれぞれ同じ人物をさすデータとなります。
テーブルAの中から名前に'T'の文字が含まれるデータを抽出して、
それらの名前とメールアドレスを表示するSQLを書きなさい。
なおクエリ発行は一度に行う物とする。
出題者も五十歩百歩だな
>>738 無理スンナw
そういう下らない煽りをいれるのは、あせっている証拠だろw
741 :
708 :2007/02/01(木) 18:42:39 ID:???
>>741 ちょ
>>734 は俺じゃないって
>>726 はお前なのかよw
アホな妄想してないで、さっさと就職活動しろ。
今のお前は宝くじが当たったらどうしよう…って考えている程度のレベル
その話はあちらでやってください。
その話すんなら向こうのスレへどうぞ
747 :
708 :2007/02/01(木) 19:06:37 ID:???
もうここでは質問しません。 ご迷惑おかけしました。 もしよろしければあちらにも遊びに来てください。 絶対、誰に何と言われようと10日間でオークションサイト作って見せます。 では失礼します。ありがとうございました。
748 :
nobodyさん :2007/02/01(木) 19:08:41 ID:f6cNG9NM
PHPで書いた掲示板スクリプトがあります。 これをShift-JISで配布する場合、5c対策の対策さえしておけばいいのでしょうか? UTF-8とEUCでも配布しようと思ってます。
>>747 じゃぁ10日後に見に行ってプギャーしてやるw
751 :
nobodyさん :2007/02/01(木) 19:20:19 ID:f6cNG9NM
ありがとうございます。 EUCだけで大丈夫なんでしょうか? Shift-JISでないとダメっていう共有サーバってないですよね?
>>751 ない。ってか、PHPなんかは基本はEUC環境を念頭に置いて書かれている言語だし。
例えば、PHPが使えないように、同じ機能のスクリプトをPerlやRubyで配布ってのなら分かるけど、
同じPHPを文字コード変えて配布ってのは意味がない。
>PHPなんかは基本はEUC環境を念頭に置いて ぷぎゃー
∩___∩ / | ノ ヽ / / > < |/ そんな餌パクッ | //// ( _●_)/ミ 彡、 l⌒l ノ / __ \ \ヽ . (___) \__) . O| / | /\ \ | / ) ) ∪ ( \ \,,_)
755 :
nobodyさん :2007/02/01(木) 21:00:18 ID:f6cNG9NM
う〜ん、まだひっかかけど文字コードはひとつだけでいいんですね。 ありがとうございました。
756 :
nobodyさん :2007/02/01(木) 22:04:18 ID:uIp/a4gl
利用者が変更すればいいだけの話だし。それくらいできない利用者は切り捨てろ。
正規表現で「プラス(+)が含まれている場合」と言うように、 +があるかないかで判断するには、どういう書き方をすればいいのでしょうか? [+\]では駄目でした。
普通逆だろ。\+
760 :
nobodyさん :2007/02/01(木) 22:58:12 ID:DbW4Semc
質問をさせてください。 掲示板やメールフォームなどのシステムでよく 「同一IPからは一定時間内の最投稿不可」という機能がありますよね。 同じIPは一日に一回程度しかカウントされないカウンタもよく見かけます。 そこで質問なんですが、PHPでそのような機能を実現する為のアルゴリズムには、 有名な雛形が存在しているのでしょうか? 解説しているサイトも含めGoogleで検索を試みましたが、 掲示板などのスクリプトの配付ページなどが引っ掛かるばかりで、 見つける事ができませんでした。 PHPを学ぶ為にメールフォームの製作をしています。 基幹となる部分は問題なく完成したので欲しい機能を追加しているのですが この部分でつまづいてしまいました。 検索する為のヒントや簡単な指南だけでも頂けたら幸いです。 PHP 4、linux鯖を使用しています。 データベースは使用できません。
アルゴリズムだの雛型だの大げさすぎです 自分で再発明wしてください
ip と時間を記録しておくだけじゃね?
763 :
nobodyさん :2007/02/01(木) 23:12:20 ID:Ak2sQwef
解らないので教えてください。 只今、PHP5.2をインストールし、<? phpinfo() ? > で テストしたところ、IE、Operaでは正しく表示されましたが、 Firefoxでは<? phpinfo() ? > とそのまま表示されました。 なぜですか?わかる人おしえてください。 サーバーはアパッチ2.2です。
764 :
nobodyさん :2007/02/01(木) 23:12:32 ID:shm0xuKW
PDOを介してSQLiteのテーブルの定義を調べるにはどうすればいいですか
766 :
nobodyさん :2007/02/01(木) 23:16:01 ID:Ak2sQwef
ちゃんと<?php phpinfo()?>って書けよ
>>763 httpじゃなくてfileでアクセスしてる希ガス
url欄見てみ?
アパッチ
サーバサイドなのに表示にブラウザ選ばないから、 IE.Operaで表示されてFireFoxは表示されないなんてことはない。
>>764 pragma table_info(table_name)だった
自己レス
772 :
nobodyさん :2007/02/01(木) 23:33:32 ID:jV4RTrpc
画像ファイルをDBのMEDIUMBLOB型カラムにinsertするところで 行き詰っています。ソースは以下の通りに書きました。 $imgdat = fread($fp, filesize($_FILES["filename"]["tmp_name"])); fclose($fp); if(! $con = mysql_connect(HOST,USER,PASS)){ die('DB connect miss!'); } mysql_select_db(_DB_, $con); $imgdat = mysql_real_escape_string($imgdat); $sql = "insert into images values('$imgdat')"; $result = mysql_query($sql); if (!$result) { print("SQLの実行に失敗しました<BR>"); print(mysql_errno().": ".mysql_error()."<BR>"); exit; } 実行すると 1064: 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 …バイナリの内容の一部… というエラーが出てしまいます。 mysql_real_escape_stringを実行しているのでデータ的には問題ないようなきがするのですが・・。 ちなみにどの画像でもダメでした。 アドバイスをいただければと思います。よろしくお願いします。
>>772 バイナリデータをエスケープしちゃったらだめよ
774 :
nobodyさん :2007/02/01(木) 23:51:46 ID:NaBQxTcG
質問ですー。 複数のHTML(A.html/B.html)をフレームで1つにまとめているのですが A.htmlのボタンを押すと、A.htmlとB.html両方のフォームの内容がC.phpに送られて合わせて処理できるようにしたいのですが どのような方法があるでしょうか?ご教授ください。 OSはWINXP-SP2でPHP5です。
フレームを使わない
mixiで回答出なかったのに
>>773 が瞬殺かよ。やるな2ちゃんねらー
>>774 普通にPOSTすると片方しか送られないのはどうしようもないから
submit時の動作をJSにして入力値を取得、XMLHTTP 使って送信とか
まぁはっきり言って二つのフォームを使うのがナンセンスだと思う
778 :
772 :2007/02/02(金) 00:09:31 ID:e6dcK4nt
>>773 ご回答ありがとうございます。エスケープしなくてもダメなのです・・・。
addslashesもダメでした・・。
よろしければ具体的に教えていただけないでしょうか? よろしくお願いします。
>>776 mixiでも質問されてたのですか・・知りませんでした。
779 :
774 :2007/02/02(金) 00:15:17 ID:???
>>775 ,777
レスサンクス。
やっぱそうですか・・・。
メニューフレームに作成希望ID入れて
メインフレームにデータ入力してSUBMITとか、したかったの。
>>760 > そこで質問なんですが、PHPでそのような機能を実現する為のアルゴリズムには、
一応突っ込んでおくが、アルゴリズムじゃなくて、アルゴニズムだろ。
>>780 アルゴリズム 1,950,000 件見つかりました
アルゴニズム 487 件見つかりました
一体どういう釣りなのだろうと思って、アルゴニズムでググってみたら、そう勘違いしている日本人がけっこういることに驚きましたw
すごいなぁ。リズムって音楽と勘違いしてるんだろうなぁ。
ニズムって何だろうと検索してたら967人でアルゴリズム行進するフィリピンの囚人動画見つけてワロタ
メカニズムの仲間と思ってるんじゃね?
Algorithm どう発音したらニズムになるんだ?
思想の一種だと思われてるんじゃね。フェミニズムとか。
Algo-rithm ==> 数学律動 Algo-nism ==> 数学主義 どっちも、日本語に直すとよく分からんが、数学主義の方が通りはいいなw
php5.2.0 ですが、 <?php $html =" <pre> <hoge> </pre>"; function dataHandler(&$parser, $data) { echo $data; } $parser = xml_parser_create(); xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0); xml_set_character_data_handler($parser, 'dataHandler'); xml_parse($parser, $html); ?> というコードで echo $data の所で <hoge> ではなく <hoge> が出力されるのですが、これは一体全体どうして勝手に htmlspecialchars の逆操作がされているのでしょう?
うぅ修正 php5.2.0 ですが、 <?php $html =" <pre> <hoge> </pre>"; function dataHandler(&$parser, $data) { echo $data; } $parser = xml_parser_create(); xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0); xml_set_character_data_handler($parser, 'dataHandler'); xml_parse($parser, $html); ?> というコードで echo $data の所で <hoge> ではなく <hoge> が出力されるのですが、これは一体全体どうして勝手に htmlspecialchars の逆操作がされているのでしょう?
しかも、動作的には xml_parse($parser, $html); の時点で一旦 htmlspecialchars の逆操作した後パースしているのか、 echo $data . "@"; とすると、 @<@hoge@>@ こんな出力になったりします。<pre></pre>の中が一度で取得されるはずなのですが。 Pear の XML_HTMLSax だと <hoge>@ と期待通り動いてくれました。 PEARのモジュールを入れてね、と言いたくないので xml_parse を使用したかったのですが、どうしたら修正できるのでしょう?もしくはバグ?
よくわかんないので話半分で < が < になってしまうなら < とかごまかしてみたらどう
^^; &lt; が < になってしまうなら &amp;lt; とかごまかしてみたらどう
全然そういう話じゃないだろう。
CDATAって<で始まって>で終わるからそれが関係してるんじゃない? と的外れなことをいってみるテスト。
ローカルPC上(作業PC上)で、以下のコードを実行してテストしました。 $max_count="1000"; for($i=1;$i<=$max_count;$i++){ $int=mktime(); $fp = fopen("count.csv","a"); fwrite($fp,"$i,$int\n"); } ファイルに$max_count行まで書き込んで、どのくらいのパフォーマンスなのか 測ろうとしていたのですが、1000件ぐらいだったら数秒ですが、 万の桁に行くと途端にパフォーマンスが落ちて、途中でset_time_limitになります。 PHPで同じ作業をさせる場合、やっぱり万桁のデータは実用向きでは 無いのでしょうか?(例えばメール一括配信など) ローカル上なので回線スピードは関係ないと思いますし、PCスペックも そこそこだと思うのですが、あまりに処理出来る件数が少なくてびっくりしています。
>>772 >$sql = "insert into images values('$imgdat')";
valuesの前にカラム名が書かれてないわけだが。
もう一度SQLの基礎からやり直せ。
っていうか画像をDBに入れるな。
画像のファイル名だけ格納しとけ。
>>797 $fp = fopen("count.csv", "a");
をループに入る前に宣言してみ。 これでだいぶ変わると思う。
家のテスト環境で30秒以上でエラーに設定して14万行越えた辺りでタイムアウトになる
ちなみにループのなかでfopenを宣言していると55000行くらいでタイムアウトになる。
もし数十万単位で処理したいなら、一度に送るのではなく、MovableTypeの再構築のように処理を分割すればいいんじゃないかな?
環境
OS:XP home
CPU:P4 2.6
mem:1G
php:5.0
めんどくせー
801 :
nobodyさん :2007/02/02(金) 09:09:33 ID:BkwFuYtm
通常CURLの結果(出力)は標準出力(今回、ブラウザで通信してたいのでブラウザの画面)に出力
されますが、これを変数(下の例だと$out)に格納する方法はないでしょうか?
この例でやると格納できません。(当たり前ですが)
$ch = curl_init('
http://www.example.com ');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $sendxml );
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_FILE, $out ); // ←ここの$out
curl_exec($ch);
curl_close ($ch);
802 :
虚弱PHP :2007/02/02(金) 09:15:12 ID:???
>>797 のコードだと、ファイルポインタが酷いことになりそうなんだけど。
803 :
nobodyさん :2007/02/02(金) 09:45:48 ID:CPNbeRvF
>>797 fopenがループしているぞな、もし。
805 :
nobodyさん :2007/02/02(金) 10:08:08 ID:BkwFuYtm
>>804 さすがです!早速解決しました!ありがとうございました!
前にも質問したのですが もう一度質問させてください
カレントURLが「
http:// …」か「
https:// …」か調べたいのですが 取得する
方法はありますでしょうか?
前回は$_SERVER変数で取得可能とご回答いただいたのですが 調べたところ
http://hogehoge.com以降のパスか リンク前のURLの絶対パスしかみつかり
ませんでした 現在のURLの絶対パスが取得できると助かるのですが…
ご回答いただけたら幸いです
>>807 $_SERVER["SERVER_PROTOCOL"]
$_SERVER["HTTP_HOST"]
$_SERVER["SCRIPT_NAME"]
組み合わせて使うー。
データベースから文字列を取って来て表示させると文字化けしてしまいます。 php.iniのmbstring.internal_encodingなどはEUC-JPへ ソースを書いてあるphpもEUCで保存してヘッダーにEUC-JP記載 mysqlのSHOW VARIABLES LIKE 'character\_set\_%';をすると character_set_client ujis character_set_connection ujis character_set_database ujis character_set_filesystem binary character_set_results ujis character_set_server ujis character_set_system utf8 これ以外に何か変更するところはありますでしょうか? 使用しているmysqlのバージョンは5.0.27phpは5.1.6です
810 :
807 :2007/02/02(金) 13:17:52 ID:???
>>808 ご回答ありがとうございました
それらの変数をechoするスクリプトを作って http:〜〜test.phpとhttps:〜〜test.php
でアクセスしてみたのですが どちらも全く同じ文字列になりました
で 他の$_SERVER変数を見たところ $_SERVER['SERVER_PORT']がhttpとhttpsで異なる
みたいなので これでやってみようと思います
なんかあまりスマートじゃないですが……
ありがとうございました!
>>810 あれ? SERVER_PROTOCOL も違うはずだけど…。
通常なら HTTP 、SSL なら HTTPS になってるはず。
まあ、Port も当然違ってくるから、それでも大丈夫ならいいと思うけど。
812 :
807 :2007/02/02(金) 13:37:47 ID:???
>>811 なぜかどちらも「HTTP/1.1」でした
通常httpsは別ディレクトリなんですが 設定で同じディレクトリにhttpsで
アクセス可能になるよう変更したからかもしれません(自信ありませんが)
ポートで条件分岐が無難みたいですね
ご丁寧にありがとうございました
813 :
797 :2007/02/02(金) 14:30:57 ID:???
>>799 ご説明ありがとうございます。おっしゃるようにかなりはやくなりました。
5万桁で8秒10万桁で15秒です。PCスペックは同じようなものです。
ただ、よくある
「会員のデータを読み込んでそのメールアドレス宛にメールを送信する」
などの用途の場合、やはりループ内で読み込みをしなければいけませんよね?
そしたらfopen&mb_send_mailの繰り返しになるわけで、やっぱり処理パフォーマンス
は格段に落ちますよね。(怖いのでテストしてませんが。。)
それとも799さんのように書き方を変えれば処理が変わると言うことはあるのでしょうか?
814 :
797 :2007/02/02(金) 14:34:45 ID:???
>>799 連続ですみません。。あと「処理を分散する」というのは
どういうことなのでしょうか?件数によって読み込むファイルを
変えるとか、sleepを使って時間の間隔をずらすのでしょうか?
>>813 >>799 じゃないけど、1ファイル1ユーザってこと?
例えばだけど、毎晩バッチを動かして、ユーザ一覧は別に作っておくとか、
逃げ道はあるよ。
もしどうしても1ファイル1ユーザから毎回読み込まなくちゃいけないなら、
せめてx件ごとにまとめて一旦送信して、複数回にわけたほうが若干マシかな。
何万件もあるやつを、個別に一個一個っていう設計が問題あると思うから、
直せるなら直したほうがいいと思う。
>>813 メールをいっぺんに送るのはやめれ
1000件ずつをcronで1時間おきに送るとか
それとデータはファイルじゃなくデータベースへ
817 :
797 :2007/02/02(金) 15:06:47 ID:???
>>815-816 厳密に言うとMySQLを使っているのですが、
テスト時の想定としては、「万件のユーザに対する対応」でして
用途は主にお知らせやメルマガ発行になると思うので、
そういう用途にPHPでも向くのかどうか試していました。
816さんもおっしゃっていますが、やはり分散した方が良さそうですね。
ソース自体は上のようにforじゃなくてwhileを使うと思うのですが、
それでもやっぱり時間がかかりそうですし。負荷もかかるでしょう。
レンタルサーバなどでは迷惑がかかるのでcronのテストは出来ないのですが、
メールのテストは自分のアドレスを使って出来そうなので、また試してみます。
色々とありがとうございました。
MySQLから時間データを取り出す際、 YYYY-MM-DDとなっているものをYYYY MM/DDに変換したいのですが preg_replaceとかで変換するしかないのでしょうか?
>>818 そういうのはSQLのお仕事です。
例はこんな感じ。
DATE_FORMAT(CurDate(),'%y-%m-%d')
URLに+ってつけられないのでしょうか?(index.php?test=aaa+bbb など) なぜかGET後のページを見ると、空白になっています。
>>820 urlの+はスペースになる
urlencode or rawurlencode 参照
まあでもそういう特殊なGETクエリにならない設計にしたほうがいいと思うが
>>819 > そういうのはSQLのお仕事です。
それって、SQLの仕事なのか?
おれは、固有のDBに依存させないために、
その処理は、date()とstrtotime()でphp内でフォーマットしているけど。
824 :
nobodyさん :2007/02/02(金) 18:41:47 ID:hTY0E9St
$str = '私のペットの名前は $name です。'; $name = 'ぽち'; としたとき、 $str の文章内の $name を展開するには eval() を用いるしかないのでしょうか? 他にあればその方法をご教示願います。
>>824 $str = "私のペットの名前は $name です。";
関数名の前に@をつけて@xxxx()と呼んでる場合の効果はなんでしょうか?
>>825 そうではなく、$strには展開されていない文字列が入っているものとします。
文章力不足で申し訳ありません。
829 :
nobodyさん :2007/02/02(金) 18:51:19 ID:hTY0E9St
>>828 $name = 'ぽち';
$str = '私のペットの名前は $name です。';
・ダブルクォーテーションで展開する
・ eval() で評価する
この方法以外に $str 内の $name を展開することはできるのでしょうか?
できるとしたらその方法をご教示ください。
中の人に聞いて
>>829 何?その投げやりな態度?
自分で考えろ。
832 :
nobodyさん :2007/02/02(金) 19:03:05 ID:hTY0E9St
投げやりでしたか・・・、気分を害された方、申し訳ありませんでした。
可哀相に
834 :
nobodyさん :2007/02/02(金) 19:17:46 ID:k4AGASEW
$nameを '.$name.' にしてみたら?
自分で関数作るとか 一文字ずつ読んで$が出てきたら後に続く変数名に使える文字列を抜き出して ってアホじゃんw
>>837 そこまでする意味がないって事じゃね?
>>829 なんかは、あきらかに変な仕様だから。
そんな変な事をする理由がわからない。
迷ったら迷わずCtrl+A & Del ダッ!!!!1
841 :
nobodyさん :2007/02/02(金) 20:01:07 ID:j0u5nq/Z
すみません、カス質問だと思いますがお願いします。 いま、ディレクトリ内のファイルを表示するスクリプトを書いていて、 実際動いてるんですが良くわからないことがあります。 <?php $dirname="./";//このディレクトリ //ディレクトリの展開表示 function dir_view($dirname){ $dh = opendir($dirname); echo $dirname."内にあるファイルを一覧表示します。"; while($file=readdir($dh)){ echo $file."<br>\n"; } closedir($dh); echo "<br><br>"; } dir_view($dirname); ?> 上のプログラムですが、本のまま書いたんですが、$dhというのが良くわかりません。 ディレクトリハンドルというのを格納してる変数らしいですが、ディレクトリハンドルって なんなんでしょう? 自分はフラッシュのアクションスクリプトがそれなりに得意なんですが、 ソッチにはない概念で戸惑っています。 readdir() でディレクトリを読み取る前に、ディレクトリの状況?を返してると考えて いいのでしょうか?
843 :
nobodyさん :2007/02/02(金) 20:15:13 ID:j0u5nq/Z
>>842 ありがとうございます。
opendir(); っていうのはディレクトリを開くというより、
今からこのディレクトリを操作しますよ、という宣言なんですかね?
なんだか、、良くわからないなぁ。
while($file=readdir($dh)){ というのは
$fileにディレクトリ内のファイルを無事に代入できる間は… って意味ですよね
while(($file=readdir($dh)) != false){ ってことですかね?
>>843 readdir($dh)は、$dh内にある、ファイルを一ずつ返し、全て返したら、FALSEを送る関数。
よって、最後の一行は正確ではない。
845 :
nobodyさん :2007/02/02(金) 20:34:03 ID:B4ANfZw9
function sox_fetch_rss(){
$rssreader = array();
$fp = fopen("rsslist.dat","r");
$lsize = max_line_size ;
while(filesize("rsslist.dat") > 0 and $line = rtrim(fgets($fp))){
$rss = fetch_rss($line);
while ((list($t,$item) = each($rss->items)) and $lsize) {
$rssr = new RSSReader();
$rssr->channel = $rss->channel;
$rssr->item = $item;
$rssreader[] = $rssr;
$lsize--;
}
}
$rss = fetch_rss("
http://dagda.grd.cc/dagda/rss/ ");
while ((list($t,$item) = each($rss->items)) and $lsize) {
$rssr = new RSSReader();
$rssr->channel = $rss->channel;
$rssr->item = $item;
$rssreader[] = $rssr;
$lsize--;
}
fclose($fp);
usort($rssreader,"date_sort");
return $rssreader;
}
846 :
nobodyさん :2007/02/02(金) 20:37:48 ID:B4ANfZw9
続き <?php require_once 'phplib/main.inc'; $rss = sox_fetch_rss(); while (list($k,$v) = each($rss)) { $url = $v->getURL(); $title = $v->getTitle(); $p_title = $v->getMainTitle(); $mainurl = $v->getMainURL(); echo ("<td><a href=\"$url\" \" target=\"_blank\">$title</a></td>"); echo ("<td><a href=\"$mainurl\" \" target=\"_blank\">$p_title</a></td></tr>"); } ?> 記事を新しいものから20件だけ取り出したいんですがどうすれば
>>846 <?php
require_once 'phplib/main.inc';
$rss = sox_fetch_rss();
$i=0;
while (list($k,$v) = each($rss)) {
$i++;
$url = $v->getURL();
$title = $v->getTitle();
$p_title = $v->getMainTitle();
$mainurl = $v->getMainURL();
echo ("<td><a href=\"$url\" \" target=\"_blank\">$title</a></td>");
echo ("<td><a href=\"$mainurl\" \" target=\"_blank\">$p_title</a></td></tr>");
if($i<20) break;
}
?>
848 :
nobodyさん :2007/02/02(金) 20:50:40 ID:B4ANfZw9
f($i>20) break;にしたらできました!
>>874 本当にありがとうです><
>>848 あ・・・ゴメンまちがえてた。
if($i>20)だと、最新21件がとれちゃうよ。
if($i>19)にするか、$iの初期値を1にするとか・・・・
850 :
nobodyさん :2007/02/02(金) 21:26:43 ID:B4ANfZw9
すいません、別の質問なんですが
<?php
require_once 'phplib/main.inc';
$rss = sox_fetch_rss();
$today= date('m-d');
$i=0;
while (list($k,$v) = each($rss)) {
$i++;
$url = $v->getURL();
$title = $v->getTitle();
$p_title = $v->getMainTitle();
$mainurl = $v->getMainURL();
$days = $v->getDate();
$dateb = substr($days, 5, 5);
if($today=$dateb)
echo ("<tr><td>$date</td>");
echo ("<td><a href=\"$url\" \" target=\"_blank\">$title</a></td>");
echo ("<td><img src=\"
http://b.hatena.ne.jp/entry/image/small/$url\ " alt=\"hatena\"></td>");
echo ("<td><a href=\"$mainurl\" \" target=\"_blank\">$p_title</a></td></tr>");
if($i>100) break;
}
?>
「記事の日付が今日のものだけ表示する」はこれじゃだめですか?
851 :
nobodyさん :2007/02/02(金) 21:28:52 ID:B4ANfZw9
忘れてました↓ $today= date('m-d');
855 :
nobodyさん :2007/02/02(金) 23:10:51 ID:DvefISwY
SQLiteのdbファイルってどこに作成されてるんですか? 探しても見つかりません
856 :
nobodyさん :2007/02/02(金) 23:52:35 ID:gZf16yj8
昨日の日付を表示ってどうやるんだっけ
date('Ymd',strtotime('yesterday'))
860 :
nobodyさん :2007/02/03(土) 00:36:46 ID:vKXnHtGH
htmlから項目を抜き出すと 1、0 2、+○○○ 3、-○○○ というように3種類になります。(ゼロ、プラス符号付数字、マイナス符号付数字)←数字の桁数は不定で少数もあります。 でプラスとかマイナスという文字を消したいんだけど、方法ある?
862 :
860 :2007/02/03(土) 00:52:03 ID:vKXnHtGH
>>861 すまん、質問間違えた。
+の時だけ+という文字を消したいです。
マイナスの時はそのままでいいです。
質問です。 POST形式のデータがPHPファイルに送られます。 そのPHPファイルにはswfファイルが読み込まれるように記述してあるのですが PHPファイルが受け取ったPOST形式データをswfで読み込ませることはできるでしょうか? <流れ> 「input.htmlのフォーム」-POSTデータ→「receive.php(receive.phpによって作られたページにdisp.swfが表示される)」 ←このdisp.swfにPOSTデータを受け取らせたい。 OSはXPでFLASH8を使っていてPHP5です。よろしくお願いします。
864 :
809 :2007/02/03(土) 00:53:34 ID:???
>>864 どの時点で文字化けしたと判断してるのかわからんからデータベースに突っ込んでるところとデータベースから引っ張り出してるところと出力してるところを小さくまとめたテストコードみたいのを出せば解決がはえーんじゃねーかって言ってるんだと思うよ後ID出せ。
>>864 何のコードでしょうって何のコードを想像したんだ?
その返答から想像力足りない君には解決無理なんじゃないかと思ってしまったよ
エスパー急募 PHP、MySQL経験者優遇 インターネット幹部登用あり
>>862 $str = preg_replace('/\+/','',$str);
+って\+でよかったよな
何でわざわざ正規表現?
870 :
nobodyさん :2007/02/03(土) 02:30:59 ID:C9ZviOFK
zip壊れてね?
872 :
870 :2007/02/03(土) 02:45:29 ID:???
>>871 一応圧縮はWINRARでしました。
DLして解凍してみましたがこちらだと問題なく解凍できます。
別のPCの解凍ソフトで解凍できた
ごめんよ 俺あんまこういうの詳しくないからコメントはエロい人にまかせる
パソコン蛾物故割れた
なんで書けてんだよ
php から http リクエストを投げるときに Basic認証をやるにはどうしたらいいの?
878 :
809 :2007/02/03(土) 05:11:02 ID:???
>>865 ,866
すいません読解力が足りませんでした
調べていたらデーモン起動時に
skip-character-set-client-handshake
を加えると直りました
お騒がせしてすいませんでした
>>877 .htaccessにphpのタイプを追加したあとに、
認証タブを書いて、外だしにパスワードファイルを置けばok。
パスワードは、コンソールからコマンドをたたくか、
phpからシステム関数をたたいても出来ると思う。
880 :
nobodyさん :2007/02/03(土) 05:27:39 ID:ms+TjTsb
・・・IDが出ていませんでした。 再び、質問です。 POST形式のデータがPHPファイルに送られます。 そのPHPファイルにはswfファイルが読み込まれるように記述してあるのですが PHPファイルが受け取ったPOST形式データをswfで読み込ませることはできるでしょうか? <流れ> 「input.htmlのフォーム」-POSTデータ→「receive.php(receive.phpによって作られたページにdisp.swfが表示される)」 ←このdisp.swfにPOSTデータを受け取らせたい。 OSはXPでFLASH8を使っていてPHP5です。よろしくお願いします。
>>880 すれ違い。AcrtionScriptの板に行け。
>>879 なんでクライアントなのに .htaccess をおかなくちゃいけないの?
http リクエスト投げるのよ。
GDで画像に文字を入れる際、改行はできないのでしょうか? (自分で位置を指定する必要があるのでしょうか?) また、GDを使ったことがある方、改行にどのような方法を使っているか教えてください。
>>883 phpでグラフィックのプログラミングするなら、
改行の処理は独自に実装する必要がある。
文字の横幅を取得して改行すればいいだけ、独自関数でも作れ。
>>882 ベーシック認証をなんだと思ってるんだ?
>>877 PEAR::Authがあるじゃないか。
887 :
nobodyさん :2007/02/03(土) 10:17:30 ID:uvg5VOB3
>>859 858じゃないけど、今日現在を基準だと可読性の点でもそれが最高にいいね
カレンダー等で、ある日付の前次リンクとか作る時は、GETクエリからmktimeが最適かな?
>>886 だからそれはサーバ側でしょ?
ベーシック認証がかかっているサーバにログインする php のクライアントプログラム(ダウンローダのようなもの)を作りたいと言っているの。
「http リクエストを投げる」と言ってるんだから必然的にそういう意味になるべ? クライアントになるべ?そうだべ?疑いの余地はないべ?
>>889 ふーん。そう。
自分で考えれば?
っでなんで人に質問するときに、自分の質問の仕方が悪いのに、
思ったとおりの回答が来ないからって逆ギレしてんの?
893 :
nobodyさん :2007/02/03(土) 11:41:09 ID:BGo+xvxs
>>889 >>891 やりたいことはわかった。
しかし、そんな単純な事になぜそんなに悩んでいるかが理解できない。
ベーシック認証する普通のHTTPリクエストだろ。
はい。では、以降は自分で考えましょうね。
WinのPHP5でsimplexml関数を利用可にするにはphp.iniをどう設定すればいいですか?
>>894 デフォで使用可。
なにもしないでも使える。
>>ヤクザ 検索するとサーバ側のしかでてこなくてめんどくさかったから。
898 :
nobodyさん :2007/02/03(土) 13:22:49 ID:I7XwHPiW
Windowsでcurl_init()を使うと未定義と言われてしまいますが、 Windowsでも使えるようにするにはどうすればいいでしょうか?
899 :
nobodyさん :2007/02/03(土) 13:28:47 ID:yuo9x96A
PHPスクリプトのバージョンのつけ方がわかりません。 ver1.1とかver0.1とかあると思うんですけど、どのようにつければいいのでしょうか?
>>899 俺は気分次第につけてる
バグ修正・機能更新→+0.1
大規模更新→+1
僕も完成度を高めたいんです(><;)ぼいーん
Basic認証はサーバ側でされるものだぞ クライアントってことはIDとパスワードをどうやって自動入力できますか?っていう意味なのか?
>>900 ありがとうございます。
参考にさせていただきます。
いまどきBasicなんて使うかよw
>>903 ちょwww実務経験ナシの俺のを参考にしても意味ないぞwww
でもそんなもんだぜ?
907 :
nobodyさん :2007/02/03(土) 13:59:46 ID:yuo9x96A
いえいえ、とても参考になりますしわかりやすいです。 0.1 ・・・ バグとり、機能更新・修正 1.0 ・・・ 複数の機能追加 でやってみたいと思います。 PHPスクリプト配布しようかと思っています。
digestが使われる日はいつ来ますか?
>>905 バージョンナンバーなんて気分でつけるもの。
俺は、マイナーバージョンうpは、変更にともなう時間でつけてた。
修正に1時間かかったら+0.1、2時間かかったら+0.2とか。
大幅な機能追加などは、メジャーうpとして+1とかにしてた。
>>898 php_curl.dll を有効にする。
911 :
nobodyさん :2007/02/03(土) 15:41:00 ID:7yBSIFDS
掲示板の書き込みを、海外のIPアドレスから出来ないようにしたいのですが やり方のヒントやロジックそのものを書いてあるサイトがありましたら教えてください
.jp以外から拒否ればいいんじゃね?
914 :
nobodyさん :2007/02/03(土) 15:54:28 ID:uvg5VOB3
それだとYahoo! BBからアクセスできなくなるんじゃ
915 :
880 :2007/02/03(土) 16:00:30 ID:ms+TjTsb
>>888 レスありがとうございます。
でもその方法だと、SFWが受け取るデータが大きい場合に受け取りきれなくなる場合があります。
(SWFが受け取るときにはGET方式になっているので)
ちょっと板違いぽいのでフラ板いってきます。
日本語でタイトルかくと「・・・・」になっちゃうんですが
>>911 簡単な実装方法は、
>>913 のと
>>914 のjp以外ドメインで日本のものを例外として処理する場合。
上のに比べれば鯖に負荷がかかるけど確実に弾きたいなら、
APNIC(日本のIPの割り当て管理をしているところ)に、
アジア地域の最新のIPリストみたいなものがあるんで、
そこのリストを元に日本のIPの範囲を計算して、
訪問者がその範囲内に合致するかしないかで処理すればOK
在日の書き込みを弾くにはどうすればいいんですか(><;)
>>918 書き込む前に、
キムジョンイルの画像を踏ませる。
踏まなかったら在日で、踏んだら日本人。
つーのは冗談で、
そういうネガティブな話題はよそでやれ。
文字コードって結局どれが一番よいんだろう
>>921 俺はEUCで統一してたが、UTF-8にしたくなった・・・
迷ってるうちはどれでもいい。 UTF-8前提かよ!とかCP932じゃなきゃムリじゃん!みたいに半強制的に決まる。
EUCで統一する利点が分からん
925 :
nobodyさん :2007/02/03(土) 17:23:24 ID:+ggKYpw9
PHPソースコードを納品前に綺麗に整形したいのですが ソースコード整形ツールなんぞありますでしょうか? (最低でもコメントを全て削除というのが出来ればいいなぁと思ってるんですが・・・。)
>>925 >(最低でもコメントを全て削除というのが出来ればいいなぁと思ってるんですが・・・。)
インデントしてなくて読みにくいっていうなら問題ありだけど、
コメント削除は必要ない。
927 :
nobodyさん :2007/02/03(土) 17:41:06 ID:m5qoEspH
俺はEUC使ってるんだけどだめなのか?
931 :
nobodyさん :2007/02/03(土) 18:05:40 ID:CR1gOwnc
ばか!!SJISだと、Windowsの最強エディタである「メモ帳」が使えるだろ!
そうだよな?
>>932
おお!頭いいな!
つか、メモ帳もせめて、Gnomeのgedit程度の拡張性があれば・・・
936 :
nobodyさん :2007/02/03(土) 18:25:45 ID:CR1gOwnc
UTF-8もメモ帳で開けるけど…。
>>936 ∩ :・:∵
⊂、⌒ヽ∴: L/ ,r=''""゙゙゙li,
⊂( 。Д。)つ > 、、,,_ ,r!' ...::;il! ...
V V ; Y⌒r!'゙゙´ `'ヾ;、, ..::::;r!'゙
グハッ ,i{゙‐'_,,_ :l}..::;r!゙
. ,r!'゙´ ´-ー‐‐==、;;;:.... :;l!:;r゙..
,rジ `~''=;;:;il!::'li
. ill゙ .... .:;ll:::: ゙li
..il' ' ' '‐‐===、;;;;;;;:.... .;;il!:: ,il!
..ll `"゙''l{::: ,,;r'゙
..'l! . . . . . . ::l}::;rll(,
'i, ' ' -=====‐ー《:::il::゙ヾ;、
゙i、 ::li:il:: ゙'\
゙li、 ..........,,ノ;i!:.... `' 、 ∧_∧ うるせぇ!黙ってろ!!
`'=、:::::;;、:、===''ジ゙'==-、、,,,__ `'(・∀・)
`~''''===''"゙´ ~`'''' ヽ ノつ
〜( ,,(~)
ヽ)
俺は常にTeraPadのみで作ってるんだが・・
>>938 :::::::::::::::::...... ....:::::::゜::::::::::.. (___ )(___ ) ::::。::::::::::::::::: ゜.::::::::::::
:. .:::::。:::........ . .::::::::::::::::: _ i/ = =ヽi :::::::::::::。::::::::::: . . . ..::::
:::: :::::::::.....:☆彡:::: //[|| 」 ||] ::::::::::゜:::::::::: ...:: :::::
:::::::::::::::::: . . . ..: :::: / ヘ | | ____,ヽ | | :::::::::::.... .... .. .::::::::::::::
::::::...゜ . .::::::::: /ヽ ノ ヽ__/ ....... . .::::::::::::........ ..::::
:.... .... .. . く / 三三三∠⌒>:.... .... .. .:.... .... ..
:.... .... ..:.... .... ..... .... .. .:.... .... .. ..... .... .. ..... ............. .. . ........ ......
:.... . ∧∧ ∧∧ ∧∧ ∧∧ .... .... .. .:.... .... ..... .... .. .
... ..:( )ゝ ( )ゝ( )ゝ( )ゝ無茶しやがって… ..........
.... i⌒ / i⌒ / i⌒ / i⌒ / .. ..... ................... .. . ...
つか、PHPの開発でEclise使ってる奴いる? ちょっと気になってるんだが…
>>924 UTF-8かEUC-JPにしろと言われていたので、EUC-JPで統一した
UTF-8だと結構文字化けしやすいから
Eclise の検索結果 約 90,200 件
Sjisだと問題ないんだけどEUCとUTFだと「・・・」になる・・・ もうSjisで統一しちゃっていいかな・・・
>>941 俺もここの話聞いてUTF-8に統一しようかと思ったんだけど、文字化けするってまじ?
どういう時になるの?
947 :
945 :2007/02/03(土) 18:43:12 ID:???
と思ったらできた。よかった。とりあえずuft-8で統一した
948 :
nobodyさん :2007/02/03(土) 18:45:22 ID:CR1gOwnc
文字化けするのは文字符号化方式をブラウザに教えてやらないからだよ。
BBSを作成しています。 DBの設計時、コメントのテーブルと、レスのテーブルを分けたほうが いいのでしょうか。
分けたほうが便利なら分けるといいと思います
ちょっと気になったんだけどさ、PHPって言語はPerlだよな・・・? F-BASICとPHPしかプログラム組んだことないんでわかんないwwww
自宅鯖を持っているのですが、 今自分の鯖にアクセスしている人数を表示させたいのですが、 どのようにすれば良いのでしょうか? 構成の検討もつきません・・・
>>949 第三正規形になってればいい
コメントから1つのレコードを
レスから1つのレコードに特定できないから一緒にしてもOK
理由は両方重複した内容の場合特定できないから
957 :
nobodyさん :2007/02/03(土) 21:40:21 ID:BsOUco4w
文字コードってどこの設定の話してるの?
metaとPHPとDBじゃね?
とソースじゃね?
960 :
nobodyさん :2007/02/03(土) 22:32:01 ID:HgFE6tmo
array_pushとarray_unshiftについて、やはり処理速度としては後者の方が毎回配列の数値添字を振りなおすので遅いのでしょうか?
みんなはどんな開発環境使ってる?
963 :
nobodyさん :2007/02/03(土) 22:44:06 ID:PLyc7KSo
pearを使おうと思って require_once 'DB.php'; を実行したら Failed opening required 'DB.php' (include_path='.;C:\php5\pear') このようなerrorが出ました。 include_pathの問題だと思って、php.inに include_path = ".;c:/php/includes;c:/php/pear" このように記述したのですが、変化ありませんでした。 どこを書きかえればいいのでしょうか? 自分の環境は php5.2.0 apacha2.2.4 (windows)です。
perl=phpだと思ってるんじゃね
>>963 include pathにゴミ付いてね?
967 :
966 :2007/02/03(土) 22:55:23 ID:???
ゴメ なかったことにしてw
キミかわいいね こっちにきなさい、おじさんがチュッチュしてあげる
969 :
966 :2007/02/03(土) 22:58:54 ID:???
たぶんパスの区切りがスラッシュじゃなくて逆のほう \なのでは
>>965 たぶん。Java : J2EE みたいな感じで Perl : PHP だと思っているに一票。
>>970 よくPHP=Perlって聞くんだが言語違うよな?
別人とはどの口が言っているんだ
>>952 以外にはいないだろ
>>973 ん?別にキレてないぞ。
キミが言っている事があまりにも素っ頓狂な事で、ちょっとアキれてるだけw
キミが言っているのは、巨人=阪神ってよく聞くけど違うよな?って言ってるようなもんだしw
>>976 え?
巨人=阪神だと思ってたんだが違うの?
牛肉=マトンってよく聞くけど違うよな?って言ってるようなもんだしw
>>962 調べてみました。
10000回くらい回したら圧倒的に違いました。
ありがとうございました。
>>979 どんだけ回したんだよ
君にF5マスターの称号を与える
ふっへこー!
(´ー`)ふぅ〜
誤爆すまそ
スレの流れにコーヒー吹いた
僕の精子も飛び散りそうなんです(><;)
マトリックスも終わったとこだし射精でもしてくるか
>>988 しまったぁ〜〜〜〜今日、マトロックスだったぁ!!!!!!!
ちきしょーーーーーーーーーーーーーー!!見逃したぁ!!!!!!
いや・・・マジで・・・(´;ω;`)ブワッ
TSUTAYA池 まだ開いてるぞー
>>992 "php chm 文字化け"でググってみよう
996 :
nobodyさん :2007/02/04(日) 00:17:30 ID:3athMQrm
>>910 さすがです!見事に解決しました。
ありがとうございました!
苦しゅうない
998 :
nobodyさん :2007/02/04(日) 01:02:23 ID:GkKQRo3Q
質問です。 外部のHTMLファイルからタイトルの内容を取得してくれるようなライブラリはありますか? ほかにも文字コードとかも。 自前でパターンマッチしていくしかないのでしょうか。
次スレたててー
1000ならお前の鼻毛でてるよ?
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。