【PHP】下らねぇ質問はID出して書き込みやがれ 102
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2010/12/18(土) 20:07:33ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 101
http://hibari.2ch.net/test/read.cgi/php/1289793607/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0002nobodyさん
2010/12/18(土) 20:08:20ID:???【PHP】下らねぇ質問はID出して書き込みやがれ 100
http://hibari.2ch.net/test/read.cgi/php/1288168893/
【PHP】下らねぇ質問はID出して書き込みやがれ 99
http://hibari.2ch.net/test/read.cgi/php/1286938893/
【PHP】下らねぇ質問はID出して書き込みやがれ 98
http://hibari.2ch.net/test/read.cgi/php/1284805237/
【PHP】下らねぇ質問はID出して書き込みやがれ 97
http://hibari.2ch.net/test/read.cgi/php/1279833891/
【PHP】下らねぇ質問はID出して書き込みやがれ 96
http://pc11.2ch.net/test/read.cgi/php/1275032024/
【PHP】下らねぇ質問はID出して書き込みやがれ 95
http://pc11.2ch.net/test/read.cgi/php/1271636105/
【PHP】下らねぇ質問はID出して書き込みやがれ 94
http://pc11.2ch.net/test/read.cgi/php/1268835461/
【PHP】下らねぇ質問はID出して書き込みやがれ 93
http://pc11.2ch.net/test/read.cgi/php/1266229386/
【PHP】下らねぇ質問はID出して書き込みやがれ 92
http://pc11.2ch.net/test/read.cgi/php/1263035502/
【PHP】下らねぇ質問はID出して書き込みやがれ 91
http://pc11.2ch.net/test/read.cgi/php/1260247989/
【PHP】下らねぇ質問はID出して書き込みやがれ 90
http://pc11.2ch.net/test/read.cgi/php/1258187482/
0003nobodyさん
2010/12/18(土) 20:09:01ID:???■本家マニュアル 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://www.smarty.net/manual/ja/
(以下英語)
■Zend本家 http://www.zend.com/
■Zend Framework http://framework.zend.com/
■php | architect http://www.phparch.com/
■Smarty http://www.smarty.net
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0004nobodyさん
2010/12/18(土) 20:09:42ID:???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プログラムとして実行された結果になる。
0005nobodyさん
2010/12/18(土) 20:10:23ID:???→ 確認すべきは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に保存?
→ 好きにしてください
0006nobodyさん
2010/12/19(日) 16:40:55ID:IxMzmKpx1.IDを出すには、入力項目のメール欄に何も入力しない状態で送信すればOK
2.IDを出していない質問については、いろいろな意見が出るけれども泣かない
3.IDを出していない質問については、こちらに転載するなどして誘導しますか?
【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
■Ajax 厨について
【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
こちらのスレッドで好きなだけ遊んでください。
0009nobodyさん
2010/12/20(月) 07:32:05ID:???0010nobodyさん
2010/12/20(月) 23:52:54ID:???0013nobodyさん
2010/12/21(火) 01:04:57ID:WU1Jm8eyPHP:5.2.12
連携ソフトウェア:GoogleIME
確認ブラウザ:Chrome Opera IE
Google変換のAPIを試してみてもうまくいきません
$res = file_get_contents("http://www.google.com/transliterate?langpair=ja-Hira|ja&text=".urlencode("すいせいせき"));
print $res;
ブラウザで同じURLに行ってみたらうまくいくのですが
PHPを通すと
[ [ "\u3059\u3044\u305B\u3044\u305B\u304D", [ "\u7FE0\u661F\u77F3","\u7FC6\u661F\u77F3","\u5F57\u661F\u77F3","\u3059\u3044\u6210\u7E3E","\u3059\u3044\u305B\u3044\u305B\u304D", ], ], ]
と、文字化けみたいなことになります
エンコードとか色々してみたんですがダメでした。
原因を教えてください。
よろしくお願いします。
http://www.google.com/intl/ja/ime/cgiapi.html
0014nobodyさん
2010/12/21(火) 01:33:24ID:???0015nobodyさん
2010/12/21(火) 01:46:57ID:???0016nobodyさん
2010/12/21(火) 01:54:14ID:???0017nobodyさん
2010/12/21(火) 02:44:15ID:???>JSON 形式の配列が返されます。
おもいっきり説明に書いてあるし書き方的にもJSON
0019nobodyさん
2010/12/21(火) 03:31:53ID:???002013
2010/12/21(火) 09:52:18ID:???JSONのデコード以前の問題かと
0021nobodyさん
2010/12/21(火) 09:59:53ID:???json_decode使わないならpackとかめんどくさい事しないとダメ
0022nobodyさん
2010/12/21(火) 10:11:02ID:???0023nobodyさん
2010/12/21(火) 10:27:36ID:???Json_decode+Urldecodeすれば解決すんじゃないのん?
0024nobodyさん
2010/12/21(火) 10:29:57ID:???json_decodeだけでいい
0025nobodyさん
2010/12/21(火) 10:31:49ID:???俺の時、サーバサイドでjson_encodeしたら日本語のままだったから、
恐らくFirefox(Firebug)で自動的に日本語変換でもされてたのかな、まぁいいや
0026nobodyさん
2010/12/21(火) 11:00:42ID:???0027nobodyさん
2010/12/21(火) 11:04:56ID:???どちらかと言えばJSONPが使えればとは思う・・・
0028nobodyさん
2010/12/21(火) 11:26:54ID:???<head>
<meta charset="UTF-8">
<script>
<?php
$res = file_get_contents("http://www.google.com/transliterate?langpair=ja-Hira|ja&text=".urlencode("ゆうらくちょう"));
echo "var json = unescape(".$res.");\n";
echo "document.write(json);\n";
?>
</script>
</head>
002928
2010/12/21(火) 11:30:57ID:???JavaScriptのunescapeに相当するPHPの関数を知らない
003128
2010/12/21(火) 11:51:01ID:???この関数コピペしていけた
使う前に$resの\を%に置き換える必要があるけど
まぁJavaScript側でやっていいんじゃないかと思うけどね
//上の関数群をコピペ
$res = preg_replace("/\\\/", "%", file_get_contents("http://www.google.com/transliterate?langpair=ja-Hira|ja&text=".urlencode("すいせいせき")));
echo unescape($res);
003228
2010/12/21(火) 11:55:01ID:???preg_replace("/\\\/"→str_replace("\\"
0033nobodyさん
2010/12/21(火) 12:00:30ID:???0034nobodyさん
2010/12/21(火) 12:04:40ID:???0035nobodyさん
2010/12/21(火) 12:20:11ID:???003628
2010/12/21(火) 12:24:58ID:???使えるなら簡単にできるんだろうね
0038nobodyさん
2010/12/21(火) 12:44:55ID:???print_r(json_decode(str_replace(",]", "]", preg_replace(array("/\x20/", "/\\t/", "/\\n/"), array("", "", ""), $res))));
まぁこんなかんじっすかね
0039nobodyさん
2010/12/21(火) 12:47:43ID:???preg_replace("/[[:space:]]/", "", $res)
でおk
0040nobodyさん
2010/12/21(火) 14:43:46ID:???でおk
0041nobodyさん
2010/12/21(火) 15:43:31ID:???Ajax については、【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
こちらで解説付きで書いてください。
0042nobodyさん
2010/12/21(火) 17:09:15ID:???0043nobodyさん
2010/12/21(火) 18:25:35ID:???0044nobodyさん
2010/12/21(火) 19:00:41ID:???0045nobodyさん
2010/12/21(火) 19:23:47ID:???そろそろぶちきれますよ
004613
2010/12/21(火) 20:38:03ID:WU1Jm8ey<?php
$res = file_get_contents("http://www.google.com/transliterate?langpair=ja-Hira|ja&text=".urlencode("すいせいせき"));
$aryres=json_decode($res);
print_r($res);
とすると何も表示されません
print_rの代わりにvar_dumpを使うとNULLが帰ってきます
なんどもすみません。よろしくお願いします。
0047nobodyさん
2010/12/21(火) 20:41:43ID:???print_r($res);
え?
0048nobodyさん
2010/12/21(火) 20:46:25ID:???004913
2010/12/21(火) 20:52:06ID:???2chに転記する時のミスです。
print_r($aryres);
です。
0051nobodyさん
2010/12/21(火) 22:05:02ID:???005213
2010/12/21(火) 22:25:16ID:WU1Jm8ey$res = file_get_contents("http://www.google.com/transliterate?langpair=ja-Hira|ja&text=".urlencode("すいせいせき"));
print $res."\n";
$res = preg_replace("/[[:space:]]/", "", $res) ;
print $res."\n";
$res = str_replace(",]", "]",$res);
print $res."\n";
print_r(json_decode($res));
で出来ました。
ありがとうございました。
0053nobodyさん
2010/12/21(火) 23:27:20ID:???0054nobodyさん
2010/12/21(火) 23:52:25ID:zPMGCBk8こちらで質問させてください。
実は今個人でPHPの勉強しようと思ってます
演算子や関数などと出てきて、覚える必要はあるんでしょうか?
数式や数字はすごく苦手です…
やはりよく使う物なんでしょうか?
マルチになってしまいますがどうか教えてください
0056nobodyさん
2010/12/22(水) 00:11:21ID:???レスありがとうございます
Ajaxは聞きなれたことがなかったので調べてみました
簡単に言うとHTMLとCSSとJavaScriptを混ぜたものと考えてもいいんでしょうか?
面白そうとは思うんですが
PHPの方が興味あります…
0057nobodyさん
2010/12/22(水) 01:03:24ID:???入門書の基本的な文法の部分をざっと読んでみると良いと思います。
演算子なんて小学校の算数レベルのものが理解できれば何とかなります。
「関数」も数学の関数と混同している気がします。
難しいという先入観なしでやってみてはいかがでしょう。
0058nobodyさん
2010/12/22(水) 01:06:43ID:???ありがたいレスありがとうございます
なんとなく先入観で難しいと思ってしまっていたのかも知れないですね(汗)
独学で頑張ってみようと思います
ありがとうございました!
0059nobodyさん
2010/12/22(水) 02:13:12ID:???いやJSONはJSONで問題ない
JavaScript的にはあれでOKなんだよ
ただJSONの仕様が書いてあるところにその事が明記されてないから
サポートされてないだけだよ
javascriptとしては
[,].lengthこれで1で
[,""].lengthこれだと2になる
この仕様はあんまり好きじゃないがこういう仕様
0060nobodyさん
2010/12/22(水) 02:50:32ID:2qC3xXMO【PHPのバージョン】5.3
【連携ソフトウェア 特になし
【質問内容】
独学でPHPを学んでいて、演習のネタに困ってます。
2ちゃんでは評判があまり良くなかったようですが、「PHPによるECサイトプログラミング」
を参考にECサイトを組んでみて、記述抜けや記述間違いも含め、すごく勉強になりました。
次は自分でWEBサービスを組んでみようかとやっているんですが、まだ力不足のようです。
何か入門書ではなく、またサンプルやクックブックのようなものではなく、
纏まったボリュームのアプリケーションを組むといった内容の参考書をどなたか
ご存知でないでしょうか。日本語か英語でお願いしたいです。
よろしければご教授下さい。
0062nobodyさん
2010/12/22(水) 08:17:58ID:???0064nobodyさん
2010/12/22(水) 10:18:27ID:???あんま荒らすといい加減BANしてもらいますよ
0065nobodyさん
2010/12/22(水) 11:17:43ID:???こえーな
0067nobodyさん
2010/12/22(水) 14:21:35ID:???あなたがたの民度の低さが伺えます。
0068nobodyさん
2010/12/22(水) 15:30:47ID:6F24ohpmショッピングカートみて研究してたら、POSTで移動してるはずなのに更新おしてもメッセージが表示されないところがあるんです。
これってどうやってるんでしょうか?
0069nobodyさん
2010/12/22(水) 15:43:48ID:???0070nobodyさん
2010/12/22(水) 15:49:55ID:???とりあえずヘッダ見てみる事をおすすめする
0071nobodyさん
2010/12/22(水) 15:53:23ID:???headerで別ページに飛ばすというのも良くある
飛ばされたページでリロードしても問題無い
0072nobodyさん
2010/12/22(水) 15:55:51ID:???そういう風にならないようにちゃんとなってるはずだから基本気にしなくていいよねタブン
0073nobodyさん
2010/12/22(水) 16:01:09ID:???・処理後にheaderで飛ばす
・tokenを生成する
これらをやっとけば平気
tokenについては、「php 2重送信」とかで検索すると具体例がでてくる
0074nobodyさん
2010/12/22(水) 17:02:47ID:???ありがとうございました。
0077nobodyさん
2010/12/22(水) 19:00:19ID:???解決して礼を述べる時にもIDを出す配慮が欲しい。
質問と同じIDならば質問者が理解したと判断できるから。
そうした配慮に人は喜びを感じます。
0078nobodyさん
2010/12/22(水) 19:26:52ID:LZXfpwRkまた、回答者とのやりとりを何回か行う場合に、複数の回答者がてんでにバラバラな
ことを言っているのか、単一の回答者が(半端な知識の為に)矛盾した回答を複数して
いるのかが判然としません。
IDを出していない書込をすべて排除するべきではありませんか?
つまり、「【PHP】下らねぇ質問も回答も雑談もID出して書き込みやがれ」に
変えるべきではないですか?
007960
2010/12/22(水) 19:35:16ID:2qC3xXMO素早いお返事ありがとうございます。
確かにオープンになってるソースを読めば十分勉強できますね。
迂闊にも気付きませんでした。
>>62
このページのPHP部分が面白いのですね。ツールを探して見てみようと思います。
ありがとうございました。
0080nobodyさん
2010/12/22(水) 23:35:31ID:???多重面相は大変ですね
0081nobodyさん
2010/12/23(木) 02:35:07ID:???マジでリアルIQ低そう
0082nobodyさん
2010/12/23(木) 02:42:49ID:???ttp://takagi-hiromitsu.jp/diary/20060409.html
0083nobodyさん
2010/12/23(木) 09:04:58ID:???間違えて読んじやったじゃないか!
他人の手柄を横取りする ひろみちゅは嫌いなんだよね〜
0084nobodyさん
2010/12/23(木) 09:52:28ID:???0085nobodyさん
2010/12/23(木) 11:36:45ID:???私これまでいくつ回答したと思っているの、
もtっとAjaxxを基礎から勉強しなおしたほうがいいのではないでしょうか
0086nobodyさん
2010/12/23(木) 11:37:55ID:???○オナニー論評
0087nobodyさん
2010/12/23(木) 11:52:46ID:???がわからないのですか、だから低脳といわれるのですよ
0088nobodyさん
2010/12/23(木) 12:42:12ID:???0089nobodyさん
2010/12/23(木) 13:36:39ID:???両方に書いているかと想像したら、哀れみを感じました。
0090nobodyさん
2010/12/23(木) 14:01:23ID:???0091nobodyさん
2010/12/23(木) 14:03:16ID:???0092nobodyさん
2010/12/23(木) 14:13:46ID:???先生方も大好きなSOAPなんだけど
<xsd:element ref="tns:hoge" nillable="true"/>
みたく、ひとつの要素に ref と nillable が両方登場するような WSDL を SoapClient に指定すると
PHP Fatal error: SOAP-ERROR: Parsing Schema: element has both 'ref' and 'nillable' attributes
って怒られる・・・
これWSDLが悪いんですっけ?
ええ確かに、refとnillableって意味的にそぐわないよなあとは思うんだけども・・・
それともSoapClientへのパラメータでなんとかなったりしますのん?
009392
2010/12/23(木) 14:17:59ID:RvWW4NaD0095nobodyさん
2010/12/23(木) 14:21:55ID:???009692
2010/12/23(木) 14:23:56ID:RvWW4NaD【OS名】WindowsXP, Windows7
【PHPのバージョン】5.2.16, 5.3.4
【連携ソフトウェア】なし
【質問内容】
<xsd:element ref="tns:hoge" nillable="true"/>
と、ひとつの要素に ref と nillable が両方登場するような WSDL を SoapClient に指定すると
PHP Fatal error: SOAP-ERROR: Parsing Schema: element has both 'ref' and 'nillable' attributes
とエラーメッセージが表示されます。
WSDLを修正すべき?
それともSoapClientへのパラメータで何とか?
009792
2010/12/23(木) 14:24:48ID:???答え出てますよね。
消えます・・・
0098nobodyさん
2010/12/23(木) 17:09:03ID:kptdGBbqpreg_match('/(.)e+\1/', 'aeeea')
のように書きたいのですが、マッチしません。
一度括弧で取り込んだ値をそのまま使う方法はないでしょうか?
0099nobodyさん
2010/12/23(木) 17:16:03ID:???インストールしなおしだな
0100nobodyさん
2010/12/23(木) 17:47:50ID:???有り難うございました。
0101nobodyさん
2010/12/23(木) 17:55:06ID:???preg_match('/(.)jax\1/', 'Ajaxa')
ではマッチしないというわけだ。
0102nobodyさん
2010/12/23(木) 19:15:29ID:???∩___∩ |
| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ j
彡、 |∪| | Ajax
/ ∩ノ ⊃ ヽ
( \ / _ノ | |
.\ “ /__| |
\ /___ /
0103nobodyさん
2010/12/23(木) 22:13:41ID:???0104nobodyさん
2010/12/24(金) 05:19:37ID:???0105nobodyさん
2010/12/24(金) 14:18:49ID:YocMDy8V昔セキュリティソフトの類を使ってると、そのソフトがその辺の情報を自動的に消してしまってて使えないとか聞いたことがあるんですが。
0106nobodyさん
2010/12/24(金) 14:25:53ID:???refererは簡単に変えられるから
refererに依存した作りはしないほうがいい
他のチェックと合わせてrefererもチェックするというのは有り
0108nobodyさん
2010/12/24(金) 19:36:17ID:CPjE3COu住所の一覧.txtがあるのでそれを市町村や都道府県等の単位で配列につっこんで利用したいと考えております
持っているデータはただひたすら住所がフルパスで列挙されたもので
北海道札幌市中央区
北海道札幌市中央区旭ケ丘
...
沖縄県八重山郡与那国町与那国
hairetu[0][0]=北海道
hairetu[0][2]=札幌市
hairetu[0][3]=中央区
hairetu[1][0]=北海道
hairetu[1][2]=札幌市
hairetu[1][3]=中央区
hairetu[1][4]=旭ヶ丘
...
hairetu[X][0]=沖縄県
hairetu[X][1]=八重山郡
hairetu[X][2]=与那国町
hairetu[X][3]=与那国
こんな感じに格納するのが目標です
preg_match('/^(.+?[都道府県])(.+?[市町村区])((.+?[市町村区])|(.+?[^市町村区]))((.+?[市町村区])|(.+?[^市町村区]))(.+)/u', $plan_text, $addresses, PREG_OFFSET_CAPTURE);
こんな感じで正規表現試してみたのですが望んだ結果が得られません
どなたかアドバイスをお願いします
0109nobodyさん
2010/12/24(金) 19:56:28ID:???preg_match('/(.*?(?:都|道|府|県))(.*?(?:郡|市|区|町|村))(.*?(?:区|町|村))(.*)/', $s, $match);
array_shift($match);
foreach ($match as $value) {
echo $value,"<br />\n";
}
0111nobodyさん
2010/12/24(金) 20:25:21ID:???0112nobodyさん
2010/12/24(金) 20:44:16ID:???0113nobodyさん
2010/12/24(金) 20:45:54ID:???0114nobodyさん
2010/12/24(金) 20:49:31ID:???The name of a country ⇒「国」名
The state name ⇒「州」名
A name of a prefecture ⇒「県」名
The county city area name of a village ⇒「郡市町村」名
Ward autonomy name ⇒「区町村」名
Autonomy = 自治体
こうした考え方があります。
求めるものが「自治体単位での区切り」であるのならば、安易に区切りの語句で判断せずに「自治体名」の辞書を整備して挑みましょう。
求めるものが自治体単位での区切りではないのならば、正規表現での議論も適切であると考えます。
0115nobodyさん
2010/12/24(金) 21:01:23ID:???既に手元にある"住所の一覧.txt"を加工したいってことでしょう。
市川市や町田市だけでなく、四日市市や十日町市みたいな地名もあるから
単純に"市""町"などを区切り文字にするのは事実上困難。というか不可能では。
0116nobodyさん
2010/12/24(金) 21:10:02ID:wBwqmACB$filename = "aaa.exe";
$srcfile = "http://bbb.co.jp/aaa.exe";
header('Content-Disposition: attachment; filename="'.$filename.'"');
header('Content-Type: application/octet-stream');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.filesize($srcfile));
readfile($srcfile);
aサーバーとbサーバーがあって
aサーバーにファイルを置きaサーバーからダウンロードしたら正常
bサーバーにファイルを置きbサーバーからダウンロードしたら正常
bサーバーにファイルを置き
aサーバーから$srcfile = "http://bbb.co.jp/aaa.exe";でダウンロードしたらファイルが壊れるんですが
どうしたら壊れずにダウンロード出来る様になりますか?
0117nobodyさん
2010/12/24(金) 21:11:25ID:???0118nobodyさん
2010/12/24(金) 21:20:42ID:???(一瞬コマンドプロントが立ち上がって即終了)
0119nobodyさん
2010/12/24(金) 21:28:32ID:???0120nobodyさん
2010/12/24(金) 21:36:35ID:???0121nobodyさん
2010/12/24(金) 22:39:18ID:???読みに行くとき、bサーバーが出力するaaa.exeがバイナリになっていない可能性がある。
bサーバーのウェブサーバーで拡張子exeのMIMEタイプがどのように設定されているか
確認したほうがいい。
ブラウザで"http://bbb.co.jp/aaa.exe"にアクセスしてみたらどうなるか。
0122nobodyさん
2010/12/24(金) 23:49:30ID:???0123116
2010/12/25(土) 01:05:17ID:???ブラウザーから直接アクセスすると両サーバともアプリとしてちゃんとDL出来ました
が、新たな問題で、両サーバーとも$srcfile =相対パスだと大丈夫でhttpから始まる絶対パスだと失敗するようです
(aサーバー内で相対パスaaa.exeだと大丈夫、絶対パスhttp://aaa.co.jp/aaa.exeだと失敗bも同じ)
最終的には別サーバーからDLしなくてはいけなくなるのでマイッタ....
0124nobodyさん
2010/12/25(土) 01:30:29ID:???<?php
$filename = "aaa.exe";
$srcfile = "http://bbb.co.jp/aaa.exe";
$ch = curl_init();
$headers = array(
'Accept-Language: ja,en-us;q=0.7,en;q=0.3',
'Accept-Charset: Shift_JIS,utf-8;q=0.7,*;q=0.7',
'Accept-Encoding: gzip'
);
curl_setopt_array($ch, array(
CURLOPT_URL => $srcfile,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_BINARYTRANSFER => true,
CURLOPT_FORBID_REUSE => true,
CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows; U; Windows NT 6.1; ja; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13',
CURLOPT_HTTPHEADER => $headers
));
$bin = curl_exec($ch);
curl_close($ch);
header('Accept-Ranges: bytes');
header('Content-Length:' . strlen($bin));
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="' . $filename . '"');
echo $bin;
0125nobodyさん
2010/12/25(土) 01:49:09ID:???fopenラッパーは有効になってるの?
0126nobodyさん
2010/12/25(土) 09:49:52ID:???0127nobodyさん
2010/12/25(土) 13:32:47ID:AYOYvcgWMSIEだと「K曙ウ」になり、
MSIE以外(Firefox, Opera, Chrome)だと「K?x5864;」になります。
※0xFCEE は CP51932 で「K」(eucJP-msでは「」)
※0x8FB8B5 は eucJP-ms で「?x5864;」(CP51392 には存在しない)
これらの変換をPHPで再現したいのですが、やり方が判りません。
何か良い方法があればご教示ください。よろしくお願いします。
0128nobodyさん
2010/12/25(土) 13:34:18ID:???0129nobodyさん
2010/12/25(土) 14:47:04ID:???IEでどのように脳内変換してるのか、IEの中の人に聞かなくちゃわからんね。
0130nobodyさん
2010/12/25(土) 14:53:42ID:???つまりCP51932は対応してる
0131nobodyさん
2010/12/25(土) 14:59:24ID:???IEでは「K曙ウ」、Firefoxでは「K?」だった。
(Firefoxの場合の2文字目は「損」の偏が土偏の字)
0132nobodyさん
2010/12/25(土) 19:34:19ID:???http://hibari.2ch.net/test/read.cgi/tech/1278923059/599-
0133127
2010/12/25(土) 20:05:00ID:???MSIEの方はそのスレの方法で処理し、
MSIE以外の方は、CP51932の「NEC選定IBM拡張文字」とぶつかる、
eucJP-msの「ユーザ定義文字(前半)」のアドレスを、CP51932の「NEC選定IBM拡張文字」に置換
することで何とかなりそうではありますが、
他に何か確かな方法は無いでしょうか。
iconvやnkfなどで処理できればいいのですが…
0134nobodyさん
2010/12/26(日) 01:27:36ID:???というか、残りの疑問もそっちで聞いたほうがいいような気が。
正直、何をどう変換したいのかイマイチよくわからん。
0135nobodyさん
2010/12/26(日) 02:18:18ID:???0136nobodyさん
2010/12/26(日) 11:01:32ID:Mf34OzozAjaxとPHPの違いを教えてください。
0137nobodyさん
2010/12/26(日) 11:15:38ID:???0138nobodyさん
2010/12/26(日) 12:55:49ID:???コードが実行されるのが○○でか、それとも××かの違いだな。
0140nobodyさん
2010/12/26(日) 13:59:18ID:???0141nobodyさん
2010/12/26(日) 14:40:36ID:???冬休みは困ったものだな
0142nobodyさん
2010/12/26(日) 17:05:50ID:???0144nobodyさん
2010/12/28(火) 13:26:32ID:???0146nobodyさん
2010/12/28(火) 15:52:44ID:???0147nobodyさん
2010/12/28(火) 16:07:34ID:Pua3h3vQ下のサイトみたいな感じがいい。
http://docs.amazonwebservices.com/AWSSDKforPHP/latest/
0148nobodyさん
2010/12/28(火) 16:12:38ID:???0149nobodyさん
2010/12/28(火) 18:44:31ID:???どんなクソHTMLだろうがフレームだろうが
0150nobodyさん
2010/12/28(火) 18:45:39ID:???0151nobodyさん
2010/12/28(火) 19:05:38ID:tjsHZRJ6クラスになってないとダメなのかな
0152nobodyさん
2010/12/28(火) 20:07:19ID:???0153nobodyさん
2010/12/28(火) 20:09:46ID:FjOaIYGEバッチはクアッドコアのサーバで動いています。
バッチはそのうちの1つのコアを使用しているようで、
使用率が90%を越えている状態です。
このバッチを高速化するとなったら、
バッチを別プロセスで起動するくらいしか
方法はないでしょうか。
コアが4つあるから、バッチを4つ並列で起動させると
早くなるんだろうなとは思ってるんですが、
バッチを分割する手間がかかるので、
分割の手間をかけずにパフォーマンスの向上を期待できる
方法があれば教えて頂けないでしょうか。
よろしくお願い致します。
0157nobodyさん
2010/12/28(火) 20:47:03ID:???使用率が90%なのと高速化は別の視点で語りましょう。
高速化する必要性があるかないか?
なぜ高速化が必要なのか?
そうした背景を質問の文章からは読み取れませんでした。
またコアCPUの使用率90%が問題になる理由も読み取れませんでした。
いずれにせよPHPに限った話では無いような気がしています。
0158nobodyさん
2010/12/28(火) 20:50:52ID:???ただポインタなりデータの共有が面倒だからSQLに放り込んだほうが手っ取り早い
0159nobodyさん
2010/12/28(火) 21:10:54ID:???0160nobodyさん
2010/12/28(火) 21:49:50ID:???0161nobodyさん
2010/12/28(火) 22:09:43ID:N9PRkBCEsample()のように書いてメソッドを呼び出すまではその関数は実行されないのでしょうか?
つまり、APIにリクエストする自作関数があったとして、common.phpを呼び出した時点でリクエストは行われてしまうんでしょうか?
それとも呼び出すページ内にapirequest()とメソッドを記述するまではリクエストは行われないのでしょうか?
0162nobodyさん
2010/12/28(火) 22:23:41ID:???<?php
function sample1() {}
?>
common2.php
<?php
function sample2() {}
sample2();
?>
hoge.php
<?php
include_once("common1.php"); //読み込んでも実行されない
sample1(); //ここではじめてsample1が実行される
include_once("common2.php"); //当然の事ながら読み込んだだけで実行される
0163151
2010/12/29(水) 01:31:53ID:4k+FzqXtうん、一応試したんだけど見つけられなかったから質問させてもらった
もしかしたら特殊な方法で出来たりするのなら教えてほしいっす
でも、PHPのばあい結構べた書きするから、そういうのこそ単体テストが必要な気がするなあ
0164161
2010/12/29(水) 01:58:55ID:???ありがとうございました。
0167nobodyさん
2010/12/29(水) 08:56:03ID:???0168151
2010/12/29(水) 09:14:21ID:4k+FzqXt0169nobodyさん
2010/12/29(水) 10:10:08ID:???0170nobodyさん
2010/12/29(水) 11:41:13ID:Snlld2P90171153
2010/12/29(水) 12:02:28ID:???取り込むCSVは複数個あります。
それぞれが5MBほどあります。
>>156
ありがとうございます。
なるほどです。
DBに放り込む前に桁数とか値の検証とか行っているのですが、
そのあたりもSQLでやっちゃう感じなんですかね。
>>157
ありがとうございます。
CSVで取込んだデータを帳票で出力していきます。
帳票も出力する頻度が多いので、
できるだけCSVの取込からすぐに帳票に出力したいと考えています。
コアの使用率が90%になることは特に問題視はしていなくて
4つのうち1つのコアの使用率が90を超えてるときに
他のコアはほとんど何もしていないので
PHPの機能やら、プログラムの組み方で、なんとか他のコアにも処理を振り分けられたらなと
思った次第です。
PHPに割り当てられるメモリの設定とか見直せればなとか
考えていたので、PHPのスレに投稿させていただきました。
>>158
ありがとうございます。
ですよねぇ。
ファイルのポインタとかを使うとめんどくさい事になりそうですよね。
0172nobodyさん
2010/12/29(水) 12:10:21ID:???自分がマルチプロセスでプログラム書かないと効果ないっしょ。
分割して記述はしたくないんでしょ?
だったら普通に書いたプログラムを勝手に言語やエンジンが複数コア使って処理なんてしてくれるわけない。
0174153
2010/12/29(水) 13:18:35ID:???ありがとうございます。
仰る通りだと思います。
そういう認識ではいたんですが、もしかしたら
自分の知らないテクニックがあるかもしれないと思ってたんですが、
楽しようとせずに地道にやっていこうと思います。
>>173
Ajaxですか・・・。
どこか参考になるサイトがあれば教えて頂けますか?
0175nobodyさん
2010/12/29(水) 13:37:11ID:???0176nobodyさん
2010/12/29(水) 13:39:09ID:???もっともコーディングが少ないやり方でいいよ。
0178nobodyさん
2010/12/29(水) 13:52:54ID:???0179nobodyさん
2010/12/29(水) 15:10:31ID:???Ajax厨が出てきてから、解決していない質問がどれかがわからなくなってきた。
また、質問した方が解決したか否かを書かないために、未だに質問を継続しているかがわからない。
申し訳ないが、今生きている質問(継続中)を教えて欲しい。
それとAjax厨は、こうした迷惑が発生していることも含めてレスを考え直して欲しい。
0180nobodyさん
2010/12/29(水) 15:34:54ID:???何を試してどう出来ないと言うの?
普通にその関数を持ったファイル(functions.phpみたいな)を読み込んで
$this->assertEquals(5, MyAdd(2, 3))するだけでしょ。
もし関数定義外の部分に実行文が入ってるなら諦める。
>>153>>171
PHPはスレッドが使えないから並列化はマルチプロセスにするしかない。
(DBじゃなくて)PHPがネックになってることが確認できてるなら
複数個あるCSVに対してそれぞれPHPを起動するのが楽じゃないかな。
普通はDBへの転送に一番時間かかるんだけどね。
0183nobodyさん
2010/12/29(水) 18:09:25ID:???ネットの良心と可能性というのを初めて見た気がします
独学で学んでるのでここでしか聞けないのですが、本当にありがとうございます。
言葉じゃ言い表せないぐらいの感謝の気持ちでいっぱいです
0184nobodyさん
2010/12/29(水) 18:13:37ID:???0186nobodyさん
2010/12/29(水) 18:24:30ID:???確かにAjax厨が出てきてから変な流れになりましたね。
別スレ(隔離スレ)も作りましたが、ネット弁慶+かまってチャンはやっぱり最強ですね。
>>181 名前: nobodyさん [sage] 投稿日: 2010/12/29(水) 15:35:55 ID:???
>>182 名前: nobodyさん [sage] 投稿日: 2010/12/29(水) 15:49:42 ID:???
常日頃から他人を批判する姿勢を続けているから家族からも見限られるんだよ。
今年も他人の呪って批判だけし続けて新年を迎えてください。
おっと、批評批判は隔離スレでお願いします。
【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
0187nobodyさん
2010/12/29(水) 19:52:57ID:???0188nobodyさん
2010/12/29(水) 20:52:05ID:???日本語がおかしくて笑えましたw
0189nobodyさん
2010/12/29(水) 23:42:19ID:???とはいえレス自体がおかしいけど
0190nobodyさん
2010/12/30(木) 01:46:05ID:???AjaxでできることはAjaxでするべきだと言っているのです。
必ずしも全てをPHPで行う必要はありません。
0191nobodyさん
2010/12/30(木) 17:22:33ID:???0192nobodyさん
2010/12/30(木) 17:33:23ID:???PHPはローカルで動くプログラム言語。C++の簡易型みたいなもの。
Ajaxはブラウザとサーバーのリアルタイム通信する技術でしょ。
0193nobodyさん
2010/12/30(木) 17:35:21ID:???0194nobodyさん
2010/12/30(木) 17:42:51ID:???0198nobodyさん
2010/12/30(木) 18:18:32ID:???そんな悲惨な人生もあるのです。
0199nobodyさん
2010/12/30(木) 18:40:40ID:???低レベルなAjax厨はおとなしくゴメンなさいして
JavaScriptスレいって教えてもらえ
ここは完全にスレ違い
0200nobodyさん
2010/12/30(木) 19:17:08ID:???0201nobodyさん
2010/12/30(木) 19:57:24ID:???Ajaxについて語りたいなら隔離スレでお願いします。
質問者と回答者が迷惑かつ不愉快な思いをしています。
人様に迷惑だけはかけるな
両親から習ったでしょ?
0204nobodyさん
2010/12/30(木) 20:48:17ID:???0205nobodyさん
2010/12/30(木) 22:54:02ID:???0207nobodyさん
2010/12/31(金) 00:20:55ID:???隔離でずっとAjaxやっててね
0208nobodyさん
2010/12/31(金) 02:05:04ID:???表示する中身はxmlに書いてて、
ページを表示する際に読み込んで生成してたのですが、
毎回読み込まずに、例えばメモリにxmlの中身を保持してるのを取ってくるとかは
できますか?共有メモリ?
アパッチ起動時に一回だけメモリに保持できるといいのですが、、
◯◯区分とか小さなマスタ情報は、
どう扱うのが良いのでしょうか><
0210nobodyさん
2010/12/31(金) 02:19:49ID:Oz9h13cuあっ、これは失礼しました。
【OS名】WindowsXP / Apatch
【PHPのバージョン】5.3だったか、、
会社に行かないと分かりません。
最新のxampp使用しました。
【連携ソフトウェア】MySQL
【質問内容】
208になります。
0211nobodyさん
2010/12/31(金) 02:22:18ID:???0212nobodyさん
2010/12/31(金) 02:25:00ID:???中級の下くらいの俺の知る範囲では出来ないかと。
セキュリティ的にOKならセッションorクッキーで保持するとか。
でも自サーバー上でだけの話ならxml毎回読み込みで問題ない気が。
別サーバーから取得してるなら初回だけ読んで、自サーバーにファイルorDB保存するとか。
0213nobodyさん
2010/12/31(金) 02:25:16ID:???早速ありがとう。
なるほど、そんな事ができるんですね。
ちと調べてみます。
0214nobodyさん
2010/12/31(金) 02:27:19ID:???ファイルの読み込みで何か問題あるの?
0215nobodyさん
2010/12/31(金) 02:33:42ID:???0216nobodyさん
2010/12/31(金) 02:35:16ID:Oz9h13cuありがとう。
DB兼Webサーバな環境です。
同時接続は多くて20台位なのですが、
可能な限りI/Oを減らしたかったのです。
メモリに入ってれば、区分名等を使う場合にも使えていいかな、と思った次第です。
明日本屋に行ってみます!
0217nobodyさん
2010/12/31(金) 02:35:44ID:???0218nobodyさん
2010/12/31(金) 02:36:39ID:???使った事ないから知らんけど
0219nobodyさん
2010/12/31(金) 02:42:23ID:???0222nobodyさん
2010/12/31(金) 06:16:39ID:???Wordpressのソースコードを読んでみたんですが、
どうしてクラスや関数を作らずに、たくさんのファイルに処理が小分けされているんですか?
なかにはPHPとHTMLが混ざっているところもあって、処理の流れが分かりにくいと思いました。
CakePHPのようにMVCで整理した方がいいんじゃないんですか?
何らかの合理的な理由があってそういう書き方がされているのだと思いますが、よくわかりません。
プログラマの方々がどんなふうに認識しているのか知りたいです。ご意見ください。
0224nobodyさん
2010/12/31(金) 11:36:29ID:???Ajaxも仕分け対象で、残念だったね・・・
0225nobodyさん
2010/12/31(金) 11:39:04ID:???0226nobodyさん
2010/12/31(金) 11:39:55ID:???0227nobodyさん
2010/12/31(金) 12:40:12ID:???http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
0228nobodyさん
2010/12/31(金) 13:38:49ID:8g3NYefkその後また同じPHPファイルにアクセスが来るんですが、これって何が原因ですか?
xdebug入れてるとこうなるんですかね?
0229nobodyさん
2010/12/31(金) 13:47:33ID:???0230nobodyさん
2010/12/31(金) 14:25:08ID:8g3NYefk0231nobodyさん
2010/12/31(金) 14:59:28ID:XYm/hF3eホームページでの文字表示縦書きにしたいのですが
どうすればいいでしょうか
0232nobodyさん
2010/12/31(金) 14:59:50ID:8g3NYefk原因はMod_reqriteで、リンクが通ってないリクエストがIndex.phpにきてた事が判明しました。
お騒がせしました。
0233nobodyさん
2010/12/31(金) 15:20:47ID:???Webサイト制作初心者用質問スレ part222
http://hibari.2ch.net/test/read.cgi/hp/1291304974/
こちらへどうぞ
0234nobodyさん
2010/12/31(金) 15:24:44ID:XYm/hF3eありがとうございました
そちらで聞いてみます
0235nobodyさん
2010/12/31(金) 16:56:48ID:jORx8XGQMySQLから取り出してきた、
$shin[date] (ex.2010-12-31、date型)
に、
$kankaku[interval_t@] (@は1~20、中身はint型)
の数字の分だけ、●ヶ月先の計算をしたいです
こんな風に書いてるのですが文法エラーとなります、どう書けば良いかご教示ください。
($kankaku[interval_t@]を普通の数字に置き換えるとokなのですか)
for($loop=1;$loop<=20;$loop++){
$nextdate0 = date("Y-m-d", strtotime("$shin[date] + $kankaku['interval_t'.$loop] month"));
print "$nextdate0";
}
0236nobodyさん
2010/12/31(金) 17:07:11ID:???0237nobodyさん
2010/12/31(金) 17:14:08ID:???他に原因があるかもしれないが、とりあえず
$nextdate0 = date("Y-m-d", strtotime("{$shin['date']} + {$kankaku['interval_t'.$loop]} month"));
0238nobodyさん
2010/12/31(金) 17:15:45ID:???一応、検証に使ったソース
<?php
$shin['date'] = '2010-12-31';
$kankaku['interval_t1'] = 1;
$loop = 1;
$nextdate0 = date("Y-m-d", strtotime("{$shin['date']} + {$kankaku['interval_t'.$loop]} month"));
print $nextdate0;
?>
0239nobodyさん
2010/12/31(金) 17:17:09ID:???$nextdate0 = date("Y-m-d",strtotime($shin['date'].' + '.$kankaku['interval_t'.$loop].' month'));
まだこうしろよ・・・
0240nobodyさん
2010/12/31(金) 17:38:59ID:???言われてみればその通りですね;;
>>237-239
それぞれに分解して書けば良かったのですね。ありがとうございます!
0241nobodyさん
2011/01/01(土) 00:13:17ID:???0242nobodyさん
2011/01/01(土) 00:42:44ID:???http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
0244nobodyさん
2011/01/01(土) 00:46:40ID:kBOtcIS2あるサイトで得られるHTMLにて、「href="〜"」の"〜"部分を抽出したいです。
いろいろと試してみましたが、サイトにあわせたコーディングが求めらてしまいました。
自分の拙さ(つたなさ)が理由で、サイトにあわせたコーディングをしていると思います。
お勧めのサンプルや、お勧めの関数などがあれば、教えてもらえれば嬉しいです。
0245nobodyさん
2011/01/01(土) 00:47:30ID:kBOtcIS20246nobodyさん
2011/01/01(土) 00:52:42ID:???http://hibari.2ch.net/test/read.cgi/tech/1268979408/
0248nobodyさん
2011/01/01(土) 00:59:37ID:???http://jp.php.net/manual/ja/domdocument.loadhtmlfile.php
0249nobodyさん
2011/01/01(土) 01:31:33ID:???// 読み込むファイル
$filename = "test.html";
$doc = new DOMDocument();
$doc->loadHTMLFile($filename);
$a = $doc->getElementsByTagName("a");
for($i = 0; $i < $a->length; $i++) {
var_dump($a->item($i)->getAttribute("href"));
}
0254nobodyさん
2011/01/01(土) 15:29:42ID:xdZw+o32$PATH = "../".$_POST['ttm']."/";
$TEMPPATH = $PATH."html/";
とあるのですが、これの../とはどういう意味なんでしょうか?
0256nobodyさん
2011/01/01(土) 15:42:42ID:xdZw+o32../だけで一つ上の階層を出力できるなんて便利ですね!
0258nobodyさん
2011/01/01(土) 19:16:47ID:xdZw+o32<form method="post" action="./test.php">
の場合はドットが1つなんですがこの場合は「今扱っているファイルの一つ上の階層のディレクトリにあるtext.php」
ということになるのでしょうか?
ドット1個と2個の違いがどうも
0260nobodyさん
2011/01/01(土) 20:37:57ID:???../ 1個上
../../ 2個上
../../../ 3個上
つうかPHPの質問とちゃうで
相対パスはWebサイト作りの基礎やで
0261nobodyさん
2011/01/01(土) 20:44:10ID:xdZw+o32道理でphpのサイトめぐっても見当たらない訳やで!
ホンマ助かりますわー!
0262nobodyさん
2011/01/01(土) 20:52:36ID:???0263nobodyさん
2011/01/01(土) 22:28:36ID:Uob5Bi4b【PHPのバージョン】5.3.1
【連携ソフトウェア】MySQL, XAMPP
【XAMPPのバージョン】Windows ver 1.7.3
【MySQLバージョン】5.1.41
【MySQL文字セット】UTF-8 Unicode (utf8)
【MySQLの照合順序】utf8_unicode_ci
【質問内容】
DBから取得した全角文字が文字化けします。
解決策を教えてください。
【詳細】
1.MySQLに登録されたデータを取得する。
$res_result = mysql_query($sql);
2.連想配列に格納し、その結果をprintで出力する。
[ソース]
$mojicode = mb_detect_encoding($value);
print "$value の文字コードは $mojicode です。";
[結果]
$$rows[def]=???
??? の文字コードは UTF-8 です。
と半角文字は正しく出力されるのですが、全角文字が?で表示されます。
長文すみません、宜しくお願いします。
0264263
2011/01/01(土) 22:30:16ID:Uob5Bi4b追加情報です。
【PHP.iniの設定】
mbstring.detect_order:UTF-8,SJIS,EUC-JP,JIS,ASCII
mbstring.encoding_translation:Off
mbstring.func_overload:0
mbstring.http_input:pass
mbstring.http_output:UTF-8
mbstring.internal_encoding:UTF-8
mbstring.language:Japanese
mbstring.strict_detection:Off
mbstring.substitute_character:no value
【PHPファイル】
<meta 〜 "text/html; charset=UTF-8" />
ファイルの文字コード:UTF-8 BOMなし
宜しくお願いします。
「半角文字は正しく出力される」というのはどれのこと?
あと、そのときブラウザの表示文字エンコードは何になってる?
エンコードを他の物に切り替えると???の部分が正しく表示されるってことはない?
0268nobodyさん
2011/01/01(土) 23:44:40ID:???MySQLはクライアント側も別途エンコーディング指定が必要
mysqli_set_charset($db, "utf8")
mysqliが無いならSET NAMESとか。
ちなみに"???"がUTF-8と判定されるのはdetect_orderのせい
0269263
2011/01/02(日) 00:07:31ID:sCIW7Ij+ご返答ありがとうございます。
ブラウザの表示文字エンコードは、
Unicode(UTF-8)です。
これは、PHPのmeta情報に
<meta 〜 "text/html; charset=UTF-8" />
と記載しているからだと認識しています。
また、ファイルの文字コードもUTF-8です。
> 「半角文字は正しく出力される」
すみません。半角文字の結果を消していました。正しくは下記をみてください。
【表示文字エンコード:Unicode(UTF-8)】
$$rows[abc]=GAME
GAME の文字コードは UTF-8 です。
$$rows[def]=???
??? の文字コードは UTF-8 です。
【表示文字エンコード:日本語(EUC)】
⇒文字化けします。
$$rows[abc]=GAME
GAME ・絖潟若 UTF-8 с
$$rows[def]=???
??? ・絖潟若 UTF-8 с
【表示文字エンコード:日本語(シフトJIS)】
⇒画面に何も表示されなくなります。
0270263
2011/01/02(日) 00:15:11ID:sCIW7Ij+ご返答ありがとうございます。
調べて確認してみます。
detect_orderは始めコメントアウト化されており、
DBから取得した結果がASCIIになっておりました。
DBとの文字コードを合わせる必要があると思い、
detect_orderにUTF-8を指定しましたが、
問題ありますか?
コメントアウト化されていた時から既に
printした結果が???と文字化けされていました。
0271nobodyさん
2011/01/02(日) 00:17:06ID:???もし正しいデータが入ってるとすれば正しく取り出せてないのかもな
0272nobodyさん
2011/01/02(日) 00:18:24ID:???0273263
2011/01/02(日) 00:50:50ID:sCIW7Ij+おっしゃる通り、
SET NAMESを使用する事で解決しました。
[変更前ソース]
$db = mysql_select_db( $dbName, $res_dbcon );
$res_result = mysql_query($sql);
[変更後ソース]
mysql_query("SET NAMES utf8");
$db = mysql_select_db( $dbName, $res_dbcon );
$res_result = mysql_query($sql);
[変更後の結果]
$$rows[abc]=GAME
GAME の文字コードは UTF-8 です。
$$rows[def]=ゲーム
ゲーム の文字コードは UTF-8 です。
助かりました、本当にありがとうございました。
>>266-272
ご返答頂けた方々、ありがとうございました。
0274263
2011/01/02(日) 00:56:36ID:sCIW7Ij+お礼と返答です。
>>271
ご返答ありがとうございます。
テーブルのキャラセットとは何を指すのでしょう?
照合順序はutf8_unicode_ciで、列の種別はtext型です。
>>272
ご返答ありがとうございます。
nkfではありませんが、
PHP上でmb_convert_encodingを使用し文字コードを変換した場合、
結果は変わらず文字化けしたままでした。
0275nobodyさん
2011/01/02(日) 01:02:29ID:???SET NAMES でもとりあえずは問題ないだろうけど、
PHP5.3なら mysql_set_charset() を使用したほうがいい。
理由は過去スレまたはググってください。
0276nobodyさん
2011/01/02(日) 01:04:22ID:???注意:
文字セットを変更するにはこの方法を使うことを推奨します。 mysql_query() で SET NAMES .. を実行する方法はお勧めできません。
0277nobodyさん
2011/01/02(日) 01:05:15ID:???テーブルのキャラクタセットと言われてわからないってことは別の人がDB初期設定やってるだろうから
説明は差し控える
はっきり言って>>264にある設定なんてmeta以外はやらなくてもいいようなどうでもいい設定だがな
0278nobodyさん
2011/01/02(日) 01:07:24ID:???MySQLの照合順序をutf8_unicode_ciにしていても
Tableの定義でそのフィールドの照合順序が異なる設定になっている場合があるので
確認したほうがいいという意味だろう。
0279nobodyさん
2011/01/02(日) 01:17:16ID:???いや、SET NAMES はクライアントが使用する文字コードをMySQLに
通知するのが目的だからTableのキャラクタセットの設定とは異なる。
MySQLはクライアントから送信された文字を既定の文字コードとして
解釈し、照合順序で設定したキャラクタセットに勝手に変換する。
読み出す場合はその逆。
0280263
2011/01/02(日) 01:32:59ID:sCIW7Ij+>別の人がDB初期設定やってるだろう
いえ、私がDBの設定を行っていますが、
phpMyAdminにキャラクタセットの項目が
見つからなかった為、お聞きしました。
>>278
なるほど、理解できました。
DBとTableの照合順序は統一しており、
再確認した結果、全て一致していました。
0281263
2011/01/02(日) 01:44:19ID:???ご指摘ありがとうございます。
確認したところSET NAMESは非推奨となっていました。
mysql_query("SET NAMES utf8");を
mysql_set_charset("utf8");に変更しました。
文字化けせずに正しく表示されました。
ありがとうございます。
(そろそろsageておきます)
0283nobodyさん
2011/01/02(日) 15:30:33ID:C0ta8JClおすすめできないと書いてるけどPDOじゃSET NAMESでやるしかないですよね?
0284nobodyさん
2011/01/02(日) 15:44:41ID:UqNSlP1V[環境]
共用レンタルサーバー
PHP 5.2.12
OS Linux 2.6.27.18-25
アパッチ 2.2.14
サーバープロバイダー ギガレンタルサーバー(ttp://gigasrv.jp/)
コンパネ cPanel X
[やりたいこと]
空メールでメンバー登録
[出来たこと]
メールを受信して、パイプを使ってその内容をスクリプトへ渡す。
[問題]
メールを送信した側に、次のようなエラーが返信されてしまいます。
このようなエラーを返信しないようにしたい。
※長いのでレスをまたがせていただきます。
0285284
2011/01/02(日) 15:46:20ID:UqNSlP1V-------- ▼ここからメール内容▼ ---------
This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:
pipe to |/※スクリプトへのパス
generated by ※空メールのアドレス
The following text was generated during the delivery attempt:
------ pipe to |/※スクリプトへのパス
generated by ※空メールのアドレス ------
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20060613/imagick.so' - libMagickWand.so.2: cannot open shared object file: No such file or directory in Unknown on line 0
X-Powered-By: PHP/5.2.12
Set-Cookie: CAKEPHP=e3bd5f3b116b2491e08f2c3ee81b48c0; expires=Mon, 10-Jan-2011 14:15:36 GMT; path=/
P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"
Content-type: text/html; charset=UTF-8
------ This is a copy of the message, including all the headers. ------
※以下、略
-------- ▲ここまでメール内容▲ ---------
.htaccess に php_flag display_errors Off を書いてもダメで、スクリプトに ini_set( "display_errors", "Off"); を追加してもモチロンだめでした。
サーバーの管理者に相談したほうが良いのでしょうか?
※熱っぽいのでこれから保健センターに行ってきます。返信が遅れるかもしれませんがどうかご容赦ください。よろしくお願いします。
0286nobodyさん
2011/01/02(日) 18:41:15ID:???0287284
2011/01/02(日) 19:24:17ID:UqNSlP1Vやはりそうですか。
ひとつ気になるのは、ブラウザでPHPを走らせた場合はもとより、Cron でPHPプロセスを起動した場合にも上記のようなメッセージを見たことがないことです。
なので、自分のやり方しだいではエラーを表示させないようにも出来るのではないかと思うのですが。
ちなみに、このエラーは PHP のセッティングに問題があると言う認識でよろしいのでしょうか。
答えをいただきながらの追加の質問ですが、お答えいただければ幸いです。
0288nobodyさん
2011/01/02(日) 19:41:56ID:jMmDteG70291nobodyさん
2011/01/02(日) 20:15:17ID:???0292nobodyさん
2011/01/02(日) 20:30:45ID:???代替手段としてコンストラクタに
PDO::MYSQL_ATTR_READ_DEFAULT_FILE と
PDO::MYSQL_ATTR_READ_DEFAULT_GROUP を渡せば可能
>>287
> libMagickWand.so.2: cannot open shared object file
って事だからMTAから起動した時の環境変数PATHが違うんだろうね
ちなみにPHP起動時のエラー表示に関係する設定は display_startup_errors
0294284
2011/01/02(日) 22:41:32ID:UqNSlP1V先ほどサポセンへ相談メールを送りました。
>display_startup_errors
あ、そうでした。
これも一応ダメもとで試しては見ましたがやはり結果は同じでした。
サポートの対応など状況が変化しましたら、また改めて報告させていただきます。
0296nobodyさん
2011/01/03(月) 00:53:11ID:???毎ページの広告をPHPで携帯とPC振り分けてみたのですが、
気にするほど負荷がかからない程度なのですかね?
0299nobodyさん
2011/01/03(月) 07:18:03ID:???0300nobodyさん
2011/01/03(月) 14:51:49ID:???0302nobodyさん
2011/01/03(月) 14:57:49ID:???0303nobodyさん
2011/01/03(月) 16:38:09ID:???0304nobodyさん
2011/01/03(月) 16:49:57ID:???0305nobodyさん
2011/01/03(月) 17:06:12ID:EiHgtjUUスレ違いならばご指摘ください。
とあるURLを file_get_html したら次のエラーが出されました。
Warning: file_get_contents( とあるURL )
[function.file-get-contents]: failed to open stream:
HTTP request failed! HTTP/1.1 403 Forbidden in simple_html_dom.php on line 39
ブラウザーで「とあるURL」を開くと問題なく開けます。
エラーの理由は何でしょうか?
また対処方法をご存知の方がいたら教えてください。
0306nobodyさん
2011/01/03(月) 17:12:06ID:???0307nobodyさん
2011/01/03(月) 17:15:19ID:???サーバ側がスクリプトからのアクセスを禁止してるから
ブラウザの挙動を再現してアクセスすれば取れると思う
cURLあたりを使えばいけるんじゃないかな
0308nobodyさん
2011/01/03(月) 17:19:59ID:???そういうサーバだと思って諦めるか
考えられる原因を追求して試行錯誤してみるしかないねえ
わざわざ禁止にしてる管理者に聞いても原因は教えてくれないだろう
原因はいくつか考えられるけどクッキー食わせないとだめだったりしてるのかもな
0311nobodyさん
2011/01/03(月) 20:35:01ID:???どうせAjaxも理解できないここの連中にはわかりゃしないんだから。
0313nobodyさん
2011/01/03(月) 20:58:10ID:EiHgtjUU<?php
require_once( "php-lib/simple_html_dom.php" );
//
function urlHref( $orgurl )
{
$html = file_get_html( $orgurl );
foreach( $html -> find( "a" ) as $element ) {
$urllist[ ] = $element -> href;
}
return $urllist;
}
//
{
$urllist = urlHref( "http://hibari.2ch.net/test/read.cgi/php/1292670453/" );
sort( $urllist );
var_dump( array_unique( $urllist ) );
//
$urllist = urlHref( "http://logsoku.com/thread/hibari.2ch.net/php/1279833891/" );
sort( $urllist );
var_dump( array_unique( $urllist ) );
}
?>
0314nobodyさん
2011/01/03(月) 21:50:56ID:???まさかと思うが allow_url_fopen は On になってんのか?
PHPのバージョンは?
simple_html_dom.php を使わずに file_get_contents 関数を直接使ったらどうなった?
0315nobodyさん
2011/01/03(月) 22:00:01ID:???1件目では目的を達しているが、
2件目でNGだと言いたいのでは?
片方がOKで片方がNGならば、対象のサイトとの相性?
どんな相性なんだろう?w
0316nobodyさん
2011/01/03(月) 22:04:44ID:???0317nobodyさん
2011/01/03(月) 22:07:16ID:EiHgtjUUちなみに、俺も自分の環境で実行したら1件目は問題ないが、2件目は同じエラーが file で出されました。
<?php
{
$urllist = file( "http://hibari.2ch.net/test/read.cgi/php/1292670453/" );
var_dump( $urllist );
//
$urllist = file( "http://logsoku.com/thread/hibari.2ch.net/php/1279833891/" );
var_dump( $urllist );
}
?>
0318nobodyさん
2011/01/03(月) 22:10:17ID:???単にブラウザ以外からのアクセスは403返してるだけじゃないの?
0319nobodyさん
2011/01/03(月) 22:10:29ID:???file_get_contents でも同じ結果。
2つ目の http://logsoku.com/thread/hibari.2ch.net/php/1279833891/ が取得できないね。
0320nobodyさん
2011/01/03(月) 23:11:36ID:???タイトル部分が
<MMString:LoadString id="insertbar/linebreak" />
となっているのですが、これはどのような意味があるのでしょうか?
消して、普通に、店の名前を打っても良いのか悩んでおります。
0322nobodyさん
2011/01/03(月) 23:12:28ID:???0323nobodyさん
2011/01/03(月) 23:16:01ID:???0324nobodyさん
2011/01/03(月) 23:21:05ID:???Adobe Dreamweaver CS4 * ローカライズされるストリングの提供
http://help.adobe.com/ja_JP/Dreamweaver/10.0_Extending/WS5b3ccc516d4fbf351e63e3d117f508c8de-7ffe.html
Dreamweaverを引き継いでいないなら、消してしまっていいよ
あとPHP関係無いから。
0325320
2011/01/03(月) 23:54:06ID:???PHP関係なく、Dreamweaverだったのですね・・・・
Dreamweaverは私も持ってますが、パソコンが違うので、バージョンは異なるかもです。
私はCS3を使ってます。
ローカライズされるストリングの提供 っというのがちょっと難しくて、どういうメリットデメリットがあるのか?消して普通にタイトルつけていいのか分からないので勉強してみます;;
ありがとうございました。
0326nobodyさん
2011/01/04(火) 00:08:40ID:???0327nobodyさん
2011/01/04(火) 00:25:15ID:???0329nobodyさん
2011/01/04(火) 00:26:20ID:???IDを出すのはルール
0330nobodyさん
2011/01/04(火) 01:55:58ID:???IDを出すのがルールなら答える側もそれを守れってんだ
てめぇの善意なんかいらねぇっつーの
0331nobodyさん
2011/01/04(火) 02:59:06ID:???0332nobodyさん
2011/01/04(火) 05:12:51ID:???※本回答は、あくまでも善意で答えています。
0333nobodyさん
2011/01/04(火) 05:53:50ID:???ただ出すなっていってるだけだろ?
>>331
ID出すのがルールなんだかルール守ってないやつには答えるなってことかと思われ
まぁ落ち着けよお前ら
0334nobodyさん
2011/01/04(火) 05:54:31ID:???○出せ
0335nobodyさん
2011/01/04(火) 07:04:55ID:???・IDを出して質問しない奴が現れる
質問するならIDを出して書き込め!
>>1 を読み直して出直して来い!カス!
・IDを出していない質問に答える奴が現れる。
IDを出していない質問に答えるな!
>>1 を読み直して出直して来い!カス!
あれ?どちらも共通点があるんですねw
0336nobodyさん
2011/01/04(火) 07:11:25ID:???0337nobodyさん
2011/01/04(火) 07:44:36ID:???0338nobodyさん
2011/01/04(火) 08:36:59ID:???他のスレもそうだけど排他的なレス多すぎだろ
0339nobodyさん
2011/01/04(火) 09:04:23ID:???0340nobodyさん
2011/01/04(火) 09:42:22ID:???低レベル丸出しのAjax厨はニートみたいだけど
0341nobodyさん
2011/01/04(火) 10:16:09ID:???それにしてもゴミ発言が多すぎw
しかもレスがオウム返しと来たもんだ
0342nobodyさん
2011/01/04(火) 14:55:02ID:???早くAjaxをマスターして卒業することをお勧めする。
0343nobodyさん
2011/01/04(火) 19:03:13ID:???0345nobodyさん
2011/01/04(火) 19:43:32ID:???はぁ?PHPでできることはAjaxでも出来るっつーの
つーかそれ以上?
サーバーサイドか何か知らんけど無知は引っ込んでろボケ
0346nobodyさん
2011/01/04(火) 20:09:29ID:???知っとけよ
0347nobodyさん
2011/01/04(火) 20:30:04ID:???つーかAjaxと関係ねーし
0348nobodyさん
2011/01/04(火) 20:53:58ID:gmEJx0n4PHPのスレでAjaxの話題を続けるのは、なぜ?
0349nobodyさん
2011/01/04(火) 21:04:34ID:???【PHPのバージョン】5.3
【連携ソフトウェア】MySQL
【質問内容】ほぼPHPと無関係ですが、PHPで作ったとあるランキングサイトで起きているちょっとした不都合です。
それはホストの特定についてです。
いまのところ接続者をリモホで識別しています。
このリモホ、可変なのでしょうか?
EATcf-1xxxxxxxxx.odn.ne.jp
ixxxxxxxxxxxxxx.ap.plala.or.jp
アクセスログを見る限りこの二つは特に頻繁に変わっている気がします。
おそらく初歩的な質問ですみません。
0350349
2011/01/04(火) 21:05:32ID:nnzMIHnB0351nobodyさん
2011/01/04(火) 21:14:04ID:???0352nobodyさん
2011/01/04(火) 21:33:33ID:nnzMIHnB0353nobodyさん
2011/01/04(火) 21:34:14ID:???0354nobodyさん
2011/01/04(火) 21:35:44ID:???0355nobodyさん
2011/01/04(火) 21:36:31ID:???こんな感じで変数を利用する方法はないのでしょうか?
0356nobodyさん
2011/01/04(火) 21:36:41ID:???0358nobodyさん
2011/01/04(火) 21:57:04ID:nnzMIHnBIPは誰でもそうなのは知ってますが、リモホは変わらないものだと思ってました。
リモホも人によっては可変ということなのですか?
>>355
考えてみますね
0359nobodyさん
2011/01/04(火) 21:57:21ID:???0360359
2011/01/04(火) 21:58:44ID:???0361nobodyさん
2011/01/04(火) 22:06:12ID:???熟読してください
ホスト名とISP名とドメイン名が混同されてる
0362nobodyさん
2011/01/04(火) 23:46:58ID:nnzMIHnBリモホも人によっては可変のようですね、スレチにもかかわらずありがとうございました
0363nobodyさん
2011/01/05(水) 00:27:54ID:+86nYwDs0364nobodyさん
2011/01/05(水) 01:15:06ID:???0365nobodyさん
2011/01/05(水) 02:04:08ID:???0366nobodyさん
2011/01/05(水) 03:11:47ID:???0367nobodyさん
2011/01/05(水) 10:08:32ID:BkirA51M前はこれでできたのですが。
対処方法をよろしくお願いします。
0368nobodyさん
2011/01/05(水) 10:10:09ID:???0369nobodyさん
2011/01/05(水) 10:35:20ID:BkirA51M何か確認する方法ないですかね?
phpinfo();でも、php --iniでも見てもダメでした
0370nobodyさん
2011/01/05(水) 10:46:12ID:???あと、もちろん編集後はhttpdを再起動してるよな?
0371nobodyさん
2011/01/05(水) 10:52:38ID:BkirA51Mとりあえずhttpd.conf内でPHPIniDirを使って強制的に読ませるようにしたらできました。
別の方法あるはずなんですがねぇ。
0374nobodyさん
2011/01/05(水) 15:37:39ID:???0375nobodyさん
2011/01/05(水) 15:40:18ID:???0376nobodyさん
2011/01/05(水) 16:08:32ID:???今の流行は女子中学生
0377nobodyさん
2011/01/05(水) 16:43:39ID:DFLThWw3mb_internal_encoding→EUC-JP
この状態でブラウザで表示させようとしたら、UTF-8で表示されて文字化けします。
HTMLのmetaのせいかなと思い見てみましたがそれもEUC-JPでした。
また、ヘッダーでレスポンスを見ると「text/html; charset=UTF-8」で返ってきておりました。
今までにないパターンでの文字化けで、どの段階での文字化けが怪しいでしょうか。
ご指摘ください。
0378nobodyさん
2011/01/05(水) 16:50:17ID:???手動でエンコーディングを変えてみる。
EUC-JPで正常に表示されるなら、
レスポンスヘッダの文字コード指定のせい。
EUC-JPのターミナルで、phpを実行してみる。
正常に表示されたら、やっぱり文字コード指定のせい。
ソースをEUC-JP指定で開いてみる。
正常に 以下略。
0380nobodyさん
2011/01/05(水) 17:48:20ID:???0381nobodyさん
2011/01/05(水) 18:14:39ID:T+SvEUqU===
でも
strcmpでも一致しなくて悩んでおります
テキストから読み取って$valにいれたものをvar_dumpしてみると
string(12) "?北海道"
となっており
var_dump("北海道");
としてみると
string(9) "北海道"
となります。
上と下で違うということはわかったのですが
何が原因なのかまったくもって不明です
文字コードも両方UTF8です
どなたかアドバイスいただければorz
0382nobodyさん
2011/01/05(水) 18:17:21ID:T+SvEUqUは出力をコピペしたのですが
上には?というものがはいってますね…目視できなかったのですが
文字コードかえてみたら上は先頭に?ソが入ってるようです
これはどうにかできないでしょうか?
string(12) "?ソ蛹玲オキ驕" string(9) "蛹玲オキ驕"
0383nobodyさん
2011/01/05(水) 18:25:10ID:???上はBOMが入ってると思われる
文字コードについて調べるのなら、bin2hex使いなよ。
var_dump(bin2hex($val));
0384nobodyさん
2011/01/05(水) 18:26:59ID:T+SvEUqUありがとうございました!
結局もう一度ファイルをUTF8で保存しなおしたら動くようになりました
0385nobodyさん
2011/01/05(水) 18:40:05ID:???0386nobodyさん
2011/01/05(水) 18:52:48ID:/BZr9M7L.=とはどういう意味なのでしょうか
0387nobodyさん
2011/01/05(水) 18:55:35ID:???$a = "テスト";
$a .= "田中";
echo $a;
やってみ
0388nobodyさん
2011/01/05(水) 19:04:58ID:/BZr9M7Lありがとうございます!
テスト田中さんはボクもファンです!
0389nobodyさん
2011/01/05(水) 19:06:27ID:???> *=とかと同じという感じですか!
何の言語かわからんが、PHPでは多分違った動作だ。
$int = 3;
$int *= 5;
echo $int; // 15
0390nobodyさん
2011/01/05(水) 19:09:18ID:/BZr9M7L○=シリーズなのかなと
0392nobodyさん
2011/01/05(水) 19:10:09ID:???0393nobodyさん
2011/01/05(水) 20:11:53ID:???http://shop3.genesis-ec.com/search/item.asp?shopcd=02000&item=raku4
0394nobodyさん
2011/01/05(水) 23:31:12ID:???Ajaxの基本ですね。
0395nobodyさん
2011/01/05(水) 23:48:12ID:???0396nobodyさん
2011/01/06(木) 01:30:10ID:???> Ajaxの基本とJapascriptの文法が混在しています。
> これもPHPならば解決できるんですか?
当たり前です。
せめてマニュアルくらい読んでから質問するようにしてください。
0397nobodyさん
2011/01/06(木) 04:25:57ID:x4BB1WQhとあるのですが、これは$hogeがfgetsと等しい時にtrueを返して繰り返されるという意味でよろしいのでしょうか?
比較演算子で等しい時は==だと思うのですが
0398nobodyさん
2011/01/06(木) 05:19:26ID:???$hageにfget($fp,1024)の値が代入されると真。FALSEなら偽。
$hageにFALSEが代入されるまで続く。
$hageにFALSEが代入されると、while()の継続条件が偽になるから終わる。
0399nobodyさん
2011/01/06(木) 05:39:12ID:x4BB1WQh繰り返しが止まるという事ですが。
ありがとうございます、勘違いしたままになる所でした
0400nobodyさん
2011/01/06(木) 06:56:10ID:???0401nobodyさん
2011/01/06(木) 09:51:07ID:???$fp = fopen( "test.txt", "r" );
while ( $hoge = fgets( $fp, 1024 ) ) {
echo "while in";
var_dump( $hoge );
}
echo "while out";
var_dump( $hoge );
?>
-test.dat
0
0402nobodyさん
2011/01/06(木) 10:59:41ID:???$fp = fopen( "test.dat", "r" );
while ( ( $hoge = fgets( $fp, 1024 ) ) !== FALSE ) {
echo "while in";
var_dump( $hoge );
}
echo "while out";
var_dump( $hoge );
?>
--- test.dat
0
0403nobodyさん
2011/01/06(木) 11:09:14ID:A2B05vAMphpinfo()で
mbstring.http_input pass
mbstring.http_output pass
mbstring.internal_encoding no value
この場合で、次に優先される文字コードは何でしょうか。
htmlのmetaタグにcharset=EUC-JPの表記をしておりますが、
ブラウザのヘッダーのレスポンスではcharset=UTF-8で来てしまいます。
0404nobodyさん
2011/01/06(木) 12:24:24ID:???> この場合で、次に優先される文字コードは何でしょうか。
phinfo() で得られる mbstring.internal_encoding の Local Value と Master Value の値が不明なので文字コードを答えることは不可能です。
> htmlのmetaタグにcharset=EUC-JPの表記をしておりますが、
metaタグの表記が正しいかを再確認ください。
誤った表記の場合にはブラウザー側でmetaタグを有効にしません。
> ブラウザのヘッダーのレスポンスではcharset=UTF-8で来てしまいます。
どのようにして、「ブラウザのヘッダーのレスポンス」が「来ている」のを確認していますか?
言わんとされていることが、どの様な状態を述べているかが判然としません。
サーバーとしてApacheを使用しているのならば、httpd.conf で以下の設定がどの様になっているかも確認ください。
AddLanguage
LanguagePriority
AddDefaultCharset
AddCharset
0405nobodyさん
2011/01/06(木) 12:30:57ID:rIZ8uG+B0407nobodyさん
2011/01/06(木) 12:43:22ID:rIZ8uG+Bいえ、ローカルです。
情報が少ないのですがPHP5.3から組み込まれたとか何とかで無くなったらしいのですが、
今ひとつ理解に苦しんでいます。
[PHP_PDO_SQLITE]
extension=php_pdo_sqlite.dll
[PHP_SQLITE3]
extension=php_sqlite3.dll
0408nobodyさん
2011/01/06(木) 12:48:17ID:A2B05vAMありがとうございます。
ヘッダーの確認はFirefoxのアドオン『Live HTTP headers』で確認し、
「Content-Type: text/html; charset=UTF-8」を確認しました。
HTMLのmetaタグは、
<meta http-equiv="Content-Type" content="text/html; charset=euc-jp" />
と表記しております。
Apache側で文字コードの設定する項目は特にありませんでした。
httpd.conf, conf.d以下のファイル全て確認
0409nobodyさん
2011/01/06(木) 12:48:22ID:rIZ8uG+Bsqlite_last_errorも無いようですが、どうしろと?
0410nobodyさん
2011/01/06(木) 13:19:40ID:rIZ8uG+Bえろい人、ヒントくれ!
>>408
優先順位は知らないけど素直にphpでheaderを吐けば良いのでは?
それでもレン鯖で広告とか入ると環境によっては文字化けするけど
0411nobodyさん
2011/01/06(木) 17:12:44ID:???0412nobodyさん
2011/01/06(木) 19:23:50ID:???> この場合で、次に優先される文字コードは何でしょうか。
> phinfo() で得られる mbstring.internal_encoding の Local Value と Master Value の値が不明なので文字コードを答えることは不可能です。
未回答ですね。質問するならば問われた環境を答える姿勢も必要です。
> Apache側で文字コードの設定する項目は特にありませんでした。
> AddLanguage
> LanguagePriority
> AddDefaultCharset
> AddCharset
これは、指摘された事項の全てが未設定であるとの回答ですか?
問題を解決したいのならば、問われたことにきちんと回答しましょう。
0414nobodyさん
2011/01/06(木) 22:33:39ID:???0416nobodyさん
2011/01/07(金) 02:38:11ID:???0417nobodyさん
2011/01/07(金) 09:25:48ID:???0418nobodyさん
2011/01/07(金) 12:55:39ID:wJp74Is3投稿間隔が短すぎたため、1時間半に設定したいと思っています。
現在、
if(date("i") % 60 == 0){
$response = $eb->postRandom("data.txt");
}
こう書いて、1時間ごとに設定しています。
これを1時間半ごと、2時間ごとに設定するには、どうすればいいのでしょうか?
("G")などにしてみましたが、指定された時間内に実行されるだけのようです。
どなたか教えて下さい。お願いします。
0419nobodyさん
2011/01/07(金) 13:19:22ID:???0420nobodyさん
2011/01/07(金) 13:21:51ID:???0421418
2011/01/07(金) 14:08:32ID:???試しに60を120に設定してみました。2時間待ってみます!
0422nobodyさん
2011/01/07(金) 14:23:21ID:???0423nobodyさん
2011/01/07(金) 14:28:56ID:???0426nobodyさん
2011/01/07(金) 15:06:12ID:???if(date("i") % 60 == 0)
↓
if (time() % 5400 == 0)
5400は秒数で1時間半
2時間なら7200にする
0427426
2011/01/07(金) 15:09:29ID:???下手したらうまく投稿できないかもな
間隔が指定されていて1分間に最大1回までしかそのスクリプトを叩かないという保障があれば
if (time() % 5400 < 60)
とかでもいいと思うけど
0428nobodyさん
2011/01/07(金) 15:17:42ID:???時間通りに実行されなかった場合、anacronが有効になっていれば遅延実行される
素直に>>423のように前回の時間を保存しておき
そこから1時間半以上経ってたら実行させるか
別スクリプトにし、cron設定を1時間半置きにするかしたほうがいいかと。
0429nobodyさん
2011/01/07(金) 15:58:11ID:9ignEtZmdefine("DAY_1", 1);とすると、既にシステムで定義済みでした。
リファレンスを見ると、
__LINE__
__FILE__
__FUNCTION__
__CLASS__
__METHOD__
しか書いておりませんでした。
どこかで定義済みの定数一覧を確認する方法はないでしょうか?
0430nobodyさん
2011/01/07(金) 16:06:01ID:???PHP: 定義済みの定数 - Manual
http://www.php.net/manual/ja/reserved.constants.php
とりあえず、DAY_1は定義済み
0431nobodyさん
2011/01/07(金) 16:12:27ID:9ignEtZmありがとう
しかしDAY_1とか何に使うんだwwww
0432nobodyさん
2011/01/07(金) 19:28:18ID:???0434nobodyさん
2011/01/07(金) 20:41:11ID:???0436nobodyさん
2011/01/07(金) 20:45:24ID:???0437nobodyさん
2011/01/07(金) 20:46:04ID:???0438nobodyさん
2011/01/07(金) 22:54:58ID:???0443nobodyさん
2011/01/08(土) 03:12:23ID:???Ajax厨の覚えた言葉一覧
回答者にID出せ
↓
Ajaxで全て解決
↓
アホ確定
0446nobodyさん
2011/01/08(土) 14:03:32ID:???0447nobodyさん
2011/01/08(土) 15:10:20ID:???0450nobodyさん
2011/01/08(土) 17:20:36ID:XS66UTHqどこで何をダウンロードして何をインストールして何を設定して何を見て勉強すればいいのかわからない
0451nobodyさん
2011/01/08(土) 17:22:21ID:???0453nobodyさん
2011/01/08(土) 21:26:30ID:???俺が初心者にPHPを伝授する
http://hibari.2ch.net/test/read.cgi/php/1167984858/l50
0454nobodyさん
2011/01/09(日) 01:10:39ID:hhQtxAfg0455nobodyさん
2011/01/09(日) 07:29:36ID:???決してPHPをやる資格がないとかいうことではなく単に必要がないということ
0456nobodyさん
2011/01/09(日) 08:34:22ID:???0457nobodyさん
2011/01/09(日) 08:47:21ID:???幼稚園でPC学習のために教えている積み木がマジお薦め。
構造体はもちろん、つまづきやすいポインタの概念や、
値渡し、参照渡しなどの概念が簡単に身につく。
ビットシフト演算なんかは、積み木が一番わかりやすい。
逐次処理、条件分岐、反復の構造化プログラミングの基礎
から、オブジェクト指向の初歩まで、幼稚園で学べる(専門用語
は使ってないし、PC学習だとも言ってないけど)積み木最強。
立方体ならなんでもいいけど、簡単に手に入るのはくもんのやつ。
0458nobodyさん
2011/01/09(日) 23:03:08ID:Un2SN/N40459nobodyさん
2011/01/09(日) 23:03:50ID:???0460458
2011/01/09(日) 23:23:25ID:???0461458
2011/01/09(日) 23:25:17ID:???ごにょごにょ
諦めて弄ることにします
0462nobodyさん
2011/01/10(月) 00:57:34ID:jiNzzCCp【PHPのバージョン】5.3
【連携ソフトウェア】MySQL
【質問内容】VIPで集めたたくさんのエロ画像を使って、ワンクリックでどんどん画像を流していけるような便利なギャラリーサイトを作ってみてます。
readdir()関数で指定した場所のファイルを読むことに成功しましたが、
目的のエロ画像が丁寧にも日本語で保存しちゃったためにうまいこと読み込めませんでした。
どのようにすればこれを読み込めるでしょうか。
ファイルのリネームは作業量的な意味で避けたいです。
while($file_name = readdir($res_dir) ){
$size = filesize($file_name);
echo $size; //日本語ファイルのうち一部は0が返ってくる
}
0463nobodyさん
2011/01/10(月) 01:10:44ID:???0464nobodyさん
2011/01/10(月) 01:17:57ID:jiNzzCCpどのような意味かはわかりかねますが、
.と..の取得はできていますが目的のファイルではないため、
if(filetype($file) == "dir") continue;
として回避しています。
0466nobodyさん
2011/01/10(月) 01:41:35ID:???0467nobodyさん
2011/01/10(月) 01:50:01ID:jiNzzCCpこのエロ画像の群れはおそらく公開すると違法になるのでごめんなさい
>>466
例えば"ヨスガノソラ"とかの文字列は完全にダメです
0468nobodyさん
2011/01/10(月) 01:57:29ID:r0K6qIgEfunc($s);
echo $s;
function func($s)
{
$s = "あいう";
}
こんな感じにしたいです
0469nobodyさん
2011/01/10(月) 02:03:55ID:jiNzzCCpいろいろ調べてみたところ、カタカナの"ソ"が原因のようです。なぜでしょうね・・・
0470nobodyさん
2011/01/10(月) 02:07:07ID:???0471nobodyさん
2011/01/10(月) 02:07:35ID:???$s = func();
echo $s;
function func()
{
$s = "あいう";
return $s;
}
引数は使ってないけどこう?
0472nobodyさん
2011/01/10(月) 02:08:51ID:???文字列云々言ってる奴は&付けてポインタ渡せ
0473nobodyさん
2011/01/10(月) 02:35:24ID:oG6fhevvエディタでBOMなしのUTF-8で保存するのと同じことをしたいのですが、
どうやってファイルを出力すればいいのでしょうか?
ヘッダのmetaタグではUTF-8と指定しているのですが、
どうもUTF-8以外のコードで保存されてしまっているようです。
<?php
$string = <<<EOF
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>テスト</title>
</head>
<body>
<h1>あいうえおアイウエオ亜伊宇江尾</h1>
</body>
</html>
EOF;
touch("test.html");
file_put_contents("test.html", $string);
ちなみにこのスクリプト自体はShift_JISで保存されています。
このスクリプトをUTF-8で保存すると問題はなくなりますが、
Shift_JISでも動かしたい場合はどうすればよいのでしょうか?
あとで編集するときに文字コードを無意識に変更してしまう場合もあるので、
文字コード問題が起きないような作成方法があったら教えてください。
0474nobodyさん
2011/01/10(月) 02:37:59ID:???0475nobodyさん
2011/01/10(月) 02:39:25ID:jiNzzCCphttp://php.net/manual/ja/ref.mbstring.php
が、まだ解決には至りません。
"ソ"や"十"など、ごく一部の文字が混在するだけで、渡した引数が正しくてもファイルリソースを得られないままです。
0476473
2011/01/10(月) 03:12:32ID:oG6fhevv説明じゃよくわからないのでコード出していただけると嬉しいです。
0477nobodyさん
2011/01/10(月) 03:17:35ID:r0K6qIgEありがとうこざいます。
ライブラリのソース見てたら参照渡しであることが分かりました;;
func(&$s)
0478nobodyさん
2011/01/10(月) 03:49:49ID:???諦めて5.2を使うとよい
0479nobodyさん
2011/01/10(月) 03:59:13ID:0fz3EibBclass Main extends Base{
function test(){
ここで継承元・Baseクラスのプロパティ$strを取得してprint_rしたい
}
}
関数ならparent::test();のようにすれば良いのはわかるのですが・・・
0480nobodyさん
2011/01/10(月) 04:07:28ID:???protected $test = "hoge";
}
class Main extends Base {
function test() {
return $this->test;
}
}
$main = new Main();
echo $main->test();
0481nobodyさん
2011/01/10(月) 04:28:33ID:???protected $test = "hoge";
}
class Main extends Base {
function test() {
$base = new Base();
return $base->test;
}
}
$main = new Main();
echo $main->test();
それじゃ子のプロパティさすしこうだろ
インスタンスメンバーだからインスタンス化するしかない
parent::$testのようにアクセスしたければクラスメンバ(static)にしないとな
0484nobodyさん
2011/01/10(月) 09:18:29ID:???80っていうわけのわからん文字と、\だなって判断するんだな。
0485nobodyさん
2011/01/10(月) 10:22:00ID:???5.3のバグらしい
5.1ならいけるとか
http://ml.php.gr.jp/pipermail/php-users/2010-July/035804.html
ひと通り読んでみ
0486nobodyさん
2011/01/10(月) 10:54:04ID:0fz3EibBありがとうございます。勉強になります。
0487nobodyさん
2011/01/10(月) 12:01:41ID:???0489nobodyさん
2011/01/10(月) 14:12:01ID:WZZUC9HT以下、var_dumpの結果です。
================================================
object(Zend_Gdata_App)#61 (6) {
["_httpClient:protected"]=>
object(Zend_Http_Client)#9 (15) {
["config:protected"]=>
array(12) {
["maxredirects"]=>
int(0)
["strictredirects"]=>
bool(true)
["useragent"]=>
string(16) "Zend_Http_Client"
["timeout"]=>
int(10)
["adapter"]=>
string(31) "Zend_Http_Client_Adapter_Socket"
["httpversion"]=>
string(3) "1.1"
["keepalive"]=>
bool(false)
["storeresponse"]=>
bool(true)
["strict"]=>
bool(true)
0490nobodyさん
2011/01/10(月) 14:18:00ID:???じゃMainでMain()->$strをMainで変更したあとに
Base()->$strの値を参照しようとMain()->$strにアクセスすると期待通りの結果を得られるわけですね?
なわけねーだろバーロwwwwwwwww
0493nobodyさん
2011/01/10(月) 15:15:49ID:???http://php.net/manual/ja/book.reflection.php
0494nobodyさん
2011/01/10(月) 18:04:02ID:???typeでstring比較するしかない?
0495nobodyさん
2011/01/10(月) 18:16:24ID:???0496nobodyさん
2011/01/10(月) 18:38:17ID:???0497nobodyさん
2011/01/10(月) 18:39:44ID:???0498nobodyさん
2011/01/10(月) 18:59:03ID:???0499nobodyさん
2011/01/10(月) 19:10:12ID:???ちょっと知りたいことでも、他者から見て質問と受け取られる可能性があるならば、IDを出した書き込もう!
それがこのスレが荒れない要素の一つだったりします。
0500nobodyさん
2011/01/10(月) 19:41:26ID:???0501nobodyさん
2011/01/10(月) 20:44:38ID:???スレチ
Ajax厨は移動してください
http://hibari.2ch.net/test/read.cgi/php/1289117484/
0502nobodyさん
2011/01/10(月) 23:10:38ID:???インスタンスが参照渡しだからなんだろうけど流れ的に違和感がある
こんな気持ち悪い書き方をするのって普通?
class a{
var $var = 0;
}
class c{
function c($inst){
$inst->var = 777;
}
}
$a = new a();
$c = new c();
$c->c($a);
var_dump($a->var);
0506nobodyさん
2011/01/11(火) 14:33:33ID:???public $手持ちの金 = 0;
}
class 会社 {
public $基本給 = 0;
public function 給料やる( $リーマン ) {
$リーマン->手持ちの金 += $this->基本給;
}
}
$おまい = new リーマン;
$ブラック = new 会社;
$ブラック->基本給 = 500;
$ブラック->給料やる( $おまい );
$せんぱい = new リーマン;
$ブラック->給料やる( $せんぱい );
if( $せんぱい->手持ちの金 < $おまい->手持ちの金 ) {
$せんぱい->say金かして();
}
普通じゃねーか
0507nobodyさん
2011/01/11(火) 16:56:27ID:???お前の事じゃなくてソースなw
0508nobodyさん
2011/01/11(火) 17:34:11ID:8HymJ9iF$sql = "SELECT * FROM a INNER JOIN b ON a.id=b.a_id";
$res = mysql_query($sql);
while($col = mysql_fetch_array($res)){
}
上記のコードの場合、mysql_fetch_arrayでDBからデータを取ろうとしても
同じフィールドが存在すると被ってしまいます。($colに入らない)
フィールド指定を「a.name AS a_name, b.name AS b_name」
としたら表示されるのですが、このようにひとつずつ指定するしかないのでしょうか?
0509nobodyさん
2011/01/11(火) 17:39:22ID:???0510nobodyさん
2011/01/11(火) 20:04:54ID:bAp9UI910511nobodyさん
2011/01/11(火) 20:38:14ID:???そのとおりです。必要なフィールドだけ as で指定すればいいでしょう。
select *, a.name as a_name, b.name as b_name from a ...
DBを設計するときに連結する可能性のあるテーブル同士でフィールド名が
重複しないように命名しておくのがミソです。
0512nobodyさん
2011/01/11(火) 20:55:24ID:???というかその方が普通だろ・・・
どちらかというとクエリーで*を使うなよw
0513nobodyさん
2011/01/11(火) 21:27:45ID:8HymJ9iFと言うことは長くなっても使うフィールドだけ指定すると言うことですね。
正直めんどくさいですが、理解できました。ありがとうございます。
0514nobodyさん
2011/01/11(火) 21:44:13ID:???0515nobodyさん
2011/01/11(火) 23:28:05ID:???0516nobodyさん
2011/01/11(火) 23:29:18ID:???0517nobodyさん
2011/01/11(火) 23:43:49ID:0PP1ZKa2これをちゃんと動くようにするには?
0518nobodyさん
2011/01/11(火) 23:56:33ID:???・ 質問者として、態度をわきまえること。
0519nobodyさん
2011/01/12(水) 02:21:00ID:???0520nobodyさん
2011/01/12(水) 02:21:21ID:1ZGOyXUL勉強のためにブログを作っています。
コメント欄のデータベース管理についてなんですが、
一つのテーブルを作ってすべてのコメントをそこに保存し、記事番号カラムで呼び出すか
記事ごとにテーブルを作って、テーブルごとに呼び出すか
というパターンが考えられると思うんですが、どちらが相応しいのでしょうか?
0521nobodyさん
2011/01/12(水) 02:25:41ID:???data.xml:
<?xml version="1.0"?>
<data>
<a b="&#x22;" c="hoge" />
</data>
data.xmlのbの値を元にaを見つけてcのhogeを取り出したいんだけど、
$xml= simplexml_load_file("data.xml");
$method = '//a[@b="&#x22;"]';
$xml->xpath($method);
この時点でaが見つけられないんだけどどこがおかしい?
0522nobodyさん
2011/01/12(水) 02:33:33ID:???普通は1つのコメントテーブルに記事IDで分ける形だよ。
テーブル:comment
カラム:id, article_id, title, body, date
みたいな。
0527nobodyさん
2011/01/12(水) 07:38:54ID:???0529nobodyさん
2011/01/12(水) 16:07:13ID:???0530nobodyさん
2011/01/12(水) 16:52:30ID:???一部の駄目な奴が無理矢理荒らしてるんだろ。ライバル増やしたくなくて。
0531nobodyさん
2011/01/12(水) 17:06:26ID:???板の統廃合で板URLが「php」の方に統一されてしまった時に
散々荒らしが涌いた、だから2chでは特にphpは嫌われている
今はやってないだろうが、他言語で有名な人がここでの荒らしを公言してたしな
0532nobodyさん
2011/01/12(水) 17:14:09ID:???0534nobodyさん
2011/01/12(水) 20:49:41ID:1ZGOyXULありがとうございました。
0536nobodyさん
2011/01/12(水) 22:09:49ID:???荒しと変わらんぞ
0537nobodyさん
2011/01/13(木) 00:21:54ID:???リクエスト受け取ってから出力までのシーケンス図を描くことで良い?
0538nobodyさん
2011/01/13(木) 00:30:58ID:???レスポンスもヘッダを自動的に送ってくれるからwebプログラム学びたかったら他の言語がいいと思う
0541nobodyさん
2011/01/13(木) 01:25:50ID:???質問をしているのならば、>>1 を読み返してから書き直しましょう。
悪戯(いたずら)で書き込んでいるのならば、こちらのスレが適切です。
【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
> webプログラムのコードを読むコツ教えてください。
ちなみに「webプログラム」とは何を意図して書いていますか?
「webサイト構築に使用されるプログラム」のことを述べていますか?
中庸な表現や自己中心的な表現を用いた質問では、意図した回答を得られません。
0543nobodyさん
2011/01/13(木) 04:31:54ID:???>>1 を読んでない質問者に回答するのはやめましょう。
悪戯(いたずら)で書き込んでいるのならば、こちらのスレが適切です。
【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
0544nobodyさん
2011/01/13(木) 10:16:38ID:OvDwhANq「..」だけ弾いておけば上に行かれる心配はありませんか?
echo file_get_contents($base.$_POST["updata"])
0545nobodyさん
2011/01/13(木) 10:54:42ID:???外部パスを受け入れるとか、どう考えてもセキュリティホールになるだろうが。
0546nobodyさん
2011/01/13(木) 10:55:25ID:???【PHPのバージョン】5.2
【連携ソフトウェア】なし
【質問内容】
サーバーステータスのコーディングについて質問です。
LAN側のポート単位のチェックはできるのですが、
WAN(外部)側のIPのポートが使われてるか表示させる事は可能でしょうか?
どうかご教示お願いいたします。
0547nobodyさん
2011/01/13(木) 11:07:19ID:???意味が良くわからないけど、外部からアクセスできるか知りたいのなら串を使うなり
そういうチェックを支援してくれているサイトがあるからそこを使うよろし。
ポートスキャンならセキュリティサイトでも調べられるよ。
0548nobodyさん
2011/01/13(木) 11:17:31ID:???説明が下手ですみません。
他のWebサイトでチェッカーがあるのは知っているのですが、自分のWeb上で表示させたいのです。
ちなみにポート開放のスキャンではありません。
例をあげますと
自宅のサーバーで動かしているポートを使う何かしらのアプリが起動できているか、
異常終了や切断されているかを会社など外部からPHPで判断できるようにしたいのです。
表示方法は「Online」か「Offline」のどちらかのフラグだけで十分です。
0549nobodyさん
2011/01/13(木) 11:20:28ID:???0550546
2011/01/13(木) 11:24:04ID:???function check_port($port) {
$conn = @fsockopen("127.0.0.1", $port, $errno, $errstr, 0.2);
if ($conn) {
fclose($conn);
return true;
}
}
function server_report() {
$report = array();
$svcs = array('80'=>'HTTP');
foreach ($svcs as $port=>$service) {
$report[$service] = check_port($port);
}
return $report;
}
$report = server_report();
?>
<table border="border" bgcolor="#EEDD82">
<tr bgcolor="#EEDD82">
<td width="115" bgcolor="#EEDD82"><div align="center">サービス</div></td>
<td width="65"><div align="center">状態</div></td>
</tr>
<tr>
<th></th>
</tr>
<tr>
<td>HTTP</td>
<td><div align="center"><?php echo $report['HTTP'] ? "<font color="."blue"."><strong>Online</strong></font>" : "<font color="."red".">Offline</font>" ?></div></td>
</tr>
0551546
2011/01/13(木) 11:24:46ID:???HTTPの部分だけですが
>>549
よろしければもっとヒントをいただけませんか・・・
0552nobodyさん
2011/01/13(木) 11:27:19ID:???空きポートにpingを送って、通るか否か調べるって事だろ?
さすがにヒントも糞も無いと思うんだが・・。
0554546
2011/01/13(木) 11:31:24ID:HlCtfQfpいや・・・>>548でも書いた通り「PHPのWeb上で」表示させたいのです・・・
でもPHP上でping送信を使えばいいのかな
>>553
ageるほどでもないと思っていたので失礼しました
0555nobodyさん
2011/01/13(木) 11:35:33ID:???全てのサービスを同一のパソコンで稼動させていたとしても、
結局は素直に各サービスのポートを叩いて確認するしかないのでは?。
0556546
2011/01/13(木) 11:40:45ID:HlCtfQfpまさにそんな感じです。
おそらくMMO運営は負荷軽減のため複数の回線を使用していると思いますが。
そういう別のWANの場合どう指定してあげればいいのかなという事です。
>>550のやり方ではWAN指定できなかったので、pingで跳ね返ってくるか確認という事でしょうか?
0557nobodyさん
2011/01/13(木) 11:44:45ID:???javascriptでどうよ。
http://www.gnucitizen.org/blog/javascript-port-scanner/
0558nobodyさん
2011/01/13(木) 11:45:27ID:???0559nobodyさん
2011/01/13(木) 11:47:23ID:???俺も鯖管理してるけど、ポートがふさがってる時は
だいたい鯖が落ちてるかiptablesの設定が悪いかだと思うけどな。
つまり、特定のポートだけ発生する現象ではないと思うが。
0560546
2011/01/13(木) 11:51:31ID:HlCtfQfpありがとうございます、ソース覗いてみました。
これ使えるかもしれませんね。PHP単体は諦めて1回試してみます!
>>559
ポートがふさがるっていう概念はどうかと思いますが
「使われていない」という状態はありますよ。
アプリを通してポートを完全に開通させ、アプリが終了してたらバウンドしなくなりますし。
0561nobodyさん
2011/01/13(木) 11:58:22ID:???fsockopenのところを他サーバのipアドレスにしたけど
俺のとこではちゃんと動いてるよ?
0563nobodyさん
2011/01/13(木) 12:42:18ID:???pingは通るけどサービスが死んでいるとかよくあるはなしさ
0565nobodyさん
2011/01/13(木) 15:51:08ID:eIBAKAY8この質問に答えてくれ
0566nobodyさん
2011/01/13(木) 17:48:30ID:???> WAN(外部)側のIPのポートが使われてるか
> そもそも特定のポートが「使われていない」状態ってあるのか?
開放しているか
> ちなみにポート開放のスキャン
空いているか
> 空きポートにpingを送って、通るか否か調べるって事だろ?
塞がっているか
> ポートがふさがってる時は
日本語での表現は難しい。
0567nobodyさん
2011/01/13(木) 17:59:33ID:NmcnbSQP携帯向けサイトを作る時、管理画面などでセッションの管理にクッキーを利用しない設定が必要ですよね。
でも、そのサイトをPCでも使うのなら、PCでの操作にはクッキー利用するのが普通だと思います
1)この条件を両立させたい場合、以下のようにするわけでしょうか?
・php.iniでクッキー利用を有効に
・携帯向け管理画面(ディレクトリが独立してるなら)のディレクトリに、クッキー無効の.htaccessを設置
また、そもそも.htaccessの効果がよくわかりません。
2)設置したディレクトリ以下に対して、http.confやphp.iniなどでの設定よりも優先される命令をできるってことですか?
3)1)についてですが、携帯向け管理画面のディレクトリが独立していない場合、
たとえばフレームワークを使っていてコントローラをPC版と共通化し、viewの出力のみ
携帯専用の出力させていいる時などは「.htaccessをディレクトリに設置」て無理ですよね。
その場合はどんな風に作ったら効率的なんでしょうか?
セッション使わないとなるとコントローラ・アクションのソースそのものが違ってくるから
素直に携帯向け管理画面コントローラとして独立させるのが結局賢くなるんでしょうか?
PC版と携帯版、どんな風に作るのが効率的で管理しやすいんでしょうか?
もちろんスキルによるとは思うので、参考として「こんな風にしている」という話を聞きたいです。
よろしくお願いします
(自分はphp5とzendFWを使っています)
0568nobodyさん
2011/01/13(木) 18:03:50ID:???そもそも携帯とPCでphp.iniの設定を分けなくて良い
PHPでケータイからセッションを使う場合の設定方法 | ke-tai.org
http://ke-tai.org/blog/2007/12/12/php_session_new/
0569nobodyさん
2011/01/13(木) 18:36:32ID:???> そのサイトをPCでも使うのなら、PCでの操作にはクッキー利用するのが普通だと思います
何が「普通」なのだろうか?
この発想から課題が発生しています。
0570nobodyさん
2011/01/13(木) 18:41:15ID:???0571nobodyさん
2011/01/13(木) 18:51:38ID:???0572nobodyさん
2011/01/13(木) 19:01:40ID:???携帯なら携帯固有情報をパソコンならクッキーを焼けばいい
セッションを張った時点で勝手に焼きよるけど
0573nobodyさん
2011/01/13(木) 20:16:36ID:???書いてる奴は理解してんの?
0574nobodyさん
2011/01/13(木) 20:24:06ID:???ディレクトリが独立してなくても.htaccessの中で機種判別して
携帯だったら〜を設定、ってすればいい。
.htaccessは対象ディレクトリに限ってhttp.confやphp.iniの設定を
上書きすると考えていい。
0576nobodyさん
2011/01/13(木) 21:58:58ID:???0577nobodyさん
2011/01/13(木) 22:06:09ID:???セッションハイジャック系が難なく出来る時点で終わってるわ
0578nobodyさん
2011/01/13(木) 22:17:18ID:???0579nobodyさん
2011/01/13(木) 22:25:00ID:???それは高木ちゃんも言ってるんだよね
0580nobodyさん
2011/01/13(木) 23:23:47ID:???判断するのはお前や高木じゃないことは確かだ
0581nobodyさん
2011/01/13(木) 23:28:42ID:???裁判記録を追ったりも出来ない情弱さんなら致し方ないかぁ…
0582nobodyさん
2011/01/14(金) 00:24:08ID:???もう>>552を責めないで下さい。
上から目線で無知を晒してしまって恥ずかしいとか、
質問者を少なからず混乱させてしまって申し訳ないとか、
そういった常識的な対応は匿名掲示板ですので期待しないで下さい。
0583567
2011/01/14(金) 00:43:04ID:???勉強になりました
0586nobodyさん
2011/01/14(金) 08:00:53ID:???0587nobodyさん
2011/01/14(金) 08:04:49ID:???0588nobodyさん
2011/01/14(金) 08:18:52ID:???それよりも森末慎二の話しようよ
0589nobodyさん
2011/01/14(金) 09:39:14ID:x5/cEkaG// 接続
$this->db = MDB2::connect(-省略-);
//接続が失敗したとき
if(MDB2::isError($this->db)){
echo "データベース接続失敗";
exit;
}else{
echo "データベース接続成功";
}
//準備
echo "テスト出力A";
$sql = "SELECT * FROM USER_TBL WHERE USER_NO = ?";
$stms = $this->db->prepare($sql);
echo "テスト出力B";
//実行
$res = $stms->execute(array(1));
//結果の取得
$row = $res->fetchRow();
print_r($row):
このようなソースを書いているんですがデータベース接続成功と
テスト出力Aは表示されますが、Bの表示がなくどうもprepareの所で処理が
終了しているようです。これは何が原因でしょうか?ご教授願います。
0591nobodyさん
2011/01/14(金) 10:08:43ID:x5/cEkaGすいません、B以降の表示が全てありません。
0592nobodyさん
2011/01/14(金) 10:44:19ID:???俺正直だからわからないときはわからないと言う
高木みたいに知ったかぶりはしない
0593nobodyさん
2011/01/14(金) 10:54:34ID:x5/cEkaGそうですか、ありがとうございます。
どなかたわかる方いらっしゃいますでしょうか?
0594nobodyさん
2011/01/14(金) 11:11:20ID:???0595nobodyさん
2011/01/14(金) 11:17:02ID:???たぶん、$stmsのオブジェクトが無い
0596nobodyさん
2011/01/14(金) 11:23:18ID:???0597nobodyさん
2011/01/14(金) 11:24:42ID:???0598nobodyさん
2011/01/14(金) 11:28:56ID:???if(PEAR::isError($stms)){
echo "prepare失敗". $stms->getMessage();
exit;
}
0599nobodyさん
2011/01/14(金) 11:32:09ID:x5/cEkaGありがとうございます。
オブジェクトが無いですか。
SQL文をそのままphpmyadminで
実行すると問題ないですし
prepareでなく、queryを使って
SELECT * FROM USER_TBL
を実行すると問題なく表示されました。
なぜかprepareのみの挙動がおかしい状態です。
0600nobodyさん
2011/01/14(金) 11:35:29ID:x5/cEkaGありがとうございます。
教えていただいたとおりにやってみましたが
テスト出力A以降はなにも表示されない状態です。
0602nobodyさん
2011/01/14(金) 11:37:10ID:???基本の基本
0603nobodyさん
2011/01/14(金) 11:39:30ID:???USER_NOが1のデータがないとかそういうことはないよね?
0604nobodyさん
2011/01/14(金) 11:44:18ID:x5/cEkaGありがとうございます。
display_errors = On
を入れてみましたが、表示はなにも変わりませんでした。
>>603
ありがとうございます。
はい、DBを確認しましたがデータは存在します。
0605nobodyさん
2011/01/14(金) 11:47:32ID:???0606nobodyさん
2011/01/14(金) 11:47:51ID:???echo "テスト出力A";
/*@*/ var_dump( $this -> db -> getMessage() );
$sql = "SELECT * FROM USER_TBL WHERE USER_NO = ?";
/*@*/ var_dump( $this -> db -> getMessage() );
$stms = $this->db->prepare($sql);
/*@*/ var_dump( $this -> db -> getMessage() );
echo "テスト出力B";
準備部分を上のように書き換えて、実行した結果はどうなりますか?
0607nobodyさん
2011/01/14(金) 11:54:06ID:x5/cEkaGありがとうございます。
ダウンロードしなおすべきでしょうか?
>>606
ありがとうございます。
表示されるものが変わりました。
Fatal error: Call to undefined function: MDB2_Driver_mysql::getMessage(). in -省略-MDB2/MDB2.php on line 1936
関数がないというエラーでしょうか。
0608nobodyさん
2011/01/14(金) 11:55:19ID:???display_errors = On
error_reporting = E_ALL | E_STRICT
log_errors = On
0609nobodyさん
2011/01/14(金) 11:59:16ID:???PEAR:MDB2 で getMessage() は使えないの?
0610nobodyさん
2011/01/14(金) 12:11:52ID:???出てないときは undefindになる・・・
0611nobodyさん
2011/01/14(金) 12:21:26ID:???しないとダメとかいうPHP4オチ
0612nobodyさん
2011/01/14(金) 12:26:25ID:x5/cEkaGありがとうございます。
やってみましたが、ダメでした。
レンタルサーバー : XREA
PHP : 5.2.5
MySQL : 5.1.22
0613nobodyさん
2011/01/14(金) 12:42:28ID:???最新バージョンを使っているせいかと思ったらFatal error多いーな
0614nobodyさん
2011/01/14(金) 12:45:43ID:???エラーが出ているときだけに使えるのならば、
// 準備
echo "テスト出力A";
$sql = "SELECT * FROM USER_TBL WHERE USER_NO = ?";
$stms = $this->db->prepare($sql);
/*@*/ var_dump( $this -> db -> getMessage() );
echo "テスト出力B";
これで使えるってこと?
0615nobodyさん
2011/01/14(金) 12:49:34ID:???情報の小出しに振り回される人々w
0616nobodyさん
2011/01/14(金) 12:52:24ID:???エラーがなければ$stms->getMessage()も undefinedだが。
0617nobodyさん
2011/01/14(金) 13:10:49ID:x5/cEkaG文字コードはファイル、DB共にUTF-8で統一しています。
>>614
やってみました。
しかし、出力Aまでしか表示されずエラーメッセージもありません。
>>615
フィールド名は何度か確認しましたが一致しています。
0618nobodyさん
2011/01/14(金) 14:57:03ID:???あとアンダバーで何かトラブルがあった気がする。
0619nobodyさん
2011/01/14(金) 15:09:17ID:x5/cEkaGqueryメソッドを使って
SELECT * FORM USER_TBLで読めました。
0620nobodyさん
2011/01/14(金) 15:20:32ID:???0621nobodyさん
2011/01/14(金) 15:31:15ID:x5/cEkaGhttp://dev.mysql.com/doc/refman/5.1/ja/reserved-words.html
ここで確認しましたが、使っていませんでした。
0622nobodyさん
2011/01/14(金) 16:22:34ID:???if (MDB2::isStatement($stms)) {
echo "実行ok";
}
else if (MDB2::isError($stms)) {
echo "error";var_dump($stms->getMessage());exit;
}
else {
echo "その他";
exit;
}
echo "テスト出力B";
0623nobodyさん
2011/01/14(金) 16:31:27ID:x5/cEkaGやってみました。
しかし、prepareをやっている行から下にある
echoはどれも表示されません。
prepare行の所でプログラムが強制終了しているのでしょうか?
0624nobodyさん
2011/01/14(金) 17:00:22ID:???それはクエリーに問題があるからで、しかも失敗している部分はテーブルから先にある。
もしかして・・・こんなオチ?
SELECT * FROM USER_TBL WHERE USER_NO = '?'
0625nobodyさん
2011/01/14(金) 17:13:22ID:x5/cEkaG$stmsにオブジェクトがない事によって
それ以降のecho等も実行されないわけですか?
?に''をつけてみましたが同じ結果でした。
別のサイトで、PEAR::MDB2ではなくPEAR::DBを使っていたので
それを流用し、DBを使って同じようにprepareからexecuteを実行すると目的の結果が得られました。
>>605さんがおっしゃられているように、PEARが壊れている等でしょうか?
0626nobodyさん
2011/01/14(金) 17:37:36ID:???ならPEAR::MDB2のソースを追ってみればいい。
PEARが壊れている。XREA固有の何かがある。
等の環境問題なら自宅に別の環境を作ってみればいい。
0627nobodyさん
2011/01/14(金) 17:41:37ID:???ならprepareが失敗してるから>>605の言う壊れてる可能性もある
SQLを
SELECT * FROM USER_TBL WHERE USER_NO=?
と
SELECT * FROM USER_TBL WHERE USER_NO=:testdata
でやってみて
>>624
$stmtがオブジェクトじゃなくても>>622のコードは実行できる
但しprepareが正常に動作していたらな
0628nobodyさん
2011/01/14(金) 17:50:22ID:???$sql = "SELECT * FROM USER_TBL WHERE USER_NO = ?";
$stms = $this->db->prepare($sql,array('integer'));
if (MDB2::isStatement($stms)) {
echo "実行ok";
}
else if (MDB2::isError($stms)) {
echo "error";var_dump($stms->getMessage());exit;
}
else {
echo "その他";
exit;
}
echo "テスト出力B";
0629nobodyさん
2011/01/14(金) 17:53:13ID:N58y3KzQMySQLで取得したテーブルデータを格納した複数の配列の中の【一部の要素】でソートをしたいのですが、どうすればよいでしょうか?
なお各配列ごとに【一部の要素】の名前が違うので、どうしたものか困り果てております。
array ("data1",
array (a = aaa, b = bbb, c = 1)
array (a = aaa, b = bbb, c = 2)
array (a = aaa, b = bbb, c = 3)
)
array ("data2",
array (a = aaa, b = bbb, d = 4)
array (a = aaa, b = bbb, d = 5)
array (a = aaa, b = bbb, d = 6)
)
というような配列群が合って、その data1 の c と data2 の d を降順にソートして
最後に下のようにそのdata1とdata2を結合したdata3を作り出したいです。
array ("data3",
array (a = aaa, b = bbb, c = 1)
array (a = aaa, b = bbb, c = 2)
array (a = aaa, b = bbb, c = 3)
array (a = aaa, b = bbb, d = 4)
array (a = aaa, b = bbb, d = 5)
array (a = aaa, b = bbb, d = 6)
)
あまり基礎を分かっておりませんので、こんなこと自体ができるかどうかが不明ですが、よろしくお願いします。
0630nobodyさん
2011/01/14(金) 17:53:59ID:???0631nobodyさん
2011/01/14(金) 17:58:27ID:????がab'cdef
こうだろw
0632nobodyさん
2011/01/14(金) 18:01:33ID:x5/cEkaG>>628
3つのパターンを試しましたが全て結果は変わらずでした。
ただ、>>608さんのphp.iniの設定を間違っていました。
データベース接続成功とテスト出力Aの後に以下のエラーが出ています。
PHP Strict Standards: Non-static method MDB2::classExists() should not be called statically, assuming $this from incompatible context in /-省略-MDB2/MDB2.php on line 1854
Strict Standards: Non-static method MDB2::classExists() should not be called statically, assuming $this from incompatible context in /-省略-MDB2/MDB2.php on line 1854
PHP Strict Standards: Non-static method MDB2::fileExists() should not be called statically, assuming $this from incompatible context in /-省略-MDB2/MDB2.php on line 1854
Strict Standards: Non-static method MDB2::fileExists() should not be called statically, assuming $this from incompatible context in /-省略-MDB2/MDB2.php on line 1854
PHP Strict Standards: Non-static method MDB2::loadClass() should not be called statically, assuming $this from incompatible context in /-省略-MDB2/MDB2.php on line 1861
Strict Standards: Non-static method MDB2::loadClass() should not be called statically, assuming $this from incompatible context in /-省略-MDB2/MDB2.php on line 1861
PHP Strict Standards: Non-static method MDB2::classExists() should not be called statically, assuming $this from incompatible context in /-省略-MDB2/MDB2.php on line 327
Strict Standards: Non-static method MDB2::classExists() should not be called statically, assuming $this from incompatible context in /-省略-MDB2/MDB2.php on line 327
0634nobodyさん
2011/01/14(金) 18:08:08ID:???そのようになるようなクエリを書けば良いんじゃないの?
そのままやりたいならとりあえずarray_mergeでマージしてから
usortでC,Dの値を見る形で良いと思うが
0635nobodyさん
2011/01/14(金) 18:09:17ID:z4LQsmVn$stmt->bindParam(':foo', $foo);
$stmt->bindParam(':bar', $bar);
foreach($arr as $value){
list($foo, $bar) = $value;
$stmt->execute();
$stmt->closeCursor();
}
///////////////////////////////////////
foreach($arr as $value){
$stmt->bindValue(':foo', $value['foo']);
$stmt->bindValue(':bar', $value['bar']);
$stmt->execute();
$stmt->closeCursor();
}
0636nobodyさん
2011/01/14(金) 18:10:15ID:x5/cEkaG自分で入れてはないのですが
get_included_files()で確認したら
/usr/local/lib/php/MDB2/Driver/mysql.php
を読み込んでいるようですし
queryメソッドでは結果を取得できるので
大丈夫だという認識でした。
0637nobodyさん
2011/01/14(金) 18:15:30ID:N58y3KzQどのようにクエリを書けばいいか分からなかったので、いっそPHP側でできないものかと思いまして。
ちょっとその方法でやってみます。ありがとうございます。
0638nobodyさん
2011/01/14(金) 18:20:14ID:???これはどう?
$stms = $this->db->loadModule('Extended')->prepare($sql);
0639nobodyさん
2011/01/14(金) 18:28:15ID:x5/cEkaGFatal error: Call to undefined method MDB2_Extended::prepare()
というエラーが出ます。
0640nobodyさん
2011/01/14(金) 19:12:37ID:???これは?
$stms = $this->db->prepare($sql, NULL, MDB2_PREPARE_RESULT);
0641nobodyさん
2011/01/14(金) 19:23:25ID:x5/cEkaGありがとうございます。
693さんからレスを頂く前に動きました。
原因としては、XREAサーバーには既にMDB2がインストールされていたらしく
それを確認せずに自分でMDB2のパッケージをDLし、インストールしていました。
ソース上は自分でインストールした方を読み込んでいたらしく
そのパッケージを削除し、はじめからインストールされていたMDB2を
読み込みように変更したら正常に動きました。
ただ、なぜprepareだけ異常なのか、queryメソッド等は動くのかはわかりません。
朝早くからたくさんの方にレスを頂きました。
本当に助かりました。ありがとうございました。
0642nobodyさん
2011/01/14(金) 19:28:56ID:???まぁ解決してよかったね。
0643nobodyさん
2011/01/14(金) 19:34:06ID:???既に定義されていたらincludeできないから
その結論で完全解決ではないと思うぞ
0644nobodyさん
2011/01/14(金) 19:58:01ID:???解決して良かったです。
このスレで以前にありましたが、思いがけない仕様で皆様が開眼した事例がありました。
今回もそれに類するのだろうか? と、いろいろと自分でも試してみたりしていました。
それにしても環境に起因する事項だったんですね。
今回は、>> 643 さんが言われている、
「自分でダウンロード&インストールした方を使用した」部分の確定に課題が残りますが、
少しでも前に進める状況が得られたことは良いことです。
さて、お手数ですが残る課題として、>>643 さんが言われている部分を再整理して、
再度の質問として出してもらえませんか?
> 既に定義されているから include できない
それが覆された状況ですから、その部分を検証してみる必要があると思います。
0645nobodyさん
2011/01/14(金) 20:45:04ID:x5/cEkaG>>642
>>643
>>644
本当にありがとうございました。
心から感謝します。
少し状況を整理すると
XREAサーバー側にMDB2が入っていないと勝手に判断した後に
自分でダウンロードしたパッケージを解凍し、そのままサーバーへアップロードしました。
今までこの方法で、PEAR::NetUserAgentMobile等が正常に動いたので
それで問題ないと思っていたのですが
今調べて、このあたりを読むとそれだけではダメなんですかね?
http://m630.net/php-mysql/xreapearmdb2.html
正常にインストールが完了していないMDB2を無理やり読み込んでいたのが
おかしな挙動の原因でしょうか。
0646nobodyさん
2011/01/14(金) 20:48:19ID:???http://d.hatena.ne.jp/me0/20080320
0649nobodyさん
2011/01/15(土) 09:32:51ID:???0650nobodyさん
2011/01/15(土) 10:30:31ID:???0651nobodyさん
2011/01/15(土) 11:09:54ID:???言葉にするなら競合しただけ
0652nobodyさん
2011/01/15(土) 11:43:34ID:???0653nobodyさん
2011/01/15(土) 12:18:10ID:???MDB2.php は多分パス付きでincludeするだろうから、自分でインストールしたファイル
MDB2の中でクラス等をincludeするときはinclude_pathなどで読むのでxreaがインストールしたファイル
バージョンが同じならいいけど、違ってたらなんか問題が出るでしょうな。
0654■注意したりして
2011/01/15(土) 12:59:36ID:???>>650
>>652
自分が知りたいことを求める。
他者から見たら質問と受け取られる可能性がある。
そんなことを書き込むときには、IDを出して書き込もう!
それがこのスレが荒れない要素の一つだったりします。
独りよがりな文句、呟き独り言、このスレでは求めていません。
そうしたことを書き込みたいならば、こちらのスレに移動しましょう。
【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
0655nobodyさん
2011/01/15(土) 13:21:37ID:???毎度毎度暇だね
0656nobodyさん
2011/01/15(土) 13:33:25ID:p52QVX5I>>655 さん、どうしてスレを荒らすような書き込みをするんですか?
ここはあなた個人のスレではありません。
>>654 で、ちょっとだけ上から目線の書き込みがあったからといって、スレを荒らす傍若無人な振る舞いは誰からも喜ばれない行為です。
質問 1.こうして>>655のようにスレを荒らす人が現れるのは、PHPの仕様、もしくはこのスレの仕様ですか?
質問 2.仕様ならば「可哀相な人だ」と人であることを認めて無視しても、後々に問題はないですか?
質問 3.無視することで問題が発生したならば隔離して欲しいのですが、隔離は可能ですか?
( `・∀・´)ノヨロシク
0657nobodyさん
2011/01/15(土) 13:47:07ID:???笑
0658nobodyさん
2011/01/15(土) 13:54:58ID:???0659nobodyさん
2011/01/15(土) 14:01:56ID:???質問も回答もしないんじゃあね。
0660nobodyさん
2011/01/15(土) 14:19:51ID:???改行書き込みをする
たいした回答ができない
文章力がなく見るからにバカ
自作自演で盛り上げようと必死
0661nobodyさん
2011/01/15(土) 16:04:58ID:???回答1.このスレの仕様です。
回答2.「人」として認めるか否か、無視するか否かは、あなた自身で判断ください。
回答3.誰のスレでもありませんから、あなたが隔離を願っても誰も何もしてくれません。
もう少し大人になりましょう。
0662nobodyさん
2011/01/15(土) 16:56:05ID:???というかなる必要ないし。
Ajaxをマスターすればそれ十分かと。
0663nobodyさん
2011/01/16(日) 00:09:04ID:lrogIJY/結果を連想配列で取得ってどうやるんでしょうか?もしかして不可能ですか?
PHP 5&MySQL5 です
0664nobodyさん
2011/01/16(日) 00:17:53ID:???http://www.php.net/manual/ja/mysqli-result.fetch-assoc.php
0665nobodyさん
2011/01/16(日) 00:34:52ID:lrogIJY/プリペアドステートメントを使った場合、これだとできない感じなのですが・・・
0666nobodyさん
2011/01/16(日) 00:50:12ID:???マニュアルみたけどなさそうだね
mysqli_stmt::fetchのオプションに定数でFETCH_ASSOCを入れると連想配列とか
そういう風になってんのかなと思ったけど普通にないみたいだ
ユーザノートにクラス拡張してfetch_assoc定義してる例もあるね
http://www.php.net/manual/ja/mysqli-stmt.fetch.php#72720
0667nobodyさん
2011/01/16(日) 00:59:51ID:sr/IjSIiオプション関数?ライブラリ?
>PHPでSWFのデコンパイルできるようになったのでデコンパイラ不要になってしまった。
>それにしても動的にASを操作できるってのは有難い。
http://twitter.com/Tsuka1427/status/22324062252
0668nobodyさん
2011/01/16(日) 02:30:34ID:???0669nobodyさん
2011/01/16(日) 03:03:25ID:???それともこれは下らない質問ではないのでしょうか
0670nobodyさん
2011/01/16(日) 04:09:35ID:???それとも聞けない理由などあるのでしょうか
0671nobodyさん
2011/01/16(日) 08:21:30ID:???聞ける理由がなければよいのでしょうか
0674nobodyさん
2011/01/16(日) 12:05:31ID:???0675nobodyさん
2011/01/17(月) 04:32:26ID:ZNuukBSY呼出、書込、実行の内ドレをONにするとアウトですか?というかパーミッションの値
0676nobodyさん
2011/01/17(月) 04:49:50ID:???ソースコードがバレることはない。
そのサーバーに第3者がFTP等でログインできるのならばそれぞれのユーザーのアクセス権限と
ウェブサーバーの実行権限、ディレクトリのアクセス権限の設定に依存する。
> 呼出、書込、実行の内ドレをONにするとアウトですか?
それぞれの設定の意味を理解していないのだろうが質問の意味が不明になってる。
どれをONにしてもそれだけでソースコードがバレることはない。
というより呼出をOFFにしたらPHPが実行されない。
0677nobodyさん
2011/01/17(月) 06:32:09ID:???0678nobodyさん
2011/01/17(月) 08:40:45ID:???0679nobodyさん
2011/01/17(月) 09:46:27ID:???0680nobodyさん
2011/01/17(月) 14:04:28ID:???ソースは過去のこのスレ
0681nobodyさん
2011/01/17(月) 22:54:20ID:jz/VSNo7検索してもあまり情報がなかったもので
よく分からないけれど、XAMMのようなものですか?
0682nobodyさん
2011/01/17(月) 22:59:23ID:????Zend Server Community Edition (CE) is a lightweight version of Zend Server that is absolutely free to use in
development or in production. It is simple to install and to use, provides basic performance optimization, and is
supported only through the Zend support forums.
0683nobodyさん
2011/01/17(月) 23:08:56ID:jz/VSNo70684nobodyさん
2011/01/18(火) 00:29:01ID:???0685nobodyさん
2011/01/18(火) 00:49:32ID:???Zend Serverは本番環境を配置・運用・管理するためのガチセット
0687nobodyさん
2011/01/18(火) 06:40:20ID:IKvWNu/I関数講座で
get_magic_quotes_gpcが無効なら文字列をクォートを取り除く
if ( get_magic_quotes_gpc() ) {
$str = stripslashes( $str );
}
とあったのですが、get_magic_quotes_gpc関数はONなら1、OFFなら0を返すと書いてあります
なのにこれじゃあONの時1=trueになってクォート取り除かれちゃいませんか?
そんでOFFの時0=falseになってクォート取り除かれないんじゃないんでしょうか?
0688nobodyさん
2011/01/18(火) 07:13:12ID:???そのコードは不要な自動エスケープ処理を除去するのが目的なのでそれで正解。
magic_quotes_gpcがONの場合、getやpost等された文字列が勝手にエスケープ処理されてしまうが
それだと困る場合にそのような処理を行う。
現在のPHPはmagic_quotes_gpcの使用は非推奨だが、かつてはデフォルトでONになっていることもあった。
自動でエスケープ処理される方法はaddslashes()と同じだが、セキュリティの問題から
addslashesの使用は推奨されていない。
0689nobodyさん
2011/01/18(火) 07:31:54ID:???0691nobodyさん
2011/01/18(火) 09:20:26ID:IKvWNu/Iそれじゃ日本語は
get_magic_quotes_gpc() が有効(ON)なら文字列をクォートを取り除く
になりませんか?
0692nobodyさん
2011/01/18(火) 11:23:43ID:???だからそれでいいんだってば。
クォートを取り除くのが目的のコードなんだから。
magic_quotes_gpcがONのとき:勝手に付けられたクォートを削除
magic_quotes_gpcがOFFのとき:何もしない
0693nobodyさん
2011/01/18(火) 11:28:11ID:???GET等で文字列が送信される→PHPが勝手にエスケープ処理してクォートを追加してしまう
そうすると$GETの中身が既にクォートが付いたものになっているから、
自分で文字列の中身を検査したり画面に表示するときに困るでしょ。
だからmagic_quotes_gpcがONのときはstripslashesでクォートを除去するの。
DBに送信するときはFW等の機能を使うかmysqli_real_escape_string等でエスケープしなきゃ駄目だよ
0694nobodyさん
2011/01/18(火) 11:30:21ID:???追加されたりstripslashesで削除したりするのはクォートじゃなくてバックスラッシュね。
0695nobodyさん
2011/01/18(火) 11:30:33ID:???●get_magic_quotes_gpc() がTRUE(magic_quotes_gpcの設定がON)ならば文字列 の クォートを取り除く
なんだその滅茶苦茶な日本語を書いた奴は
なんだよ文字をクォートを取り除くって
そんでもって無効なのに取り除いてどうする
どこを参考にしたんだ
0696nobodyさん
2011/01/18(火) 11:31:44ID:???}
class name2のメンバ変数はname1 がnewされた時に設定されるんだよね?
それとも、もともとextendsの分にはメンバ変数を書いても意味が無い?
0697nobodyさん
2011/01/18(火) 11:34:58ID:???あぁ、質問の意味がやっとわかった。
>>687に書いてある
>> get_magic_quotes_gpcが無効なら文字列をクォートを取り除く
の日本語とコードが矛盾しているといいたかったのね。
多分筆者の書き間違いでしょ。(正しくは「〜が有効なら」)
0698696
2011/01/18(火) 11:38:31ID:???すまそw
0699nobodyさん
2011/01/18(火) 12:05:55ID:IKvWNu/I0700nobodyさん
2011/01/18(火) 16:55:32ID:aMdgL1VOAjaxで処理をするたびに毎回プログラム側で設定ファイルを読み込んだり
DB接続したりという処理が発生するので、
ネトゲみたいに常にプログラムを稼働しておいて、入力があれば実行して何かを返すようにしたいんだけど
何か面白いやり方ないですか?
0701nobodyさん
2011/01/18(火) 17:03:02ID:???0703nobodyさん
2011/01/18(火) 17:26:08ID:???結構効いたよ。
0704nobodyさん
2011/01/18(火) 17:38:48ID:???設定ファイルの大きさ・数・読込みかたにもよるが、普通はOSのキャッシュに入る
DB接続はコネクションプール使えば良い
あとはアクセラレータを使ってないなら、APCとか使えば体感できるくらいに速度変わる
0705nobodyさん
2011/01/18(火) 17:44:14ID:aMdgL1VO例えば、初期設定でinclude_pathを設定して
そこにあるクラスファイル(例えばだけど100個くらい)をrequire_onceで読み込んで、
毎回データベースから数百件のデータを読み込んだりとか、
そういう処理が入るんだけど、こういうのもキャッシュ化されんのかな
今考えてるのは
鯖起動→whileループ→外部から命令があったら処理の実行して結果を返す
このwhileループ時にどうやって外部から(ユーザーからのパラメータ送信など)に対応しようかとか、考えてるの
あと、ループ作成しておくと、鯖起動時にデータベースからデータを取得したら保持できるかなと思って
(某ネトゲのエミュ鯖運営したときにJavaでやってた処理を真似てるだけなんだが)
0706nobodyさん
2011/01/18(火) 18:06:13ID:???APCはphpの中間コードをキャッシュしてくれる
当然includeも対象になっており、1回includeすれば中間コードの形で保持される。
DBについても、APC使えば同じクエリならキャッシュされる。
後半部が良くわからんのだけど、PHPを実行しっぱなしにするって意味?
でもajax使おうがクライアント側からはwebサーバ(例えばapache)を介してアクセスにくるわけだから
apache→php実行 という流れは変わらないよね?(見当違いの事言ってたらごめん)
アクセス毎に実行コードにコンパイルかけてるからphpは遅いわけなので
そこをコンパイルかけないで中間コードを保持するAPC使えば速くなるよ。
0707nobodyさん
2011/01/18(火) 18:11:59ID:aMdgL1VOありがとうございます!
多分、APC導入していこうと思います!
0708nobodyさん
2011/01/18(火) 18:30:15ID:???ブログなんかみても入れましたはい早くなったとか言ってる人多いし
0710nobodyさん
2011/01/18(火) 18:47:21ID:???同じ敵を複数の人間が攻撃した時に、データがバグったりするんじゃね?ってことじゃね
データベースから引き出す→変更加える→データベースに戻す
この時に、引き出して変更加えて、別のやつが引き出して、最初のやつが戻したらどうなんの?ってこと
勝手にエスパーしただけだが
0711nobodyさん
2011/01/18(火) 19:00:54ID:???DBを使うならDBの作法でアクセスしなきゃ意味ないじゃん。
0712nobodyさん
2011/01/18(火) 19:01:38ID:???0713nobodyさん
2011/01/18(火) 20:15:06ID:???0714nobodyさん
2011/01/18(火) 21:35:55ID:???0715nobodyさん
2011/01/18(火) 21:55:17ID:???0716nobodyさん
2011/01/18(火) 21:57:33ID:aMdgL1VOflash使わない予定です
HTML+XHR(jQuery)+PHP+MySQLで実装予定です。
座標の監視とかそこまでのものを作るんじゃなく、
敵1対を複数で倒すような感じのものにしようと思ってるので、
複数の人が同時に1つのデータにアクセスすると更新するまでに呼び出したりしそうなので、
順番を決めるような方向でいきたいと思ってます。
すみません、本来の目的を後出しにしてしまって。
0718nobodyさん
2011/01/18(火) 22:11:48ID:aMdgL1VOもちろん自鯖で実装予定です
0720nobodyさん
2011/01/19(水) 08:10:04ID:sXJq2R7Kif (isset($_SERVER['HTTP_VIA']) and preg_match("/.*\s(\d+)\.(\d+)\.(\d+)\.(\d+)/", $_SERVER['HTTP_VIA'], $match)){
$PROXY = "$match[1].$match[2].$match[3].$match[4]";
}
っていうソースを見つけたんですが、$matchの値がどこにも見当たりません
$matchを参照して正規表現を検索して$_SERVER['HTTP_VIA']の値にするという事はわかるのですが
肝心なmatchの値がソースのどこにも見当たらなくて
この$matchは自動的に値が入ったり特別なものだったりします?
0722nobodyさん
2011/01/19(水) 08:51:08ID:sXJq2R7Kとかどこかしらに書かれてなくても大丈夫なんですか?
本当に$matchがこのif文にしか書かれてないんですが
0723nobodyさん
2011/01/19(水) 08:53:30ID:???0724nobodyさん
2011/01/19(水) 08:54:34ID:???ののタンでおなじみの、preg_match()のマニュアル見たらいいよ。
preg_match()のの三番目のの引数には、検索結果が代入される。
0725nobodyさん
2011/01/19(水) 09:15:17ID:sXJq2R7K(検索文字、置換文字、検索対象)だと頑なに思い込んでました、ごめんなさい
そしてありがとうございます
0726nobodyさん
2011/01/19(水) 10:52:45ID:???preg_match(検索文字、検索対象、検索結果が代入される配列)
0727nobodyさん
2011/01/19(水) 11:05:54ID:???0730nobodyさん
2011/01/19(水) 11:40:48ID:???[XML文字列 → simplexml_load_string() → 処理ウニウニ → asXML() → XML文字列]
と言う入出力処理がある。
これを
[JSON文字列 → xxxxxx → 処理ウニウニ → yyyyyy → JSON文字列]
と言う流れにしたい。
処理ウニウニでは、simpleXMLElementを使って処理しているので、
JSON文字列をsimpleXMLElementにする必要がある。
simpleXMLElementをJSON文字列にするには、json_encode($hoge, true)で
出来たのですが、json_decode($xml文字列, true)だと、当たり前ですが、
連想配列しかできません。
連想配列をsimpleXMLElementに変換する or JSON文字列をXML文字列に
変換する等、「処理ウニウニ」を変えずにIN/OUTだけを変更する方法って
ありませんでしょうか?
迷える豚に愛の手をorz...
0731nobodyさん
2011/01/19(水) 11:50:33ID:???phpの日本語マニュアルには、のがダブってるところが
たまにある。preg_match()の項目にもある。
そんだけ。
0733nobodyさん
2011/01/19(水) 12:58:29ID:bY4e/Fytこの色を指定することは出来ないでしょうか?
0734nobodyさん
2011/01/19(水) 13:15:14ID:???imagefillで塗りつぶせばいいんじゃね
0735nobodyさん
2011/01/19(水) 14:10:53ID:???0736nobodyさん
2011/01/19(水) 14:29:18ID:???0737nobodyさん
2011/01/19(水) 17:17:29ID:pFGxwnc8CSVを読み込む形式のものなのですが、
個別ページに表示したいテキストが80行以上あります
CSVは1行に1ページ分を書くようなので重たくなるのか気になっています
データベースがいいのか、ほかに方法があるのか…
もしあなただったらどういう方法にしますか?アドバイスお願いします
0738nobodyさん
2011/01/19(水) 17:20:43ID:???0739nobodyさん
2011/01/19(水) 17:25:03ID:???0740nobodyさん
2011/01/19(水) 17:32:26ID:???めんどくさがらないように頑張って勉強します
お二方、ありがとうございました
0743nobodyさん
2011/01/19(水) 22:42:46ID:???「1ページ分」がどの程度のサイズなのかにもよるのでは。
>>740
CSVよりデータベースのほうが簡単だったりします。
0744nobodyさん
2011/01/19(水) 22:48:14ID:???なんで?
0746nobodyさん
2011/01/19(水) 23:09:28ID:???0747nobodyさん
2011/01/20(木) 03:57:52ID:???リレーションのために複数のCSVを開いたり閉じたり・・・とかめんどくさい。
そういう用途のためにDBがあるわけだし
0748nobodyさん
2011/01/20(木) 07:28:50ID:???0749nobodyさん
2011/01/20(木) 07:34:20ID:???ファイル単位の排他とかもうね…
0750nobodyさん
2011/01/20(木) 07:37:17ID:???0751nobodyさん
2011/01/20(木) 07:42:57ID:???0752nobodyさん
2011/01/20(木) 07:54:41ID:???0753nobodyさん
2011/01/20(木) 08:36:07ID:???CSVで間に合うようなものなら、わざわざDBのオプション契約はしない。
でも、最初からDBが使用可能ならDBでやる。
0754737
2011/01/20(木) 08:38:54ID:VobjDeOQいろいろとぐぐってきました
何もかもわからないことが多いのですが、SQLiteを勉強しながら使ってみようと思います
とても助かりました…みなさんありがとうございました
0755nobodyさん
2011/01/20(木) 08:53:52ID:???0756nobodyさん
2011/01/20(木) 08:57:44ID:???いつまでもネチネチ低レベルな議論してんじゃねぇよw
0757nobodyさん
2011/01/20(木) 09:31:32ID:???0759nobodyさん
2011/01/20(木) 09:51:23ID:???0760nobodyさん
2011/01/20(木) 09:56:08ID:???0761nobodyさん
2011/01/20(木) 10:41:27ID:???そういうことってAjax使えば実現できるだろ?
何でいまさらそういう古い技術にこだわるのか理解できない
0762nobodyさん
2011/01/20(木) 10:43:30ID:???0763761
2011/01/20(木) 10:45:45ID:???0765nobodyさん
2011/01/20(木) 10:50:20ID:???0767nobodyさん
2011/01/20(木) 10:56:18ID:???****をNG指定したら無職の低学歴JavaScripterたちが路頭に迷うからに決まってんだろ
それくらい察してやれks
0769nobodyさん
2011/01/20(木) 23:06:21ID:h/0GHVwU× php -f C:\project\test.php
○ C:\project\test.php
直接コマンドプロンプトから叩いてPHPを実行することは可能でしょうか
また可能でしたらソースをどのように改変すれば良いでしょうか
0770nobodyさん
2011/01/20(木) 23:11:07ID:???MySQL 総合 Part19
http://hibari.2ch.net/test/read.cgi/db/1295436346/l50
頑張ってね! 応援しています!
0771769
2011/01/20(木) 23:13:49ID:h/0GHVwU#!C:\xampp\php\php.exe
を付け加えて起動してみても、なぜかDreamweaverで開きます
0772nobodyさん
2011/01/20(木) 23:18:14ID:???0773nobodyさん
2011/01/21(金) 00:04:12ID:???Windowsはファイルの拡張子だけで何のファイルか判断して開くプログラムを決めてるから
ファイルの中に何を書いても意味が無い
>>772の言うように拡張子の関連付けを変更
0776nobodyさん
2011/01/21(金) 02:08:51ID:wkDSO4Hbあるライブチャットで接続拒否られたんですがすり抜けしたくていろいろ試してるんだけどダメです
試したのは↓
クッキー削除
Flashのshared objectを削除
プロキシ経由(IPはモデム?再起動しても変わらないのでプロキシ使用)
ほかにシステム側でユーザが接続拒否なのかどうか判断する材料とかって何があるんでしょうか?
0778nobodyさん
2011/01/21(金) 06:51:10ID:???$b = ""
$c = '0'
$d = 'Null'
if ($a){}
if ($b){}
if ($c){}
if ($d){}
この場合、変数abcdは全部trueになるのでしょうか?
0779778
2011/01/21(金) 06:52:12ID:53S+NMNf0781nobodyさん
2011/01/21(金) 07:06:17ID:???if ($b){} →false
if ($c){} →false
if ($d){} →false
じゃない?
言いたい事はわかるけど
0782nobodyさん
2011/01/21(金) 07:30:37ID:???0783nobodyさん
2011/01/21(金) 08:02:50ID:???falseと0が同じ関数から戻ってきたりするしw
0784nobodyさん
2011/01/21(金) 08:03:58ID:???0785nobodyさん
2011/01/21(金) 08:04:40ID:???0787nobodyさん
2011/01/21(金) 10:31:38ID:???0789nobodyさん
2011/01/21(金) 10:52:26ID:???0790nobodyさん
2011/01/21(金) 11:21:27ID:???0791nobodyさん
2011/01/21(金) 11:27:57ID:Attkn4cD何か2038年問題がどうとか聞いたのですが、良く分からなかったもので
やっぱ付けた方がいいのでしょうか?
0792nobodyさん
2011/01/21(金) 11:32:18ID:???今から27年前の1984年から現在まで稼動している環境があったとしたら凄いな
0793nobodyさん
2011/01/21(金) 11:57:05ID:???2038年を超えるデータの扱い・計算をした時点でアウト。
UNIXタイム使ってる部分(特に演算してるところ)に注意
日付はDateTimeを使って。
0794nobodyさん
2011/01/21(金) 13:07:49ID:???>boolean に変換する場合、次の値は FALSE とみなされます。
>
>■boolean の FALSE
>■integer の 0 (ゼロ)
>■float の 0.0 (ゼロ)
>■空の文字列、 および文字列の "0"
>■要素の数がゼロである 配列
>■メンバ変数の数がゼロである オブジェクト (PHP 4のみ)
>■特別な値 NULL (値がセットされていない変数を含む)
>■空のタグから作成された SimpleXML オブジェクト
>
>その他の値は全て TRUE とみなされます (全ての resourceを含みます)。
http://jp2.php.net/manual/ja/language.types.boolean.php#language.types.boolean.casting
0795nobodyさん
2011/01/21(金) 13:48:47ID:???boolean の FALSE → 「ボーレーアンのファルセー」
integer → 「インテガー」
float → 「フロアツ」
人に聞いても「違うような気がする」言われるだけで当人も自身ないみたいで。
0796nobodyさん
2011/01/21(金) 13:58:06ID:???0797nobodyさん
2011/01/21(金) 14:17:33ID:???http://huikmn.blogspot.com/2010/12/php-php-advent-calendar-jp-2010-day-9.html
0798nobodyさん
2011/01/21(金) 17:21:40ID:???0799nobodyさん
2011/01/21(金) 17:35:46ID:???0801nobodyさん
2011/01/21(金) 18:11:18ID:???0802nobodyさん
2011/01/21(金) 19:37:27ID:qEeV7LN9public function exitTest() {
unset($this);
}
}
みたいに自分のオブジェクトを削除するようなメソッドって使えないの?
0803nobodyさん
2011/01/21(金) 21:30:44ID:???0804nobodyさん
2011/01/21(金) 22:28:57ID:???今作ってるゲームで、ウェブから特定のテーブルにアイテムデータなんかの入れ込みをしたいんですが
最終的な部分で詰まってます。
コード修正できる人いたらお願いしたいです。
謝礼として5000WebMoney(5000円分)となります。
詳しくは中のファイルにサイトとデータベースファイル入れておりますのでご覧下さい><
http://www1.axfc.net/uploader/He/so/309832
※ウィルスや釣りではありません
長いプログラムですが、当方はここが問題かもしれないと思うところは
説明書.txtの一番下に書いてます orz
0805nobodyさん
2011/01/21(金) 22:31:29ID:8ndmGcBVまたこういった質問をする適切な場所があれば教えていただきたいです
0806nobodyさん
2011/01/21(金) 23:04:16ID:???0807nobodyさん
2011/01/21(金) 23:07:19ID:???http://headlines.yahoo.co.jp/
↑ここの米欄なら暇人が大量にいるから質問してみるといいよ
0808nobodyさん
2011/01/21(金) 23:20:30ID:8ndmGcBVこういうとこじゃないと専門知識ある方いないと思って探してるんです
0809nobodyさん
2011/01/21(金) 23:21:12ID:???0812nobodyさん
2011/01/21(金) 23:27:02ID:???リアル人脈広げようぜ。
人脈がないなら、もう1桁報酬上げて頼んだほうがいい。
もしくは、これを機会に勉強しまくるんだな。
0814nobodyさん
2011/01/21(金) 23:28:47ID:8ndmGcBV所有ポイントに関しては、purchaseすれば、mygame_ls側のaccountdataテーブル内のreward_pointが正常に減るのです
ただ、購入後にinventoryテーブルにアイテムIDやらが正常に挿入されないという点です。
(要はそのキャラクターの元へアイテムが届いていない)
0815nobodyさん
2011/01/21(金) 23:31:09ID:???>ただ、購入後にinventoryテーブルにアイテムIDやらが正常に挿入されないという点です。
「購入後にinventoryテーブルにアイテムIDやらを挿入」する処理がどのファイルで
行われてるか書いてよ
0816nobodyさん
2011/01/21(金) 23:33:27ID:8ndmGcBVMoney(お金)は、rewards1.phpとspend1.php
それ以外のアイテムは、rewards2.php~9とspend2.php~9に処理記述してます。
問題はたぶん、このファイルのデータベースとの通信
テーブルとの送信命令がマッチしてないことにありそうなんですが詰んでます...
0817nobodyさん
2011/01/21(金) 23:37:35ID:8ndmGcBVそれ以外はinventoryテーブルへデータ送信するようにしてます。
外国に人にも一度聞いてみたのですが、データベースのテーブル構造と
php側の記述がマッチしてない可能性があるといわれました
0819nobodyさん
2011/01/21(金) 23:48:25ID:???http://hibari.2ch.net/test/read.cgi/php/1162147035/l50
0820nobodyさん
2011/01/21(金) 23:55:24ID:???意外とヒアドキュメントとかより便利かも
0821nobodyさん
2011/01/21(金) 23:55:59ID:???ソースは軽く読んだだけなので一般的なバグの例を
1. SQL関連のエラーメッセージが表示されないなら、条件分岐(if文)ではじかれて
そもそもmysql_query()を含む行が実行されていない。
2. SQLのUPDATE文を使うべきところでINSERT文を使っている。
0823nobodyさん
2011/01/22(土) 00:03:35ID:???関数宣言の中に
<?php
<h1><?php echo $Row['category']; ?></h1>
?>
みたいな文が出てくるあたり
0824nobodyさん
2011/01/22(土) 00:04:52ID:???<h1><?php echo $Row['category']; ?></h1>
<?php
↑w
0825nobodyさん
2011/01/22(土) 00:07:39ID:???0826nobodyさん
2011/01/22(土) 00:14:32ID:???0827nobodyさん
2011/01/22(土) 00:15:12ID:???0830nobodyさん
2011/01/22(土) 00:37:59ID:???いいじゃないか。そういう柔軟な書き方もできるということで。
仕様上の問題が無い以上、基本かどうかは個人の思想によるので議論しても無駄。
0834nobodyさん
2011/01/22(土) 08:09:36ID:???inventoryテーブルにINSERTされていないのであれば、spend/spend2から10.phpの41行にエラー表示いれて確認してみたらどうだろ
INSERTやUPDATEしてるとこはエラー処理したほうがいいとおもうけどね。
mysql_query("INSERT INTO inventory VALUES('$uniqueid','{$Row['itemid']}','{$Row['description']}','null','$Character','0','0','0','0','0','{$Row['itemid']}','0')") or die(mysql_error());
0835nobodyさん
2011/01/22(土) 08:28:21ID:???834に追記
一つ前のSELECTしている39-40行もレコードがあるかどうか判断していないので無かったときに41行のINSERTで
エラーが出る可能性もあるかな。
itemUniqueIdがPRIMARY KEY指定されているが、12行で
$uniqueid = rand(900001, 1000000);
しているところが問題かも。重複する可能性あり。
それとinventoryのテーブル見たら全部数値タイプじゃないですか
INSERT文の4個めの'null'は数値じゃないので、これでエラーになってるかも。
0836nobodyさん
2011/01/22(土) 09:02:51ID:???おれんとこでは'null'をINTに入れると0になった
たぶんsql_modeの設定が違うと思う
804のサーバがどうなってるか知らんが
0837nobodyさん
2011/01/22(土) 10:02:58ID:???質問を投げておしまいにする奴って多いな。
0838804
2011/01/22(土) 10:16:41ID:???なんか丸投げしたまま逃げた感じになってしまってすみません orz
ここにいる人たちのレベルでは良い結果は得られそうにないので>>811さんが
言うとおり他所でお金を払って有能な人に質問することにしました。
0839nobodyさん
2011/01/22(土) 10:24:57ID:???丸投げっていうのよ それは
5000円ごときで仕事請け負うか?
会社によっちゃ下手すりゃ1時間ぶんの金額にもならんぞ
自身で勉強する気がないのに「質問」て言葉使うなよ
0840nobodyさん
2011/01/22(土) 10:31:33ID:???その姿勢がおかしい。他人を利用したいだけなのが見え見え、しかも自分が満足する
解答(解決ではなく)が得られなければ他人を批判すると来たものだ。
0841nobodyさん
2011/01/22(土) 10:37:18ID:???0842んさydobon
2011/01/22(土) 10:40:56ID:???>会社によっちゃ下手すりゃ1時間ぶんの金額にもならんぞ
相応の対価が得られるのならいくらでも払うけどここのカスには¥5kで十分でしょ
実際に誰も解決できてないしw
0843nobodyさん
2011/01/22(土) 10:49:54ID:???どんな手を打ったってスキルの高い奴には通用しねーよw
0844nobodyさん
2011/01/22(土) 10:52:39ID:???逆に言えばここのスキルの低い奴には通用するということですねわかります
ところで、通用しないって何が?
0846nobodyさん
2011/01/22(土) 11:03:31ID:???ってことですねわかります
0847nobodyさん
2011/01/22(土) 11:13:20ID:???0848nobodyさん
2011/01/22(土) 11:15:11ID:???0849nobodyさん
2011/01/22(土) 11:16:13ID:???yes, so desu!
0850nobodyさん
2011/01/22(土) 11:22:51ID:???0851nobodyさん
2011/01/22(土) 11:37:27ID:???0853nobodyさん
2011/01/22(土) 11:52:03ID:???0854nobodyさん
2011/01/22(土) 11:53:16ID:???0855nobodyさん
2011/01/22(土) 13:03:31ID:???【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
0857nobodyさん
2011/01/22(土) 14:26:08ID:5oOIF2do今掲示板をあれからみたため今から検証していきます
0858nobodyさん
2011/01/22(土) 14:37:25ID:5oOIF2dospend2.phpでは
「Transcation failed:column count doesn't match at row 1」となりました
0859nobodyさん
2011/01/22(土) 14:41:28ID:???0860nobodyさん
2011/01/22(土) 14:52:16ID:5oOIF2do>>859
ほとんどないかもしれません
0861nobodyさん
2011/01/22(土) 15:23:15ID:???だって、こういうコードを書く人だから
function foo(){
?>
<h1>ほげほげ</h1>
<?php
...
}
0862nobodyさん
2011/01/22(土) 15:29:49ID:5oOIF2doです
0863nobodyさん
2011/01/22(土) 15:50:59ID:???>「Transcation failed:column count doesn't match at row 1」となりました
spend2.phpの41行目は
>mysql_query("INSERT INTO inventory VALUES('$uniqueid','{$Row['itemid']}','{$Row['description']}','null','$Character','0','0','1','0','0','{$Row['itemid']}','0')");
でVALUES()には12個の値が入ってる。
実際のinventoryテーブルが12個のカラムで構成されてるか調べてみれば?
0864nobodyさん
2011/01/22(土) 16:01:32ID:5oOIF2do`itemUniqueId` int(11) NOT NULL,`itemId` int(11) NOT NULL,`itemCount` bigint(20) NOT NULL DEFAULT '0',`itemColor` int(11) NOT NULL DEFAULT '0',`itemOwner` int(11) NOT NULL,
`isEquiped` tinyint(1) NOT NULL DEFAULT '0',`isSoulBound` tinyint(1) NOT NULL DEFAULT '0',`slot` int(11) NOT NULL DEFAULT '0',`itemLocation` tinyint(1) DEFAULT '0',`enchant` tinyint(1) DEFAULT '0',
`itemSkin` int(11) NOT NULL DEFAULT '0',`fusionedItem` int(11) NOT NULL DEFAULT '0',`optionalSocket` int(1) NOT NULL DEFAULT '0',`optionalFusionSocket` int(1) NOT NULL DEFAULT '0',
0865nobodyさん
2011/01/22(土) 16:07:32ID:5oOIF2domoney以外の送信はできました
0866nobodyさん
2011/01/22(土) 16:09:13ID:???spend2.phpの41行目のVALUES()の最後にもうひとつ0を追加してみては
1: `itemUniqueId` int(11) NOT NULL,`itemId` int(11) NOT NULL,
2: `itemCount` bigint(20) NOT NULL DEFAULT '0',
3: `itemColor` int(11) NOT NULL DEFAULT '0',
4: `itemOwner` int(11) NOT NULL,
5: `isEquiped` tinyint(1) NOT NULL DEFAULT '0',
6: `isSoulBound` tinyint(1) NOT NULL DEFAULT '0',
7: `slot` int(11) NOT NULL DEFAULT '0',
8: `itemLocation` tinyint(1) DEFAULT '0',
9: `enchant` tinyint(1) DEFAULT '0',
10: `itemSkin` int(11) NOT NULL DEFAULT '0',
11: `fusionedItem` int(11) NOT NULL DEFAULT '0',
12: `optionalSocket` int(1) NOT NULL DEFAULT '0',
13: `optionalFusionSocket` int(1) NOT NULL DEFAULT '0',
0867866
2011/01/22(土) 16:10:01ID:???0868nobodyさん
2011/01/22(土) 16:15:24ID:???phpもmysqlも入ってない環境でさっきからエスパってるから
エラー晒してもらわないと何もわからない(汗
0869nobodyさん
2011/01/22(土) 16:17:43ID:???ほい、money
http://www.youtube.com/watch?v=HWZSz2oo89w
0870nobodyさん
2011/01/22(土) 16:23:17ID:5oOIF2doです 値の入力命令?
0871nobodyさん
2011/01/22(土) 16:27:44ID:???「不正な整数値('')が、カラム'attachedkinahcount'に挿入されようとしている」
ていうような意味だと思う。
恐らくmoneyテーブルのカラム構成と挿入しようとしてる値が一致してない。
0872nobodyさん
2011/01/22(土) 16:31:52ID:???↑のようなINSERT文を↓みたいに書き換えて表示してから、実際のカラム構成と
比べてみるといい
$q = "INSERT INTO inventory VALUES('$uniqueid','{$Row['itemid']}','{$Row['description']}','null','$Character','0','0','1','0','0','{$Row['itemid']}','0')";
echo "Query: $q";
mysql_query($q);
0873nobodyさん
2011/01/22(土) 17:03:08ID:???考えられる原因を
spend1.php
40:$res = mysql_query("SELECT itemid,points FROM voterewards1 WHERE id='{$Reward}'");
42:mysql_query("INSERT INTO mail VALUES('$uniqueid','$Character','Aion Staff','".MAIL_SUBJECT."','".MAIL_BODY."','1','{$Row['itemid']}','{$Row['description']}','1','2010-08-28 02:00:00')");
※42行目で、40行で指定されていないフィールド'description'を参照している
ちなみに'description'はTEXT,'points'はINTで'attachedKinahCountattachedKinahCount'はINT
0874nobodyさん
2011/01/22(土) 17:57:29ID:HPNbEIGIそれに対してPHPがどのようにMySQLとのセッションを
確立するか知りかったんだがorz
MySQLでPHPから
SELECT xxx FROM zzzzzz WHERE id="1" FOR UPDATE
↑
これで次にアップデートするまで、`zzzzzz`.`xxx`に対してロックが行われるとみていいのかな?
あと、ロックかかってる時は他の人からはアクセス不可(エラー)で返るんじゃなくて、
順番待ちとして待機するのかな?
セッションってDB接続ごとに確立されるんだっけ?
A→PHP実行→接続→セッション1が作成
B→PHP実行→接続→セッション2が作成
0875nobodyさん
2011/01/22(土) 18:18:37ID:???0876nobodyさん
2011/01/22(土) 18:37:36ID:???>これで次にアップデートするまで、`zzzzzz`.`xxx`に対してロックが行われるとみていいのかな?
>あと、ロックかかってる時は他の人からはアクセス不可(エラー)で返るんじゃなくて、
>順番待ちとして待機するのかな?
>セッションってDB接続ごとに確立されるんだっけ?
ぜんぶ自分の環境で実行してみればわかるだろ
0879nobodyさん
2011/01/22(土) 20:59:10ID:HPNbEIGIちょっと今仕事中で試せていません
0880nobodyさん
2011/01/22(土) 22:04:02ID:HPNbEIGI楽しいですねこれ
LOCK TABLE hoge WRITE;
これだと別のセッションからhogeテーブル読めなく(待ち状態)になりますが、
これってテーブルごとじゃなく、特定の行や特定のカラムのみってできないんですかね
LOCK TABLE hoge WRITE WHERE id='1'; // id=1の行だけロック
LOCK TABLE `hoge`.`test` WRITE WHERE id='1'; // id=1の行のtestカラムだけロック
てかこれどう考えてもMySQLスレ・・・?
0881nobodyさん
2011/01/22(土) 22:24:00ID:???0882nobodyさん
2011/01/22(土) 22:24:38ID:HPNbEIGI0883nobodyさん
2011/01/22(土) 22:31:52ID:???0884nobodyさん
2011/01/22(土) 23:04:12ID:???0885nobodyさん
2011/01/22(土) 23:04:55ID:???http://hibari.2ch.net/test/read.cgi/db/1295436346/l50
MySQLでのカラムロックについてはググってください。
いろいろと自分で調べて学んだ方が身につきます。
0890nobodyさん
2011/01/23(日) 13:26:25ID:???0891nobodyさん
2011/01/23(日) 13:26:56ID:???0892nobodyさん
2011/01/23(日) 13:27:40ID:???0893nobodyさん
2011/01/23(日) 13:31:00ID:???0894nobodyさん
2011/01/23(日) 13:32:16ID:???0895nobodyさん
2011/01/23(日) 13:54:38ID:???そのプロセスでは書き込みエラーが出るんですか?
0898nobodyさん
2011/01/23(日) 14:04:32ID:???0899nobodyさん
2011/01/23(日) 16:25:22ID:???0900nobodyさん
2011/01/23(日) 17:45:45ID:???【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
巣に帰りましょう。
0903nobodyさん
2011/01/23(日) 19:19:17ID:???>ドリームウェーバーを使ってですとselect*fromでも通りましたが
意味わからん。DreamWeaver にはいつから SQLite 処理機能が搭載されたんだ?
何がどう通ったんだろうな。
どうでもいいけど Weaver はウェーバーじゃなくてウィーバーと発音する
>ほかのソフト使う時は空白を注意して入れてみます。ありがとうです!
ほかのソフトっていうか SQL の基礎を学ぶべき。SQLite 云々関係ない。
SQL質疑応答スレ 10問目
http://hibari.2ch.net/test/read.cgi/db/1274791771/
あと PHP もだな。
【PHP】下らねぇ質問はID出して書き込みやがれ 102
http://hibari.2ch.net/test/read.cgi/php/1292670453/
0904nobodyさん
2011/01/23(日) 19:19:42ID:???0906nobodyさん
2011/01/23(日) 19:39:55ID:???0907nobodyさん
2011/01/23(日) 23:26:19ID:???weaveは[wi:v]
0908nobodyさん
2011/01/23(日) 23:48:53ID:???0909nobodyさん
2011/01/24(月) 09:15:45ID:???なので「ウィアバー」と読むのが正解。
0910nobodyさん
2011/01/24(月) 22:54:57ID:???なので「ジャクソンビル国際空港」と読むのが正解。
0911nobodyさん
2011/01/25(火) 05:55:24ID:OqPBuPo2hiddenのパラメーターも記入してPostしているのですがログインができません。
Firebugで通信内容を見るとIDやPass等の情報の他にx=12&y=11というものがあるのですが
これと関係ありますか?
0912nobodyさん
2011/01/25(火) 07:57:11ID:ej6mboVt意味わからんが、x=12&y=11は画像ボタンクリックしたときの
画像に対してクリックした座標
0913nobodyさん
2011/01/25(火) 10:51:43ID:???php側では勝手に$_GETにそのパラメータが格納されてると思っておkですか?
0916nobodyさん
2011/01/25(火) 11:54:05ID:c8AyyZvdPHP Fatal error: Call to a member function getCurrentPageID() on a non-object in /パス/ファイル.php
他にもgetLinks()やgetPageRangeByPageId()など、Pager/Pager.phpを利用している部分でPHP Fatal errorのエラーが出ます。
Pager/Pager.phpのファイル名を変えるとエラーが返って来なくなるので、
Pager.phpに問題があるのは間違いないようです。
このエラーを無くし正常に動作させるには、どのような対処が必要でしょうか?
移行前:PHP 4.4.2
移行後:PHP 5.1.6 Apache/2.2.3
0918nobodyさん
2011/01/25(火) 12:33:29ID:aig55zU3<a href=http://erimi.co.cc/browse.php?u=&b=6#$FRONT">test</a>
というのを発見したのですが、この#は何の意味があるのでしょうか?'
0919nobodyさん
2011/01/25(火) 12:36:39ID:aig55zU3原文
質問です、とあるphpファイルで
<a href=
というのを発見したのですが、この#は何の意味があるのでしょうか?
ちなみにhogeの部分はFRONTです
0921nobodyさん
2011/01/25(火) 12:37:51ID:aig55zU3文章が入力したとおりに表示されない・・・。なんだろこれ
0923nobodyさん
2011/01/25(火) 12:39:19ID:???http://pear.php.net/manual/ja/package.html.pager.intro.php の下の方
0924nobodyさん
2011/01/25(火) 12:39:35ID:???0925nobodyさん
2011/01/25(火) 12:40:32ID:???0926nobodyさん
2011/01/25(火) 12:47:07ID:aig55zU3質問です、とあるphpファイルで
<あ hrえf=#$FRONT></あ>
というのを発見したのですが、この変数の前にある#は何の意味があるのでしょうか?
なんか2chの仕組みがよくわからんです・・・。
0928nobodyさん
2011/01/25(火) 12:48:07ID:PyH261ZL【連携ソフトウェア】MySQL
【質問内容】
COUNT関数を使っての件数取得がうまくいきません。
<?php
$sql = "SELECT COUNT(*) FROM tablename";
$server = "server";
$userid = "userid";
$password = "pass";
$link = mysql_connect($server, $userid, $password);
if ($link == FALSE) {
print("接続に失敗しました");
}
$con = mysql_query($sql,$link);
mysql_close($link);
if (!$con){
print "検索結果を取得できませんでした。";
} else {
$row = mysql_fetch_row($con);
print "行数は" . $row[0] . "です。";
}
?>
という風に記述しているのですが、$conがFalseになっているようで
検索結果を取得できませんでした。
と表示されてしまいます。
phpmyadminからSQL文を流した場合はしっかり取得でき
同じような接続方法でINSERT文をPHPから流した場合もしっかり登録されましたが
SELECT文で要素を取得する場合だけうまくいきません
なにか考えられる原因等あれば教えていただければ幸いです。
0930nobodyさん
2011/01/25(火) 13:01:47ID:PyH261ZLありがとうございます。
原因を見たところデーターベース選択がうまくいってなかったとのことだったようで
解決しました。
0931nobodyさん
2011/01/25(火) 13:14:27ID:aig55zU3おちつけよ
0932nobodyさん
2011/01/25(火) 13:25:14ID:???↑こういう文字列を生成して、
<a>タグで囲んでリンク貼ってるんですが、
$_GETの中に値が入りません。何か間違ってますか?
あと、アンパサンドは&amp;とかくのか&だけでいいのかどっちですか?
0933nobodyさん
2011/01/25(火) 13:26:50ID:???http://hibari.2ch.net/test/read.cgi/php/1289117484/
0935nobodyさん
2011/01/25(火) 14:53:03ID:ak3SRbWw・フリー、商用可、可能なら広告表示義務なし。
・既存サイトに組み込めるニュース表示パーツみたいなもの。
・TOPページには最新の数件と、ニュースページへのリンクを表示。
・文字コードはできればUTF-8で。
・ブラウザ上から更新可能。できればウィジウィグエディタで。
・更新画面はパスワードで入室管理。
イメージ的には希望の箇所に挿入可能はCMSパーツみたいなものです。
0937nobodyさん
2011/01/25(火) 15:04:46ID:ak3SRbWw悪かった…。自分の聞き方が悪かった・・・。
>935の内容を実現する、具体的な方法や、解説サイト、ダウンロードページを教えてください。
0938nobodyさん
2011/01/25(火) 15:07:32ID:???聞き方というか、
自分で先に構成練って作ってみて
部分部分でやり方わからなかったら聞けよ
丸投げすんな
そもそも
> 既存サイトに組み込めるニュース表示パーツみたいなもの。
既存サイトって何だよ、ちゃんと定義しろ
0939nobodyさん
2011/01/25(火) 15:23:10ID:ak3SRbWw既存サイト…
20ページくらいの完全に静的なサイトです。
構成というか、上に書いた内容が全てです。
自分で1から組む訳ではなく、この内容を簡単に可能にする方法(システム)を探して
いたので、丸投げしようと思って書いたわけではないです。
0940nobodyさん
2011/01/25(火) 15:28:27ID:???自分の頭の中ではイメージ浮かび上がってんだろうけど
俺には全く伝わってこない
ニュースが出るCMSパーツ作りたいのかな?しか思い浮かばん
iframeでいいじゃんもう
0941nobodyさん
2011/01/25(火) 15:35:01ID:???・ブラウザ上から更新可能。できればウィジウィグエディタで。
・更新画面はパスワードで入室管理。
rssを拾ってくるだけならそれこそ馬鹿の1つ覚えが居るajaxかな
0943nobodyさん
2011/01/25(火) 15:37:18ID:ak3SRbWwえーっと、上手く伝わらないですよね…。
ちなみにiframeは無しで。
逆に考えると、シンプルなブログ機能と、その最新の記事を指定数だけ
TOPページ(HTMLまたはPHP)に呼び出せる機能がほしいって事です。
0944nobodyさん
2011/01/25(火) 15:40:24ID:???自分で書いたブログ記事をHTMLに乗せるってこと?
> ちなみにiframeは無しで。
なんで無しなの?
フレームってだけで拒否する体質の人?
ニコニコ動画(笑)のパーツもだけど、基本的にiframe多いよ、主流と言ってもいい
てか、えらい簡単な内容だな
もっと複雑なもん考えてるんだと思ってた
0945nobodyさん
2011/01/25(火) 15:43:06ID:???まず概要に当たる説明が無い。943でやっと出た感じ。
で、じゃあそのTOPページは動的ページになるんじゃないの?
あとブログっていうのは今では相当複雑なCMSの複合体の名称なので
ここで使うと混乱のもとな気がする。要するにテキスト(と装飾)程度だけ
WEB上で更新して、掲載したいんでしょ?
0946nobodyさん
2011/01/25(火) 15:52:14ID:???動的仕組みで静的ページを自動作成って感じかな、どちらにしろCGIなり動く環境が必要。
iframeに他鯖から呼び出すのって規約違反じゃないの。仮に呼び出し先に同一のページを
作って誤魔化すならはじめからそっちで作れって話しだし。
0947nobodyさん
2011/01/25(火) 16:07:28ID:???0948nobodyさん
2011/01/25(火) 16:08:30ID:???PHPで簡単な管理画面を作って、フォームからデータベースなりXMLなりにデータを書きこんで
JavaScriptでデータを適宜読み込んで表示すればいいんじゃないのか
0949nobodyさん
2011/01/25(火) 16:10:08ID:ak3SRbWwざっくり言うとそんな感じです。
iframe無しなのは、読み込む部分の編集をとにかく簡単にしたかったからで、
その場合iframeだと難しいのかなと思ったからです。
>945
確かにブログと言ってしまうとマズイかもしれないですね。
この内容が可能になると、確かにTOPは動的になります。
あとは、要するにその通りです。
0950nobodyさん
2011/01/25(火) 16:23:15ID:ak3SRbWwんー、「ニュース」の部分は「お知らせ」とか「更新情報」に読み替えてもらって
かまいません。そこまでアクセスが増える予定はないです。
>947
もしかしなくてもくれくれみたいなものですよ。
>948
確かに管理画面から作ってDBつくって、って方法もあるのかもしれません。
でも、今回はその辺を端折ってお手軽に作る方法を探してました。
もっと希望を言えばDBも使わずにCVSとかで保存する程度でOKです。
0951nobodyさん
2011/01/25(火) 16:25:45ID:ak3SRbWw0952nobodyさん
2011/01/25(火) 16:28:16ID:???WISIWYG含めたシステムをどっかで手に入れたいって言うとスレ違いかも?
ところでスクリプトがHTMLに整形された文書を吐き出す形になるなら
Ajaxでもiframeでもinclude(同サーバー)でも同じでいい気が。
iframeで読み込むのなんて静的でかなりシンプルだと思うけど。
記事の更新は既存ブログつかって、吐き出したRSSなりを整形ってのは?
0953nobodyさん
2011/01/25(火) 16:30:10ID:???0954nobodyさん
2011/01/25(火) 16:38:46ID:ak3SRbWw自分もだんだんスレチな気がしてきました…。
以降スルーしてもらっても構いません。
書き込んでもらう分には返事して、参考にさせてもらいます。
お騒がせしました。
>953
それだとちょっと大掛かり過ぎなんですよね…。
0955nobodyさん
2011/01/25(火) 16:40:45ID:???つまり、ブログパーツってことなのか?
http://twitter.com/about/resources/widgets/widget_profile
こういう感じで内容を自分で編集できるようにしたものってのと違う?
0956nobodyさん
2011/01/25(火) 16:49:00ID:???イメージは>>943でいいんじゃないの?でブログって言うよりはシンプルなテキスト情報のみ、っていう。
「つまりブログパーツ」って言っちゃったらゲームとかもあるし種類広すぎるだろw
たぶんリンク先のイメージは合ってるけど。
0957nobodyさん
2011/01/25(火) 16:53:47ID:ak3SRbWw全く違うわけじゃないんですが、>956さんの通りです。
0958nobodyさん
2011/01/25(火) 16:55:01ID:???0959nobodyさん
2011/01/25(火) 16:57:27ID:???0960nobodyさん
2011/01/25(火) 17:12:25ID:???http://www.yumemaboroshi.net/39rank0/
http://php.dori-mu.net/news.html
概要が理解できないまま、好意的に推測した上で探してみたけど
こういうものだろうか
0961nobodyさん
2011/01/25(火) 17:30:20ID:ak3SRbWwこれまでの意見で十分参考にさせてもらいました。
ありがとうございます。
>959
そうですよね…。それくらいさくっとできるように頑張ります。
>960
ありがとうございます。
ReCubeNewsはイメージと近いですね。
TOPへの表示部分が本文も表示するようにできればいい感じです。
夢幻は一通りみました。
3番目はブクマして、今後の勉強に役立てます!
0962nobodyさん
2011/01/25(火) 17:38:21ID:???0963nobodyさん
2011/01/25(火) 18:02:07ID:???http://www.dotup.org/uploda/www.dotup.org1381990.txt
0965nobodyさん
2011/01/25(火) 18:33:54ID:???0967nobodyさん
2011/01/25(火) 18:41:07ID:???掲示板なんかにわざわざスクリプト意外にDBなんかまで使って
サーバー管理者から苦情がこないのでしょうか?
0968nobodyさん
2011/01/25(火) 18:43:24ID:???そんな大層なものでもないからw
0969nobodyさん
2011/01/25(火) 18:45:58ID:???0970nobodyさん
2011/01/25(火) 19:00:36ID:???それを言ったら963のじゃ編集もタグ入れも出来ないし、ちゃんと出来るモノ探したほうがいいよな
>>967
ファイル操作よりよっぽど安全でスマート。慣れればCSVとかいじるより多機能簡単だし。
0971nobodyさん
2011/01/25(火) 19:04:41ID:???Ajaxの使用を怠ってしまい、大変申し訳ありませんでした
大至急Ajax方式に切り替えました
http://www.dotup.org/uploda/www.dotup.org1382094.txt
WYSIWYG???編集???
自分で作れやwwwwwwwwww
俺はこれで終わり
0972nobodyさん
2011/01/25(火) 19:04:55ID:NaLoXxgk$sss = "aiueo";
$sssd = "ai";
//ランダム表示
$arr = array("echo $sss;","echo $sssd;");
mt_srand((double)microtime()*1000000);
echo"
<html>
<body>";
echo $arr[mt_rand(0,count($arr)-1)];
echo"
</body>
</html>";
?>
これを実行すると
echo aiueo;
echo ai;
と言う表示が出ます、これを
aiueo
ai
と表示出来るようにするにはどうしたらいいでしょうか?
0973nobodyさん
2011/01/25(火) 19:17:29ID:???すげー見づらいから書きなおしてみた
<?php
// 文字列を変数に入れる
$s1 = "aiueo";
$s2 = "ai";
// 変数を配列に入れる
$arr = array($s1, $s2);
// 乱数を生成する
$num = mt_rand(0, count($arr)-1);
// 表示する
echo "<html><body>";
echo $arr[$num];
echo "</body></html>";
0975nobodyさん
2011/01/25(火) 19:52:02ID:NaLoXxgk素晴らしいですね
綺麗すぎて泣いた
あとすいません、echoで必ず表示させたいんです
どういう事かというと、
そのランダム部分には普通の文字列もあれば関数やらHTMLのタグやらも一緒くたに扱える柔軟性を維持させたいからです。
require 'aaa.php';//ここに関数定義
$sss = "print_advanceda();";//これが関数
$sssd = "ai";//これは普通の文字列やタグを設定
こういう使い方は無理でしょうか?
0976nobodyさん
2011/01/25(火) 20:00:16ID:???0977nobodyさん
2011/01/25(火) 20:06:32ID:???$sss = print_advanceda();
これでおk
関数の返り値を変数に代入すればいいんだよ。
あなたはどうして変数も関数も文字列として扱おうとするのか・・・
0978nobodyさん
2011/01/25(火) 20:34:39ID:???0979nobodyさん
2011/01/25(火) 20:39:04ID:???0980nobodyさん
2011/01/25(火) 20:40:35ID:???0981nobodyさん
2011/01/25(火) 20:55:03ID:???【PHP】下らねぇ質問はID出して書き込みやがれ 103
http://hibari.2ch.net/test/read.cgi/php/1295956018/
0982nobodyさん
2011/01/25(火) 20:58:24ID:NaLoXxgkありがとうございます
require 'aaa.php';//ここに関数定義
// 文字列を変数に入れる
$s1 = print_advanceda();//これが関数
$s2 = "ai";//これは普通の文字列やタグを設定
// 変数を配列に入れる
$arr = array($s1, $s2);
// 乱数を生成する
$num = mt_rand(0, count($arr)-1);
// 表示する
echo "<html><body>";
echo $arr[$num];
echo "</body></html>";
これで実行したら、$s1の表示の場合は空白でした。
そして
>$s1 = "print_advanceda();";//これが関数
この部分に反応して表示されてます。
つまり、<html><body>の前の行です。
require 'aaa.php'のファイルに
>$s1 = print_advanceda();//これが関数
この記述を移動させて見ましたが、
今度もやはりここで反応してしまいます。
>$arr = array($s1, $s2);
で↓ここの表示でも$s1の場合だと空白に成ります
>echo $arr[$num];
0983nobodyさん
2011/01/25(火) 21:02:18ID:???print_advanceda() という関数が、関数の内部で表示を実行しているため、
$s1 = print_advanceda() の行の評価時に表示が行われてしまう。
また、print_advanceda() 関数の内部で返り値が設定されていないため、
$s1 = print_advanceda() としても $s1 に何も代入されない。
print_advanceda() 関数を自分で修正できるのならば、
内部で表示(print, echo 等)している部分ををやめて、
return文で戻すように改造する。
0984nobodyさん
2011/01/25(火) 21:07:32ID:???単刀直入に言うと、あなたが作ったprint_advanceda関数がおかしいってことですよ。
可能ならば、その関数のコードもここに書いてみたらどうですか。
0986nobodyさん
2011/01/25(火) 21:10:01ID:???おそらく本人が作ったわけじゃないんだろ?
>>982を読む限りPHPの基本的な動作を理解しているとは思えない。
0987nobodyさん
2011/01/25(火) 21:21:08ID:NaLoXxgk関数内の
print $result;
を
return($result);
に変えたら表示出来ました!!
まじで感謝です!ありがとうございましたm(__)m
>>986
はいその通りです・・・でもヒントを得て改造してみました!
そしたら動きました!
ここで聞いて良かったです!!皆さんほんとうにありがとうございましたm(__)m
0988nobodyさん
2011/01/25(火) 21:27:49ID:???次回はAjaxで挑戦してください
0989nobodyさん
2011/01/25(火) 21:31:05ID:???0990nobodyさん
2011/01/25(火) 21:52:19ID:???0992nobodyさん
2011/01/25(火) 21:55:17ID:???0995nobodyさん
2011/01/25(火) 22:00:48ID:???いや、おれAjaxのことよく知らなかったんだけど、
これ見て大まかな使い方を理解できて勉強になったんだ・・・
こういう風にノリでささっと作れる人ってすごいと思う
0996nobodyさん
2011/01/25(火) 22:03:57ID:???0997nobodyさん
2011/01/25(火) 22:24:30ID:???0999nobodyさん
2011/01/25(火) 22:28:11ID:???1000nobodyさん
2011/01/25(火) 22:29:43ID:???なんて書かれるともう自演にしか見えなくなってくる。
まぁどっちでもいいけどね。
というわけで続きはこちら。
【PHP】下らねぇ質問はID出して書き込みやがれ 103
http://hibari.2ch.net/test/read.cgi/php/1295956018/
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。