【PHP】下らねぇ質問はここに書き込みやがれ 37
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2007/01/24(水) 22:10:29ID:???まず読め→【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
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
しかし初心者が目的も定めずに速度を気にしたところでほとんど意味は無いぞ
0002nobodyさん
2007/01/24(水) 22:11:06ID:???【PHP】下らねぇ質問はここに書き込みやがれ 27
http://pc8.2ch.net/test/read.cgi/php/1156262092/
【PHP】下らねぇ質問はここに書き込みやがれ 28
http://pc8.2ch.net/test/read.cgi/php/1157284868/
【PHP】下らねぇ質問はここに書き込みやがれ 29
http://pc8.2ch.net/test/read.cgi/php/1158434799/
【PHP】下らねぇ質問はここに書き込みやがれ 30
http://pc8.2ch.net/test/read.cgi/php/1159979905/
【PHP】下らねぇ質問はここに書き込みやがれ 31
http://pc8.2ch.net/test/read.cgi/php/1161733546/
【PHP】下らねぇ質問はここに書き込みやがれ 32
http://pc8.2ch.net/test/read.cgi/php/1162818436/
【PHP】下らねぇ質問はここに書き込みやがれ 33
http://pc8.2ch.net/test/read.cgi/php/1164209222/
【PHP】下らねぇ質問はここに書き込みやがれ 34
http://pc8.2ch.net/test/read.cgi/php/1165519374/
0003nobodyさん
2007/01/24(水) 22:11:47ID:???■本家マニュアル http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル http://pear.php.net/manual/ja/
■メーリングリスト http://ns1.php.gr.jp/mailman/listinfo/
■ZFマニュアル http://framework.zend.com/manual/ja/
(以下英語)
■Smarty http://smarty.php.net/
■Zend本家 http://www.zend.com/
■Zend Framework http://framework.zend.com/
■php | architect http://www.phparch.com/
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0004nobodyさん
2007/01/24(水) 22:12:23ID:???注:昔は本スレ(PHP質問スレ)というのが別にあったけど、今はここが本スレです。
◆超初心者を自覚してる方ははこちらへどうぞ
くだすれPHP(超初心者用)2
http://pc10.2ch.net/test/read.cgi/php/1164617202/
◆その他
http://pc10.2ch.net/php/subback.html
PHP関連スレは非常に多いのでこの中でブラウザのCTRL+F等で「PHP」を検索!
0005nobodyさん
2007/01/24(水) 22:12:57ID:???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プログラムとして実行された結果になる。
0006nobodyさん
2007/01/24(水) 22:13:30ID:???→ 確認すべきは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に保存?
→ 好きにしてください
0007nobodyさん
2007/01/24(水) 22:14:08ID:???1. ハードウェア、OSのバージョン等には一字一句触れない。
2. 大切な個人情報が漏れるとまずいので、己の行った操作、変更などは秘密。
3. エラーメッセージの類は決して書かない。「エラーが出るんです」で留める。
目の前で生じている現象をそのまま具体的に書くなどもっての外。
事実より俺様の脳内解釈を優先すべし。
4. 独り言文体で必勝。
「…なんだけど、どうすればいいのかなぁ」「何が悪いんだろう?」
5. 「急いでいます」「困っています」等、自分の都合を全面に押し出す。
6. もう試したことを得意げに指摘してくる奴には、厳しく対応。
「それが駄目だったから質問してるんです」「それはもう試してみて駄目でした」
"どう"だめだったのか、本当に実際それを行ったかどうかなんか問題じゃない。
7. ストレートに答えを書かないもったいぶったレスには、逆切れで対応。
「だからどうすればいいんですか?」「分からないなら引っ込んでろやゴルァ」
示されたURL等を参照するなんて態度は、回答者を甘やかすことに他ならないので
絶対に避ける。
8. 情報は小出しに。
「エスパーきぼんぬ」 補足
上の八ヵ条を「一つでも」満たす者は質問者として不適格だということだ。
そのような悪い質問に対して答えられるのは,
質問者の意図をすべて汲み取ることのできるエスパーでもなければムリ,
という意味であって,決して,高度な技術を持つユーザに対する尊称でなはい。
まちがっても「エスパーの方,回答お願いします」
なんて痛い質問するな。つうか氏ね。
0008nobodyさん
2007/01/24(水) 22:15:44ID:???乙
>>980あたり
次スレの
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ http://pc10.2ch.net/php/subback.html
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで http://pc10.2ch.net/db/subback.html
のURL削除よろ
0009nobodyさん
2007/01/24(水) 22:28:34ID:???なんで?
0010nobodyさん
2007/01/24(水) 22:33:46ID:???【
を検索してみてるんですが、マッチしません。
mb_strpos関数で【は検索可能なんでしょうか?
0011nobodyさん
2007/01/24(水) 22:43:38ID:???session_start();
を開始していなければ
unset($_SESSION);
も無効になってしまうのでしょうか?
0012nobodyさん
2007/01/24(水) 23:05:31ID:???0017nobodyさん
2007/01/25(木) 00:31:45ID:???現在○人のユーザーがログイン中です。
と表示させたいのですが、どのようにやるとできますでしょうか?
0018nobodyさん
2007/01/25(木) 00:35:59ID:???0019nobodyさん
2007/01/25(木) 00:55:44ID:KaiYlOaDPHPにてこれと同様のSQLを実行させるにはどうしたらいいですか?
0020nobodyさん
2007/01/25(木) 01:03:45ID:???ってかそんな機能があるの初めて知った。
むしろ今まで自分で処理書いてたわ。
かなり便利じゃないですか。ありがとう。
0021nobodyさん
2007/01/25(木) 01:09:32ID:rTvcy6Yy0022nobodyさん
2007/01/25(木) 01:12:22ID:UB7tAD/4異なるページへの値の受け渡しに、FROM、includeやrequireを使用しない場合、どのような方法がありますか?
0023nobodyさん
2007/01/25(木) 01:12:27ID:JUAs7x/5$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でもエラーが出てしまいました。。
0025nobodyさん
2007/01/25(木) 01:23:25ID:???http://jp2.php.net/manual/ja/function.imagepng.php
002619
2007/01/25(木) 01:25:18ID:KaiYlOaD> むしろ今まで自分で処理書いてたわ。
そこを教えて下さい
0027nobodyさん
2007/01/25(木) 01:31:04ID:JUAs7x/5オプションがつけられたのか・・・しらんかった/(^o^)\
ありがとうです
0029nobodyさん
2007/01/25(木) 01:32:17ID:???現在何人ページを閲覧してるか表示するスクリプトを教えてください。
003019
2007/01/25(木) 01:40:42ID:2PZ2IHXNhttp://www.vipper.org/vip429249.jpg
0032nobodyさん
2007/01/25(木) 01:47:18ID:???0034nobodyさん
2007/01/25(木) 02:07:07ID:???そういう機能もったもの探してソースでも見るよろし。
wikiト化にもそんなのがあったきがするけど、
あのクラスはさすがにスクリプト多くて読む気にならないな。
003622
2007/01/25(木) 02:47:05ID:UB7tAD/4何分Web開発初心者なもんですいません。
あと、同じようなモノにSESSIONというのもありますが、そちらでも可能ぽい感じはしますね。
0037nobodyさん
2007/01/25(木) 03:20:27ID:???0038nobodyさん
2007/01/25(木) 03:31:06ID:???免罪じゃなくて、贖罪だろ。
技術者っていうのは、片言の日本語しかできない馬鹿ばかりだな。
それで、説教とは・・・
0039nobodyさん
2007/01/25(木) 03:43:38ID:???0040nobodyさん
2007/01/25(木) 03:48:31ID:???マジレスすると、
言ってる事がメチャクチャなのでPHP以前にHTML/CGIの基本を学ぼう。
Googleへ行って「とほほ」を検索するといいよ。
0041nobodyさん
2007/01/25(木) 03:51:01ID:???それで、馬鹿呼ばわりとは・・・
0042nobodyさん
2007/01/25(木) 04:02:10ID:???信仰を売りつけたんだよ
贖罪は刑に服役すること
0043nobodyさん
2007/01/25(木) 04:13:32ID:???贖罪はそもそも宗教用語だが。
0044nobodyさん
2007/01/25(木) 04:19:03ID:???0045nobodyさん
2007/01/25(木) 06:24:53ID:???,.イ.:.:::l:i:::`丶、\``>
r、 /.:/.:::::;:川ト、ィ;l:ヽ V、
>\__ !.:::l:::::ノノ リ,ィtナl.::;;! 1::',
(ミム )X^ヽ リ.:;:Vtソ 、 `ー' |;;/ |::::', 下らねぇ質問は
`ーく_ノ `ー-r─‐‐ヽ:::;、 「 ヽ イ1米|:::::', ここに書き込みやがれ
`ヽ、 |\ i `l>、`ー' イ:::| |::::::l こんちくしょーっ
`フ| ヽ |米|.:::゙、 ̄>くl米|::::::|
./ .:| | ,1 |.:::::{i //介l」 |:::::r‐、
0046nobodyさん
2007/01/25(木) 07:04:05ID:6PquWBKXグループ内に共有端末(スキャナが繋がっている唯一のパソコン)があり
Firefoxがインストールされています
複数のタブを開いて左のタブはユーザ1、右のタブはユーザ2というように
利用させたいのですが、同じCookieを読むようでうまくいきません
タブごとにユーザを分けるうまい方法はないでしょうか
よろしくお願いいたします
0047nobodyさん
2007/01/25(木) 07:30:43ID:???0049nobodyさん
2007/01/25(木) 11:10:01ID:???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/
0050軟式PHP
2007/01/25(木) 11:16:34ID:???0052nobodyさん
2007/01/25(木) 11:57:57ID:Ah56ZYS8> 02. __get, __set, __autoload は使わない
> 03. require_once は重い
この2点気になったので質問させて下さい。
今、PHP5を使って、スクリプトの最初でrequire_onceを使ってやっています。
ですが、最近__autoloadを使うことでパフォーマンスが改善されるということで、
移行を考えていたのですが、上の話だとどれも使えなくなってしまいます。
私の場合は、__autoloadで実装するにも、クラスをディレクトリで分けているので、
クラス名でif文で保存先ディレクトリを決定しなければいけず、かなり面倒な実装になります。
require_onceでロードしているのは、40クラスほどです。
この場合、どのような実装をすべきかアドバイスいただけますか?
0053nobodyさん
2007/01/25(木) 12:27:59ID:???0054nobodyさん
2007/01/25(木) 12:55:46ID:2sRqrwpV一番簡潔な書き方ってどんな方法ありますでしょうか?
preg_matchとか使うと2行になるのでなるべく一行でしたいんですけど・・
0056nobodyさん
2007/01/25(木) 13:13:19ID:2sRqrwpV0057nobodyさん
2007/01/25(木) 13:23:34ID:SxBEk0zxif($_SERVER["REQUEST_METHOD"] != "POST")
exit("不正な投稿です");
$hoge = $_POST["hoge"];
しばしば、こういったソースをよく見るのですが、ユーザーリクエストで
GET方式でリクエストしたパラメータの値が $_POST に代入されてしまうことなんてありえるのでしょうか?
0058nobodyさん
2007/01/25(木) 13:25:28ID:???それだが、実際に組んでベンチ取るとかしてみた方がいいみたいだぞ?
環境にも左右されるし一概に全部の環境に当てはまるとは言い切れないし
逆の結果を叩き出す事もあるから
つまり、鵜呑みにする必要性は全くない情報になります。
0059nobodyさん
2007/01/25(木) 13:26:43ID:???0060nobodyさん
2007/01/25(木) 13:28:12ID:???思っていたのですが、この中だったら1ファイル内でも何度
同じ変数使っても良いんですよね?
0061nobodyさん
2007/01/25(木) 13:40:38ID:???0063nobodyさん
2007/01/25(木) 13:43:22ID:???0064nobodyさん
2007/01/25(木) 13:43:57ID:???0066nobodyさん
2007/01/25(木) 13:51:32ID:???0067nobodyさん
2007/01/25(木) 13:56:37ID:???∩ :・:∵
⊂、⌒ヽ∴: 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!:.... `' 、 ∧_∧
`'=、:::::;;、:、===''ジ゙'==-、、,,,__ `'(・∀・)
`~''''===''"゙´ ~`'''' ヽ ノつ
〜( ,,(~)
ヽ)
0068nobodyさん
2007/01/25(木) 14:06:50ID:???0069nobodyさん
2007/01/25(木) 14:13:33ID:???/⌒'\
( ,i::::::::::::i ./⌒\
〉ノ:::::::::::| | ○゜ i ) )
/;/:::::::::::」/.〉 /
___.i;;.i::::::::::::i/ ..: .', /
./ ヾ .|;;i:::::::::::/.. ..;;〉.」
.__ .\|;.i:::::::::/ / ...;;/
_ノ\i_) i:::::::/ ...;;/ //
 ̄ .|; i:::::/ / ..;;/
__.|;_i::/ ...;;/
___/ .....;;/
.|;; i ...;;イ
ノ;; ,.‐ ;;-.;i
/;;; /' '' ;;;X
|;; ;i;;.. 〜 ;;|
X〜 ;i;;; ;;,. ;;;/
ヽ;;__\_;;/
0070nobodyさん
2007/01/25(木) 14:28:34ID:ycYUptW9皆さんのご意見をお聞かせ願いたい。
0071nobodyさん
2007/01/25(木) 14:43:19ID:???0073nobodyさん
2007/01/25(木) 15:59:11ID:???あれ
http://jp2.php.net/manual/ja/reserved.variables.php#reserved.variables.request
とおもったら英語版にはちゃんと書いてあった
http://jp2.php.net/manual/en/reserved.variables.php#reserved.variables.request
日本語の修正遅いから英語版で確認するようにした方がいいよね
0074nobodyさん
2007/01/25(木) 16:05:07ID:???0075nobodyさん
2007/01/25(木) 16:20:35ID:???同じではないけどこういうこと?
http://jsgt.org/ajax/ref/charset_test/responsetext/php/urlencode.php
0078nobodyさん
2007/01/25(木) 16:44:05ID:oQdflHFX0080nobodyさん
2007/01/25(木) 16:49:43ID:???まずは mb_http_output() を試してみては
>>74-76
escape() されたものの解読はあるけど、
escape() を実装したものはないのかな
0082nobodyさん
2007/01/25(木) 17:09:50ID:???$obj->new Hogehoge();
$obj->name="あああ"; //一人目の名前を選択
$obj->nameTest();
$obj->name="いいい"; //二人目の名前を選択
$obj->nameTest();
みたいにしたのですが、二人目の方は出力されません。
0083nobodyさん
2007/01/25(木) 17:10:26ID:???0084nobodyさん
2007/01/25(木) 17:14:46ID:???こんなこと出来るのか・・・?
0085nobodyさん
2007/01/25(木) 17:15:54ID:???$obj=new Hogehoge();
0087nobodyさん
2007/01/25(木) 18:20:47ID:???0088nobodyさん
2007/01/25(木) 18:25:59ID:???0089nobodyさん
2007/01/25(木) 18:34:28ID:zTPKRyAbファイルがあるのでが、「ページが見つかりません」と表示されます。
この位置に絶対phpがあるんですよ
でも表示されないんです・・・
なぜでしょうか?
0091nobodyさん
2007/01/25(木) 18:40:10ID:zTPKRyAb会員ページなんですけど
最初に開く⇒hogehoge.phpが存在しない
ログイン(セッション使う)⇒hogehoge.phpが存在する
ログアウト(セッション一部削除)⇒hogehoge.phpが存在する
こんな感じです
再インスコしても同じでした・・・
0092nobodyさん
2007/01/25(木) 19:02:44ID:???いれていたらそれが怪しいかもなぁ。
0093nobodyさん
2007/01/25(木) 19:10:27ID:zTPKRyAbheader("Location:index.html");←これならあります
0094nobodyさん
2007/01/25(木) 19:11:00ID:zTPKRyAb紛らわしくてすみませんでした
0095nobodyさん
2007/01/25(木) 19:15:43ID:zTPKRyAbhogehoge.phpの中にあったincludeで
読み込まれているPHPにheader("Location:index.html");
があったのが原因でした
無事解決しました
0096nobodyさん
2007/01/25(木) 19:27:12ID:???009792
2007/01/25(木) 19:40:58ID:???エスパーな俺を誰かほめてくれ。
0099nobodyさん
2007/01/25(木) 19:44:09ID:???なかなかいいエスパーぶりだった
0100nobodyさん
2007/01/25(木) 19:46:04ID:???こうした方が良い、というようなところはありますでしょうか。
<?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>
0101nobodyさん
2007/01/25(木) 19:46:29ID:???:::::::::::::::::...... ....:::::::゜::::::::::.. (___ )(___ ) ::::。::::::::::::::::: ゜.::::::::::::
:. .:::::。:::........ . .::::::::::::::::: _ i/ = =ヽi :::::::::::::。::::::::::: . . . ..::::
:::: :::::::::.....:☆彡:::: //[|| 」 ||] ::::::::::゜:::::::::: ...:: :::::
:::::::::::::::::: . . . ..: :::: / ヘ | | ____,ヽ | | :::::::::::.... .... .. .::::::::::::::
::::::...゜ . .::::::::: /ヽ ノ ヽ__/ ....... . .::::::::::::........ ..::::
:.... .... .. . く / 三三三∠⌒>:.... .... .. .:.... .... ..
:.... .... ..:.... .... ..... .... .. .:.... .... .. ..... .... .. ..... ............. .. . ........ ......
:.... . ∧∧ ∧∧ ∧∧ ∧∧ .... .... .. .:.... .... ..... .... .. .
... ..:( )ゝ ( )ゝ( )ゝ( )ゝ無茶しやがって… ..........
.... i⌒ / i⌒ / i⌒ / i⌒ / .. ..... ................... .. . ...
0102nobodyさん
2007/01/25(木) 20:30:03ID:???ちょっとしたコードを検証ってなんのことをいってるかわからんが、
とりあえずデバッグしっかりやって動くスクリプトをよこしてくれ。
0103nobodyさん
2007/01/25(木) 22:27:07ID:???<meta http-equiv="Content-Type" content="text/html; charset=euc-jp">
の、Content-Typeの部分とtext/html; charset=euc-jpの部分を取得したいのですが
どのようにすれば良いのでしょうか?
0106nobodyさん
2007/01/25(木) 23:07:26ID:???$str = '<meta http-equiv="Content-Type" content="text/html; charset=euc-jp">' ;
preg_match('/(?<=http-equiv=")(.+?)".*(?<=content=")(.+?)"/', $str, $match) ;
var_dump($match) ;
0107nobodyさん
2007/01/25(木) 23:14:16ID:???0109nobodyさん
2007/01/25(木) 23:19:37ID:???正規表現を書けるのを忘れずに、それを考慮を忘れると再現不定期のバグに悩まされることになるぞ。
0111nobodyさん
2007/01/25(木) 23:25:58ID:???0112nobodyさん
2007/01/25(木) 23:37:44ID:???最近気づいたけど↑みたいにマッチすべきとこが空だと
.+? の動作が誤爆するから .*? の使用をオススメする
無駄が多いだろうけど微妙に厳密にチェック
"/<meta\s[^>]*(?<=\s)http-equiv=([\"\'])([^>]*)\\1\s[^>]*(?<=\s)content=([\"\'])([^>]*)\\3[^>]*>/i"
0113nobodyさん
2007/01/25(木) 23:39:54ID:???ファイルロックがかかりっぱなしになって操作できなくなる
SQLiteDatabaseクラスの実装に問題でもあるんだろうか
0114nobodyさん
2007/01/25(木) 23:43:33ID:???'/="(.*?)".*="(.*?)"/'
でええやん。
>>113
自分でトランザクション指示しなくてもなるの?
0115113
2007/01/25(木) 23:55:04ID:???難しいわけじゃにけど気難しいなあSQLiteは。
ありがと。
0116nobodyさん
2007/01/26(金) 00:03:38ID:K9qOTFvkなるほど。
>>72
特殊だから$_POSTと分離するのは分かるが、$_REQUESTからも外すのはやり過ぎではなかろうか、と思う。
前はそんなことなかったらしいが、何が理由で仲間外れにされたのだろうか。
>>73
修正も遅いし、間違いも多い。
0117nobodyさん
2007/01/26(金) 00:32:59ID:pMsBDfiCfor($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
となります。
どこが悪いのか御指摘下さい。お願いします。
0118nobodyさん
2007/01/26(金) 00:35:10ID:???PHP5も複数の親クラスから派生できないのは致命的だな。
これって何か問題があって出来なくなってるの?
多重継承使えば同じ事できるけど、コードが冗長になるのが気に入らない。。。
0119nobodyさん
2007/01/26(金) 00:36:57ID:???QUERYなんて上書きでいいじゃん。可読性が悪すぎる。
まぁ、結論からいうとhit[$i] = mysql_fetch_arrayで二次元配列になってるからだ。
0121nobodyさん
2007/01/26(金) 01:37:03ID:1J/Ng2RM0122nobodyさん
2007/01/26(金) 02:08:52ID:???どうしたらいいですか?
0123nobodyさん
2007/01/26(金) 02:18:03ID:???http://www.php.net/manual/ja/function.mysql-get-server-info.php
0124nobodyさん
2007/01/26(金) 02:19:17ID:???function AAA(){};
abstract function BBB();
}
class bbb extends aaa{
function BBB(){print 123;};
}
とした場合、$obj = new bbb(); $obj->AAAって感じできるのですか?
0125nobodyさん
2007/01/26(金) 03:21:32ID:???0126nobodyさん
2007/01/26(金) 03:28:24ID:???継承?ってのはスーパークラスの全部が継承されるんですね。
0127nobodyさん
2007/01/26(金) 03:45:10ID:???コンマ区切りの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で指定してます
0128nobodyさん
2007/01/26(金) 03:57:38ID:???端から丸投げすんな
0129127
2007/01/26(金) 04:10:23ID:???知り合いがこんなカンジで話してて詰まってるって聞いてたんで
聞いてみたんです。
都合よすぎましたよね、すいませんでした。
0130nobodyさん
2007/01/26(金) 07:27:21ID:???mysql_query()はりソースを返すし
mysql_fetch_array()は配列を返すから当然そうなるね
0131nobodyさん
2007/01/26(金) 09:45:28ID:???echo "$hit[$key]" を print_r($hit[$key]); にすればわかるだろう。
>>118
多重継承は複数の親をもつ継承。言いたいのは多段じゃね?
PHPはオブジェクト指向言語じゃないけど、
多重継承なんか使わなくても問題ない。
設計を見直せ。
interfaceつかえば?
>>122
デストラクタあります。
__destruct()
0132nobodyさん
2007/01/26(金) 09:45:35ID:???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(){
☆☆☆
}
0134nobodyさん
2007/01/26(金) 10:02:32ID:???Google すると unescape() は見つかりました。
ttp://www.webdb.co.jp/aki/jsescapephp.html
この逆をすればいいのだと思うのですが、さっぱり分かりません。
誰かハッカーいませんか。
0136134
2007/01/26(金) 10:36:37ID:???0138134
2007/01/26(金) 10:50:52ID:???0140nobodyさん
2007/01/26(金) 12:24:18ID:???<?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;
}
?>
0141137
2007/01/26(金) 13:10:05ID:???あら、俺が書いたのとは大分違うな…。
俺のも書いてみる。穴あるかな。
<?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;
}
?>
0142140
2007/01/26(金) 14:09:16ID:???<?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い!う");
?>
0145nobodyさん
2007/01/26(金) 15:08:17ID:???escapeshellcmd() と escapeshellarg()
の使い分けがよくわかりません。
とりあえずsystem()とかで外部からの入力値を使う場合は、
escapeshellcmd()をかけてますが、
問題ありでしょうか?
0146nobodyさん
2007/01/26(金) 15:13:54ID:???GDがインストールされているかチェックしたいのですが、
<?php
foreach (get_loaded_extensions() as $value) {
if (preg_match("/gd/", $value)) {
echo "GDがインストールされてます";
}
}
?>
これじゃちょっとチェックが弱いですか?
0147nobodyさん
2007/01/26(金) 15:20:20ID:???どうすればいいですか?
hiddenで渡しても、$_REQUESTや$_POSTに何も入ってません。
0148nobodyさん
2007/01/26(金) 15:22:19ID:???0151147
2007/01/26(金) 15:35:27ID:???すみません
0152nobodyさん
2007/01/26(金) 15:58:24ID:???imagedestroyしているものが多いですがこれは必須ですか?
GDで使用したメモリがphp終了後に残ることもあるのでしょうか。
0153nobodyさん
2007/01/26(金) 16:17:20ID:cz0hND8g「PHPでは変数宣言が必要ない」ということがよく書いてありますが、
逆に変数宣言を必須にするようなモードなどはありますでしょうか。
0156nobodyさん
2007/01/26(金) 17:03:54ID:???0157153
2007/01/26(金) 17:12:23ID:cz0hND8gレスありがとうございます。
しかし具体的にどこにどのように書けばいいのかわからず、
「ALL ERROR」のキーワードを手がかりに
マニュアル見たりぐぐったりして見ましたがわかりませんでした。
具体的にどこにどのように書けばいいのか、
または解説しているサイトなどありましたらお教えくださいますと幸いです。
0158nobodyさん
2007/01/26(金) 17:19:15ID:???0159nobodyさん
2007/01/26(金) 17:40:04ID:???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じゃない」も表示させたいです。どうしたら良いのでしょうか?
0161nobodyさん
2007/01/26(金) 17:44:46ID:3bBneFQbif($a == "xbb"){
print "bbじゃない";
print "ccじゃない";
}
0163159
2007/01/26(金) 18:09:17ID:???レスありがとうございます。
できれば $a = "xbb"; と } elseif ($a != "cc") { の間で
$aを"aa"に戻し、「bbじゃない」と「ccじゃない」を表示させたいんです。
これって可能でしょうか?
0164nobodyさん
2007/01/26(金) 18:12:34ID:???$a = "aa";
if($a != "aa") print "aaじゃない";
if($a != "bb") print "bbじゃない";
if($a != "cc") print "ccじゃない";
0165nobodyさん
2007/01/26(金) 20:02:07ID:Ratl1Nqjみなさんのご意見をお聞かせ下さい。
0166nobodyさん
2007/01/26(金) 20:12:50ID:???0167nobodyさん
2007/01/26(金) 20:16:24ID:???0168nobodyさん
2007/01/26(金) 20:24:46ID:???0169nobodyさん
2007/01/26(金) 20:52:30ID:???0170nobodyさん
2007/01/26(金) 21:12:48ID:???完全無料のPHPスクール行った奴いる?
0171軟式PHP
2007/01/26(金) 21:40:00ID:???見てみた。
>短期間で即戦力となれるようなスキルを実につけることが出来ます。
(´・∀・`)ヘー
>Webの申込フォームやメール送信、管理画面(DB連携、検索、リスト抽出、編集、削除)を作成可能なレベルを目指します。
( ゚д゚)
(つд⊂)ゴシゴシ
(;゚д゚)
(つд⊂)ゴシゴシ
_, ._
(;゚ Д゚)
0172165
2007/01/26(金) 22:27:06ID: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もスクリプトに送りたいのですが、両方を受け取ることは可能でしょうか?
また、どの様な処理で受け取ることができるでしょうか?
0173nobodyさん
2007/01/26(金) 22:33:58ID:fmcX9VXGあるPHPファイルで
ereg("^[ ]+$" , $name) ←半角スペースと全角スペース
で、入力された値が空白かチェックしております。
ここではきちんと動作しているのですが、
最初のファイルはpublic_html/bbs/test.php にあります。
public_html/test.php で全く同じものを実行すると全角スペースがチェックにひっかかりません。
これはなんでなのでしょう?
eregのオーバーロードはされているみたいです
0175nobodyさん
2007/01/26(金) 23:09:13ID:???どっかが違ってるとしか思えん
コードは同じでも $name に渡しているのが違うとか
それから空白文字のチェックなら ctype_space 使った方が楽だよ
0177165
2007/01/26(金) 23:33:49ID:???私は1つの配列にGETもPOSTも入れられないか、と悩んでいました。
解決策として、($_GET + $_POST)を返す関数を作成しました。
あと、$_REQUESTはできるだけ使用するな、と言われましたがどうなんでしょう。。。
さらに質問ですが、みなさんはZendやPearコーティング規約に則していますか?
宜しければお答えくださいm(_ _)m
0178nobodyさん
2007/01/26(金) 23:34:30ID:sVVIcX6W想像どおり2次元目の配列は無視してカウントされますか?
今、PHP触れない環境で紙とペンでプログラム作ってます。
誰か教えてください(>_<)
0179nobodyさん
2007/01/26(金) 23:34:30ID:???$_REQUEST ってデフォルトで"EGPCS"と全部入るから無用な混乱を避けるためにも
あらかじめ分かっている部分には $_GET, $_POST を使い分けた方がいいかなぁと
まぁ俺のポリシーなんだけどね
0180nobodyさん
2007/01/26(金) 23:41:17ID:???$a = array(range(0, 10), range(0,10), range(0,10)) ;
echo count($a) ;
これの出力結果が知りたいということ?
0181nobodyさん
2007/01/26(金) 23:43:31ID:sVVIcX6WPOSTから受け取りたい変数がGETで渡された場合にも代入されちゃうから
あんまりよくないけど、わかってれば大丈夫。
大抵、表示部分はGETでやって、サーバー側に記録するような受け渡しは
POSTでやる。
俺は、タブが空白4文字だっけ?あれ以外はZENDのコーディング規約と同じで
phpのみの場合<?php 〜 exit;で行の文字数も広げすぎないようにしてる。
空白4文字だと、タブと違って作る時や消す時にメンドイ。
あの理由は、あらゆる人のエディターで
同じインデント幅って意味だと思うから一人で作る時は関係ない。
あとの規約は
if(){
}
と
function
{
}
って書き方くらいだったはず。
0182nobodyさん
2007/01/26(金) 23:44:19ID:sVVIcX6Wそうですよろしくお願いしますm(__)m
0184nobodyさん
2007/01/27(土) 00:02:00ID:???http://jp.php.net/count
0185nobodyさん
2007/01/27(土) 00:23:23ID:???0186nobodyさん
2007/01/27(土) 00:52:46ID:???POSTとGETのところで気をつかっても仕方ないぞw
0187nobodyさん
2007/01/27(土) 01:05:43ID:???他人の自動登録リンク集にクエリ付きでURL登録するだけでイタズラし放題。
0189nobodyさん
2007/01/27(土) 01:13:33ID:???0190nobodyさん
2007/01/27(土) 01:56:12ID:???初心者はエディタを即起動して、ちょろっとプログラム書いて、即実行できるような環境作りができていないことが多いからだと思われ。
0191nobodyさん
2007/01/27(土) 02:41:39ID:G9yQMd4Bこの 書き込む ボタン や 特定のリンクなど を"キーボードからの操作"で
即選択させられるようにするか、押す 方法はありませんかね?
0192nobodyさん
2007/01/27(土) 02:44:28ID:???大抵の入門向けの書籍って環境作りから書いてあったりするのに…
テスト環境を作るのが初心者の最初の課題だろう
ローカルなテスト環境作らない奴っていきなりレン鯖でテストするのか?
0193nobodyさん
2007/01/27(土) 02:45:18ID:???0194nobodyさん
2007/01/27(土) 02:50:20ID:???PHPいらない。
Webサイト制作初心者用質問スレ Part 178
http://pc10.2ch.net/test/read.cgi/hp/1169219011/
>>192
そういうの多いみたい。ApacheもPHPもMySQLも自分で準備するもんじゃないと。
入門書もマニュアルもなしで適当なサイト見てるだけだったりするし。
0196173
2007/01/27(土) 09:18:48ID:???やっぱりそこまでの過程は全く同じでした。
なぜだか原因がわかりません。
だけど教えていただいたctype_spaceつかったらうまく行きました。
原因はわからないけど、とりあえず希望する結果が得られたので、ありがとうございました。
0197nobodyさん
2007/01/27(土) 12:09:05ID:P0eOVa/K$array['comment']
$smarty->assign('age', $age);
など"と'が使える場所で、変数を展開することがない場合は'を使ったほうがいいのでしょうか?
0198nobodyさん
2007/01/27(土) 13:20:57ID:pVD/5wi/>大抵の入門向けの書籍って環境作りから書いてあったりするのに…
おいらは、あれでページ稼ぎしているのかと思ってたw
0200nobodyさん
2007/01/27(土) 13:32:29ID:???0201nobodyさん
2007/01/27(土) 13:55:51ID:???0203nobodyさん
2007/01/27(土) 18:21:46ID:???0204203
2007/01/27(土) 18:37:52ID:???0205nobodyさん
2007/01/27(土) 19:05:35ID:???0206203
2007/01/27(土) 20:19:21ID:???これくらいすぐ教えてくれたらいいのに
0207nobodyさん
2007/01/27(土) 20:31:14ID:???0208nobodyさん
2007/01/27(土) 20:32:45ID:???0209nobodyさん
2007/01/27(土) 20:33:50ID:???0210nobodyさん
2007/01/27(土) 21:08:09ID:8H08hEUC以下のスクリプトがうまくいきません。どこが悪いんでしょうか。
<?php
$artist = array(
"ピカソ" => array(
"出身地" => "スペイン",
"性別" => "男",
"タイプ" => "キュビズム",
"代表作" => "自画像"),
"ゴッホ" => array(
"出身地" => "オランダ",
"性別" => "男",
"タイプ" => "印象派",
"代表作" => "ひまわり"),
"モロー" => array(
"出身地" => "フランス?",
"性別" => "男",
"タイプ" => "神秘派",
"代表作" => "出現")
);
echo $artist["ピカソ"]["出身地"]."<br>";
echo $artist["ゴッホ"]["代表作"]."<br>";
echo $artist["モロー"]["出身地"]."<br>";
?>
項目をどれか一つ(一人)に絞れば大丈夫みたいなんですが、、
どこか間違ってるでしょうか。こんなので4時間くらいはまっています…
0214nobodyさん
2007/01/27(土) 21:25:44ID:8H08hEUCスイマセン エラーの内容は、全く何も画面に表示されないんです
ググッて調べたりもしたんですが、上手くいかないんですよねー
phpは5だけど、バージョンが関係するような大した物じゃないし。。
0216nobodyさん
2007/01/27(土) 21:34:14ID:???PHP5の自鯖環境で、>>210のコードをコピペしたら、
普通に↓のように出力されましたが・・・
スペイン
ひまわり
フランス
0218nobodyさん
2007/01/27(土) 21:36:37ID:8H08hEUCアドバイスありがとうございます。
しかし文字コードは関係ないような。。単純に配列の要素を減らしたら表示されるんです。
↓みたいのならOKです
<?php
$artist = array(
"ゴッホ" => array(
"出身地" => "オランダ",
"性別" => "男",
"タイプ" => "印象派",
"代表作" => "ひまわり")
);
echo $artist["ゴッホ"]["代表作"];
?>
0220nobodyさん
2007/01/27(土) 21:44:10ID:???じゃあいいです
0223nobodyさん
2007/01/27(土) 21:52:18ID:???だからそんなのは関係ない。
文字コードが原因。
>>216の環境では実行できる。
>>210の環境では実行できない。
こんな単純なコードが実行環境によって変わると思うか?
変わるのは表示している環境。
0225nobodyさん
2007/01/27(土) 21:57:32ID:8H08hEUC?とっても結果同じでした。
すみません
>>223
文字コードですか…
phpの保存形式もphpのcharsetもShift-jisです。
自分なりに調べたりしてますが、文字コード良くわからないんです まいったな
0226nobodyさん
2007/01/27(土) 22:00:00ID:M7VqTPnR具体的に文字コードの何?
SJISで2次元配列使うとダメなんですか?
パッとみエスケープするべき文字は
入ってない気がするんだけど。
ひょっとしてEUCでもKEYに'〜'とか使ったらおかしくなります??
0227nobodyさん
2007/01/27(土) 22:04:38ID:51nHlwTUmb_send_mail関数から送ったメールのタイトルの最初に ”ご"という文字が入っていると文字化けするのですが
なにか対処法があるますでしょうか?
mb_language(ja)やっても同じですしmb_internal_encodingはEUCです。
ちなみに"ご"という前に空白とか入れると問題ないですし逆に最初に "ご"を入れると次の文字も化けています。
0228nobodyさん
2007/01/27(土) 22:06:12ID:???internalでEUCです。
0229nobodyさん
2007/01/27(土) 22:08:32ID:???ttp://homepage1.nifty.com/nomenclator/perl/shiftjis.htm
0230nobodyさん
2007/01/27(土) 22:09:43ID:???すまん俺の恥ずかしい勘違いでした
>>225
うちの環境ではSJISでは空白、EUCで保存するとうまくいったよ
0231nobodyさん
2007/01/27(土) 22:12:31ID:M7VqTPnR2次元配列って"を使ったときの挙動おかしい??
echo "$arr["hoge"]["hage"]";だと展開されずにエラーになる。
echo $arr["hoge"]["hage"];だと上手く行く。
一番良いのは
echo $arr['hoge']['hage'];っぽい。
これだとおっぱい括弧要らない。
0234nobodyさん
2007/01/27(土) 22:19:43ID:8H08hEUCピカソ がトラブルの原因ですか。。 そんなの想像も出来ないですね
アドバイスにしたがってEUCで対応しようと思いますが、
<meta http-equiv="content-type" content="text/html; charset=EUC">
で、
保存形式もEUCにしたのに、ローカルテストで化けています。
トクトクのレンタルスペースならちゃんと表示するのに…
そろそろウザイですね、、文字コード勉強しなおしてみます
皆さんありがとうございました。<(_ _)>
0235nobodyさん
2007/01/27(土) 22:21:13ID:???0239nobodyさん
2007/01/27(土) 22:33:10ID:???print_r(藁
正直知らん。
二次元配列でも、配列の中の値はただの配列だから
普通にやればいいんじゃないかな。
辞典買ったけど、二次元配列用に便利な関数とかは特に無かったと思う。
0241nobodyさん
2007/01/27(土) 22:37:15ID:???最初は皆そんなもんだろ。
英語圏だったら良かったのにって何度思ったことか…
ところでユニコードでセキュリティの
大問題が発見されたみたいだけどPHPは大丈夫なのかな?
後で試してみるけど。
0242nobodyさん
2007/01/27(土) 22:56:37ID:???あんまりオススメできない気がするが
0244nobodyさん
2007/01/27(土) 23:02:29ID:u45Vq17Aこの文字列をsplitにより,で分割(ただしカッコ内は除外)するにはどういう正規表現にすれば良いですか
0245nobodyさん
2007/01/27(土) 23:12:12ID:???普通は戻るボタンをクリックすると先ほどの文字が記入したままになっているのですが
フォームのphpファイルでセッションを使っていると記入した文字が消えてしまいます。
記入したままにするにはどうしたらいいでしょうか?
よろしくお願いします。
0246nobodyさん
2007/01/27(土) 23:22:46ID:???クライアントのリクエストに対して
動的に生成するページでは
戻るとフォームは空になる
POST して戻らせるようにすればいい
0247nobodyさん
2007/01/27(土) 23:40:55ID:SMgvGaRS(俺鯖のメールをPHPに渡して処理させるスクリプトで)
ほかに同じ人いますか?
0248nobodyさん
2007/01/27(土) 23:44:18ID:???どゆこと?
0249nobodyさん
2007/01/27(土) 23:45:37ID:???その文字列なら楽勝
split(', ', "name , type, value, primary key(name,type)");
0252247
2007/01/27(土) 23:56:48ID:SMgvGaRSええっ
そうなんですか?
$_SERVERに同じのがセットされてるようなのでそれで間に合わせましたよ
getenv関数は思いつかなかった
サンクスです
#もしかしてqmailの設定いじることになるのかと思って頭が真っ白になった
#しかしなんでこう覚えておくのが多いのか
#昔やった設定なんか綺麗サッパリ忘れとるがな
0253245
2007/01/28(日) 00:29:50ID:???0254244
2007/01/28(日) 00:40:37ID:???0255nobodyさん
2007/01/28(日) 00:40:45ID:DJ+K1g0bそれは腕のないプログラマーの話じゃない?
俺が今修正させられてるサイトは、バカが作ったプログラムだから、フォームが全部POST。
ちゃんと考えて作られてれば問題ないんだけど、ユーザーがブラウザの戻るボタンを押したら
二重注文とか、エラーで最初からやり直しとか、操作は最後まで完了できてるけど
予約が入ってないとか、そんなんばっか。
腕がないんだったら(ユーザーがどんな操作をするか予測する能力がない)、最初からGET
で作って、GETで操作されても問題ないフォーム作りを心がけた方がいい。
3つぐらいステップアップできるよ。
0256nobodyさん
2007/01/28(日) 00:43:50ID:???http://www.bulldog.co.jp/
0257nobodyさん
2007/01/28(日) 00:45:06ID:???0258nobodyさん
2007/01/28(日) 01:21:00ID:???入力ページの次の画面で、フォームの値をセッションに入れているなら、
もとの入力ページを表示する際に、セッションから値を引いてフォームに入れる。
セッションに値が無い時(そのページに初めて来た時など)は、デフォルト値を入れる。
ブラウザのキャッシュは切る。
0259nobodyさん
2007/01/28(日) 02:05:07ID:???超めんどくさい
それと、253は245じゃありません
>>253
いい加減にしろよ
IPアドレス見えてないとでも思ってるのか
0260nobodyさん
2007/01/28(日) 02:12:01ID:???0261nobodyさん
2007/01/28(日) 02:18:50ID:???IP でんでん(なぜか変換できない)言っても
釣られるやつはいないだろ
0263nobodyさん
2007/01/28(日) 02:25:07ID:???0265nobodyさん
2007/01/28(日) 02:50:49ID:???0266nobodyさん
2007/01/28(日) 02:58:09ID:???0268nobodyさん
2007/01/28(日) 03:13:10ID:???0269nobodyさん
2007/01/28(日) 05:32:59ID:???例えば
$a = "abcdefg";
ならabcdeを抜き取って
$a = "fg";
にしたい。
0271nobodyさん
2007/01/28(日) 10:15:08ID:???あっ?かわいそうなのはテメェだろwwwwwwwwww
今、お前のIP抜いて解析かけてるから、覚悟しろよww
お前の個人情報をここにさらしてやるよwwwwwwwwww
謝るならいまのうちだぞwwwwww後で泣きっ面するなよ!低脳君wwwwwwwwwwwwwwwwwwww
0272nobodyさん
2007/01/28(日) 10:40:41ID:???0273nobodyさん
2007/01/28(日) 11:38:52ID:???0274nobodyさん
2007/01/28(日) 11:47:15ID:???新しく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行とまったく同じのを手書きしたら動いた
もうさっぱりワケワカンネ
0275nobodyさん
2007/01/28(日) 12:03:43ID:???0277nobodyさん
2007/01/28(日) 12:13:56ID:???0278nobodyさん
2007/01/28(日) 12:30:01ID:???PHP4.4.4でFreeBSD6.1、APACHEが1.3.37って
ひょっとしてさくらの共有サーバー?
PHP5で個人的なサイト作りたいんだけど
専用借りるのも高いし、自鯖じゃ電気代かかるし
良いとこないかな。
0281nobodyさん
2007/01/28(日) 14:06:01ID:???いろいろ批判とかもあるけど・・・
0282nobodyさん
2007/01/28(日) 14:34:20ID:???0283nobodyさん
2007/01/28(日) 14:46:43ID:???string(0) ""
と帰ってきました。これは空の変数ではないんでしょうか??
issetやemptyなどの関数では値があると帰ってきてしまいます。
ifとかで条件分岐するにはどうしたらいいんでしょうか・・・
0285nobodyさん
2007/01/28(日) 14:58:08ID:???まず、「string(0) ""」は、「文字列型で長さが0、実際の値として""」を意味す。
それが、issetやemptyでどう評価されるかと言うと、
ttp://www.php.net/manual/ja/types.comparisons.php
のようになる。
0287nobodyさん
2007/01/28(日) 15:08:30ID:???それは思ったんですが、どっちも文字コードEUCの改行LFのみでやってるんですよね
念のためバイナリエディタで見てもちゃんと0Aでしたし
>>276
使用エディタは秀丸で、タブ・半全角スペースは表示するように設定してるので
>>277
目が痛くなるくらい眺め回しました
ブラウザに表示されたもののソースは見ても意味無いので見てませんが
>>278
そです
さくらのFAQ見ても改行コードとか文字コードとかしか書いてなくて、イマイチすっきりしません・・・
ttp://www.appletz.jp/ とかどうですか
確かPHP5使えたはずですが
さくらほど安くないですけどね・・・
0289nobodyさん
2007/01/28(日) 15:59:41ID:lDMu9zNshttp://mbga.jp/AFmbb.rTGw28263c/
0291nobodyさん
2007/01/28(日) 16:57:47ID:???0292nobodyさん
2007/01/28(日) 16:58:15ID:???それ以外なら動くっしょ。
コピペして文字コード変わってるとか?
直接打ってるのと違うとしたらここら辺ぽいけど
日本語入って無いなら関係ないよな。
多分、なんかしら勘違いだと思うけど。
0293nobodyさん
2007/01/28(日) 17:26:37ID:???やっぱなんか勘違い?
まさか
require "php_config.php";
$link = mysql_connect($sql_server, $sql_user, $sql_user_passwd);
mysql_select_db($web_database_name);
ってprint含まれてないけど・・
0294nobodyさん
2007/01/28(日) 17:39:13ID:???0295nobodyさん
2007/01/28(日) 17:41:54ID:???1. ツール使ってファイルを比較しろ
2. パーミッションを確認しろ
3. エラーが起きたら分かるようにしろ(display_errors設定しろ)
4. 下らねぇ質問はここに書き込みやがれ
0296nobodyさん
2007/01/28(日) 17:47:04ID:???コピペ時に丸ごとprint文消しちゃったんだろw
これなら白紙でエラーが出ないのも納得だ。
requireは最初に書くことが多いし間違いないと思う。
requireの失敗はwarningじゃなくてfatal errorだから
さくらの通常設定時でも表示される様な気がする。
もうね、あほかと馬鹿かと…
0297nobodyさん
2007/01/28(日) 17:55:51ID:s3/X511eその文字列のうちある文字列が入っている以降のデータをほしい場合とかどうしたらいいでしょうか?
例えば$str='abcdefgh';があってdefという文字列以降がほしい場合とか。
0298nobodyさん
2007/01/28(日) 17:59:34ID:???0299nobodyさん
2007/01/28(日) 18:03:17ID:/Lwtdyv90300297
2007/01/28(日) 18:10:10ID:s3/X511e0301nobodyさん
2007/01/28(日) 19:07:21ID:???0302nobodyさん
2007/01/28(日) 19:15:59ID:CE5BMVcn0303nobodyさん
2007/01/28(日) 19:18:17ID:???ttp://www.php.net/manual/ja/index.php
で「関数一覧」
0304302
2007/01/28(日) 19:28:52ID:???たとえばここのアドレス
1169644229を○月○日○時○分に変換することは可能でしょうか?
0306nobodyさん
2007/01/28(日) 19:35:28ID:???0307nobodyさん
2007/01/28(日) 19:35:56ID:???SJIS環境で年とかをdate関数に入れて整形しようとすると
date関数がマルチバイトに非対応の為、文字化けするから工夫が必要。
0310nobodyさん
2007/01/28(日) 20:09:49ID:???そのへんは無いです
目が痛くなるほどしらみつぶしに見て確認済み
>>295
1. 例の3行以外まったく違うので・・・ファイルの一部だけ比較できるツールとか知らないので・・・
2. 755です、てか転送直後の644でも動きます
3. もともとONなの、phpinfo()で確認済み&エラー表示無しの白紙です
4. 今この辺
0311nobodyさん
2007/01/28(日) 20:54:20ID:???0314nobodyさん
2007/01/28(日) 21:41:38ID:???0315nobodyさん
2007/01/28(日) 21:58:35ID:???0316nobodyさん
2007/01/28(日) 22:02:23ID:???具グッ太限りではテンプレートみたいなのに沢山種類があって、
困ってしまいます。
0317nobodyさん
2007/01/28(日) 22:09:16ID:???0318nobodyさん
2007/01/28(日) 22:32:27ID:sRWETkcM具グッ太限りではテンプレートみたいなのに沢山種類があって、
困ってしまいます。
0319nobodyさん
2007/01/28(日) 22:34:03ID:CE5BMVcnその時間になるとメールを送信したい。
のですが、どうやるとできるでしょうか?
0320nobodyさん
2007/01/28(日) 22:36:59ID:???とりあえず本家マニュアル http://www.php.net/manual/ja/
>>319
cronとかで定期的にDBをチェックしてメールを送るスクリプトを呼び出す
0322320
2007/01/28(日) 22:56:24ID:???0323nobodyさん
2007/01/28(日) 22:57:30ID:???何もわからんやつはとりあえず本屋行って入門本を立ち読みして選んで買って来い
リファレンスは本家のサイト行け
0324nobodyさん
2007/01/28(日) 23:29:59ID:40Chmc0U配列の中身をechoするとなぜか中身が全部 a になってしまう現象に心当たりのある人いませんか?
0325nobodyさん
2007/01/28(日) 23:30:43ID:???現在MySQL3を使っているのですが、そのままバージョンを5に上げても大丈夫ですか?
0327nobodyさん
2007/01/28(日) 23:36:03ID:???文字化けについては
UTF-8からUTF-8
EUC-JPならEUC-JPで保存しています。
それをphpMyAdminで閲覧、編集しています。
phpMyAdminはいろいろな文字コードでページを切り替えてるのですが、
これは邪道なのでしょうか・・・?
0330nobodyさん
2007/01/29(月) 00:12:31ID:pElYphps$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 と表示される。
}
生ソース貼ろうにもファイルとか他の関数とかあるからどうしたものだか・・・
0331nobodyさん
2007/01/29(月) 00:50:57ID:???試してみたが、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";
}
0332nobodyさん
2007/01/29(月) 00:51:02ID:???---------------------
$ary[url] = 'http://www.google.com';
$ary[name] = 'google';
print_r($ary);
hoge($ary);
function hoge($ary){
var_dump($ary); // ここは配列の内容が出る
echo $ary['url']; //ここは a と表示される。
}
---------------------
だとどうなのよ
多分ファイルの中身の問題じゃない?
0333332
2007/01/29(月) 00:51:47ID:???ついでに突っ込んでおこう
function hoge($ary);
が二回あるぞ
0334330
2007/01/29(月) 01:05:54ID:pElYphpsあああ、すんません。
最初のは普通に呼び出すつもりでした。
>>331
ですよね。普通出ませんよね。
file_put_contents知らなかった・・・
自作関数作ってまわしてました。これだけでも感謝。
>>332
print_rのところで関数内と同じ結果が表示されました。
0335nobodyさん
2007/01/29(月) 01:14:44ID:???$ary = file_get_contents($file名);
var_dump($ary);
$ary = unserialize($ary);
var_dump($ary);
hoge($ary);
0336330
2007/01/29(月) 01:33:41ID:pElYphps今日は寝てまた明日試してみます。
ありがとうございました。
なんで a なんだろなぁ(;´Д`)
0338nobodyさん
2007/01/29(月) 01:44:00ID:???0339nobodyさん
2007/01/29(月) 06:46:21ID:???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が出力された、っていう釣りだったんでしょ。
0340nobodyさん
2007/01/29(月) 09:12:19ID:???class hoge {
function test() {
$str = preg_replace_callback('/hoge([0-9]{3})/','hogehoge', $str);
}
function hogehoge($str) {
処理
}
}
この場合の処理になります。
hogehogeでも$this->hogeでもできませんでした
0341軟式PHP
2007/01/29(月) 09:17:26ID:???$str = preg_replace_callback('/hoge([0-9]{3})/',array('hoge','hogehoge'), $str);
でどうでせう。
第2引数に、array(クラス名、関数名)
0344nobodyさん
2007/01/29(月) 09:40:23ID:???0345nobodyさん
2007/01/29(月) 09:44:18ID:N9zbSBSF0346nobodyさん
2007/01/29(月) 09:46:00ID:???0347軟式PHP
2007/01/29(月) 09:47:14ID:???0348340
2007/01/29(月) 09:59:30ID:???そうなんですか^^
応援してます!
また、機会ありましたらご回答いただければと思います
0349nobodyさん
2007/01/29(月) 10:23:00ID:???0350nobodyさん
2007/01/29(月) 10:39:20ID:???0351nobodyさん
2007/01/29(月) 11:17:59ID:???0352軟式PHP
2007/01/29(月) 11:40:53ID:N9zbSBSF0353nobodyさん
2007/01/29(月) 12:52:48ID:???mainだけでなく、Cのライブラリを呼ぶことってできるんでしょうか?
今は、Cのライブラリに入っている関数を、一つ一つ分割して、mainとして扱っているのですが
面倒くさくてしょうがないので、何か良い手段があったらお願いします。
0354nobodyさん
2007/01/29(月) 13:14:50ID:N9zbSBSF質問者はageてIDを出すと回答を得やすいですよ。
システムコマンドとして実行出来るのであれば出来る、そうでないなら出来ない。
0355nobodyさん
2007/01/29(月) 14:22:44ID:Uw0aytwH$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'].);
って書くのとどちらが良いと思われますか?
0356nobodyさん
2007/01/29(月) 14:43:26ID:N9zbSBSF$sqL="select * from table where culumA='{$_POST['A']}' and culumB='{$_POST['B']}";
が一番読みやすいのではと思っている。
0357nobodyさん
2007/01/29(月) 14:45:56ID:MdfhpFZP0358nobodyさん
2007/01/29(月) 14:48:33ID:N9zbSBSFsqliteスレへどうぞ・・
http://pc10.2ch.net/test/read.cgi/db/1162621344/
0359nobodyさん
2007/01/29(月) 14:52:05ID:???0360nobodyさん
2007/01/29(月) 14:52:46ID:???0361nobodyさん
2007/01/29(月) 15:29:27ID:Uw0aytwHそうなんです。
他の人にソース渡した時どちらが読みやすいかなーって悩んでたんです。
わかりました、ありがとうございました。
0363nobodyさん
2007/01/29(月) 15:42:38ID:CnmZSkwXあれはどうやって実現してるのでしょうか?
0364nobodyさん
2007/01/29(月) 15:45:17ID:???時間の指定はdateで。
しかしあれをPHPで書いてるとは思えんがな
0365nobodyさん
2007/01/29(月) 15:47:06ID:N9zbSBSFちったぁ考えたり調べたり勉強してから質問しろ。
せめてこう考えて、試したんですけど出来ませんでした・・ぐらいにして欲しいし、自分のためにもなる。
0368nobodyさん
2007/01/29(月) 15:49:33ID:zoLvlQlg$str = htmlentities($str);
echo $str;
で、$strが文字化けしてしまいます。
なぜ文字化けしてしまうのでしょうか
0369nobodyさん
2007/01/29(月) 15:49:51ID:N9zbSBSF0371363
2007/01/29(月) 15:53:28ID:???どうやってできますか?
>なんでPHPに拘るのかね
ほかに質問するスレがなかったからです
0372nobodyさん
2007/01/29(月) 15:53:56ID:???0373nobodyさん
2007/01/29(月) 15:54:33ID:???これでもくらえっhttp://www.vector.co.jp/soft/win95/util/se115105.html
0374372
2007/01/29(月) 16:00:18ID:kMiRiwy42回目以降のsetcookieでクッキーが保存されないんです
0375363
2007/01/29(月) 16:00:26ID:???cronって、毎分実行するんですか?負荷がかかりそう…
ヤフオクはcronでやってるの?
>>373
ええと、そういうツールではなく…
0376nobodyさん
2007/01/29(月) 16:02:12ID:Oci230Rvいっつもそれで逃げんなよwww
0377nobodyさん
2007/01/29(月) 16:02:24ID:???http://www.keygen.us/
0378nobodyさん
2007/01/29(月) 16:04:20ID:???0379nobodyさん
2007/01/29(月) 16:13:59ID:N9zbSBSF0380nobodyさん
2007/01/29(月) 16:18:24ID:???「ついsageくせで」という言い訳無用
0381nobodyさん
2007/01/29(月) 16:18:43ID:???0382nobodyさん
2007/01/29(月) 16:20:50ID:???0383nobodyさん
2007/01/29(月) 16:21:20ID:???0384nobodyさん
2007/01/29(月) 16:22:51ID:???0385nobodyさん
2007/01/29(月) 16:23:39ID:???質問者以外もID晒すべき
0387nobodyさん
2007/01/29(月) 16:38:53ID:???0389nobodyさん
2007/01/29(月) 16:44:23ID:+SKjWWSugoogleで検索したところ、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)
0390nobodyさん
2007/01/29(月) 16:45:13ID:???0391nobodyさん
2007/01/29(月) 16:53:06ID:???質問者はそれを理解したうえで質問するように。
0393nobodyさん
2007/01/29(月) 16:57:50ID:N9zbSBSFレベル高いなら間違い指摘してあげればいいじゃん。
口だけならいくらでも言えますよね。
0397nobodyさん
2007/01/29(月) 17:32:54ID:N9zbSBSF残念ながらマックって時点で回答出来る人が相当絞られるんですよね。
勉強中ならまずは中古windowsでも買ってLinux(redhat系,vine linuxとか)ですることをオススメする。
情報も多いし。
0398nobodyさん
2007/01/29(月) 17:38:19ID:???http://bugs.php.net/bug.php?id=37756
http://bugs.mysql.com/bug.php?id=20362
・mysqlとlibcryptoの衝突によるものの可能性あり(phpのバグではないのでスレ違い)
・mysqlのバージョンを4.2.1に落としてphpをインストール後にmysqlをアップグレードすればうまくいくかもしれない
・--with-mysql と --with-curl を一緒につけてconfigureすると問題が再現する
0399389
2007/01/29(月) 17:45:21ID:???どうもありがとうございます。
MySQLもそうなのですが、apache2でpcre関連がエラーになるのが困ってます。
エラーが multiple definitions of symbol ですので、phpとapacheとでpcreが
重複して使われているということなんでしょうか。
でもモジュールなんだから関係ないように思うんですが、そうでもないんでしょうか。
どなたかMacOS X(Tiger)でPHP5.2.0のコンパイルに成功された方はおられませんか。
何人かいらっしゃると思うのですが。
0400nobodyさん
2007/01/29(月) 17:49:33ID:FPNoJzhrclass 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)を受け取るとかっていう方法は無いものなんでしょうか。
そもそもこういうの利用法は根本的に間違ってたりしますか?
よろしくお願いします
0401nobodyさん
2007/01/29(月) 17:56:28ID:???0402nobodyさん
2007/01/29(月) 18:10:09ID:???最後の2行のような、排他的な呼びかけは関心しないな。
まあいいや。
とりあえず、おまいさんのと極めて似たエラーメッセージのやつが、398の内容で解決したと書いている。
http://www.webmasterworld.com/macintosh_webmaster/3077987.htm
0403389
2007/01/29(月) 18:15:18ID:???エー、排他的ですか?そうかなあ。
まあいいや。
>>402のページは見たんですが、apacheの問題であってmysqlは関係ないだろうと
思ってパスしてました。
おっしゃるように、mysql4.1いれてupgradeを試してみます。
ありがとうございました。
0404nobodyさん
2007/01/29(月) 18:20:52ID:???つーか、configureの引数を最小限にして試すなど、最低限のことは確認してから質問しに来ましょう。
0405nobodyさん
2007/01/29(月) 18:38:47ID:???できないと答えたほうがいいのかな
なにをしたいのかがちょっとわかりにくい
単にメンバ変数 var をAとB両方で共通に使いたい
というだけならできるけど、
>あまりオブジェクト指向とかよくわかってなくて
という状態ならあまりお勧めはしない
0406nobodyさん
2007/01/29(月) 18:42:51ID:???0407nobodyさん
2007/01/29(月) 18:46:51ID:???class Aのexecの中にある$oは何のためにあるんだろう?
これも$o->exec()をするのかな?
>class Bから「class Aでセットされた値(2)」を受け取る
ってことだけど、「class Bから」ってのが、class Bのクラス内からという意味なのか、class Bを通して外部からという意味なのか。
0410nobodyさん
2007/01/29(月) 18:49:37ID:49CgLh+gフォームと処理を別のファイルに分けています。(form.html,pass.php)
そこで一つのファイルにまとめてみたんですが、パスワードを入力した後も
フォームの部分が残ってしまいます。
フォーム部分を残さず、且つ一つのファイルで認証ページは作れますか?
よろしくおねがいします。
0411nobodyさん
2007/01/29(月) 18:54:38ID:Q3+Suxva対処法を教えてください先生!
0412nobodyさん
2007/01/29(月) 18:57:06ID:???0413411
2007/01/29(月) 18:57:42ID:???0414nobodyさん
2007/01/29(月) 18:58:43ID:???<?php
if (...) { ...; exit(); }
else if (...) { ...; exit(); }
else { ...; }
?>
0418410
2007/01/29(月) 19:09:47ID: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();を入れてもダメでした…。
0419nobodyさん
2007/01/29(月) 19:16:41ID:???ちょっとくらい、"自分で考える"という行動にはでないのか…
ちょっとでもわからなければ、人に聞く…
これが、ゆとりの影響か…
0421nobodyさん
2007/01/29(月) 19:29:20ID:???<?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;
}
?>
0424410
2007/01/29(月) 19:39:22ID:49CgLh+gマニュアルも見て418のソースを作ったんですが、その先がわからなくて…。
>>421
ありがとうございます。無事実行できました。
自分のせいで場を荒らしてしまって申し訳ないです。
もっと精進します。。
0425nobodyさん
2007/01/29(月) 19:39:53ID:???今、思いついたんだけど、2つのファイルに分ければよくね?
例えば、form.htmlとpass.phpに・・・
もしかして俺って天才?
0428nobodyさん
2007/01/29(月) 20:02:18ID:???マニュアルくらい誰でも読んでるっつーの
それでもわからないから質問してんだろ
それくらい気づけよ(自分ができたからと言って他人ができるとは限らない)
とりあえずソース書いたりわかることだけを書け
回答が見つからない能無しは発言するな
以上
0429nobodyさん
2007/01/29(月) 20:05:55ID:???はいはい。
教えてもらう立場のド素人が必死ですねw
だから、お前が全て完璧に回答すれば済むはなしだろ。
どう回答しようが、書き込む奴の勝手。
>>410みたいに何も考えずに丸投げするような奴にはマトモに回答しないのも回答者の勝手。
お前がそういう事を言える立場ではない。
0430nobodyさん
2007/01/29(月) 20:14:44ID:ZRpW4KNd0431428
2007/01/29(月) 20:23:51ID:???おまえアホっぽいからもう1度言うぞ?
とりあえずソース書いたりわかることだけを書け
回答が見つからない ”能無し” は発言するな
以上
0432nobodyさん
2007/01/29(月) 20:25:27ID:???0435428
2007/01/29(月) 20:35:01ID:???ぶっちゃけ俺は、このスレで一番詳しい
次の質問があと30分以内にきたら答えたるわ
30分過ぎたらなしね 明日忙しいから寝る
どんな質問でもいいぞ さくさく回答したるわ
0436nobodyさん
2007/01/29(月) 20:36:53ID:???0437nobodyさん
2007/01/29(月) 20:38:46ID:???0438nobodyさん
2007/01/29(月) 20:39:51ID:???質問する側として、貴方みたいな人に答えて欲しくない。
貴方一人よりも、他の何十というスレの人間が頼りになる。
質問者が遊ばれるのは、遊ばれるような質問内容だから。
ちゃんとテンプレ読んでればまともな質問するからそれに応じてちゃんと答えてくれる。
// 縦読みじゃないYO
0440nobodyさん
2007/01/29(月) 20:47:42ID:ycTHzwA7foreach ($array as $value){
echo $value;
}
で、表示結果が「tuv」になってしまいます。
なぜなのでしょうか?
0441428
2007/01/29(月) 20:49:33ID:???ああそうかい
じゃあ俺はもう二度と答えないことにするよ
遊ばれるような内容の質問なら、答えずにバカにして遊んであげる
俺が抜けた穴はお前が埋めてくれ(お前がどれほどのスキル持ってるか知らないけど)
せいぜいがんばれ
0442nobodyさん
2007/01/29(月) 20:50:27ID:???0444nobodyさん
2007/01/29(月) 20:53:02ID:???"簡単に"はいらんわ
0446428
2007/01/29(月) 20:57:06ID:???文字コード確認しろ
>>442
それを察して回答することもできない能無しは発言するなと何度言えば(ry
>>443>>444>>445
わざわざ回答してあげてるのになぜID出す必要がある?
0447nobodyさん
2007/01/29(月) 20:57:48ID:???0449nobodyさん
2007/01/29(月) 21:01:39ID:???>それを察して回答することもできない能無しは発言するなと何度言えば(ry
何度言っても無駄なのが2ch
特にお前みたいなキャラがスレの流れをまともに持っていけたのを見たためしが無い
5年ぐらいROMったら?
0450nobodyさん
2007/01/29(月) 21:02:21ID:???0452nobodyさん
2007/01/29(月) 21:21:57ID:ycTHzwA7SJISです
0453nobodyさん
2007/01/29(月) 21:33:32ID:???ブラウザがどう文字コード読み間違っても"あいう"が"tuv"にゃならん気がするが
ソースは
<?php
$array = array('あ','い','う');
foreach ($array as $value){
echo $value;
}
?>
だけなのか?
別なファイルをアップしてたり間違ったURL指定してるってことは無いか?
0455nobodyさん
2007/01/29(月) 21:47:54ID:???0456nobodyさん
2007/01/29(月) 21:51:22ID:5v2qtpojという変数がある場合に、
MainModel::execute();
~~~~
↑を$actionを用いて記述したい
というように関数を実行したいのですが、どのように記述すれば良いですか?
// {$action}Model::execute(); みたいにやっても駄目でした。。
0458nobodyさん
2007/01/29(月) 22:00:28ID:???0460nobodyさん
2007/01/29(月) 22:27:39ID:aYLBeI0p0461nobodyさん
2007/01/29(月) 22:48:38ID:???http://pc9.2ch.net/test/read.cgi/software/1093859040/
0462nobodyさん
2007/01/29(月) 22:53:05ID:+RdUXIWpローカル環境では最終行まで表示されます。
レン鯖で実行すると、ブラウザへ表示される行数が約3000行になります。
但し、php自体は最後まで処理が終わっています。
php.iniの設定か何かでブラウザへ表示させる行数かサイズか何か制限する方法でもあるのでしょうか?
0463nobodyさん
2007/01/29(月) 23:06:33ID:???0464nobodyさん
2007/01/29(月) 23:20:17ID:???0465462
2007/01/29(月) 23:22:06ID:+RdUXIWp2-3分かかるので
set_time_limit(300);
で伸ばしています
0468nobodyさん
2007/01/29(月) 23:47:22ID:???0469nobodyさん
2007/01/29(月) 23:49:22ID:???\(.\ ノ
0470nobodyさん
2007/01/29(月) 23:57:56ID:???0473nobodyさん
2007/01/30(火) 00:34:34ID:MllPmN0I0474nobodyさん
2007/01/30(火) 01:41:37ID:???$this->hoge();
0475nobodyさん
2007/01/30(火) 02:13:22ID:???-> って何ですか?
ググってもでてこないので・・・
0476nobodyさん
2007/01/30(火) 02:14:55ID:???0477nobodyさん
2007/01/30(火) 02:22:49ID:yyajzISr俺も最初のこういうのが一番分かり難くて二度ほど挫折したよw
その後なんとか自力更生wしたけどw
>>475
アロー演算子でぐぐれ
0478nobodyさん
2007/01/30(火) 02:32:55ID:???余計な時間とストレスが発生するコストと比べたら安いもんだよ
0479nobodyさん
2007/01/30(火) 02:53:06ID:???http://jp2.php.net/manual/ja/index.php
マニュアルの言語リファレンスのところ読んでけば書いてあるじゃん・・・
0480nobodyさん
2007/01/30(火) 05:19:34ID: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で表示したとき文字化けしてしまうのですが…
時間に余裕がある方、ご回答いただけるようよろしくお願いします。
0481nobodyさん
2007/01/30(火) 05:24:38ID:???Dreamweaverで作ってるのかな?
だったら、ページプロパティのタイトル/エンコーディングでEUC-JPを指定してリロード
統一しておいたほうがいいと思う、全部
特に携帯のサイトとか作る予定がなければ
0482nobodyさん
2007/01/30(火) 06:14:48ID:kaI1ZM+Oアドバイスありがとうございました
いえ、DreamWeaverじゃないんですが、phpのファイルをいじる度に
思わぬところで文字化けが起きるので、早いうちに理由と解決法を
ハッキリさせたいと。。
メタタグ部分はともかく、htmlまでEUC形式で保存するなんて
考えてもいなかったので、この辺が特に気になります
0484473
2007/01/30(火) 07:08:09ID:tblkgqsBparent::hoge()だと動作するのですが、$this->hoge()だと
Fatal error: Using $this when not in object context in ...
というエラーが出力されます。
親クラスでも子クラスでも特別な宣言は必要ないんですよね?
おかしいなぁ・・・/^o^\オワタ
0485nobodyさん
2007/01/30(火) 07:26:00ID:???携帯サイト作るとき苦労するじゃん・・・
0486nobodyさん
2007/01/30(火) 08:55:57ID:???euc-jpにしろutf-8にしろ最悪な文字コードを使い理解する事で
原因追及するフローが脳内に癖付くとツマンネ事で時間食わなくて良いから
QAする時もeuc-jpやutf-8でしか組まない奴より回答が出しやすいし
自分がeuc-jpやutf-8で生きているから、思い込みでsjis使うなんて想定して考えないので
QAも袋小路の死の洞窟を回ることとなる場合が多くなる
0488nobodyさん
2007/01/30(火) 09:09:53ID:???0489nobodyさん
2007/01/30(火) 09:34:35ID:GaOLdV5Z俺もだよ
特にオブジェクト指向系はむかつくな
で、何が違うっていうとPerl上がりの人が多いからだ
0490nobodyさん
2007/01/30(火) 10:34:26ID:???0491nobodyさん
2007/01/30(火) 10:36:02ID:???SQLインジェクションが可能なのでどっちもダメ。
PDO使ってプリペアードするのが正解。
>>456
$class = $action.'Model';
$class::execute();
>>484
スタティックなメソッドをスタティック呼び出ししたんだと思う。
よって>>487
0493nobodyさん
2007/01/30(火) 10:59:10ID:???0494411
2007/01/30(火) 11:02:45ID:???日付越えのレスでアレですが、だめでした。
ぐぐってみたら「ソ\」ならいけるということで今はソ\でやってます。
しかし当たり前ですがファイルには「ソ\」のまま保存されてしまい再利用の時不都合がいろいろ起きるので
ソだけEUCで読み込むとかいろいろ試してます。ありがとうございました。
0495491
2007/01/30(火) 11:37:42ID:???$thisが使えるのは$thisがインスタンスの場合のみ。
スタティックなら↓で呼び出すこと。
クラス名::hoge();
0496nobodyさん
2007/01/30(火) 12:49:11ID:MwtZLe+V私のサーバ(Bサーバ)上のtest.xmlを比較して、
もしAサーバ上のtest.xmlが更新されていれば
Bサーバにダウンロードし上書きする、
というようなシステムを作りたいんですが、
どの様にするのが一番軽いでしょうか?
filemtime、filesizeで比較対象を取得出来ればと思ったんですが
違うサーバ上にあるファイルからの取得が無理っぽいので。。
0497nobodyさん
2007/01/30(火) 12:50:37ID:???0502496
2007/01/30(火) 13:14:11ID:???エラーが出るんです
Warning: filesize(): Stat failed for 〜っていう
>>501
そういう事です
0504496
2007/01/30(火) 13:18:59ID:???$file1 = filemtime($a_path);
$file2 = filemtime($my_path);
if ($file1 != $file2) { 〜 };
って書いてますが…
0506nobodyさん
2007/01/30(火) 13:38:51ID:0DsgTBF0<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)で表示するやり方がわかりません。
誰か教えください!
0507nobodyさん
2007/01/30(火) 13:39:24ID:DjPp8hxsfilemtime()にHTTPのURLを突っ込んでるのなら無駄だぜ。
HTTPはstat()をサポートしてない、だからfilemtime()もサポートしてないってさ。
http://jp.php.net/manual/ja/function.filemtime.php
↓
http://jp.php.net/manual/ja/wrappers.php
↓
http://jp.php.net/manual/ja/wrappers.http.php
って辿ったらわかったことだ。
0508nobodyさん
2007/01/30(火) 13:39:31ID:???その違うサーバからのファイルの取得って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]);
テキトーでスマソ
0510496
2007/01/30(火) 13:47:47ID:???うぉぅ、URLは駄目なんですね。
失礼しました。。
>>508
同じファイルなのに、Last-Modifiedの値と、
落としてきたファイルのfilemtimeが微妙にずれてます、、
0511496
2007/01/30(火) 13:51:44ID:???ありがとうございました。
0512nobodyさん
2007/01/30(火) 13:56:03ID:???gazou2.phpで$_FILEでアップロードされたファイルを取得して
クライアント側からアクセスできるパスに保存してそのパスを返せばいいんじゃね?
0513nobodyさん
2007/01/30(火) 14:12:57ID:???0514506
2007/01/30(火) 14:13:18ID:???$pic = $_FILE['userfile'];
echo"<img src='$pic'>";
こんな感じで書いてみたんですが画像が表示されませんでした(>_<)
0516nobodyさん
2007/01/30(火) 14:18:29ID:???懇切丁寧なファイルアップロード処理の説明
http://www.php.net/manual/ja/features.file-upload.php
0518nobodyさん
2007/01/30(火) 17:22:34ID:???Warningエラーを出したくないのですがどうしたらいいですか?
0519nobodyさん
2007/01/30(火) 17:24:26ID:???0520nobodyさん
2007/01/30(火) 17:52:49ID:???$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]) {
}
}
なんてのも書いてみましたが、うまくいきませんでした。
0521nobodyさん
2007/01/30(火) 17:53:47ID:???0522軟式PHP
2007/01/30(火) 17:59:33ID:???@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>';
}
?>
0525nobodyさん
2007/01/30(火) 18:28:50ID:???フレーム分割されたサイトでF5更新などをした時に、前回と同じ表示にしたいのですが
0526nobodyさん
2007/01/30(火) 18:50:11ID:???location.hashはサーバ側には送信されないから
JSで取得→PHPに渡す→JSで受け取って〜しかなさそう
0527518
2007/01/30(火) 19:24:52ID:???@include() でエラーでないですね。知りませんでした。
でもなんでこんなこと知ってるの?
どこで習ったのですか?
0530nobodyさん
2007/01/30(火) 19:36:38ID:???@はエラー制御演算子です。
本来はエラーが出るはずの、
$str = str; // String型なのに""で囲ってない
echo $str;
も@を変数の前に入れれば実行できてしまいます。
マニュアル眺めてれば全部書いてあるような気がしますね。
>>1にも書いてる通りマニュアルが最良の教本だと思います。
0531518
2007/01/30(火) 19:43:38ID:???ありがとうございます
今からマニュアル全部読みます
でもなんか字がいっぱいあって疲れそう
全部読むには何日くらいかかるですか?
0532nobodyさん
2007/01/30(火) 19:44:47ID:???0533nobodyさん
2007/01/30(火) 20:29:30ID:???セッションに格納したらバレませんか?
0534nobodyさん
2007/01/30(火) 20:30:54ID:???ありがとうございます。
同一ページ内で移動した場合は、試行錯誤しても思いつきませんでしたが、
可能な場合は、ハッシュ値をPHPのセッションで保存して、
リロード時に <frame src= に入れようと思います。
0535nobodyさん
2007/01/30(火) 20:42:45ID:???でも、今更フレームってどうなの?っておもうな。
DHTMLでもっと複雑にかつ検索エンジンにも有効な手立てがいくらでもあるのに…
0537nobodyさん
2007/01/30(火) 21:43:46ID:mKzbN4Cr例えばa〜zの値を持つ配列の2〜5(c〜f)を取り出すなど・・・
0540nobodyさん
2007/01/30(火) 21:50:37ID:mKzbN4Crマニュアルでarray_spliceと見間違えて飛ばしてました・・・
ありがとうございましたm(_ _)m
0541nobodyさん
2007/01/30(火) 23:33:50ID:???webサーバーをインストールせずに、ローカルでPHPのデバッグ(実行)する
方法ないでしょうか?
0543nobodyさん
2007/01/30(火) 23:47:06ID:???\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ
、 (_/ ノ /⌒l
/\___ノ゛_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ======(´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;;
0544340
2007/01/31(水) 00:00:07ID:???create_fuhnction('$matches','return $this->hoge_func($matches[1]);')
$this->hoge_func($matches[1])の処理を行いたいのですがこれだとできません。(エラー
Class::hoge_func($matches[1])だとできるのですが、プロパディの値が引き継がれず困っております
よろしくお願いします。
0545nobodyさん
2007/01/31(水) 00:26:50ID:+GskFciumethotはpostを送ってテストを行いたいのですが、なにか良い方法はございませんか?
apacheのabだとmethotは送れないですもんね。。。
0546nobodyさん
2007/01/31(水) 00:58:35ID:Q4AIAbjiところで質問させてください。
PHP_SELFを使って作ったプログラムがあります。
このファイルをインクルードし場合、PHP_SELFは
インクルードする側になってくれますでしょうか。
なってくれない場合、どうしたらいいですか。
0547nobodyさん
2007/01/31(水) 01:09:18ID:???正規表現で$_SERVER['PHP_SELF']を$selfに置き換え
読み込み元の読み込む前に
$self = htmlspecialchars($_SERVER['PHP_SELF']);にしてみます。
0548nobodyさん
2007/01/31(水) 01:11:30ID:???自己解決したようだからまぁ良いけど
なにがしたいのかようわからんな
0549541
2007/01/31(水) 01:33:55ID:???0550nobodyさん
2007/01/31(水) 01:44:43ID:61waItYb<input type=hidden value="hoge">
ほんで気になってるのが、valueの値の中に、シングルコーテーションとか
ダブルコーテーションが含まれる場合って、ダブルコーテーションで囲んでも
問題ないのでしょうか?
0551nobodyさん
2007/01/31(水) 01:50:01ID:???php のピの字はどこに含まれているん?
html に出力した後は
当然 html として正しくなるように
必要に応じてエスケープする必要があるよ
0552>>550
2007/01/31(水) 02:05:24ID:61waItYbhtml版いってきます。。
0553nobodyさん
2007/01/31(水) 02:17:01ID:???普通ソース見るじゃん
0555nobodyさん
2007/01/31(水) 02:47:58ID:???0556nobodyさん
2007/01/31(水) 03:07:31ID:???なかなか斬新な発想でした.ありがとう
0557nobodyさん
2007/01/31(水) 03:12:28ID:???0558nobodyさん
2007/01/31(水) 03:41:45ID:???で全角スペース1個がヒットするんですが、sjisのせいでしょうか?
全角半角問わず連続してる場合は半角スペース1個に統一したい感じです。
0559nobodyさん
2007/01/31(水) 03:50:10ID:oiEE4jjYたとえばexample.com(サブドメ無し)とsub.example.com(サブドメ有り)で
それぞれ違うセッションクッキーを発行したいと思っています。
スクリプトの中で
session_name(_SESSION_NAME);
session_start();
とやって、サブドメ無しと有りのサイトそれぞれで定数_SESSION_NAMEの値を変えています。
これでブラウザ側には、サブドメ無しの場合には意図した通りのセッションネームで
クッキーが渡っている(&クッキーがサイトに渡される)のですが、
サブドメ有りのほうは、サブドメ無しと有りの両方のクッキーがブラウザから渡されてきてしまっています。
(FirefoxのアドオンLive HTTP Headersで確認しました)
これはどのように解決すれば良いのでしょうか?
session.cookie_pathあたりが関係しているよう気がしますが、
サブドメありとサブドメ無しの場合のクッキーの有効範囲の分け方がいまいち理解できません。
0563nobodyさん
2007/01/31(水) 04:59:38ID:oiEE4jjYphp.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が入ってしまっているのです…。
で、ブラウザからサブドメ有りのほうにアクセスすると、サブドメ有り無し両方のクッキーがサーバに渡されています。
0564nobodyさん
2007/01/31(水) 05:24:12ID:???create_functionが作り出す関数は、メソッドではなく普通の関数(つまりグローバルスコープに宣言したのと同じ)なので$thisとか無理です。
$thisにあたる情報を、create_functionで作られる関数に渡してやらないといけない。
0565nobodyさん
2007/01/31(水) 08:53:32ID: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 の値を知りたい場合
どのようにすればいいのでしょうか?
0566nobodyさん
2007/01/31(水) 09:20:20ID:2u/UeHzkif ($a) { ..... }
などと条件判定に使用した場合、どのように評価されるのでしょうか?
また $a="" であれば、{} 内は実行されませんが、
$a="hoge" であれば、{} 内は実行されます。
これらの場合も最終的には TRUE か FALSE に評価
されているのでしょうが、具体的にどのようなルールで
型変換および評価が行われるのでしょうか?
Appendix P. PHP type comparison tables
http://www.php.net/manual/en/types.comparisons.php
以外にどのような情報源を見るべきでしょうか?
0567nobodyさん
2007/01/31(水) 11:06:25ID:???snmpget関数を使ってmibを取ろうとしてるんですが、
返り値に「STRING : 」や「INTEGER : 」といったゴミが付いてきます。
このゴミを取らずにデータを取りたいんですが、何か方法ないでしょうか?
今のとこ、「snmp_set_valueretrieval( SNMP_VALUE_PLAIN );」を
snmpget関数前に使ったらゴミはなくなったんですが、これでいいんでしょうか?
よろしくお願いします。
0568567
2007/01/31(水) 11:08:05ID:???0569nobodyさん
2007/01/31(水) 11:16:35ID:???$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);
0571nobodyさん
2007/01/31(水) 12:22:42ID:???そもそもそんなトリッキーなことをしないといけない時点で、
なにか設計が間違っている気がするんだよね。
SQLiteのメモリDBでも使ったら?
0574567
2007/01/31(水) 12:57:52ID:Shp2eHi4よろしくお願いします。
>>568は別人なんで、ID晒しときます。
0575nobodyさん
2007/01/31(水) 13:06:47ID:???Cookieの仕様としては(後方一致でドメインの一致を見るので)不可能じゃないでしょうか。
使えるなら、pathを使うか、セッションネームが違うんだから、問題ないとあきらめるかぐらいかな。
0576nobodyさん
2007/01/31(水) 14:03:07ID:???$ahiru = $_POST{'ahiru'};
$hiyoko = $_POST{'hiyoko'};
$dacho = $_POST{'dacho'}; ……
と、こういうのが100個ほどあるのですが、
今後いくつフォームが増えようとも1行で済ませる方法はありますか?
ちなみに$_POST{' '}の中身と、変数名は全て一緒です。
0577軟式PHP
2007/01/31(水) 14:06:20ID:???register_globals=onと同義になるため、セキュリティ的にオススメ出来ないが
extract( $_POST );
で一応展開は出来る。
0578nobodyさん
2007/01/31(水) 14:10:21ID:???register_globalsを変更出来なかったので悩んでたんですが
extractというのがあるんですか。
どうもありがとうございましたm(_ _)m
0582nobodyさん
2007/01/31(水) 14:23:52ID:???Parse error: parse error, unexpected '@' in /home/htdocs/haori/exform/form.php on line 6
出ましたorz
0584nobodyさん
2007/01/31(水) 14:25:43ID:???system()でcmdを実行してもプロセス(cmd.exe)は立ち上がっているのですが、ウインドウが非表示になってしまいます。
表示で起動する方法はありますか?
0586579
2007/01/31(水) 14:27:11ID:???$$Pkey = sanitize($Pval);
みたいにして、クリーニングして使ったほうが安全だよ。
※sanitize()は自作する関数ね。
0590nobodyさん
2007/01/31(水) 14:30:44ID:???これでいいよね
foreach($_POST as $Pkey=>$Pval){
$Pval = trim($Pval);
$Pval = htmlspecialchars($Pval);
$Pval = mb_convert_kana($Pval,"KVa");
$$Pkey = $Pval;
}
0592nobodyさん
2007/01/31(水) 14:33:36ID:???それだと、想定外の変数も保持してしまうから、
せめて、想定した名前のPOSTかどうかをチェックした方がいいんじゃね?
0594579
2007/01/31(水) 14:40:22ID:???それは使用意図によるからなんともね。
本来必要な文字まで加工しちゃう可能性あるし、
htmlspecialcharsは出力の時にかけたほうが良いとは思う。
0603nobodyさん
2007/01/31(水) 14:55:42ID:p7FZ0Wca防御策としてはどういう方法がありますか?
0605nobodyさん
2007/01/31(水) 14:57:44ID:???別ファイルで変数にしておけばそうそう読めないと思うけど。
<?php
$pass = hogehoge;
?>
ってことね。
0608軟式PHP
2007/01/31(水) 15:01:20ID:???補足ありが�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」でアクセス。
0609nobodyさん
2007/01/31(水) 15:03:03ID:???普通はパスワードの書かれたPHPが見えた時点で、
パスワード以上に大切な内部処理が見えるので、
パスワードだけ隠してもあまり意味無いですね。
PHP自体が見えない(見られない)ことに留意すべきかと。
0610軟式PHP
2007/01/31(水) 15:05:19ID:???ドキュメントルート以下にそういう設定ファイル系をおかない。
.htaccessを使って無条件アクセス拒否したディレクトリに設定ファイル系を置く。
というのをとりあえずやった方がいいとおもふ。
0612603
2007/01/31(水) 15:10:56ID:???public_htmlより上位にフォルダ作ってそこに設定ファイルおいておくことにします。
0614nobodyさん
2007/01/31(水) 15:15:55ID:raaQ5cYF皆さんどのようなものを使っていますか?
ガイドライン作ったことないので教えて下さい。
また詳しいサイトとかあれば教えていただければ幸いです。
0615nobodyさん
2007/01/31(水) 15:20:18ID:???それから、もっと言うなら SHA1+アプリ固有隠しキーだな。
0616nobodyさん
2007/01/31(水) 15:23:46ID:???0618nobodyさん
2007/01/31(水) 15:34:07ID:???・クラスの命名規則のあるなし。あるならばそのルール。
・ディレクトリ配置
・定義情報の保管場所。環境変数なのか定義ファイルなのか、
ソースに直接べた書きなのか
・ユニットテストの有無。ある場合、どのレベル処理まで行うか。
・DBを使う場合はDB情報の共有化。
・共有ドキュメントの有無。Wikiでもいいから、全員が共有して簡単に
書き込めるものを使うなど。
0619nobodyさん
2007/01/31(水) 15:53:18ID:JJLy/b+R0620nobodyさん
2007/01/31(水) 15:55:54ID:???具体的にどうやるのですか?
foreach($_GET as $Pkey=>$Pval){
if($Pval == "hoge"){
$$Pkey = $Pval;
}
}
これでいい?
できれば軟式PHPさん教えてください。
0623nobodyさん
2007/01/31(水) 16:00:07ID:JJLy/b+R記事のurlは取得できるんだけどトップページのurlが取得できないんです。
0624nobodyさん
2007/01/31(水) 16:01:55ID:???それだけじゃわからない。
まずブログといっても数種類あるし。
あとどのように取得してるかソース出さないと答えようがない。
0625nobodyさん
2007/01/31(水) 16:03:09ID:JJLy/b+Rclass 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;
}
}
これでいいんでしょうか?
0627nobodyさん
2007/01/31(水) 16:04:06ID:raaQ5cYFありがとうございました
0628軟式PHP
2007/01/31(水) 16:04:42ID:???例えば、、
//名称定義配列(100個あるなら100個書く。)
$strParamList = array('ahiru','hiyoko','dacho');
foreach($_GET as $Pkey=>$Pval){
if(in_array($Pkey,$strParamList)){ //定義されたものだけ取得。
$$Pkey = $Pval;
}
}
とかかな。
安全に書くなら名称定義は全部やった方がいい。
0629nobodyさん
2007/01/31(水) 16:05:05ID:???# ?> これも終了タグ有効
/* ?> これは無効 */
これって仕様ですか?
0630nobodyさん
2007/01/31(水) 16:17:10ID:???SimpleXML関数で取得できるようなものだったらそれでして、
無理そうなら、
file_get_contentsあたりで読み込んで正規表現使ってくりぬけばいい。
0632nobodyさん
2007/01/31(水) 17:59:47ID:???仕様です。
一行コメントは「"改行"または"PHP コードのブロックの終わり"まで有効」
複数行コメントは「最初の"*/"まで有効」
お前はマニュアル読んだのかと、ちゃんと書いてあるのに何聞いてんだと小一時間(ry
0633nobodyさん
2007/01/31(水) 18:21:22ID:bpZljW542chとーくやってて
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データを解凍できるか教えてください。
0634nobodyさん
2007/01/31(水) 18:26:05ID:???"一行"コメントは、改行または PHP コードのブロックの終わり のうちどちらか最初にくる方までです。
つまり、// ... ?> あるいは # ... ?> の後に続く HTML コードは 表示されるということです。
?> により PHP モードを終了して HTML モードに戻ると、そこでは // あるいは # は何の影響も 及ぼしません。
asp_tags 設定ディレクティブが有効になっている場合、// %> および # %> でも同じような動作になります。
しかし、一行コメントの中の </script> では PHP モードを終了することは ありません。
<h1>これは <?php # echo 'シンプルな';?> 例です。</h1>
<p>上の見出しは 'これは 例です。' となります。
0635nobodyさん
2007/01/31(水) 18:56:07ID:???一つhtml内でjavaでcsvテーブル展開
フォームとphpでcsvに追記とやっているんですが
書き込み後、戻りリンクで
すぐテーブルページを開いても反映されておらず
F5を押して初めて反映され
もしくは、しばらく呼吸置いてからページ表示されると反映されているのですが
なぜでしょうか・・・
0638nobodyさん
2007/01/31(水) 19:36:58ID:???リモートにあるコンテンツ(URL)にアクセスしようとすると
「接続が中断されました」と出ちゃってアクセスできません。
ローカルにあるコンテンツは問題なく表示できます。
また、「シミュレータ1(2じゃなく)」のほうでは、
ローカルもリモートも問題なくアクセスできます。
2のほうだけリモートへのアクセスが不可能なのは何故なんでしょうか?
皆さんも同じ症状になった方はいらっしゃいませんか?
※ドコモに問い合わせたところ、「シミュレータはサポート外」との返答でした。
0639638
2007/01/31(水) 20:01:32ID:???他スレを探してきます・・・
0640nobodyさん
2007/01/31(水) 22:52:58ID:???インデントや改行がされず、汚いソースが吐かれてしまいます。
何か解決策ありましたら教えてください。
【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();
0641nobodyさん
2007/01/31(水) 23:01:38ID:???0642640 ◆4XkUU6.J/k
2007/01/31(水) 23:13:35ID:6DHp5jCy0643nobodyさん
2007/02/01(木) 00:43:43ID:???たとえば
http://pc10.2ch.net/test/read.cgi/php/1169644229/
を
pc10.2ch.net
に置換です
0644nobodyさん
2007/02/01(木) 00:45:39ID:???$_SERVER["SERVER_NAME"]
0649647
2007/02/01(木) 02:21:52ID:???0650nobodyさん
2007/02/01(木) 05:09:41ID:hSh+JslSメールを送るサンプル動かしてみました。↓の様なコードで、ブラウザに「送信成功」って
出てるから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>";
}
?>
0652nobodyさん
2007/02/01(木) 05:15:21ID:???0653nobodyさん
2007/02/01(木) 05:19:38ID:???なんかスパマーの温床になりそうなんだが(^ω^;)
0654650.652
2007/02/01(木) 05:22:40ID:???すんません。5時間程色々いじりながら悩んでいる間に、$が取れちゃったみたい。
今夜はもう寝て明日詳しい人捕まえに行きます。
ホントにスイマセンデス OTL。
0655650.652,654
2007/02/01(木) 05:27:29ID:???sendmailが使用可ならmail関数も使えるんだろな・・・みたいに勝手に思い込んでましたが、だめなのかな。
あちこちレンタル鯖見て回ったんだけど、ほとんどの鯖は「sendmail使用OKだけどあんまり無茶したら起こるよ」て
感じだったから、スパムやメルマガで使ったら追い出されるのかな・・・と考えてた。
0658nobodyさん
2007/02/01(木) 08:04:47ID:???現在はこんな感じでとっているのですが、どうも見栄えが…
trim(trim($hoge), " ")
0663軟式PHP
2007/02/01(木) 09:37:49ID:???Postfix信者とかならわかるけど…。オレモナー
0664nobodyさん
2007/02/01(木) 09:56:07ID:oQPP/iVz0665軟式PHP
2007/02/01(木) 10:20:40ID:???記事のタイトルとかは取れてるの?
<dc:date></dc:date>に囲まれてるところを取得すればいいとおもふ。
0666nobodyさん
2007/02/01(木) 10:29:03ID:f6cNG9NMあるPHPファイルから、どんな関数()というのが使えるのか調べるにはどうしたらいいのでしょうか?
0667nobodyさん
2007/02/01(木) 10:29:28ID:???0668nobodyさん
2007/02/01(木) 10:39:23ID:f6cNG9NM0669nobodyさん
2007/02/01(木) 10:48:24ID:oQPP/iVz0670スナイダーズ
2007/02/01(木) 10:55:25ID:???$str = "任意の文字列(スペース含む)";//改行が無い文字列
$rm = "( | |\\t|\\n|\\r|\\0|\\x0B)";
$str = preg_replace("/^$rm+|$rm+$/","", $str);
※textareaとかで各行対象ならば、 $rm ="/(?<=\r|\n|^)$rm+|$rm+(?=\r|\n|$)/"
0671nobodyさん
2007/02/01(木) 10:55:59ID:oQPP/iVzこれの10:21のところだけをとりだしたいのですが
0673nobodyさん
2007/02/01(木) 11:10:03ID:oQPP/iVz0674nobodyさん
2007/02/01(木) 11:11:01ID:oQPP/iVz0675nobodyさん
2007/02/01(木) 11:12:09ID:oQPP/iVzsubstr($***, 11, 15);じゃだめみたいです
0676nobodyさん
2007/02/01(木) 11:12:56ID:???0678nobodyさん
2007/02/01(木) 11:13:47ID:???0679nobodyさん
2007/02/01(木) 11:15:12ID:oQPP/iVzこれの10:21のところだけをとりだしたいのですが
substr($***, 11, 15);じゃ
01:38:07+09:00
こうなってしまうんです
0680nobodyさん
2007/02/01(木) 11:16:12ID:oQPP/iVz2007-02-01T10:21:00+09:00
これの10:21のところだけをとりだしたいのですが
substr($***, 11, 15);じゃ
10:21:00+09:00
こうなってしまうんです
0681nobodyさん
2007/02/01(木) 11:19:36ID:???http://jp.php.net/substr
substr関数の動作についてちゃんと見てないからだと思います
0682nobodyさん
2007/02/01(木) 11:21:14ID:???俺釣られましたか?
0683nobodyさん
2007/02/01(木) 11:26:40ID:oQPP/iVzsubstr($***, 11, 5);でできました。
くだらない質問すいませんでした。
0684nobodyさん
2007/02/01(木) 11:27:48ID:???0685nobodyさん
2007/02/01(木) 11:31:02ID:oQPP/iVzお手数おかけしてすいませんでした。
0687軟式PHP
2007/02/01(木) 11:46:25ID:???0688nobodyさん
2007/02/01(木) 11:48:56ID:???0691虚弱PHP
2007/02/01(木) 13:23:00ID:???ありゃ?以下のソースで問題なく動いたから大丈夫かと思ったよ…。
<?php
$str = ' trim ';
var_dump($str);
$str = trim($str, ' ');
var_dump($str);
?>
めげずにがんばれ>>俺
0694nobodyさん
2007/02/01(木) 16:23:40ID:???例えば Fatal error: Call to undefined function とか。
set_error_handler() ではダメでした。
0697nobodyさん
2007/02/01(木) 16:52:44ID:???エラー文を見たところ「無効な句読点文字」ということは分かったのですが対処法が分かりません。。
ご教示お願い致します。
エラー文
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 '、筅ノ、熙?ム',
0701697
2007/02/01(木) 17:00:00ID:???シフトJISをmb_convert_encodingでEUC-JPに変換して入れています。
携帯サイトなのでシフトJISは替えられません。。
0702軟式PHP
2007/02/01(木) 17:04:21ID:???SJISをaddslashesは色々と問題があるからmysql_escape_stringを使った方がいいんじゃないカニ。
ありがとうございます。
実はそれはすでに実験済みでして、
$newchild->addChild('aaa', "aaa\n"); だと
<aaa>aaa
</aaa>
となり、
$newchild->addChild('aaa', "\naaa"); だと
<aaa>
aaa</aaa>
となります。
外側で\nを入れても、addChildの間にecho "\n";をしてもだめでした。
0704nobodyさん
2007/02/01(木) 17:12:53ID:???引き続きお願いしますm(_ _)m
0705697
2007/02/01(木) 17:19:48ID:???このように$hoge(おれおれ詐欺)の後に半角空白を入れたところ解決しました。
これ以外には方法はないでしょうか?
0707nobodyさん
2007/02/01(木) 17:22:28ID:???一応確認なんだが
1・受け取った文字列はほんとにSJISか
2・EUCに変換するのは正常に行われているか
を確認してみれ。
mb_detect_encodingの結果を出力してみて要確認。
問題なければ、その部分のソースプリーズ。
0708nobodyさん
2007/02/01(木) 17:24:18ID:???是非ともこちらにお越しください。
http://pc10.2ch.net/test/read.cgi/php/1170317609/
ニートの僕が10日間でオークションサイトを作ろうと思っています。
是非、軟式PHPさんにご教授お願いしたいです。
できれば10日間付き合ってください。お願いします。
0709nobodyさん
2007/02/01(木) 17:26:16ID:???何故、汚いソースを気にするの?
XMLファイルを直で開いて編集等を行うのは、問題ありだと思うけど…
ブラウザからみれば、自動でインデントなどが入りきれいに見えるでしょ?
それでも気になるなら、simple_xml系を自分で編集するしかないかと…
0712nobodyさん
2007/02/01(木) 17:29:35ID:???オークション運営は個人では厳しいぞ。
許可の関係もあるし、詐欺や違法出品も目を光らせとかなければお前がタイフォされる。
個人情報の為にSSLも導入しなけりゃならないし、
鯖落ちなんかは言語道断だから、かなり高価な安定したサーバと回線も必要。
万が一、鯖落ちして取引できない時の金銭被害の補償とかはどうするの?
なんの技術も無いニートが一攫千金狙ってバカな夢みてるんじゃないよw
0713nobodyさん
2007/02/01(木) 17:30:01ID:???30人月くらいの案件じゃねーかw
>ブラウザからみれば、自動でインデントなどが入りきれいに見えるでしょ?
確かにそうなんですけど、なんだか気味が悪くて・・・
simplexmlの仕様ということならば、諦めたいと思います。
どうもお答えありがとうございました。
0715nobodyさん
2007/02/01(木) 17:33:56ID:???しかもPHPでっていうのはさすがにないw
保守が大変そうな上に、メモリの無駄遣いしそう。
まぁ本気で頑張りたいと思うなら他人に頼る前に、
自分のスキルを磨くべき。
作ったとしても保守もサポートもできないようじゃ意味ないしね。
ニートで親からあれこれいわれて焦ってるんだろうが、
まずは外にでるといいよ。
0716軟式PHP
2007/02/01(木) 17:35:35ID:???皆が言ってるように10日じゃ絶対無理だわ〜。
DBmagazine1月号の特集にDeNAのモバオク構築特集があるから読んでみてw
独自のモジュール(仮想メモリDB等など)やらかなり凄いことをやってる。
オークション運用についても色々書いてるから本当に作ろうと思ってるんなら参考になると思うよ。
0717nobodyさん
2007/02/01(木) 17:35:55ID:???引きこもってエロゲー作って儲けよーってやつ
ヒヒヒっ
0718nobodyさん
2007/02/01(木) 17:37:47ID:???それでも「とりあえずは動きます」ってレベル。
商用にしたいなら、そっからもう一年。
0719697
2007/02/01(木) 17:38:48ID:???受け取ったときはSJIS、EUC-JPへの変換も正常に出来ていました。
ソースは以下になります。
$name="おれおれ詐欺";
$name= mb_convert_encoding(mysql_real_escape_string($name), 'EUC-JP', 'SJIS');
$query=
"INSERT INTO `data` (`name`) VALUES ('".$name."')";
0720nobodyさん
2007/02/01(木) 17:41:51ID:???0722nobodyさん
2007/02/01(木) 17:48:14ID:???俺は一応、この手の業種プロだが、
俺が完全に一人でやって、とりあえず動きますレベルまで1ヶ月。
実用可能なレベルまで詰めるのに4〜5ヶ月。
プロでも一人なら半年はかかるな。
ど素人が作るには2年じゃ事足りない。
0723nobodyさん
2007/02/01(木) 17:53:37ID:???引きこもって真面目にそればかりやり続ければいけないかなあ?
…って考えてみたら、やっぱたらんわな。
俺も半人前Web開発やってるけど、一年はほしいもんなあ。
0724nobodyさん
2007/02/01(木) 17:57:31ID:???0726708
2007/02/01(木) 18:00:43ID:???とりあえずDBの構築だけでも教えてください。
冗談で言ってるわけじゃないです。
必ず10日間で作って見せます!
0728便乗
2007/02/01(木) 18:01:39ID:???0729nobodyさん
2007/02/01(木) 18:02:05ID:???0731nobodyさん
2007/02/01(木) 18:05:18ID:???$array = 配列
foreach ($array as $key <= $value){
$array[$key] = addslashes($value);
}
0732nobodyさん
2007/02/01(木) 18:09:14ID:???お前は本気かもしれんが、博識者からみたら冗談にしか見えないんだよ。
まずは、本屋にいってDB関連の初心者本を買いあされ。
まぁお前ならDBをローカルに立ててそれにクエリを発行するまで数日はかかるかなw
プログラムから超単純なDBコントロールを勉強しているだけで10日なんで過ぎると思うがww
つか、論外だからあきらめろ。
10日でプロ野球選手になってホームラン打ちまくります!って少年野球チームの補欠がいっているようなモンだよw
0733nobodyさん
2007/02/01(木) 18:10:39ID:???ちゃんとした職場で少しずつ成長していく方が早道だろう
いきなりゼロから一人で商用サイトは遠すぎる
ゼロから一人でも出来るやつも居るだろうが、いきなり他人に10日間付き合ってくれと頼むタイプでは無理
諦めて普通に就職した方が良い
0735nobodyさん
2007/02/01(木) 18:13:42ID:???>>ALL
以後放置しような。
0737nobodyさん
2007/02/01(木) 18:19:07ID:???では超簡単な問題です。
DBにテーブルAとBがあります。
それぞれのテーブル構造は以下のようになります。
・テーブルA
番号・名前・住所
・テーブルB
番号・メールアドレス・ホームページアドレス
※テーブルAとテーブルBの番号はそれぞれ同じ人物をさすデータとなります。
テーブルAの中から名前に'T'の文字が含まれるデータを抽出して、
それらの名前とメールアドレスを表示するSQLを書きなさい。
なおクエリ発行は一度に行う物とする。
0738nobodyさん
2007/02/01(木) 18:21:43ID:???0739nobodyさん
2007/02/01(木) 18:27:48ID:???http://pc10.2ch.net/test/read.cgi/php/1170317609/
こっちに移動して。
0743nobodyさん
2007/02/01(木) 18:45:43ID:???ちょ>>734は俺じゃないって>>726はお前なのかよw
アホな妄想してないで、さっさと就職活動しろ。
今のお前は宝くじが当たったらどうしよう…って考えている程度のレベル
0744nobodyさん
2007/02/01(木) 18:46:37ID:???0745nobodyさん
2007/02/01(木) 18:49:41ID:???お前にぴったりのスレを見つけてきたぞ。
【手取り足取り】10日間でオークションを構築するスレ【教えます】
http://human6.2ch.net/test/read.cgi/dame/1170233151/
0746nobodyさん
2007/02/01(木) 18:58:42ID:???0747708
2007/02/01(木) 19:06:37ID:???ご迷惑おかけしました。
もしよろしければあちらにも遊びに来てください。
絶対、誰に何と言われようと10日間でオークションサイト作って見せます。
では失礼します。ありがとうございました。
0748nobodyさん
2007/02/01(木) 19:08:41ID:f6cNG9NMこれをShift-JISで配布する場合、5c対策の対策さえしておけばいいのでしょうか?
UTF-8とEUCでも配布しようと思ってます。
0751nobodyさん
2007/02/01(木) 19:20:19ID:f6cNG9NMEUCだけで大丈夫なんでしょうか?
Shift-JISでないとダメっていう共有サーバってないですよね?
0752nobodyさん
2007/02/01(木) 19:22:09ID:???ない。ってか、PHPなんかは基本はEUC環境を念頭に置いて書かれている言語だし。
例えば、PHPが使えないように、同じ機能のスクリプトをPerlやRubyで配布ってのなら分かるけど、
同じPHPを文字コード変えて配布ってのは意味がない。
0753nobodyさん
2007/02/01(木) 20:22:37ID:???ぷぎゃー
0754nobodyさん
2007/02/01(木) 20:35:46ID:???| ノ ヽ /
/ > < |/ そんな餌パクッ
| //// ( _●_)/ミ
彡、 l⌒l ノ
/ __ \ \ヽ
. (___) \__)
. O| /
| /\ \
| / ) )
∪ ( \
\,,_)
0755nobodyさん
2007/02/01(木) 21:00:18ID:f6cNG9NMありがとうございました。
0756nobodyさん
2007/02/01(木) 22:04:18ID:uIp/a4gl0757nobodyさん
2007/02/01(木) 22:49:05ID:???+があるかないかで判断するには、どういう書き方をすればいいのでしょうか?
[+\]では駄目でした。
0758nobodyさん
2007/02/01(木) 22:51:38ID:???0760nobodyさん
2007/02/01(木) 22:58:12ID:DbW4Semc掲示板やメールフォームなどのシステムでよく
「同一IPからは一定時間内の最投稿不可」という機能がありますよね。
同じIPは一日に一回程度しかカウントされないカウンタもよく見かけます。
そこで質問なんですが、PHPでそのような機能を実現する為のアルゴリズムには、
有名な雛形が存在しているのでしょうか?
解説しているサイトも含めGoogleで検索を試みましたが、
掲示板などのスクリプトの配付ページなどが引っ掛かるばかりで、
見つける事ができませんでした。
PHPを学ぶ為にメールフォームの製作をしています。
基幹となる部分は問題なく完成したので欲しい機能を追加しているのですが
この部分でつまづいてしまいました。
検索する為のヒントや簡単な指南だけでも頂けたら幸いです。
PHP 4、linux鯖を使用しています。
データベースは使用できません。
0761nobodyさん
2007/02/01(木) 23:07:44ID:???自分で再発明wしてください
0762nobodyさん
2007/02/01(木) 23:11:05ID:???0763nobodyさん
2007/02/01(木) 23:12:20ID:Ak2sQwef只今、PHP5.2をインストールし、<? phpinfo() ? > で
テストしたところ、IE、Operaでは正しく表示されましたが、
Firefoxでは<? phpinfo() ? > とそのまま表示されました。
なぜですか?わかる人おしえてください。
サーバーはアパッチ2.2です。
0764nobodyさん
2007/02/01(木) 23:12:32ID:shm0xuKW0766nobodyさん
2007/02/01(木) 23:16:01ID:Ak2sQwefスマソ
イソイデル
0767nobodyさん
2007/02/01(木) 23:18:13ID:???0769nobodyさん
2007/02/01(木) 23:25:34ID:???0770nobodyさん
2007/02/01(木) 23:27:55ID:???IE.Operaで表示されてFireFoxは表示されないなんてことはない。
0772nobodyさん
2007/02/01(木) 23:33:32ID:jV4RTrpc行き詰っています。ソースは以下の通りに書きました。
$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を実行しているのでデータ的には問題ないようなきがするのですが・・。
ちなみにどの画像でもダメでした。
アドバイスをいただければと思います。よろしくお願いします。
0774nobodyさん
2007/02/01(木) 23:51:46ID:NaBQxTcG複数のHTML(A.html/B.html)をフレームで1つにまとめているのですが
A.htmlのボタンを押すと、A.htmlとB.html両方のフォームの内容がC.phpに送られて合わせて処理できるようにしたいのですが
どのような方法があるでしょうか?ご教授ください。
OSはWINXP-SP2でPHP5です。
0775nobodyさん
2007/02/01(木) 23:58:25ID:???0777nobodyさん
2007/02/01(木) 23:59:45ID:???普通にPOSTすると片方しか送られないのはどうしようもないから
submit時の動作をJSにして入力値を取得、XMLHTTP 使って送信とか
まぁはっきり言って二つのフォームを使うのがナンセンスだと思う
0778772
2007/02/02(金) 00:09:31ID:e6dcK4ntご回答ありがとうございます。エスケープしなくてもダメなのです・・・。
addslashesもダメでした・・。
よろしければ具体的に教えていただけないでしょうか? よろしくお願いします。
>>776
mixiでも質問されてたのですか・・知りませんでした。
0779774
2007/02/02(金) 00:15:17ID:???レスサンクス。
やっぱそうですか・・・。
メニューフレームに作成希望ID入れて
メインフレームにデータ入力してSUBMITとか、したかったの。
0780nobodyさん
2007/02/02(金) 01:48:18ID:???> そこで質問なんですが、PHPでそのような機能を実現する為のアルゴリズムには、
一応突っ込んでおくが、アルゴリズムじゃなくて、アルゴニズムだろ。
0782nobodyさん
2007/02/02(金) 02:00:36ID:???0783nobodyさん
2007/02/02(金) 02:14:23ID:???0784nobodyさん
2007/02/02(金) 02:21:57ID:???0785nobodyさん
2007/02/02(金) 02:30:10ID:???0786nobodyさん
2007/02/02(金) 02:38:48ID:???どう発音したらニズムになるんだ?
0787nobodyさん
2007/02/02(金) 02:41:11ID:???0788nobodyさん
2007/02/02(金) 03:04:29ID:???Algo-nism ==> 数学主義
どっちも、日本語に直すとよく分からんが、数学主義の方が通りはいいなw
0789nobodyさん
2007/02/02(金) 03:39:23ID:???<?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 の逆操作がされているのでしょう?
0790nobodyさん
2007/02/02(金) 03:41:16ID:???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 の逆操作がされているのでしょう?
0791nobodyさん
2007/02/02(金) 03:42:46ID:???xml_parse($parser, $html);
の時点で一旦 htmlspecialchars の逆操作した後パースしているのか、
echo $data . "@";
とすると、
@<@hoge@>@
こんな出力になったりします。<pre></pre>の中が一度で取得されるはずなのですが。
Pear の XML_HTMLSax だと
<hoge>@
と期待通り動いてくれました。
PEARのモジュールを入れてね、と言いたくないので xml_parse を使用したかったのですが、どうしたら修正できるのでしょう?もしくはバグ?
0792nobodyさん
2007/02/02(金) 04:05:33ID:???<
が
<
になってしまうなら
<
とかごまかしてみたらどう
0793nobodyさん
2007/02/02(金) 04:06:36ID:???&lt;
が
<
になってしまうなら
&amp;lt;
とかごまかしてみたらどう
0794nobodyさん
2007/02/02(金) 04:29:17ID:???0795nobodyさん
2007/02/02(金) 05:22:57ID:???と的外れなことをいってみるテスト。
0797nobodyさん
2007/02/02(金) 06:19:10ID:???$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スペックも
そこそこだと思うのですが、あまりに処理出来る件数が少なくてびっくりしています。
0798nobodyさん
2007/02/02(金) 08:19:09ID:???>$sql = "insert into images values('$imgdat')";
valuesの前にカラム名が書かれてないわけだが。
もう一度SQLの基礎からやり直せ。
っていうか画像をDBに入れるな。
画像のファイル名だけ格納しとけ。
0799nobodyさん
2007/02/02(金) 08:44:22ID:???$fp = fopen("count.csv", "a");
をループに入る前に宣言してみ。 これでだいぶ変わると思う。
家のテスト環境で30秒以上でエラーに設定して14万行越えた辺りでタイムアウトになる
ちなみにループのなかでfopenを宣言していると55000行くらいでタイムアウトになる。
もし数十万単位で処理したいなら、一度に送るのではなく、MovableTypeの再構築のように処理を分割すればいいんじゃないかな?
環境
OS:XP home
CPU:P4 2.6
mem:1G
php:5.0
0800nobodyさん
2007/02/02(金) 08:46:56ID:???0801nobodyさん
2007/02/02(金) 09:09:33ID:BkwFuYtmされますが、これを変数(下の例だと$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);
0803nobodyさん
2007/02/02(金) 09:45:48ID:CPNbeRvFfopenがループしているぞな、もし。
0805nobodyさん
2007/02/02(金) 10:08:08ID:BkwFuYtmさすがです!早速解決しました!ありがとうございました!
0807nobodyさん
2007/02/02(金) 12:40:02ID:???カレントURLが「http://…」か「https://…」か調べたいのですが 取得する
方法はありますでしょうか?
前回は$_SERVER変数で取得可能とご回答いただいたのですが 調べたところ
http://hogehoge.com以降のパスか リンク前のURLの絶対パスしかみつかり
ませんでした 現在のURLの絶対パスが取得できると助かるのですが…
ご回答いただけたら幸いです
0808nobodyさん
2007/02/02(金) 12:47:17ID:???$_SERVER["SERVER_PROTOCOL"]
$_SERVER["HTTP_HOST"]
$_SERVER["SCRIPT_NAME"]
組み合わせて使うー。
0809nobodyさん
2007/02/02(金) 12:55:29ID:???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です
0810807
2007/02/02(金) 13:17:52ID:???ご回答ありがとうございました
それらの変数をechoするスクリプトを作って http:〜〜test.phpとhttps:〜〜test.php
でアクセスしてみたのですが どちらも全く同じ文字列になりました
で 他の$_SERVER変数を見たところ $_SERVER['SERVER_PORT']がhttpとhttpsで異なる
みたいなので これでやってみようと思います
なんかあまりスマートじゃないですが……
ありがとうございました!
0811nobodyさん
2007/02/02(金) 13:24:20ID:???あれ? SERVER_PROTOCOL も違うはずだけど…。
通常なら HTTP 、SSL なら HTTPS になってるはず。
まあ、Port も当然違ってくるから、それでも大丈夫ならいいと思うけど。
0812807
2007/02/02(金) 13:37:47ID:???なぜかどちらも「HTTP/1.1」でした
通常httpsは別ディレクトリなんですが 設定で同じディレクトリにhttpsで
アクセス可能になるよう変更したからかもしれません(自信ありませんが)
ポートで条件分岐が無難みたいですね
ご丁寧にありがとうございました
0813797
2007/02/02(金) 14:30:57ID:???ご説明ありがとうございます。おっしゃるようにかなりはやくなりました。
5万桁で8秒10万桁で15秒です。PCスペックは同じようなものです。
ただ、よくある
「会員のデータを読み込んでそのメールアドレス宛にメールを送信する」
などの用途の場合、やはりループ内で読み込みをしなければいけませんよね?
そしたらfopen&mb_send_mailの繰り返しになるわけで、やっぱり処理パフォーマンス
は格段に落ちますよね。(怖いのでテストしてませんが。。)
それとも799さんのように書き方を変えれば処理が変わると言うことはあるのでしょうか?
0814797
2007/02/02(金) 14:34:45ID:???連続ですみません。。あと「処理を分散する」というのは
どういうことなのでしょうか?件数によって読み込むファイルを
変えるとか、sleepを使って時間の間隔をずらすのでしょうか?
0815nobodyさん
2007/02/02(金) 14:38:50ID:???>>799じゃないけど、1ファイル1ユーザってこと?
例えばだけど、毎晩バッチを動かして、ユーザ一覧は別に作っておくとか、
逃げ道はあるよ。
もしどうしても1ファイル1ユーザから毎回読み込まなくちゃいけないなら、
せめてx件ごとにまとめて一旦送信して、複数回にわけたほうが若干マシかな。
何万件もあるやつを、個別に一個一個っていう設計が問題あると思うから、
直せるなら直したほうがいいと思う。
0816nobodyさん
2007/02/02(金) 14:44:27ID:???メールをいっぺんに送るのはやめれ
1000件ずつをcronで1時間おきに送るとか
それとデータはファイルじゃなくデータベースへ
0817797
2007/02/02(金) 15:06:47ID:???厳密に言うとMySQLを使っているのですが、
テスト時の想定としては、「万件のユーザに対する対応」でして
用途は主にお知らせやメルマガ発行になると思うので、
そういう用途にPHPでも向くのかどうか試していました。
816さんもおっしゃっていますが、やはり分散した方が良さそうですね。
ソース自体は上のようにforじゃなくてwhileを使うと思うのですが、
それでもやっぱり時間がかかりそうですし。負荷もかかるでしょう。
レンタルサーバなどでは迷惑がかかるのでcronのテストは出来ないのですが、
メールのテストは自分のアドレスを使って出来そうなので、また試してみます。
色々とありがとうございました。
0818nobodyさん
2007/02/02(金) 16:56:51ID:???YYYY-MM-DDとなっているものをYYYY MM/DDに変換したいのですが
preg_replaceとかで変換するしかないのでしょうか?
0819nobodyさん
2007/02/02(金) 17:00:55ID:???そういうのはSQLのお仕事です。
例はこんな感じ。
DATE_FORMAT(CurDate(),'%y-%m-%d')
0820nobodyさん
2007/02/02(金) 17:21:00ID:???なぜかGET後のページを見ると、空白になっています。
0822nobodyさん
2007/02/02(金) 17:40:00ID:???0823nobodyさん
2007/02/02(金) 18:10:17ID:???> そういうのはSQLのお仕事です。
それって、SQLの仕事なのか?
おれは、固有のDBに依存させないために、
その処理は、date()とstrtotime()でphp内でフォーマットしているけど。
0824nobodyさん
2007/02/02(金) 18:41:47ID:hTY0E9St$name = 'ぽち';
としたとき、 $str の文章内の $name を展開するには eval() を用いるしかないのでしょうか?
他にあればその方法をご教示願います。
0826nobodyさん
2007/02/02(金) 18:44:59ID:???0827nobodyさん
2007/02/02(金) 18:45:00ID:???そうではなく、$strには展開されていない文字列が入っているものとします。
文章力不足で申し訳ありません。
0829nobodyさん
2007/02/02(金) 18:51:19ID:hTY0E9St$name = 'ぽち';
$str = '私のペットの名前は $name です。';
・ダブルクォーテーションで展開する
・ eval() で評価する
この方法以外に $str 内の $name を展開することはできるのでしょうか?
できるとしたらその方法をご教示ください。
0830nobodyさん
2007/02/02(金) 18:55:19ID:???0832nobodyさん
2007/02/02(金) 19:03:05ID:hTY0E9St0833nobodyさん
2007/02/02(金) 19:05:09ID:???0834nobodyさん
2007/02/02(金) 19:17:46ID:k4AGASEW'.$name.'
にしてみたら?
0836nobodyさん
2007/02/02(金) 19:27:41ID:???一文字ずつ読んで$が出てきたら後に続く変数名に使える文字列を抜き出して
ってアホじゃんw
0838nobodyさん
2007/02/02(金) 19:43:19ID:???そこまでする意味がないって事じゃね?
>>829なんかは、あきらかに変な仕様だから。
そんな変な事をする理由がわからない。
0839nobodyさん
2007/02/02(金) 19:49:49ID:???0840nobodyさん
2007/02/02(金) 19:54:09ID:???0841nobodyさん
2007/02/02(金) 20:01:07ID: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() でディレクトリを読み取る前に、ディレクトリの状況?を返してると考えて
いいのでしょうか?
0843nobodyさん
2007/02/02(金) 20:15:13ID:j0u5nq/Zありがとうございます。
opendir(); っていうのはディレクトリを開くというより、
今からこのディレクトリを操作しますよ、という宣言なんですかね?
なんだか、、良くわからないなぁ。
while($file=readdir($dh)){ というのは
$fileにディレクトリ内のファイルを無事に代入できる間は… って意味ですよね
while(($file=readdir($dh)) != false){ ってことですかね?
0844nobodyさん
2007/02/02(金) 20:17:21ID:???readdir($dh)は、$dh内にある、ファイルを一ずつ返し、全て返したら、FALSEを送る関数。
よって、最後の一行は正確ではない。
0845nobodyさん
2007/02/02(金) 20:34:03ID:B4ANfZw9$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;
}
0846nobodyさん
2007/02/02(金) 20:37:48ID: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件だけ取り出したいんですがどうすれば
0847nobodyさん
2007/02/02(金) 20:45:21ID:???<?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;
}
?>
0848nobodyさん
2007/02/02(金) 20:50:40ID:B4ANfZw9>>874
本当にありがとうです><
0849nobodyさん
2007/02/02(金) 21:24:20ID:???あ・・・ゴメンまちがえてた。
if($i>20)だと、最新21件がとれちゃうよ。
if($i>19)にするか、$iの初期値を1にするとか・・・・
0850nobodyさん
2007/02/02(金) 21:26:43ID: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;
}
?>
「記事の日付が今日のものだけ表示する」はこれじゃだめですか?
0851nobodyさん
2007/02/02(金) 21:28:52ID:B4ANfZw9$today= date('m-d');
0855nobodyさん
2007/02/02(金) 23:10:51ID:DvefISwY探しても見つかりません
0858nobodyさん
2007/02/03(土) 00:25:30ID:???0859nobodyさん
2007/02/03(土) 00:30:39ID:???0860nobodyさん
2007/02/03(土) 00:36:46ID:vKXnHtGH1、0
2、+○○○
3、-○○○
というように3種類になります。(ゼロ、プラス符号付数字、マイナス符号付数字)←数字の桁数は不定で少数もあります。
でプラスとかマイナスという文字を消したいんだけど、方法ある?
0862860
2007/02/03(土) 00:52:03ID:vKXnHtGHすまん、質問間違えた。
+の時だけ+という文字を消したいです。
マイナスの時はそのままでいいです。
0863nobodyさん
2007/02/03(土) 00:52:26ID:???POST形式のデータがPHPファイルに送られます。
そのPHPファイルにはswfファイルが読み込まれるように記述してあるのですが
PHPファイルが受け取ったPOST形式データをswfで読み込ませることはできるでしょうか?
<流れ>
「input.htmlのフォーム」-POSTデータ→「receive.php(receive.phpによって作られたページにdisp.swfが表示される)」
←このdisp.swfにPOSTデータを受け取らせたい。
OSはXPでFLASH8を使っていてPHP5です。よろしくお願いします。
0865nobodyさん
2007/02/03(土) 01:10:03ID:???どの時点で文字化けしたと判断してるのかわからんからデータベースに突っ込んでるところとデータベースから引っ張り出してるところと出力してるところを小さくまとめたテストコードみたいのを出せば解決がはえーんじゃねーかって言ってるんだと思うよ後ID出せ。
0866nobodyさん
2007/02/03(土) 01:24:09ID:???何のコードでしょうって何のコードを想像したんだ?
その返答から想像力足りない君には解決無理なんじゃないかと思ってしまったよ
0867nobodyさん
2007/02/03(土) 01:57:28ID:???PHP、MySQL経験者優遇
インターネット幹部登用あり
0869nobodyさん
2007/02/03(土) 02:01:49ID:???0870nobodyさん
2007/02/03(土) 02:30:59ID:C9ZviOFK携帯絵文字変換クラスなんですが…
作成途中の為、一部バグありですが。
DLKEY => emoji
ttp://up2.viploader.net/mini/src/viploader106473.zip.html
0871nobodyさん
2007/02/03(土) 02:41:52ID:???0873nobodyさん
2007/02/03(土) 03:01:49ID:???0874nobodyさん
2007/02/03(土) 03:03:23ID:???俺あんまこういうの詳しくないからコメントはエロい人にまかせる
0875nobodyさん
2007/02/03(土) 03:10:45ID:???0876nobodyさん
2007/02/03(土) 03:30:57ID:???0877nobodyさん
2007/02/03(土) 04:49:17ID:???0878809
2007/02/03(土) 05:11:02ID:???すいません読解力が足りませんでした
調べていたらデーモン起動時に
skip-character-set-client-handshake
を加えると直りました
お騒がせしてすいませんでした
0879nobodyさん
2007/02/03(土) 05:21:35ID:???.htaccessにphpのタイプを追加したあとに、
認証タブを書いて、外だしにパスワードファイルを置けばok。
パスワードは、コンソールからコマンドをたたくか、
phpからシステム関数をたたいても出来ると思う。
0880nobodyさん
2007/02/03(土) 05:27:39ID:ms+TjTsb再び、質問です。
POST形式のデータがPHPファイルに送られます。
そのPHPファイルにはswfファイルが読み込まれるように記述してあるのですが
PHPファイルが受け取ったPOST形式データをswfで読み込ませることはできるでしょうか?
<流れ>
「input.htmlのフォーム」-POSTデータ→「receive.php(receive.phpによって作られたページにdisp.swfが表示される)」
←このdisp.swfにPOSTデータを受け取らせたい。
OSはXPでFLASH8を使っていてPHP5です。よろしくお願いします。
0882nobodyさん
2007/02/03(土) 06:04:07ID:???なんでクライアントなのに .htaccess をおかなくちゃいけないの?
http リクエスト投げるのよ。
0883nobodyさん
2007/02/03(土) 06:11:58ID:???(自分で位置を指定する必要があるのでしょうか?)
また、GDを使ったことがある方、改行にどのような方法を使っているか教えてください。
0884nobodyさん
2007/02/03(土) 08:20:31ID:???phpでグラフィックのプログラミングするなら、
改行の処理は独自に実装する必要がある。
文字の横幅を取得して改行すればいいだけ、独自関数でも作れ。
0887nobodyさん
2007/02/03(土) 10:17:30ID:uvg5VOB3858じゃないけど、今日現在を基準だと可読性の点でもそれが最高にいいね
カレンダー等で、ある日付の前次リンクとか作る時は、GETクエリからmktimeが最適かな?
0888nobodyさん
2007/02/03(土) 10:28:34ID:???ttp://hima.chu.jp/flash/tips/flash_with_arg.htm
$_POST["abc"]
0889nobodyさん
2007/02/03(土) 11:23:15ID:???だからそれはサーバ側でしょ?
ベーシック認証がかかっているサーバにログインする php のクライアントプログラム(ダウンローダのようなもの)を作りたいと言っているの。
0890nobodyさん
2007/02/03(土) 11:24:32ID:???ttp://perltips.twinkle.cc/perl/basic_authentication.php
こんなんらしい。同じようなことをやるモジュールってどれ?と。
0891nobodyさん
2007/02/03(土) 11:27:06ID:???クライアントになるべ?そうだべ?疑いの余地はないべ?
0892nobodyさん
2007/02/03(土) 11:30:17ID:???ふーん。そう。
自分で考えれば?
っでなんで人に質問するときに、自分の質問の仕方が悪いのに、
思ったとおりの回答が来ないからって逆ギレしてんの?
0893nobodyさん
2007/02/03(土) 11:41:09ID:BGo+xvxsやりたいことはわかった。
しかし、そんな単純な事になぜそんなに悩んでいるかが理解できない。
ベーシック認証する普通のHTTPリクエストだろ。
はい。では、以降は自分で考えましょうね。
0894nobodyさん
2007/02/03(土) 11:57:04ID:???0896nobodyさん
2007/02/03(土) 12:22:28ID:???検索するとサーバ側のしかでてこなくてめんどくさかったから。
0898nobodyさん
2007/02/03(土) 13:22:49ID:I7XwHPiWWindowsでも使えるようにするにはどうすればいいでしょうか?
0899nobodyさん
2007/02/03(土) 13:28:47ID:yuo9x96Aver1.1とかver0.1とかあると思うんですけど、どのようにつければいいのでしょうか?
0901nobodyさん
2007/02/03(土) 13:48:06ID:???0902nobodyさん
2007/02/03(土) 13:49:37ID:???クライアントってことはIDとパスワードをどうやって自動入力できますか?っていう意味なのか?
0904nobodyさん
2007/02/03(土) 13:53:01ID:???0906nobodyさん
2007/02/03(土) 13:56:44ID:???0907nobodyさん
2007/02/03(土) 13:59:46ID:yuo9x96A0.1 ・・・ バグとり、機能更新・修正
1.0 ・・・ 複数の機能追加
でやってみたいと思います。
PHPスクリプト配布しようかと思っています。
0908nobodyさん
2007/02/03(土) 14:00:29ID:???0909nobodyさん
2007/02/03(土) 14:15:07ID:???バージョンナンバーなんて気分でつけるもの。
俺は、マイナーバージョンうpは、変更にともなう時間でつけてた。
修正に1時間かかったら+0.1、2時間かかったら+0.2とか。
大幅な機能追加などは、メジャーうpとして+1とかにしてた。
0911nobodyさん
2007/02/03(土) 15:41:00ID:7yBSIFDSやり方のヒントやロジックそのものを書いてあるサイトがありましたら教えてください
0912nobodyさん
2007/02/03(土) 15:47:24ID:???http://www.j-pca.com/blog/log/eid33.html
とか。
「海外IPをはじく」とかでググれ。
0913nobodyさん
2007/02/03(土) 15:47:37ID:???0914nobodyさん
2007/02/03(土) 15:54:28ID:uvg5VOB30915880
2007/02/03(土) 16:00:30ID:ms+TjTsbレスありがとうございます。
でもその方法だと、SFWが受け取るデータが大きい場合に受け取りきれなくなる場合があります。
(SWFが受け取るときにはGET方式になっているので)
ちょっと板違いぽいのでフラ板いってきます。
0916nobodyさん
2007/02/03(土) 16:59:18ID:???0917nobodyさん
2007/02/03(土) 17:06:29ID:???簡単な実装方法は、>>913のと
>>914のjp以外ドメインで日本のものを例外として処理する場合。
上のに比べれば鯖に負荷がかかるけど確実に弾きたいなら、
APNIC(日本のIPの割り当て管理をしているところ)に、
アジア地域の最新のIPリストみたいなものがあるんで、
そこのリストを元に日本のIPの範囲を計算して、
訪問者がその範囲内に合致するかしないかで処理すればOK
0918nobodyさん
2007/02/03(土) 17:08:22ID:???0920nobodyさん
2007/02/03(土) 17:12:16ID:???書き込む前に、
キムジョンイルの画像を踏ませる。
踏まなかったら在日で、踏んだら日本人。
つーのは冗談で、
そういうネガティブな話題はよそでやれ。
0921nobodyさん
2007/02/03(土) 17:12:29ID:???0923nobodyさん
2007/02/03(土) 17:20:47ID:???UTF-8前提かよ!とかCP932じゃなきゃムリじゃん!みたいに半強制的に決まる。
0924nobodyさん
2007/02/03(土) 17:21:23ID:???0925nobodyさん
2007/02/03(土) 17:23:24ID:+ggKYpw9ソースコード整形ツールなんぞありますでしょうか?
(最低でもコメントを全て削除というのが出来ればいいなぁと思ってるんですが・・・。)
0926nobodyさん
2007/02/03(土) 17:27:33ID:???>(最低でもコメントを全て削除というのが出来ればいいなぁと思ってるんですが・・・。)
インデントしてなくて読みにくいっていうなら問題ありだけど、
コメント削除は必要ない。
0927nobodyさん
2007/02/03(土) 17:41:06ID:m5qoEspHSJIS最強
0928nobodyさん
2007/02/03(土) 17:54:56ID:???0931nobodyさん
2007/02/03(土) 18:05:40ID:CR1gOwncEUC-JPも悪くはないんだけど、UTF-8の方が正規表現でやや有利。
>>929-930
ネタに決まってるじゃん。
0934nobodyさん
2007/02/03(土) 18:19:38ID:???0935nobodyさん
2007/02/03(土) 18:24:04ID:???0936nobodyさん
2007/02/03(土) 18:25:45ID:CR1gOwnc0937nobodyさん
2007/02/03(土) 18:27:38ID:???∩ :・:∵
⊂、⌒ヽ∴: 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!:.... `' 、 ∧_∧ うるせぇ!黙ってろ!!
`'=、:::::;;、:、===''ジ゙'==-、、,,,__ `'(・∀・)
`~''''===''"゙´ ~`'''' ヽ ノつ
〜( ,,(~)
ヽ)
0938nobodyさん
2007/02/03(土) 18:28:08ID:???0939nobodyさん
2007/02/03(土) 18:28:30ID:???:::::::::::::::::...... ....:::::::゜::::::::::.. (___ )(___ ) ::::。::::::::::::::::: ゜.::::::::::::
:. .:::::。:::........ . .::::::::::::::::: _ i/ = =ヽi :::::::::::::。::::::::::: . . . ..::::
:::: :::::::::.....:☆彡:::: //[|| 」 ||] ::::::::::゜:::::::::: ...:: :::::
:::::::::::::::::: . . . ..: :::: / ヘ | | ____,ヽ | | :::::::::::.... .... .. .::::::::::::::
::::::...゜ . .::::::::: /ヽ ノ ヽ__/ ....... . .::::::::::::........ ..::::
:.... .... .. . く / 三三三∠⌒>:.... .... .. .:.... .... ..
:.... .... ..:.... .... ..... .... .. .:.... .... .. ..... .... .. ..... ............. .. . ........ ......
:.... . ∧∧ ∧∧ ∧∧ ∧∧ .... .... .. .:.... .... ..... .... .. .
... ..:( )ゝ ( )ゝ( )ゝ( )ゝ無茶しやがって… ..........
.... i⌒ / i⌒ / i⌒ / i⌒ / .. ..... ................... .. . ...
0940nobodyさん
2007/02/03(土) 18:29:46ID:???ちょっと気になってるんだが…
0941nobodyさん
2007/02/03(土) 18:31:13ID:???UTF-8かEUC-JPにしろと言われていたので、EUC-JPで統一した
UTF-8だと結構文字化けしやすいから
0942nobodyさん
2007/02/03(土) 18:32:35ID:???Dreamweaverで十分いけるから使ってないや
誰か、これの使い道教えてくれ
PHPをコンパイルするそうなんだが
http://www.bambalam.se/bamcompile/
0943nobodyさん
2007/02/03(土) 18:32:37ID:???0944nobodyさん
2007/02/03(土) 18:33:20ID:???【ZendStudio】PHP統合開発環境 Part2【Eclipse】
http://pc10.2ch.net/test/read.cgi/php/1154082822/
0945nobodyさん
2007/02/03(土) 18:38:26ID:???もうSjisで統一しちゃっていいかな・・・
0947945
2007/02/03(土) 18:43:12ID:???0948nobodyさん
2007/02/03(土) 18:45:22ID:CR1gOwnc0949nobodyさん
2007/02/03(土) 18:55:55ID:???BBSを作成しています。
DBの設計時、コメントのテーブルと、レスのテーブルを分けたほうが
いいのでしょうか。
0950nobodyさん
2007/02/03(土) 18:57:32ID:???0952nobodyさん
2007/02/03(土) 19:59:55ID:???F-BASICとPHPしかプログラム組んだことないんでわかんないwwww
0953nobodyさん
2007/02/03(土) 20:07:37ID:???今自分の鯖にアクセスしている人数を表示させたいのですが、
どのようにすれば良いのでしょうか?
構成の検討もつきません・・・
0955nobodyさん
2007/02/03(土) 20:23:56ID:???第三正規形になってればいい
コメントから1つのレコードを
レスから1つのレコードに特定できないから一緒にしてもOK
理由は両方重複した内容の場合特定できないから
0957nobodyさん
2007/02/03(土) 21:40:21ID:BsOUco4w0958nobodyさん
2007/02/03(土) 21:48:17ID:???0959nobodyさん
2007/02/03(土) 22:12:42ID:???0960nobodyさん
2007/02/03(土) 22:32:01ID:HgFE6tmo0961nobodyさん
2007/02/03(土) 22:38:43ID:???0963nobodyさん
2007/02/03(土) 22:44:06ID:PLyc7KSorequire_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)です。
0965nobodyさん
2007/02/03(土) 22:51:17ID:???0967966
2007/02/03(土) 22:55:23ID:???なかったことにしてw
0968nobodyさん
2007/02/03(土) 22:57:25ID:???こっちにきなさい、おじさんがチュッチュしてあげる
0969966
2007/02/03(土) 22:58:54ID:???\なのでは
0976nobodyさん
2007/02/03(土) 23:07:34ID:???ん?別にキレてないぞ。
キミが言っている事があまりにも素っ頓狂な事で、ちょっとアキれてるだけw
キミが言っているのは、巨人=阪神ってよく聞くけど違うよな?って言ってるようなもんだしw
0978nobodyさん
2007/02/03(土) 23:09:18ID:???0983nobodyさん
2007/02/03(土) 23:14:34ID:???0984nobodyさん
2007/02/03(土) 23:14:55ID:???0985nobodyさん
2007/02/03(土) 23:15:04ID:???0986nobodyさん
2007/02/03(土) 23:15:12ID:???0987nobodyさん
2007/02/03(土) 23:16:43ID:???0988nobodyさん
2007/02/03(土) 23:18:47ID:???0989nobodyさん
2007/02/03(土) 23:20:15ID:???しまったぁ〜〜〜〜今日、マトロックスだったぁ!!!!!!!
ちきしょーーーーーーーーーーーーーー!!見逃したぁ!!!!!!
いや・・・マジで・・・(´;ω;`)ブワッ
0990nobodyさん
2007/02/03(土) 23:21:11ID:???まだ開いてるぞー
0991nobodyさん
2007/02/03(土) 23:33:14ID:???でchmファイル落としたんだけど見れねーなんでだー
0993nobodyさん
2007/02/03(土) 23:44:12ID:???http://www.rupan.net/uploader/download/1170513817.rar
っていらないのかい
0995nobodyさん
2007/02/04(日) 00:01:25ID:???ありがとうございました。
>>992
ttp://plaza.rakuten.co.jp/pgmemo/diary/200510290000/
見たらいけました。どもです。
0996nobodyさん
2007/02/04(日) 00:17:30ID:3athMQrmさすがです!見事に解決しました。
ありがとうございました!
0997nobodyさん
2007/02/04(日) 00:38:41ID:???0998nobodyさん
2007/02/04(日) 01:02:23ID:GkKQRo3Q外部のHTMLファイルからタイトルの内容を取得してくれるようなライブラリはありますか?
ほかにも文字コードとかも。
自前でパターンマッチしていくしかないのでしょうか。
0999nobodyさん
2007/02/04(日) 01:03:01ID:???1000nobodyさん
2007/02/04(日) 01:03:35ID:???10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。