【PHP】下らねぇ質問はID出して書き込みやがれ 127
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2013/03/19(火) 22:13:49.76ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 126
http://kohada.2ch.net/test/read.cgi/php/1359808868/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0002nobodyさん
2013/03/19(火) 22:14:04.53ID:???■本家マニュアル 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/
0003nobodyさん
2013/03/19(火) 22:14:29.62ID:???1.文字コードは何を使えばいいの?
→1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
→ http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
→ Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
→ 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
→ {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
→ cronかタスクスケジューラを使え。
7.extractって危険なの?
→変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
→ URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
→ .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
10. そもそもインストールの時点でうまくいかない
→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
0004nobodyさん
2013/03/19(火) 22:14:47.32ID:???→ データベース板に誘導されるのが嫌なら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に保存?
→ 好きにしてください
0005nobodyさん
2013/03/19(火) 22:15:21.05ID:???0006nobodyさん
2013/03/19(火) 22:15:30.63ID:???ttp://ameblo.jp/nikko-inma/entry-11122429825.html
>数々の糞仕様の発見で驚きを提供してくれる人気プログラム言語PHP
ttp://usamimi.info/~mirrorhenkan/2ch/ruby/other/read.php/1181304333/
>「初心者にもWebアプリケーションが書ける」という幻想を与えることで、 バグだらけで、メンテナンス性が低く、
>セキュリティ問題を抱えた Webアプリケーションを乱造することになっているのではないだろうか。
ttp://qarc.info/qa/show-9478-909.html
>PHPとか言語仕様が糞なうえにセキュリティホール付でリリースするからマジないわ。
ttp://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
PHPは順位を維持しているものの-0.16%、
一方のRubyはというとPHPより順位は低いものの+0.34%、
このままいけば必ず逆転する
ttp://www.anlyznews.com/2011/03/phper13.html
>5. PHPなどのスクリプト言語しか知らないのに、プログラミング言語の優劣を語る。
>6. PHPの遅さを知らないのに「最近のマシンは速いからプログラミング言語に速度は求められていない」と言い切る。
>11. 仕様が曖昧で急激に変化するPHPで、テストファーストとか言い出す。
>13. ブログで自らの無知をさらけ出す。
ttp://creeper.no-ip.info/adiary/adiary.php?20111122
>■ 変数名を間違えると新しい変数が作られる
>■ 文字列の変数展開がクソ
0007nobodyさん
2013/03/19(火) 22:16:40.50ID:???ttp://ameblo.jp/nikko-inma/entry-11122429825.html
>数々の糞仕様の発見で驚きを提供してくれる人気プログラム言語PHP
ttp://usamimi.info/~mirrorhenkan/2ch/ruby/other/read.php/1181304333/
>「初心者にもWebアプリケーションが書ける」という幻想を与えることで、 バグだらけで、メンテナンス性が低く、
>セキュリティ問題を抱えた Webアプリケーションを乱造することになっているのではないだろうか。
ttp://qarc.info/qa/show-9478-909.html
>PHPとか言語仕様が糞なうえにセキュリティホール付でリリースするからマジないわ。
ttp://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
PHPは順位を維持しているものの-0.16%、
一方のRubyはというとPHPより順位は低いものの+0.34%、
このままいけば必ず逆転する
ttp://www.anlyznews.com/2011/03/phper13.html
>5. PHPなどのスクリプト言語しか知らないのに、プログラミング言語の優劣を語る。
>6. PHPの遅さを知らないのに「最近のマシンは速いからプログラミング言語に速度は求められていない」と言い切る。
>11. 仕様が曖昧で急激に変化するPHPで、テストファーストとか言い出す。
>13. ブログで自らの無知をさらけ出す。
ttp://creeper.no-ip.info/adiary/adiary.php?20111122
>■ 変数名を間違えると新しい変数が作られる
>■ 文字列の変数展開がクソ
0010nobodyさん
2013/03/19(火) 22:21:07.76ID:???もう二度と来ません。
0011前スレ970
2013/03/19(火) 22:21:55.02ID:8jYhxyUGcURLを使って書き換えるとこれで正解でしょうか?
$postdata =
"<?xml version=\"1.0\" encoding=\"Shift_JIS\"?>" .
"<api-request id=\"XXXX-XXXXX-XXX\">" .
"<a_id>" . $a_id . "</a_id>" .
"<b_id>" . $b_id . "</b_id>" .
"<t_id>" . $t_id . "</t_id>" .
"</api-request>";
$url = "https://example.com/api/xmlapi.do";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERPWD, $id . ':' . $pass);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
curl_setopt($ch, CURLOPT_POSTFIELDS, "$xml_data");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
0012nobodyさん
2013/03/19(火) 22:24:51.73ID:???読まずに初めから無視してるのは現実から目を反らしてるのと同じ
これを読んでもまだ使いたいなら使えばいいじゃない
☆初心者必読☆
ttp://ameblo.jp/nikko-inma/entry-11122429825.html
>数々の糞仕様の発見で驚きを提供してくれる人気プログラム言語PHP
ttp://usamimi.info/~mirrorhenkan/2ch/ruby/other/read.php/1181304333/
>「初心者にもWebアプリケーションが書ける」という幻想を与えることで、 バグだらけで、メンテナンス性が低く、
>セキュリティ問題を抱えた Webアプリケーションを乱造することになっているのではないだろうか。
ttp://qarc.info/qa/show-9478-909.html
>PHPとか言語仕様が糞なうえにセキュリティホール付でリリースするからマジないわ。
ttp://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
PHPは順位を維持しているものの-0.16%、
一方のRubyはというとPHPより順位は低いものの+0.34%、
このままいけば必ず逆転する
ttp://www.anlyznews.com/2011/03/phper13.html
>5. PHPなどのスクリプト言語しか知らないのに、プログラミング言語の優劣を語る。
>6. PHPの遅さを知らないのに「最近のマシンは速いからプログラミング言語に速度は求められていない」と言い切る。
>11. 仕様が曖昧で急激に変化するPHPで、テストファーストとか言い出す。
>13. ブログで自らの無知をさらけ出す。
ttp://creeper.no-ip.info/adiary/adiary.php?20111122
>■ 変数名を間違えると新しい変数が作られる
>■ 文字列の変数展開がクソ
0014nobodyさん
2013/03/19(火) 22:41:42.79ID:???0015nobodyさん
2013/03/19(火) 22:56:58.81ID:???ググったりしてみると「ダウンロードさせる」方法ばかりが出てダウンロードする方法がわかりません。
ご教授お願いします。
0016nobodyさん
2013/03/19(火) 22:57:24.29ID:8eU3/8tbage忘れました。
改めて質問させてもらいます。
PHPでファイルをダウンロードすることって可能ですか?
ググったりしてみると「ダウンロードさせる」方法ばかりが出てダウンロードする方法がわかりません。
ご教授お願いします。
0020nobodyさん
2013/03/19(火) 23:05:04.66ID:8eU3/8tb>>17
すみません。
説明不足でした。
ダウンロードしたいファイルはzipファイルなんです。
0022nobodyさん
2013/03/19(火) 23:12:02.43ID:8eU3/8tbありがとうございました。
zipファイルでもいけるみたいですね。
自分の勉強部族でした……
0023nobodyさん
2013/03/19(火) 23:14:14.31ID:???0025nobodyさん
2013/03/19(火) 23:42:39.35ID:8eU3/8tb以下のようにコードを組んでみました。
file_put_contents($file_path, file_get_contents($url));
URLはzip直リンクです。
このようにしてみたのですが、ダウンロードしたファイルをみたところ0バイトの無容量ファイルとなっていました。
何故このようなことになってしまうんでしょうか?
0026nobodyさん
2013/03/19(火) 23:43:51.03ID:???0027nobodyさん
2013/03/19(火) 23:50:43.82ID:???あきらめろん
0028nobodyさん
2013/03/19(火) 23:53:26.17ID:???0030nobodyさん
2013/03/20(水) 00:14:50.76ID:???$fp = fopen('unko.zip', 'w');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_exec($ch);
curl_close($ch);
fclose($fp);
このようにしてみましたが同じく0バイトzipでした。
お願いします。誰か助けてください。
0031nobodyさん
2013/03/20(水) 00:15:08.45ID:vtosDUC4$ch = curl_init("https://github.com/foo/bar/archive/master.zip");
$fp = fopen('unko.zip', 'w');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_exec($ch);
curl_close($ch);
fclose($fp);
このようにしてみましたが同じく0バイトzipでした。
お願いします。誰か助けてください。
0032nobodyさん
2013/03/20(水) 00:18:52.42ID:???おいくら支払えますか?
0033nobodyさん
2013/03/20(水) 00:23:48.50ID:???0034nobodyさん
2013/03/20(水) 00:30:36.74ID:H3JypdK8100円
0035nobodyさん
2013/03/20(水) 00:31:38.74ID:???ダウンロード前にログインして下さい。
ていうかちゃんと相手サイトの仕様を把握して下さい。
0036nobodyさん
2013/03/20(水) 00:35:25.01ID:???foo/bar/なんてあるわけねえだろ
ちゃんとしたURLも出さないならとっととカエレ
0037nobodyさん
2013/03/20(水) 00:36:32.01ID:p05jljgI俺の糞コードあげる
$url = "https://packages.zendframework.com/releases/ZendFramework-2.1.4/ZendFramework-2.1.4.zip";
$file = file_get_contents($url);
$fp = fopen("/tmp/" . basename($url), "w+");
fwrite($fp, $file);
fclose($fp);
0038nobodyさん
2013/03/20(水) 00:40:32.97ID:???0039nobodyさん
2013/03/20(水) 00:41:38.45ID:???0040nobodyさん
2013/03/20(水) 00:43:40.30ID:???0041nobodyさん
2013/03/20(水) 00:45:36.31ID:???このコードでSELECT以外を実行することって可能?
0042nobodyさん
2013/03/20(水) 00:49:07.59ID:???0044nobodyさん
2013/03/20(水) 01:00:33.49ID:???低知能が一般人と同じ努力と時間でできるわけねーだろ
自分が一般人レベルだと無意識に自惚れるんだろお前
低知能は低知能らしく泥水すすってろ
004641
2013/03/20(水) 01:14:58.28ID:???0048nobodyさん
2013/03/21(木) 09:19:09.52ID:???.がないので動かない。まぁ揚げ足取りはいいとして、
コロンはさんでDELETEなんかを追加するのは可能。
0049nobodyさん
2013/03/21(木) 13:46:01.78ID:???0050nobodyさん
2013/03/21(木) 13:55:44.02ID:H+c6ch+k【質問内容】 タイプヒンティングについて
PHP 5.1以降でタイプヒンティングが使えるようになりました。
マニュアルを見ると、
> タイプヒントは int や string といったスカラー型には使えません。 また、トレイト も使えません。
とあります。
スカラー型でタイプヒントができないのは、何か理由があるのでしょうか?
005250
2013/03/21(木) 14:03:55.57ID:???Scalar type hinting is harder than you think
http://nikic.github.com/2012/03/06/Scalar-type-hinting-is-harder-than-you-think.html
後方互換性を鑑みたとき、PHPの暗黙の型変換とScalar type hintingの食い合わせが良くないというのが
主な原因の一つだと、このページの筆者は考えているようです。
0053nobodyさん
2013/03/21(木) 16:07:55.75ID:???0055nobodyさん
2013/03/21(木) 19:40:39.73ID:vaqS6iye【PHPのバージョン】5.4.13
【連携ソフトウェア】Memcached
【質問内容】
memcachedをwindows環境で利用したいのですが、php_memcached.dllが見つからず詰まっております。(memcacheの方ならありましたが…)
memcachedサーバは別途用意済みです。
前に働いていた職場では利用できていたので簡単にできると思っていたのですが浅はかでした…。
導入方法をご教授いただけると幸いです。
0056nobodyさん
2013/03/21(木) 19:41:56.00ID:???0057nobodyさん
2013/03/21(木) 19:50:40.93ID:???ページで "Php 5.4" で検索
0058nobodyさん
2013/03/21(木) 19:57:43.77ID:???ソースコードが入手できるリンクがあるから
そこからソースコードを入手して自分でコンパイルする
たぶんC言語だからCのコンパイラを探しなさい
0059nobodyさん
2013/03/21(木) 20:01:25.53ID:???いろいろサイトをみつつ格闘していますが、そもそもコンパイルする環境が…という状態なので
まずVisualStudioをインストールしています。
>>57
memcacheのほうでした…。
>>58
一度辿っていって挑戦してみます。
無理そうならWindowsではmemcacheのほうを使用するように振り分けたいと思います。
0060nobodyさん
2013/03/21(木) 20:04:35.56ID:???これじゃね?
php_memcached.cってファイルあるし
0061nobodyさん
2013/03/21(木) 21:01:20.60ID:???006259
2013/03/21(木) 23:34:01.37ID:vaqS6iyephp_memcachedのコンパイルがうまくいかず(nmakeでエラーが出るもどう修正していいか分からず…)
適当に変更しつつ無理やり進めていくももう限界な感じなので諦めます…
0063nobodyさん
2013/03/22(金) 00:50:03.31ID:ZypSZ1+e初心者で何をどうしていいかわかりません。
勉強できるところ教えてください。
0064nobodyさん
2013/03/22(金) 03:14:00.18ID:???(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
■本家マニュアル http://www.php.net/manual/ja/
0065nobodyさん
2013/03/22(金) 03:19:20.53ID:???情報系の専門学校
PHPそのものは教えてもらえないと思うが
卒業時にはPHP使ってそれを組めるレベルにはなってるはず
0066nobodyさん
2013/03/22(金) 12:00:48.07ID:M7ldJLa/まず、私のUbuntuに入っているphp 5.3を使って
php src.php
のようにやるとすぐに実行されます。
しかし、この自分でビルドしたPHPを使って
~/php/bin/php src.php
のようにやると実行されるのに10分くらいかかってしまいます。
どうしたらいい?
そして何故かインターネットにつながってないときだと
~/php/bin/php src.php
のようにやるとすぐに実行できます。
0067nobodyさん
2013/03/22(金) 13:52:52.12ID:f80zdUg/→ サーバー2
→ サーバー3
という流れでサーバー0から他のサーバーに分散処理を行っています。
20件以上のデータを3件ずつ処理→レスポンスが返る
5件のデータを3件ずつ処理→レスポンスが返る
tcpdumpを確認しているとサーバー1,2,3は処理が終わってレスポンス
を返す通知をしているようにみえます。
サーバー0のほうがレスポンスを取得できない状態のようです。
考えられる原因は何がありますか
0068nobodyさん
2013/03/22(金) 13:53:23.06ID:f80zdUg/20件以上のデータを3件ずつ処理→レスポンスが返らない
0069nobodyさん
2013/03/22(金) 14:29:36.96ID:???0070nobodyさん
2013/03/22(金) 14:46:18.71ID:mJIp3k85【PHPのバージョン】5.3.8
【連携ソフトウェア】MySQL
【質問内容】
質問失礼します。
phpで動的に生成したhtml(js含む)を暗号化するライブラリを探しています。
「サーバサイドSHTML for PHP」というツールを見つけました。
やりたい事はまさにコレなのですが、とある事情により組み込めませんでした。
他にライブラリは無いでしょうか?
よろしくお願いします。
0071nobodyさん
2013/03/22(金) 17:06:26.09ID:???ブラウザのデベロッパツールで複合後のhtmlが見えるけどな
0073nobodyさん
2013/03/22(金) 18:34:46.23ID:???右クリで見られなくするだけならjavascriptで動的に生成すれば
0074nobodyさん
2013/03/22(金) 18:38:25.64ID:jSNpdJzaおうちで読めるおすすめの本を教えてください。
自宅でPHPは出来ないので、リファレンスとかじゃなく読むだけでなぜかメキメキ上達する本を教えてください。
0075nobodyさん
2013/03/22(金) 18:46:02.95ID:???0076nobodyさん
2013/03/22(金) 18:47:08.54ID:???0077nobodyさん
2013/03/22(金) 18:52:01.91ID:???0078nobodyさん
2013/03/22(金) 18:52:29.64ID:???0079nobodyさん
2013/03/22(金) 18:57:22.94ID:jSNpdJza面倒でうs
EOF;
0080nobodyさん
2013/03/22(金) 19:15:00.55ID:???用例もあるし
0081nobodyさん
2013/03/22(金) 19:47:28.11ID:???お前にはただやる気がないだけだ
0082nobodyさん
2013/03/22(金) 19:51:30.29ID:???できもしないことを引き受けるなゴミクズ
お前みたいなゴミは納期直前になってからできませんとか言い出すからマジで迷惑
社会に出てくるなクズ
0083nobodyさん
2013/03/22(金) 20:07:14.76ID:???スルーするか答えてやったらどやろか?
0084nobodyさん
2013/03/23(土) 00:53:29.82ID:???XAMPP 面倒とか言い出したら、PHP覚えるのは無理だと思うぞ。
俺、PHPはこれっぽっちも判らないけど(言ってて悲しい…)
自前のPC に XAMPP 入れて rep2 を使えるように動かすまで、
30分かかってないぞ。
本当は、XAMPPや rep2 のドキュメント読んで、
やっとけって書いてあったセキュリティ上の設定とか動作上調整した方が良さそうな設定を
読んだりいじったりして、1時間ちょっと掛かってると思うけど。
まぁ、それでもそんなもんだ。
>>81
スレの存在否定しとるがな。
0085nobodyさん
2013/03/23(土) 02:02:00.73ID:???0086nobodyさん
2013/03/23(土) 02:27:48.20ID:???>初心者はXAMPP使うな
駄目だしして理由も代案出さないのは下の下。
別に XAMPPがベストとか最高だからお勧めとか言ってないし。
テスト用、学習用には困らんだろ。
「面倒でうs 」って言ってる >>79 に返答してみやがれ。
0087nobodyさん
2013/03/23(土) 02:28:59.29ID:???0088nobodyさん
2013/03/23(土) 03:24:58.10ID:???そもそも、技術力以前に「これっぽっちも判らない」って言ってる訳だから、
やばいもなにも戦闘力0なんだけど。
0089nobodyさん
2013/03/23(土) 03:44:59.83ID:???本家からビルド済みバイナリを取ってきて解凍して、php.exeなどにスクリプトを渡したら実行できるぞ。
0090nobodyさん
2013/03/23(土) 03:49:36.35ID:???本家のバイナリは無効なものが多く設定をいじる必要があり開発するだけならxamppのほうがよい
有効にしてるものが多いほどセキュリティリスクが高まるが
ポートも閉じてサーバを運営するわけではないので問題ない
0091nobodyさん
2013/03/23(土) 03:57:50.45ID:???apacheとか初心者には不要。余分なものがあると複雑になり混乱する。
0092nobodyさん
2013/03/23(土) 06:44:53.94ID:???PCが複数台あるなら、どれか一台にインストールと設定が簡単なUbuntuとかCentOSとかを入れる。
一台しかないなら仮想環境に入れる。
インストール時にLAMP環境をまるごと入れられるから、猿でもPHPの練習環境が作れる。
VirtualBoxにCentOSを入れて、あっさりPHPが使えるようになったときは
xamppを勧めた鬼を恨んだw
0093nobodyさん
2013/03/23(土) 08:04:54.35ID:???Web Platform Installer
でも使え
0094nobodyさん
2013/03/23(土) 08:16:30.00ID:???0095nobodyさん
2013/03/23(土) 10:56:30.28ID:???php の zip なり、Installer 入れて PHPすればいいんじゃね。
>>94
それをいうなら、「初心者は PHP使うな」も真になったり…
0097nobodyさん
2013/03/23(土) 16:50:44.12ID:???0098nobodyさん
2013/03/23(土) 18:20:03.41ID:???0099nobodyさん
2013/03/23(土) 18:37:17.32ID:???0100nobodyさん
2013/03/23(土) 18:54:42.18ID:???プログラマーの仕事じゃないから
0101nobodyさん
2013/03/23(土) 19:03:28.78ID:???ここの質問見てたらパーミッションすら分かってないゴミがいる
0102nobodyさん
2013/03/23(土) 19:15:03.81ID:???warning出すのに
0103nobodyさん
2013/03/23(土) 19:50:19.60ID:???0104nobodyさん
2013/03/23(土) 20:57:48.56ID:???0106nobodyさん
2013/03/24(日) 01:49:58.74ID:???0107nobodyさん
2013/03/24(日) 02:46:07.29ID:MVB0e/DSダウンロードする時は分かったのですが。
0108nobodyさん
2013/03/24(日) 04:00:14.39ID:???お前がしなきゃならないのはファイルアップロードの途中経過を取得することではなく
今すぐに回線を切ってネット社会に迷惑をかけないことだ
分かったかゴミ
0109nobodyさん
2013/03/24(日) 05:01:13.47ID:???Ajaxでサーバに定期問い合わせする
それがいやならPHPはあきらめろん
ttp://p2b.jp/2010/04/30/multiple-file-upload-by-HTML5
session.upload_progress.enabledを有効にすれば
ttp://php.net/manual/ja/session.upload-progress.php
も使えるだろう(やったことないが)
0110nobodyさん
2013/03/24(日) 05:39:24.59ID:MVB0e/DS分かりにくくて申し訳ありません。
ブラウザ→サーバー にアップロードする時の途中経過ではなく
サーバー→別のサーバー にcurlを使ってアップロードする時の途中経過の事です。
0113nobodyさん
2013/03/24(日) 13:45:27.68ID:MVB0e/DSダウンロードはこれで現状動いています。
$curl = curl_init();
$options=[];
$options[CURLOPT_URL] ="http://〜〜"
$options[CURLOPT_FOLLOWLOCATION] = true;
$options[CURLOPT_WRITEFUNCTION]=function($a,$b){
$currentByte=curl_getinfo($a)["size_download"];
printf("\r%2.2f/%2.2fMB",$currentByte/1024/1024,$contentLength/1024/1024);
};
$options[CURLOPT_HEADERFUNCTION]=function($a,$b){
if(preg_match('{Content-Length:(\d+)}',$b,$match)){$contentLength=$match[1];}
};
curl_setopt_array($curl,$options);
$response = curl_exec($curl);
curl_close($curl);
0114nobodyさん
2013/03/24(日) 18:14:59.12ID:+46FugGl0116nobodyさん
2013/03/24(日) 19:09:13.56ID:???0117nobodyさん
2013/03/24(日) 19:33:05.87ID:???閉じタグは、HTMLが混在する時に使う区切りの扱い。
PHPだけのファイルでは、変なキャラクタが出力されたりしないように
省略するのが昨今の流行り。
0118nobodyさん
2013/03/24(日) 20:44:25.82ID:???0122nobodyさん
2013/03/25(月) 01:12:25.22ID:Ox4syU6B具体的には文化祭でそこら中にQRコードをはって、それでスタンプラリーをしようかと思っているのですが
0123nobodyさん
2013/03/25(月) 01:14:34.95ID:ISkubUPDPHPぷろぐらまぁ〜の おねぇ〜さんだよぉ〜
今日はどんな質問が あるのかな?
0124nobodyさん
2013/03/25(月) 01:44:00.51ID:???書かないことが気持ち悪いって人は沢山いるんだけど、
書くことによって起こる面倒なやり取りを避けるために、気持ち悪いことを承知の上で
書かないようにしようって判断した感じだよね。
「最後に空行がひとつあるんですがこれは?」とかまじでうっとうしいから
0125nobodyさん
2013/03/25(月) 01:47:30.00ID:???気持ちいいコードしか書かんのかお前は
0127nobodyさん
2013/03/25(月) 03:30:36.57ID:zKokAmn+ダウンロードする時のコードからアップロードする時のコードに直すことが出来ないのですか?
0128nobodyさん
2013/03/25(月) 04:10:17.81ID:???0130nobodyさん
2013/03/25(月) 12:43:29.77ID:???ダウンロードするときには受け取った分から量がわかるけど
アップロードで丸ごと渡したらどこまで送信したかは、送った場所からはわからんだろ。
0131nobodyさん
2013/03/25(月) 13:33:37.72ID:???>>>127
ダウンロードするときには受け取った分から量がわかるけど
>アップロードで丸ごと渡したらどこまで送信したかは、送った場所からはわからんだろ。
はい、本日最高のヴァカ入りました
0132nobodyさん
2013/03/25(月) 14:04:49.74ID:???0133nobodyさん
2013/03/25(月) 17:17:47.63ID:wVRiuIe8次の変数$hostnameをDBに登録する場合、サニタイズは必要でしょうか?
よろしくお願いします。
$hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
0135nobodyさん
2013/03/25(月) 17:55:08.36ID:Xg0aZ+miBサーバーの処理終了もAサーバーがレスポンスを受け取らない。
Aサーバーがタイムアウトしてるとしか考えられないのですが
httpd.confのTimeoutとphpのタイムアウト設定以外に何処かいじるところ
ありますか?
0137135
2013/03/25(月) 18:04:26.97ID:???いえ、Bサーバー側ですべての処理が終わっても、クライアント側のPHP
はずっと動作したままブラウザは接続中になっています。
Bサーバーのtcpdumpではackをずっと飛ばしてるのですが、Aサーバーの
tcpdumpログに動きがないので、Bサーバーは強制切断になってます。
0139nobodyさん
2013/03/25(月) 18:09:03.98ID:Xg0aZ+mi間違えてsage入れてました。
この質問は取り下げます。
0140nobodyさん
2013/03/25(月) 18:21:17.35ID:zKokAmn+ブラウザやFTPクライアントはアップロードする時も%表示やプログレスバーが表示されますけど
phpでは表示出来ないという何か事情があるのでしょうか
0141nobodyさん
2013/03/25(月) 18:25:56.14ID:???curlで送ってるんじゃないの?
phpでcurlの関数に渡してはいおしまい、だと取れないだろって言ってるの
ダウンロードのコード晒してたから、そのまま使ったんじゃそうなるって話。
コールバックとか調べてみ。
0142nobodyさん
2013/03/25(月) 19:09:28.56ID:???コネクション張れてるならB→AへのACKがAに到達しないのはおかしいなぁとおもう。
nagleが絡んでるわけでもないんだよね
0143nobodyさん
2013/03/25(月) 19:13:45.73ID:???http://stackoverflow.com/questions/10946075/libcurl-c-curlopt-progressfunction
0144133
2013/03/25(月) 19:48:46.69ID:CCFS7U7gありがとうございました。
$_SERVER['REMOTE_ADDR'] の値が改竄される危険性については、
あまり心配しなくて良さそうですね。
0145nobodyさん
2013/03/25(月) 22:22:50.37ID:???0146nobodyさん
2013/03/25(月) 22:39:40.23ID:???0147nobodyさん
2013/03/25(月) 22:40:28.08ID:???0149nobodyさん
2013/03/26(火) 03:29:34.65ID:???0150nobodyさん
2013/03/26(火) 04:44:42.31ID:???常に煽りあってるよな
0151nobodyさん
2013/03/26(火) 04:59:50.77ID:???0152nobodyさん
2013/03/26(火) 05:05:58.04ID:???0153nobodyさん
2013/03/26(火) 05:13:23.28ID:???たまに煽り合いもあるけど基本平和そのものだぞ
言語使用者の民度は2chのスレッドにも表れる
0154nobodyさん
2013/03/26(火) 09:03:11.23ID:???0155nobodyさん
2013/03/26(火) 10:20:58.89ID:???0156135
2013/03/26(火) 11:09:54.49ID:mRDPS0mY返信ありがとうございます。
RSTはBサーバーではやってますが、Aのほうでは全く反応ない状態で
ackも送ってません。
nagleはちょっと調べてみないとわかりません。
0157135
2013/03/26(火) 12:16:11.31ID:mRDPS0mYcurlの
CURLOPT_TCP_NODELAYで無効にして試してみます。
ヒントありがとうございました。
0158nobodyさん
2013/03/26(火) 15:23:43.17ID:???嘘つきは消えろ
0159nobodyさん
2013/03/26(火) 16:05:01.31ID:???単純に文字を100回だすとかならまあ分かるんですけど
データベースとか絡んでくるとわけわからなくなってきます
0160nobodyさん
2013/03/26(火) 16:47:05.53ID:???本当にここは犯罪者予備軍のスレだな
0162nobodyさん
2013/03/26(火) 18:17:40.52ID:???0163nobodyさん
2013/03/26(火) 18:20:51.69ID:???0164nobodyさん
2013/03/26(火) 18:55:08.33ID:p9pFyvrs0165135
2013/03/26(火) 19:00:48.07ID:???だってプログラマーでしょ
0166nobodyさん
2013/03/26(火) 19:32:24.58ID:???for(int i =0; i < 10; i++){
for(int j = 0; j < 10; i++){
}
}
0167nobodyさん
2013/03/26(火) 19:41:13.66ID:p9pFyvrsループとイフの組み合わせを教えてください
0168nobodyさん
2013/03/26(火) 20:28:52.75ID:???その程度のこと知った所で何もプログラム組めないぞ
初心者向けのサイトでも見て学べ
0173nobodyさん
2013/03/26(火) 21:07:53.64ID:???はぁ?なにこいつ
最初出てなかっただろうが
万引きで捕まってから
お金払えばいいんでしょ!とか逆ギレするDQNと同じ精神構造
>>166共々消えろ
0178nobodyさん
2013/03/26(火) 21:41:24.07ID:p9pFyvrsみんなで仲良くPHPしましょう
0179nobodyさん
2013/03/26(火) 21:44:07.30ID:???0180nobodyさん
2013/03/26(火) 21:52:43.45ID:kZMtE//2初めてやったのがphpで、それで事足りてるからほかの言語をやるきになれない...
サーバサイドで使ってるのはPHPだけだと思う。
MySQLとの連携とかはあるけど。
0181nobodyさん
2013/03/26(火) 21:59:36.70ID:???http://www.youtube.com/watch?v=VBm5m1-Eonw
0183nobodyさん
2013/03/26(火) 22:15:55.27ID:kZMtE//2フレームワークあれば開発速度ものすごい上がるしな。
0184nobodyさん
2013/03/27(水) 04:49:18.79ID:???echo "こんにちは";
?>
として、test.phpを保存しても、
ブラウザで読み込むとそのまま出てしまうんですが、コンパイル的なのが必要なんですか?
0185nobodyさん
2013/03/27(水) 05:07:28.83ID:???0186nobodyさん
2013/03/27(水) 07:44:23.93ID:???その test.php はどこに保存されてて、ブラウザはどうやって開いているのかな?
ローカルに保存してローカルで開いたらそうなるけど。
ブラウザは PHP解釈しないから。
php解釈するモジュールを組み込める Apache などの Webサーバーにアップロードしておくか、
phpをcgiで実行できるようにWebサーバーに設定して同じくアップロードする。
そんでブラウザから Webサーバーを通じてアップロードしたしたファイルにアクセス。
というのがニワカの俺の知識。
0187nobodyさん
2013/03/27(水) 09:02:47.30ID:???0189nobodyさん
2013/03/27(水) 10:16:02.44ID:KYdi+aYHドメインが違っても出来てしまいますか?
0190nobodyさん
2013/03/27(水) 10:17:53.52ID:???0193nobodyさん
2013/03/27(水) 11:04:48.30ID:KYdi+aYHつまり相対パスで呼び出さない限りincludeは出来ないということで良いのですね
安心しましたありがとうございます
0194nobodyさん
2013/03/27(水) 11:22:45.13ID:o3YcYIdidataCheck($b,"txtB");
function dataCheck($str,$name){
if(strlen($str) == 0 || !preg_match('/^[0-9]$/',$str)){
print("<html><head><title>入力エラー</title></head><body>");
print($name." は半角数字を入力してください。<br /><br />\n");
print("<a href=\"#\" onClick=\"history.back(); return false;\">再入力</a>\n");
print("</body></html>");
exit;
}
}
txtAとtxtBの両方がfalseの場合、両方のエラーを表示させたいのですが
この場合だとどちらか片方しか表示されません。
両方表示できる方法をお願いします。
0196nobodyさん
2013/03/27(水) 13:50:15.93ID:???PHPだけのファイルの場合は付けない方が良く、その理由は明確。
PHPだけのファイルはrequireされるが、そのときそのファイルに?>に続くスペースなどがあると、
それが出力に影響を及ぼす場合がある。
また、PHPのコードでHTTPヘッダを出力するとき、requireしたファイルに?>に続く余分なスペース
や改行などがあると、もうHTTPヘッダは出力できなくなる。
そのため、?>は省略した方が良い。
ちなみに、PSR-2というコーディングガイド(PSRが何者かは要google)では、?>は省略が必須と
なっており、( http://www.infiniteloop.co.jp/docs/psr/psr-2-coding-style-guide.html )、
コーディングルールを静的にチェックするツールでは、エラーとして報告されるだろう。
0197nobodyさん
2013/03/27(水) 14:00:57.53ID:???dataCheck2($b,"txtB");
print("<html><head><title>入力エラー</title></head><body>");
print("</body></html>");
function dataCheck($str,$name){
if(strlen($str) == 0 || !preg_match('/^[0-9]$/',$str)){
print($name." は半角数字を入力してください。<br /><br />\n");
print("<a href=\"#\" onClick=\"history.back(); return false;\">再入力</a>\n");
}
}
function dataCheck2($str,$name){
if(strlen($str) == 0 || !preg_match('/^[0-9]$/',$str)){
print($name." は半角数字を入力してください。<br /><br />\n");
print("<a href=\"#\" onClick=\"history.back(); return false;\">再入力</a>\n");
}
}
適当にやったらなんとなく目的の動作に使づきましたが、「再入力」というのが2つ表示されたりと
なんとなくもっと簡単にできると思うんだが・・・
もし両方入力が不正の場合は、
「txtA txtBは半角数字を入力してください。」
と表示されるのが理想。$nameにtxtA txtBが代入されてるんだけど
それを配列で取り出す方法がわかりません。
0198nobodyさん
2013/03/27(水) 14:06:09.03ID:GIbhyuNjデータベースから100件のデータを取得して、PHP側にて、whileで処理する場合、
そのwhileループ内で、更に、5回ずつデータベースに問い合わせると、
合計500回データベースにアクセスすることになってしまいます。
こういう場合には、どうするのがベストですか?
テーブルを結合して取得すればよいかとも思うのですが、
問い合わせが、5回、10回と多くなるとテーブルの結合も難しいです。
0199nobodyさん
2013/03/27(水) 14:11:15.14ID:???PHP以前の問題だ。
function validate($str){
// 妥当なデータならtrueを、そうでない場合はfalseを戻す
return strlen($str) !== 0 && preg_match('/^[0-9]$/', $str);
}
$buf = '';
if (!validate($a)) {
$buf = "txtA,";
}
if (!validate($b)) {
$buf .= "txtB";
}
if (strlen($msg) > 0) {
$html = <<<EOB
<html><head><title>入力エラー</title></head><body>
$buf は半角数字を入力してください。<br /><br />
<a href="#" onClick="history.back(); return false;">再入力</a>
</body></html>
EOB;
}
0200nobodyさん
2013/03/27(水) 14:12:42.17ID:???> こういう場合には、どうするのがベストですか?
> テーブルを結合して取得すればよいかとも思うのですが、
それしかない。
> 問い合わせが、5回、10回と多くなるとテーブルの結合も難しいです。
難しくてもやれ。
0201nobodyさん
2013/03/27(水) 14:13:28.39ID:???誤:if (strlen($msg) > 0) {
正:if (strlen($buf) > 0) {
0202198
2013/03/27(水) 18:47:39.02ID:MD7cwBMvなにか、他にテクニックがあるかとも思ったのですが、
やはり、テーブルの結合をするしかないようですね。
有難うございました。
0203nobodyさん
2013/03/27(水) 19:02:19.68ID:???出しようが無いだろw
必要な呼び出しなら何回だろうが必要なだけ呼ぶしかないと言うだけのこと。
0204nobodyさん
2013/03/27(水) 19:12:48.33ID:???> そのwhileループ内で、更に、5回ずつデータベースに問い合わせる
これがそもそもなくなるんじゃないかっていうのが回答者の意見だと思う
でも
> テーブルを結合して取得すればよいかとも思うのですが、
> 問い合わせが、5回、10回と多くなるとテーブルの結合も難しいです。
これがわからない
もうちょっと詳しく頼むわ
0205198
2013/03/27(水) 19:26:24.23ID:MD7cwBMv不明瞭な点が有り、すみません。
意図していることは、結合するテーブルが5個、10個と多くなると、
SQLが複雑化するということです。
また、DBの設計上、結合が無理な場合も有り得るということです。
0206nobodyさん
2013/03/27(水) 19:28:37.44ID:???0207nobodyさん
2013/03/27(水) 19:34:59.92ID:???Sqliteメインからかもしれないが、分けるなら別ファイルにする。
0208nobodyさん
2013/03/27(水) 20:19:03.85ID:r73Jwrfnそうなってくると、DB設計見直してもいい気がします。
0209nobodyさん
2013/03/27(水) 20:36:36.55ID:???今スマホなんでURLは示せないけど、Oracle SQLパズルってサイト検索してみて。
一個のクエリで驚くほどいろんなことできるから。
ループ内のクエリは絶対だめ。
0210nobodyさん
2013/03/27(水) 20:38:31.67ID:2iOdM1fpイマイチ練習法がわかんなくて
0211198
2013/03/27(水) 20:55:59.05ID:I26BQZQ8DB設計についても再考してみます。
>>209
http://www.geocities.jp/oraclesqlpuzzle/
これですね。かなり高度のようですが勉強してみます。
>ループ内のクエリは絶対だめ。
肝に銘じます。有難うございました。
0212nobodyさん
2013/03/27(水) 21:39:21.74ID:???昨日まで平和に進行してたスレが1日で50レス近く荒れてるんですよ
かなり迷惑なので他のスレにお願いします
0213nobodyさん
2013/03/27(水) 21:49:56.92ID:???0215nobodyさん
2013/03/28(木) 09:21:24.03ID:???0217nobodyさん
2013/03/28(木) 12:53:36.30ID:???> これなんでダメなん?
実行時間が長くなり、サーバにも負担がかかるので。
例えば1000行戻ってくるクエリをループして、それぞれの行で5回検索をしたとすると、
ループ内では合計5000回のクエリ実行が必要。
対ローカルでもクエリの実行は数ms程度かかる。
1回のクエリにつき1msかかるとすると、このループの実行時間は5秒。
ネットワーク経由だと、10ms以上かかったりするので、数十秒〜数分のオーダーになるかもしれない。
一方、全部JOINして1回のクエリで終わらせられれば、数十〜数百msくらいで終わる。
> PDOなんかだとループ前提の仕組みもあるよね。
MDB2しか使ったことないんだけど、PDOのその仕組みってどういう奴なの?
0218nobodyさん
2013/03/28(木) 12:55:27.85ID:???hashを参照する方法もある。
が、大抵はJOINした1回のクエリより遅い。
0219nobodyさん
2013/03/28(木) 13:33:51.38ID:Cp6GJ5bL【PHPのバージョン】5.3.10
【連携ソフトウェア】MySQL
phpでPDO使ってMySQLいじってる初心者です
指定の行の取得ってどうやるんでしょうか
$stmt = $dbh->prepare('select xxx from xx', array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_ABS, $num);
ってやっても最初の行しか取れなくて困ってます
0220nobodyさん
2013/03/28(木) 13:42:08.01ID:???0221nobodyさん
2013/03/28(木) 13:50:16.41ID:???fetchAll使って解決しました
0222nobodyさん
2013/03/28(木) 13:51:36.21ID:???マルチwwwwwww
http://toro.2ch.net/test/read.cgi/tech/1363522503/224
0223nobodyさん
2013/03/28(木) 13:54:46.08ID:???これでいけないか?
PDO limit句
http://phpgo.info/?PDO%20limit%E5%8F%A5
0224nobodyさん
2013/03/28(木) 14:09:19.06ID:???そこまでして自己顕示欲を満たしたいの?
0225nobodyさん
2013/03/28(木) 14:16:34.23ID:???0226nobodyさん
2013/03/28(木) 14:17:01.51ID:???0227nobodyさん
2013/03/28(木) 14:21:40.28ID:???俺がマ板からこの板に誘導したから。
が、よく>>222をみたらム板にもマルチしてたのか。どうでもいいけど。
0228nobodyさん
2013/03/28(木) 14:27:57.85ID:???0231nobodyさん
2013/03/28(木) 16:33:27.95ID:???言い合えるってだけで羨ましいス…
別に何も無いヨ…
0232nobodyさん
2013/03/28(木) 22:53:42.51ID:???> PDOなんかだとループ前提の仕組みもあるよね。
PDOでそういう仕組みは見たことないけど。
これと勘違いしてるんじゃない。
http://www.php.net/manual/ja/pdo.prepared-statements.php
プリペアドステートメントを使用して、繰り返し挿入処理を行う
0233nobodyさん
2013/03/29(金) 00:31:56.83ID:???使えないんですけど何でですか?
0234nobodyさん
2013/03/29(金) 00:53:54.84ID:G7mP7j2Chtmlspecialchars()とか前に使ってない?
'>' (大なり) は '&gt;' になります。
0236nobodyさん
2013/03/29(金) 01:09:24.93ID:???0237nobodyさん
2013/03/29(金) 01:09:49.75ID:???0240nobodyさん
2013/03/29(金) 11:16:19.88ID:???0241nobodyさん
2013/03/29(金) 11:31:22.70ID:???一概にダメとは決めつけられない、というか決めつけるのは大抵の場合よくない
0242nobodyさん
2013/03/29(金) 11:51:07.51ID:???0246nobodyさん
2013/03/29(金) 13:44:23.45ID:???0248nobodyさん
2013/03/29(金) 14:02:33.34ID:???0250nobodyさん
2013/03/29(金) 19:01:31.30ID:YTM0Vtw2【PHPのバージョン】5.4
【質問内容】
サブクラスに定義していない(スーパークラスの)関数
の中でサブクラスの変数は利用できないのでしょうか
これができればサブクラスの関数をスーパークラスに
引き上げることができて少しエレガントになるのですが
0252nobodyさん
2013/03/29(金) 20:05:29.23ID:???0253nobodyさん
2013/03/30(土) 13:44:04.73ID:???【PHPのバージョン】5.3.10
【連携ソフトウェア】MySQL
データが1行のテーブルに記録された情報をmysql_fetch_assocなどの取得系で求めると必ずfalseが帰ってきます。
ただ2行以上ある場合はしっかりと帰ってくるのですが、肝心の1行目の情報がスルーされて2行目以降のデータが帰ってきます。
例)AAAのみ : bool(false) 、 AAA BBB CCCの三行 : BBBとCCCのみ帰ってくる
この場合ってどうしたらいいんでしょうか。SQL側の問題になるのでしょうか?
0254nobodyさん
2013/03/30(土) 13:50:33.39ID:???0255nobodyさん
2013/03/30(土) 13:55:28.58ID:???一行の場合でも結果がしっかり返ってきます。
書き忘れてましたがこのケース、whileで回すときだけ発生するのです。
0260nobodyさん
2013/03/30(土) 21:59:35.99ID:OzKgLCO2例えば
$a = $hairetsu['unko'];
unkoに対応する値はない。
このとき$aにはなにがはいるの?
こうしたとき、
isset($a)
ってしたときfalseかえってくる?
0262nobodyさん
2013/03/30(土) 23:15:19.20ID:???0263nobodyさん
2013/03/31(日) 00:35:53.39ID:???だれもテメーみたいなksに期待なんかしてないんだからfalseが返ってこようがこまいが関係ないだろ
一生電子ゴミを生産してろ
0264nobodyさん
2013/03/31(日) 02:21:28.12ID:???3回繰り返されず1回出力されるだけなんですがどうしてでしょうか?
<?php
$result[0] = 34;
$result[1] = 22;
$result[2] = 76;
for ($i = 0; $i < 3; $i++){
print $result[$i].'<br />';
}
?>
0266nobodyさん
2013/03/31(日) 07:47:45.45ID:???3回出るけど
0267264
2013/03/31(日) 12:16:43.33ID:???出ない理由を聞いているのであってあなたが試した結果はきいていません。
うっとうしいのでわざわざアンカうってレスしてもらわなくて結構です。
0268nobodyさん
2013/03/31(日) 12:29:24.24ID:???何もおかしくない
0269264
2013/03/31(日) 12:31:32.34ID:???3回ってのは
34 22 76
34 22 76
34 22 76
こういうことです。for文は繰り返しですよね?
0270nobodyさん
2013/03/31(日) 12:32:33.16ID:???0272nobodyさん
2013/03/31(日) 13:47:40.15ID:???0273264
2013/03/31(日) 14:32:08.32ID:???騙りではありません。
煽りたいだけなら黙っていてください。
ここにいる人たちはこんな簡単な質問にも答えられないのでしょうか?
0274nobodyさん
2013/03/31(日) 14:38:59.41ID:???0275nobodyさん
2013/03/31(日) 14:55:52.30ID:???0276264
2013/03/31(日) 17:55:19.44ID:???質問したんだから答えろや
話が先に進まねぇやろ
0277nobodyさん
2013/03/31(日) 18:04:09.79ID:???0278nobodyさん
2013/03/31(日) 18:42:32.12ID:???0279nobodyさん
2013/04/01(月) 13:20:46.87ID:???とか普通に言えばいいのに、いちいち煽る
0280nobodyさん
2013/04/01(月) 13:47:43.63ID:???0281nobodyさん
2013/04/01(月) 14:27:33.67ID:???ルール重視して、スレの目的が達成できないとか本末転倒なので
柔軟に対応しろってこと。
ルール作った目的は偽者防止のはずだが、明らかに偽者じゃない人
にもIDだせってやりすぎだろ。
0282nobodyさん
2013/04/01(月) 14:28:07.73ID:???0283nobodyさん
2013/04/01(月) 14:29:39.13ID:???0284281
2013/04/01(月) 14:31:30.54ID:BwLTFG84DBを利用した掲示板を作成しました
データを20件までとして古いものから削除したいので
以下のようにコード組みました
もう少しスマートにコード作りたいのですが
ご教授ねがいます
//日付と時刻の変数宣言
$date = date("Ymd");
$time = date("His");
//書き込み内容をDBへ
$result_insert = 'INSERT INTO date(name,body,date,time) VALUES (\''
.$name.'\',\''.$body.'\','.$date.','.$time.')';
mysql_query($result_insert, $con);
//指定件数の超過数算出
$result_select = 'SELECT * FROM date';
$number_count = mysql_num_rows(mysql_query($result_select, $con)) - 20;
//超過分を削除
$result_delete = 'DELETE FROM date ORDER BY date,time LIMIT '.$number_count;
mysql_query($result_delete, $con);
0285284
2013/04/01(月) 14:32:53.28ID:BwLTFG84気にしないでください
0286nobodyさん
2013/04/01(月) 14:49:18.51ID:???0287nobodyさん
2013/04/01(月) 14:57:31.80ID:???0290289
2013/04/01(月) 15:24:18.12ID:???> ・これ一件書き込んだら20件消えない?
これ勘違いだった。
0291nobodyさん
2013/04/01(月) 15:30:12.59ID:???基本的に読む時に20件引っ張ってくればいいんで
消すこともないと思う。
0292nobodyさん
2013/04/01(月) 15:30:22.40ID:???0295nobodyさん
2013/04/01(月) 15:31:52.11ID:TTwnP5150298nobodyさん
2013/04/01(月) 15:36:08.44ID:???0299nobodyさん
2013/04/01(月) 15:40:12.17ID:???どうせ半端なことするなら mysqli_real_escape_string() 使え
半端なら半端をつらぬきとおせ
0300284
2013/04/01(月) 15:40:30.63ID:BwLTFG84わからんからそのままつかうことにします
>>287
単体で実行したけどエラーが出ました
#1093 - You can't specify target table 'date' for update in FROM clause
sqlよくわかってないんですみません
>>289
SQLインジェクションはnameとbodyに対し事前に行ってます
指摘ありがとうございます
0303284
2013/04/01(月) 15:48:29.65ID:BwLTFG84ごめんちょっと調べたけど
俺の実力では意味がわからなかった
0304nobodyさん
2013/04/01(月) 15:48:33.69ID:???table名が同じだと無理。別名つけてやればいいはず
数を数えるのと消すのを別の行でやると複数同時に動いた時バグるぞ。
トランザクションにしてもいいけど
0306284
2013/04/01(月) 16:28:56.62ID:BwLTFG84置き換えてみたら動かなくなった
>>304
言ってることはわかるけどどうやって実現するのかわからない
勉強しないと駄目だね
0308nobodyさん
2013/04/01(月) 17:14:32.75ID:???mysqlとmysqliでは別モンだから全部変えなきゃいけないぞ
0309284
2013/04/01(月) 17:26:22.71ID:BwLTFG84ごめん名知識が無くて
全部変えて見たらデータベースに接続なってもうた
よくわからなくなってしまった
0310284
2013/04/01(月) 17:29:28.39ID:BwLTFG84mysql_connectをmysqli_connectに変えて接続かのうか処理したところ
弾かれたという現状です
受け渡す値もかえないとだめだったりするかもです
0311nobodyさん
2013/04/01(月) 17:33:58.04ID:???って何がどうなったの?
0312284
2013/04/01(月) 17:51:18.80ID:BwLTFG84if (!$con) {
$error = true;
exit('データベースに接続できませんでした。');
}
ここの処理で接続が弾かれてしまう
そもそもmysqlとmysqliの違いもわかってない
やばい
0313nobodyさん
2013/04/01(月) 17:58:43.53ID:???0314nobodyさん
2013/04/01(月) 18:33:34.88ID:???$con = mysqli_connect('126.0.0.1', ’my_user', 'パスワード','DB名');
0315nobodyさん
2013/04/01(月) 18:38:29.21ID:???まあ書き込みでミスったんだろうけど
0316284
2013/04/01(月) 18:40:42.39ID:BwLTFG84mysqli_select_db()の方でした
それで調べてみたら入れる値の順序が逆だったそうです
うまいこと動いてくれましたありがとうございます
まだ質問が残っているのですが
>>287がうまく動いてくれない
>>304の助言を元に挑戦してます
0317284
2013/04/01(月) 18:42:24.59ID:BwLTFG84ごめんなさいそこは自分の使ってるサーバー情報なので
書き換えた際におかしくなっただけです
今現在動いてます
細かなところに気づいていただきありがとうございます
0318nobodyさん
2013/04/01(月) 20:09:58.96ID:???$con = mysql_connect('126.0.0.1', 'my_user', 'パスワード');>>312
↓
$con = mysqli_connect('126.0.0.1', ’my_user', 'パスワード','DB名');>>314
0320nobodyさん
2013/04/01(月) 20:31:39.19ID:???0322nobodyさん
2013/04/01(月) 21:20:41.93ID:???いや バンクの技術者かもしれん
http://www.utrace.de/whois/126.0.0.1
ためしに284はfusianasanするべき
0323284nttkyo039102.tkyo.nt.ngn2.ppp.infoweb.ne.jp
2013/04/01(月) 21:28:12.90ID:BwLTFG84いえ、違いますよ
DBを使おうとおもい勉強がてら作ってみたのですがうまく行かない
長ったらしい文章になる等々あって今回質問しました
0324nobodyさん
2013/04/01(月) 21:37:33.60ID:???0325nobodyさん
2013/04/01(月) 22:58:56.50ID:???0326nobodyさん
2013/04/02(火) 04:22:59.24ID:???朝マックのときは大抵あれ買う
0327nobodyさん
2013/04/02(火) 05:39:33.55ID:???0328nobodyさん
2013/04/02(火) 17:29:03.92ID:pCXIVpZH市原警察署の生活安全課の帰化人創価警官の指導の元、
入学式から2週間ほど、在日の創価学会員を主体とした自称防犯パトロールが、
2週間ほど行われることになりました
生活安全課の指導であることと、パトロールであることは、
絶対に公言してはいけないとの指導も、帰化人創価警官より出ています
期間中は2人組の在日の創価学会員が、頻繁に創価批判者の自宅周辺を、
うろつき回ると思われます
日本人の方は、充分に注意してください
0329nobodyさん
2013/04/02(火) 18:23:57.95ID:???0330nobodyさん
2013/04/02(火) 19:53:45.82ID:???あれは癖になる
0331nobodyさん
2013/04/02(火) 22:45:17.78ID:???0332nobodyさん
2013/04/02(火) 22:48:54.62ID:???0333nobodyさん
2013/04/03(水) 08:13:37.42ID:h+HuJAZG教えてください。よく、php系のページに載せてあるけどあの方法がわからない。
0335nobodyさん
2013/04/03(水) 08:48:25.20ID:???0336nobodyさん
2013/04/03(水) 09:51:28.80ID:???例えばENT_DEFAULTが定義されてないとかバカだろw
その後の引数の$encodingを触りたいだけなのに
延々とENT_COMPAT|ENT_HTML401と書かされるww
0337nobodyさん
2013/04/03(水) 09:59:22.29ID:???0338nobodyさん
2013/04/03(水) 10:14:17.25ID:???0339nobodyさん
2013/04/03(水) 10:39:54.58ID:Ko35x5uBimagerotateで画像を回転させて
imagejpeg($rotate_file, null, 100);
とすると画像データがそのまま表示され、画像が表示されません。
以下のようにヘッダーをつけると
header("Content-Type: " . $mime . "");
imagejpeg($rotate_file, null, 100);
「Warning: Cannot modify header information - headers already sent」というエラーが出ます。
HTML上に画像として表示するにはどうすればよいのでしょうか?
0340nobodyさん
2013/04/03(水) 11:47:27.38ID:???画像処理スクリプトは、HTMLと混在させず、画像専用に単独でPHPファイルに記述します。
その画像ファイルを<img src="gazou.php">などとしてHTMLファイルから読み込みます。
0341339
2013/04/03(水) 12:14:26.87ID:Ko35x5uB回答ありがとうございます。
画像処理部分は色々な関数を突っ込んでる部分の一部になります。
function.php内にあるfunction rotate(){ 処理 } という感じになります。
単独となるとfunction.phpからrotate()関数を切り出さないといけないということでしょうか。
そうなるとちょっと構成そのものを見直さないといけないので意外と面倒そうですね。
0342nobodyさん
2013/04/03(水) 12:26:05.25ID:???>function.phpからrotate()関数を切り出さないといけないということでしょうか。
いや、切り出す必要はないと思う。
画像専用ファイル(gazou.php)から、その rotate関数を読み込めばいいんじゃないかな。
そもそもローテーションしなければ表示されるの?
0343nobodyさん
2013/04/03(水) 12:35:47.43ID:???0344nobodyさん
2013/04/03(水) 12:36:43.34ID:???0345339
2013/04/03(水) 13:59:52.79ID:Ko35x5uB出力側は
<html>
<body>
<?php
require_once(関数ファイル);
echo "<img src=" . rotate('roteta.jpg') . ">";
?>
</body>
</html>
関数ファイルには
function rotate($filename){
$filenameを回転処理
imagejpeg($filename);
}
という風にしています。
恐らくimg srcで指定しているものがバイナリデータそのものになっているのでおかしなことになっているんだと思います。
img srcで指定するファイルはあくまでファイル形式である必要があるという認識でいいのでしょうか?
0346nobodyさん
2013/04/03(水) 14:04:41.79ID:???ってあったら、サーバじゃなくてクライアントのブラウザがなんちゃらを
取りに行くだろ?よく考えてみてよ。
0347nobodyさん
2013/04/03(水) 14:06:11.56ID:???Content-Type: image/jpeg のヘッダとバイナリを出すだけの
php作ってみ
0348nobodyさん
2013/04/03(水) 14:15:06.22ID:???<html>
<body>
<img src="./gazou.php">
</body>
</html>
gazou.php
<?php
require_once(関数ファイル);
rotate('roteta.jpg');
//出力処理
?>
0349339
2013/04/03(水) 14:23:36.76ID:Ko35x5uB>>346
確かにブラウザ側からするとバイナリ表示されるアドレスを追いかけようとするわけですからうまく表示されるわけないですね。
>>347
画像を表示するだけのものは作ってみたのですが、全部1つのファイルでまとめれればラクだな〜と思って
呼び出せればと思っておりました。
>>348
こちらは1度試してうまくいくことは確認しておりました。
ただファイルを1個にまとめることが出来ればラクだな〜と思っていたため
ファイルデータをimg srcに渡せばいいのではないかと勘違いしておりました。
使うものをAPI的にまとめていまして、画像だけ別ファイルを作成して引っ張ってくるのはどうなんだろうかと思ってしまっておりました。
一般的には手を加えた画像を表示させる際は、別ファイルを用意してそれを経由する形で表示させるのが普通なのでしょうか。
一人で開発などしていてそのへんの作法がよくわからないこともあって今回の質問となってしまいました。
0350nobodyさん
2013/04/03(水) 14:36:51.90ID:???画像ファイルは別ファイルになるから1つにまとめるのは難しいんじゃない。
0351nobodyさん
2013/04/03(水) 14:38:20.35ID:???0352nobodyさん
2013/04/03(水) 14:58:08.22ID:???src="<?=data:image/jpeg;base64,'.base64_encode($バイナリデータ)?>"
とかでできないこともないけど、、こっちのが扱いにくい気が
0353339
2013/04/03(水) 15:14:12.46ID:Ko35x5uB1つにまとめるのはそんなに深い意味はないです。
単純に1個のファイルにまとまってたらラクかな〜程度のものです。
画像に関しては別ファイルから取ってくるようにします。
その方がHTML的にもスマートかと思いますし。
>>352
そんなやり方あるとは知りませんでした。
このやり方だとさすがに扱いにくい気もしますが、データをそのまま表示できる方法として覚えておこうと思います。
ありがとうございました。
0354nobodyさん
2013/04/03(水) 15:15:39.52ID:???0355nobodyさん
2013/04/03(水) 15:56:07.94ID:HfBT+72d【連携ソフトウェア】MySQL
【質問内容】
さくらレンタルサーバースタンダードに作ったMYSQLのデータをphpで書き出したページを公開したいのですが、
表示するphpファイルにSQL文を書いているので、phpファイルをダウンロードすると
SQL文が丸わかりになってしまうと思うのでファイルに書かないようにしたいです。(隠したいです)
データベースのID等を記したのをreuire_onceで別ファイルから読み込めることを知ったので、
SQL分もその要領で別ファイルから引っ張ってくればいいのかなと思ったのですが、
普通はどのように隠すものなのでしょうか、MYSQLとPHPだけではなく他のプログラミング言語やサービスなども組み合わせるものなのでしょうか。
それともSQL分を隠さない(別ファイルから出力しない)のが普通なのでしょうか。
あと、ソースの途中の$kekka["0"]とかも見えてしまいますが、これも隠したい場合、
reuire_onceで他のファイルから引っ張ってくるものなのでしょうか。
行数の関係で色々省いていますがソースです。
$tempHtml .= "
<td>".$kekka["0"]."</td>
<td>".$kekka["1"]."</td>;
<tr>
<?= $tempHtml ?>
</tr>
レンタルサーバーの仕様を見るとPerl Ruby Python PHPが使用可能のようでした。
もし見当違いの質問をしていたらすいません。
よろしくお願いします。
0356nobodyさん
2013/04/03(水) 16:05:09.57ID:???ドキュメントルートより上とかね
無理ならディレクトリ作ったり作らなくても、.htaccess で制御
>あと、ソースの途中の$kekka["0"]とかも見えてしまいますが
普通はこれは無いと思うけど
0357nobodyさん
2013/04/03(水) 16:30:40.03ID:???DBの処理まるごと別ファイルにやらせよう。 そのファイルは、直接参照で見えないようにしておこう。
0358nobodyさん
2013/04/03(水) 16:53:15.23ID:???0359nobodyさん
2013/04/03(水) 17:02:26.34ID:???一般的なファイルとして認識させればPHPファイルを
そのままダウンロードしちゃう
初歩のトラブルや名
0360nobodyさん
2013/04/03(水) 17:08:03.64ID:???まぁ、その辺を考慮するなら.htaccessで制御もやっちゃいけないね
0361355
2013/04/03(水) 17:10:13.72ID:HfBT+72d>>あと、ソースの途中の$kekka["0"]とかも見えてしまいますが
>普通はこれは無いと思うけど
すいません、勘違いしておりました。
Irvine等のダウンロードツールでhttp://hogehoge.com/test.phpをファイルとしてダウンロードすると内容が見えると思ったのですが、
もう一度確認してみましたら、ダウンロードしたtest.phpを見てもphpの処理部分は見えませんでした。(消えていました。)
DB処理の部分は用意したファイルに処理させるのが一般的とお見受けしました。
アドバイス頂いたように、
/www/の上階層の非公開ディレクトリに別ファイルを用意して、そのファイルにDB処理をまるごとやらせるようにしてみます。
レス下さいましてありがとうございます。
0363nobodyさん
2013/04/03(水) 17:16:58.20ID:???> 普通はこれは無いと思うけど
なら、
> SQL文が丸わかりになってしまうと思うので
これも普通はないよね。
普通のWebアプリケーションは、アプリケーションのroot以下に全部置いちゃうよ。
/var/www/htmlより上にアクセスできないことだってあるんだし。
0364nobodyさん
2013/04/03(水) 17:49:59.01ID:???phpのソースに埋め込んでるなら読まれないよ。
0365nobodyさん
2013/04/03(水) 18:11:44.91ID:???0366nobodyさん
2013/04/03(水) 18:26:23.36ID:???wget -r -k -p http://hoge
としてパスワードを要求されるので入力すればおkだ
0368nobodyさん
2013/04/03(水) 20:43:16.74ID:???httpでアクセスすると対応してくれる人はhttpデーモンさん
ftpでアクセスすると対応してくれる人はftpデーモンさん
sshでアクセスすると対応してくれる人はsshデーモンさん
どのデーモンさんがどのファイルに入れるかはコンテキストで設定できるんだけど
普通は、httpデーモンさんはphpファイルさんに直で話しかけられない恥ずかしがりやさんだから
apacheさんに変わりに聞いてもらっている
だからブラウザってphpファイルを見てるのじゃなくて
apacheさんが 「phpさんがこんなこと言ってたぜ」って言ってるのを見てる
ちなみにhttpデーモンさんは普通はアパッチさんのwwwより上を見にいけないので
wwwより上に置いておけばブラウザからはアクセスできない
phpファイルはアパッチさん(の一部)が読みに行くから
php内でwwwより上にリンクを貼ればアパッチさんの入れる範囲で読み書きできる
SQL接続関係は 私はwwwより上に置いている
ちなみに私はこのDB関係のクラスを
DIO データインターフェイスオブジェクト とよんでいる
DIOはtheWorldメソッドなどを持つ
0369nobodyさん
2013/04/03(水) 20:46:12.73ID:???0370nobodyさん
2013/04/03(水) 21:00:14.58ID:YRjUCssz今、Windowsのローカル環境で error_reporting を 32767 にセットして警告をシラミ潰しにしているのですが、
Declaration of Walker_Nav_Menu_Edit::start_el() should be compatible with Walker::start_el(&$output, $object, $depth, $args, $current_object_id = 0) in D:\localhost\wordpress\wp-admin\includes\nav-menu.php on line 207
というのをどうやっても消せません。
これは継承元のクラスメソッドとシグニチャが一致しない場合の警告なのですが、元の Walker::start_el と同じに変更しても消えないのです!
同じ警告がこのファイルの別のクラス)(Walker_Nav_Menu_Checklist)でもやはり発生して消えません。
この種類のエラーはWordPressのいたるところに散在していて、他は確認できる範囲では全て消せました。(このファイルの別のクラスでも消せたものもあります)
しかしこのファイルのこの箇所のみ解消できないのです。
どなたかお分かりになる方はいらっしゃいませんか?
0371nobodyさん
2013/04/04(木) 07:26:37.47ID:???_, ,_
w (・ω・ )
(~)、 / i )
\ ` |_/ /|
`ー_( __ノ |
( `( 、ノ
wwwww_ノ`i__ノ
0372nobodyさん
2013/04/04(木) 10:54:32.39ID:???> 普通は、httpデーモンさんはphpファイルさんに直で話しかけられない恥ずかしがりやさんだから
> apacheさんに変わりに聞いてもらっている
> httpデーモンさんは普通はアパッチさんの
2度もでてくるってことはhttp daemonとapacheがそれぞれ存在する環境なんだろうなぁ。
0373nobodyさん
2013/04/04(木) 11:18:40.47ID:???http://livedoor.blogimg.jp/erotika_dea/imgs/c/6/c64e57cf.jpg
http://livedoor.blogimg.jp/erotika_dea/imgs/b/a/baaaa95e.jpg
http://livedoor.blogimg.jp/erotika_dea/imgs/0/6/0642961f.jpg
http://livedoor.blogimg.jp/erotika_dea/imgs/2/d/2dba6b48.jpg
http://livedoor.blogimg.jp/erotika_dea/imgs/c/f/cf1b79c7.jpg
0374nobodyさん
2013/04/04(木) 12:53:27.85ID:???んじゃ、http://php.net/manual/ja/index.phpのソース取ってきてみ
0375nobodyさん
2013/04/04(木) 12:55:28.10ID:???0378nobodyさん
2013/04/04(木) 15:41:23.79ID:???あと ~ とか .bak で落とせるところが今でもある
どうみてもレン鯖なところにビッグチャンスあり
0379nobodyさん
2013/04/04(木) 16:19:30.19ID:ukDPOk48sprintf (エスプリントエフ)
ob_start (オービースタート)
とかでよい?
0380nobodyさん
2013/04/04(木) 17:13:56.47ID:???"おーびーすたーと"だと0件。
つまり、Web上にはそのような一覧は多分無いってことだね。
CとかUnixのだと古いのがあったりするんだが。
http://atom.rye.tama.ac.jp/~stock/cgengo/04ctext2/04furoku-c.pdf
まあ、読み方はそのままでいいんじゃない?
0381370
2013/04/04(木) 17:59:41.69ID:JZyowHPw0382nobodyさん
2013/04/04(木) 18:30:28.61ID:???WordPressはさっぱり知らないし、どのWPのバージョンの話なのか、PHPのバージョンは何なのか
さっぱりわからないが、何で消そうとしてるの?
出なくなるまで、ログレベルを下げるわけにはいかないの?
それと、どうやって消してるのか知らないけど、WP本体を変更しちゃったら、バージョンアップしたら
変更が消えちゃわない?
あとググった?
0383nobodyさん
2013/04/04(木) 19:37:19.25ID:???ぐぐったらでてきたんだけどこれじゃダメ?
http://stackoverflow.com/questions/9734422/errors-when-trying-to-integrate-wordpress-on-my-existing-website
0384nobodyさん
2013/04/05(金) 04:18:02.22ID:OQtVBSh8ある特定の画像のみ上手くいきません
$fileType = $_FILES['uploadPic']['type'];
if(preg_match("/jpeg/", $fileType)){
jpgならアップロード処理
}else{
echo $fileType;
}
としても、jpgと判定されない上に、echo $fileTypeで何も出力しません
さらに別のやり方で、
switch(exif_imagetype($_FILES['uploadPic']['tmp_name'])){
case IMAGETYPE_JPEG:
アップロード処理
break;
default:
echo exif_imagetype($_FILES['uploadPic']['tmp_name']);
}
この方法でも、 echo exif_imagetype($_FILES['uploadPic']['tmp_name']); で何も出力しません
何が原因なんでしょうか
PHPは5です
0385384
2013/04/05(金) 04:51:07.31ID:???ファイル容量的には全く問題なかったんですが、画像の寸法が大き過ぎたようです
一辺が3000px以上あると、PHPはメモリエラーを起こすらしいです
知らなかった…
0386nobodyさん
2013/04/05(金) 06:15:51.61ID:???>>381
Reflectionで調べたら、違いがあるかもしれないよ。
編集しているつもりが別のファイルだったりするってこともない?(おれはあるw)
0387nobodyさん
2013/04/05(金) 06:18:17.31ID:???まぁ、後方互換性じゃしょうがないか。
0389nobodyさん
2013/04/05(金) 13:40:01.87ID:???例えばフォームに
FX News と入力すると
↓
http://www.hoge.com/search.php?terms=FX%20News
のように変換させたいのですが上手くいきません。
以下のような感じではダメなのでしょうか?
<Form action="URL_henkan.php">
<input type="text" name="moji" size="80" value="<?echo 'http://www.hoge.com/search.php?terms=', urlencode($moji) ?>">
<input type=submit value=sub>
</Form>
0390nobodyさん
2013/04/05(金) 13:42:05.75ID:???0391nobodyさん
2013/04/05(金) 13:52:54.63ID:???http://www.hoge.com/search.php?terms=xxxx と出力されるようにしたいんですが
やり方がわからないので…
0392nobodyさん
2013/04/05(金) 13:56:52.13ID:???0395nobodyさん
2013/04/05(金) 14:00:59.14ID:???にしてみたら?
XSSしてくださいって感じだけどもw
0396nobodyさん
2013/04/05(金) 14:06:29.87ID:???なんか、いろいろわかってないな。
?以降はURLパラメータという奴で、HTTP GETしたら勝手に付く。
hoge.php
--
<title>Test</title>
<body>
<form method="GET" action="search.php">
<input type="text" name="term">
<input type="submit">
</form>
</body>
--
を表示させて、テキストにabcと入力してsubmitしてみろ。
URLがhttp://.../search.php?term=abcになってるから。
0398nobodyさん
2013/04/05(金) 14:13:41.43ID:???hoge.php
--
<?php
$converted = isset($_GET['term']) ? 'hoge' : '';
?>
<title>Test</title>
<body>
<form method="GET" action="hoge.php">
<input type="text" name="term" value="<?php echo $converted; ?>">
<input type="submit">
</form>
</body>
--
0399nobodyさん
2013/04/05(金) 14:15:15.52ID:???0400nobodyさん
2013/04/05(金) 14:16:17.51ID:???PHPじゃ無理だろ
0402nobodyさん
2013/04/05(金) 14:19:13.57ID:39+wkXdW【PHPのバージョン】MYSQL
001.php、002.php、003.php・・・をMySQLのDB内レコードの、
指定したIDのレコードを表示させたいのです。
今はこんな感じでそれぞれ、ファイルを用意しようかと思っているのですが、
http://www.rupan.net/uploader/download/1365139040.png
ファイルが数百ファイル必要になってしまい、作業手順も多くなってしまいます。
003.phpを004.phpにファイル名をリネーム
004.php内のsql003.php→sql004.phpに変更
sql003.php内のwhere id = 3 を id = 4に変更 ・・等々
これらの方法を実現させるにはphpの何かの機能を使えば実現出来るでしょうか。
また、一般的にはどのように実現させるものなのでしょうか。
0403402
2013/04/05(金) 14:24:04.75ID:39+wkXdW×【PHPのバージョン】5.3
×【PHPのバージョン】MYSQL
↓
○【PHPのバージョン】5.3
○【連携ソフトウェア】MYSQL
0404nobodyさん
2013/04/05(金) 14:24:33.15ID:???入力した文字列はフォームへの出力へは反映されていません。
つまり>>389の例だと
http://www.hoge.com/search.php?terms=
としか表示されていません。
0406370
2013/04/05(金) 14:42:12.80ID:???レス有難う。解決した。
問題を単純化するとこういうことだった
class A {
function meth($arg1, $arg2 = 0) {}
}
class B extends A {
function meth($arg1 = 0, $arg2 = 0) {}
}
class C extends B {
function meth($arg1, $arg2 = 0) {}
}
// エラーレポート内容
Declaration of C::meth should be compatible with A::meth($arg1, $arg2 = 0) in ........
1.継承メソッドが親メソッドにさらに初期値を追加定義することはエラーにならない。つまり、Bにおけるmethの定義
2.継承メソッドが親メソッドより初期値を少なくすることはエラーになる。つまり、Cにおけるmethの定義
ただ、エラーレポートがCの定義内容をAとの比較でしか報告していないのでBを調べることを怠った。
要するに、PHPのエラーレポートシステムが、おれの怠慢を補ってくれない程度にクソだったってことだ。
0407nobodyさん
2013/04/05(金) 14:50:46.20ID:???普通は、プレースホルダを使う。
http://lets.postgresql.jp/documents/tutorial/with_php/against_sql_injection/placeholder
SQLインジェクションが起きてもいいなら、'where id = ' . $idみたいに、クエリ文字列を組み立てる。
0408407
2013/04/05(金) 14:51:27.81ID:???MySQLの場合どうやるかはググってくれ。
0409nobodyさん
2013/04/05(金) 15:01:58.57ID:???//数行の処理
}
を100ブロックに展開するって話思い出した。
0410nobodyさん
2013/04/05(金) 15:58:08.23ID:???無料の掲示板導入しようとしてるんだがことごとく失敗するw
初心者でも設定が簡単な無料掲示板教えて
できれば画像などを投稿できるやつがいい
夢幻ってサイトので10ぐらい無料の試したが全部しっぱいしたw
0411nobodyさん
2013/04/05(金) 16:03:05.38ID:???サンプル
2ちゃんねるみたいな掲示板
この掲示板スクリプトは、ネット上で見つけたread.cgi、bbs.cgiをPerlからPHPに移植したものです。
改造、再配布、商用利用等に制限はありませんが、プログラムのバグ等でログが消えたり他の損害がおきても作者は一切の責任を負いません。
<a href="http://script.s16.xrea.com/2ch/php/">2ちゃんねるみたいな掲示板</a>
0412nobodyさん
2013/04/05(金) 16:03:51.63ID:???0413402
2013/04/05(金) 19:24:49.12ID:39+wkXdW>>407
なるほど、普通はそういった方法を使うのですね。
ありがとうございます、勉強になります。
0414nobodyさん
2013/04/05(金) 19:47:44.44ID:???0415nobodyさん
2013/04/06(土) 02:00:26.72ID:???0416nobodyさん
2013/04/06(土) 04:21:01.34ID:???0417きら ◆Kira.u9zNc
2013/04/06(土) 04:50:16.93ID:???さきゅばすCLI版を起動させるバッチファイルを作ったんですが
名前を指定して実行などでは普通に出来るのにPHPのexec();でだけ出来ません。
どうすればexecで起動出来ますか?
0418きら ◆Kira.u9zNc
2013/04/06(土) 04:53:09.41ID:???【PHPのバージョン】5.3.18
【連携ソフトウェア】MySQL VertrigoServ
【質問内容】>>417
0420nobodyさん
2013/04/06(土) 06:37:26.53ID:???>出来ません。
ってだけで、
エラーメッセージとかコマンドの詳細を書かないってことは、
エスパーできる範囲で質問せざるをえないわけだが。
イベントログかPHPのエラーログ見た?
セーフモードは?
フルパスで起動してる?
パスに空白入ってない?
権限は?
0421nobodyさん
2013/04/06(土) 09:33:39.67ID:???0422nobodyさん
2013/04/06(土) 18:25:33.81ID:yOARrNMO【連携ソフトウェア】MySQL
<?php
$hoge = intval($_GET["hoge"]);
$q=<<<eot
select * from table where id = $hoge;
eot;
$re=mysql_query($q);
$hairetu=mysql_fetch_array($re);
?>
<body>
<?= $hairetu["taijuu"] ?>
これで実行すると下のようなエラーが出てしまいます。
Notice: Undefined variable: taijuu in C:\xampp\htdocs\xxxx.php on line 100
3行目を追加($taijuuを定義)して、<?= $hairetu ?>に変更すると、
(途中省略)
$re=mysql_query($q);
$hairetu=mysql_fetch_array($re);
$taijuu = $hairetu["taijuu"];
?>
<body>
<?= $hairetu["taijuu"] ?>
正常に<?= $hairetu["taijuu"] ?>が処理され表示されます。
なぜ、<?= $hairetu["taijuu"] ?>ではエラーが出るのでしょうか。
0424nobodyさん
2013/04/06(土) 19:04:29.97ID:yOARrNMOありがとうございます。そこが問題だったようです。
そこを書き換えて、あと100行目前後の変数の部分が変な記述になっていたので
これも直したら正常に処理することが出来ました。
0425nobodyさん
2013/04/07(日) 10:05:58.96ID:???http://hissi.org/read.php/news4vip/20130407/T29ZaG1nNGow.html
◆じゃあのさんまとめ◆
http://jyaanowww.wiki.fc2.com/
0426nobodyさん
2013/04/08(月) 09:47:10.31ID:Hgt8t7EN【PHPのバージョン】5.1.6
【連携ソフトウェア】なし
【質問内容】
ファイルを圧縮・解凍したいと思っています。
PHPが5.1.6なのでZipArchiveがありません。
phpMyAdminなどの追加も出来ない環境なのでモジュールを使ってするということができません。
コマンドも権限が無いので叩けない状態です。
こういった状況で圧縮・解凍する方法がPHPであればアドバイスもらえないでしょうか。
0427nobodyさん
2013/04/08(月) 10:04:42.45ID:???0428nobodyさん
2013/04/08(月) 10:24:46.31ID:???調べてサーバーで使用禁止の設定を確認したか。
0430426
2013/04/08(月) 11:39:04.03ID:Hgt8t7EN検索ワードが悪かったせいか、上位にZipArchiveに関する事が多く出ていました。
zlib関数があることを知りませんでしたので、そちらで汎用的なzipファイルを作成できるという
ことであればそちらを使ってみたいと思います。
0431nobodyさん
2013/04/08(月) 21:14:28.36ID:???目の錯覚か
0432nobodyさん
2013/04/08(月) 23:33:19.67ID:w0n+quq7【PHPのバージョン】5.1.6
【連携ソフトウェア】なし / モジュール追加不可
【質問内容】
2038年を超える日付計算をしたいのですが、PHP5.1系のためDateTimeも使えず
モジュールも追加出来ないためPearで計算することも出来ません。
こういった状況で2038年を超える日付計算をするにはどのようにすればいいのでしょうか?
0433nobodyさん
2013/04/08(月) 23:51:09.14ID:???unixタイムのマイナス値使わないなら マイナス値対応させれば2106年くらいまでけそうだな
独自ファンクション作ってしまえ
そしてここで公開しよう
0434nobodyさん
2013/04/09(火) 00:11:04.43ID:???0435nobodyさん
2013/04/09(火) 01:17:58.80ID:???0437426
2013/04/09(火) 09:05:47.21ID:Bv2LP4mIマイナス値になったら2038年以降とみなして計算するとかそういう作りになってんのかね。
0438nobodyさん
2013/04/09(火) 12:06:53.35ID:???根本的解決になってないけどそれでいいのかよ
0439nobodyさん
2013/04/09(火) 12:11:35.33ID:???0440nobodyさん
2013/04/09(火) 12:59:59.55ID:???private $year;
private $month;
private $day;
public function addYear($year) {
$this->year += $year;
}
public function addMonth($month) {
$this->month += $month;
if ($this->month === 12) {
$this->year++;
$this->month = 0;
}
}
}
とかのクラス作ればいいんじゃないかと思うんだが、違うのかな。
0443nobodyさん
2013/04/09(火) 19:25:12.90ID:Bv2LP4mIそんときゃ俺はもういないし
0444nobodyさん
2013/04/09(火) 19:30:24.16ID:???0445sage
2013/04/09(火) 20:32:27.31ID:???0446nobodyさん
2013/04/10(水) 00:15:03.20ID:???0447nobodyさん
2013/04/10(水) 00:34:11.60ID:???113・・・ギリギリセーフだろー
0448nobodyさん
2013/04/10(水) 01:21:33.51ID:V2usnkco【連携ソフトウェア】MYSQL
画像で説明となって失礼します。
http://brunhild.sakura.ne.jp/up/src/up590551.png
(ミラー)http://www.07ch.net/up2/src/lena8917.png
画像の洞くつ結果表、海上結果表、山道結果表を得るのに、
下のSQL文のように、スキルテーブルを一つのphpファイルのSQL文で
何回も必要として呼び出しているのですがDBの負荷が心配です。(正規化にも問題あるような気もしますが。。
何か効率的な書き方や、使い回しやバッファにため込む(?)等、出来ればいいなと思うのですが、何か良い方法はあるでしょうか。
0449nobodyさん
2013/04/10(水) 01:22:41.12ID:V2usnkcophpのソース部分です。
$doukutu=<<<EOM
select
洞くつ.レベル
洞くつ.技
スキル.攻撃力
スキル.消費MP
from 洞くつ
join スキル
on 洞くつ.技 = スキル.技
where 洞くつ.敵 = 'スライム';
EOM;
$query_doukutu=mysql_query($doukutu);
$kaijou=<<<EOM
select
海上.レベル
海上.技
スキル.攻撃力
スキル.消費MP
from 洞くつ
join スキル
on 海上.技 = スキル.技
where 海上.敵 = 'スライム';
EOM;
$query_kaijou=mysql_query($kaijou);
0450nobodyさん
2013/04/10(水) 01:25:17.10ID:???0452nobodyさん
2013/04/10(水) 08:28:04.93ID:V2usnkcoありがとうございます、ユーザ変数を使うと後で参照出来るのですね。
さっそく活用してみます。
>>451
なるほど、書いていませんでしたが前の行で敵名を別で読み込んでいるので、
それをwhere 敵=に読み込んでいたのですが、
敵テーブルに場所列を付けるというやり方もありますね、検討してみます。
ありがとうございます。
0453nobodyさん
2013/04/10(水) 08:39:55.65ID:???そもそも何を心配しているかによるけど。
スキルテーブルを何度もjoinするのが心配?
それより地形ごとに何度もクエリを発行するほうが負荷。
てか1リクエスト事に地形は1種類だけでいいのでは?だったら参照する地形テーブルを動的に変えるか、上で書いたように統合すればいい
0454nobodyさん
2013/04/10(水) 08:44:18.91ID:???心配なら、自分でキャッシュすればいい。
この件でSQLの書き方工夫したところでたいした効果はない。
0455nobodyさん
2013/04/10(水) 11:01:42.44ID:???0456nobodyさん
2013/04/10(水) 11:05:23.23ID:???0457nobodyさん
2013/04/10(水) 11:06:31.12ID:???いまさらオブジェクト指向の話題とかふるなよ
あんなのは最早知ってて当然のレベル
0458nobodyさん
2013/04/10(水) 14:38:17.61ID:???0459nobodyさん
2013/04/10(水) 16:01:47.70ID:IX7jFUbJ0461nobodyさん
2013/04/10(水) 17:01:12.23ID:???PHP使ってる奴って安価で切りやすい労働力だからもっと社会に輩出してほしい
それ以外にPHP厨に価値はないからな
0462nobodyさん
2013/04/10(水) 17:20:21.26ID:???昔、PSや任天堂はダメでセガというやつ、windows、unixはダメでMacというやつがいて
異常な情熱をして燃やしてるのがいたが。
同じ事で主流、メジャーに対する反抗なんだろうな。
それ自体かいいか悪いかでなく、メジャーだからという理由。
0463nobodyさん
2013/04/10(水) 19:02:04.29ID:???よし、そのためにはPHPのお仕事を今よりももっと量産してくれ
そしたら簡単な仕事がさらに増えてルーチンワークで金を稼げる
0464nobodyさん
2013/04/10(水) 21:54:25.24ID:V2usnkcoなるほど、キャッシュに入るのでしょうか。それでしたらそれに越したことは無いのですが、
リクエストが多くなっていることと、また、ソースが複雑になっていたことも考慮して
テーブルを統合してみました。アドバイスどうもありがとうございます。
0465nobodyさん
2013/04/10(水) 22:42:35.48ID:B4F75Z08ここからさらにIPアドレスから自動的に国まで特定したいと思ってるんだけどいい方法無い?
ちなみにGeoIPというツールをインストールすればIPアドレスから国を調べることができるらしいけど
あいにくうちのレンタルサーバー(000webhost)はシェルの操作ができないからmake; make install;とか出来ないんだよね。
なんかもっと簡単に、どこかにIPアドレスを投げると国名を返してくれるネットサービスとかあればいいんだけど。
0466nobodyさん
2013/04/10(水) 23:34:51.06ID:???ウェブの基本も知らずにウェブを通して利用するシステム書いてるとかありえね。
そんなことも知らないレベルならセキュリティリスクもありまくりだろうな。
悪意のあるハッカーに踏み台を用意してるゴミ=>>465
0471nobodyさん
2013/04/11(木) 01:54:53.00ID:???> なんでPHP厨って >>465 みたいにウェブの基本も分かってないゴミしかいないんだろうな。
>
> ウェブの基本も知らずにウェブを通して利用するシステム書いてるとかありえね。
>
> そんなことも知らないレベルならセキュリティリスクもありまくりだろうな。
>
> 悪意のあるハッカーに踏み台を用意してるゴミ= >>465
具体的に465のどこの発言からwebの基本が分かってないと判断したのだろうか?
ちなみに、IPアドレスから国を判断するというのであれば、自分で調べれば自前で実装できる。
GeoIPのメリットは都市まで調べられるところだな。
0472nobodyさん
2013/04/11(木) 12:32:28.71ID:???0473nobodyさん
2013/04/11(木) 12:46:48.22ID:???0474nobodyさん
2013/04/11(木) 12:52:40.88ID:???なんでルールを無視しようと思ったの?
そんなに荒らしたいの?
お前らみたいなクズのせいでPHPが馬鹿にされるんだよ
0476nobodyさん
2013/04/11(木) 15:01:39.89ID:???id出さずに聞くとはね。
0481nobodyさん
2013/04/11(木) 16:59:28.61ID:???2013/04/10 (Wed) 06:08:25
に変換するという質問です
0482nobodyさん
2013/04/11(木) 17:01:59.31ID:???0483nobodyさん
2013/04/11(木) 17:04:10.44ID:HixpqTLWsageを削除するんですね
0484nobodyさん
2013/04/11(木) 17:09:45.63ID:itiKrwCW0485nobodyさん
2013/04/11(木) 17:10:02.05ID:0KD/BzYB0486nobodyさん
2013/04/11(木) 17:11:56.71ID:???0487nobodyさん
2013/04/11(木) 17:16:41.35ID:HixpqTLW0488nobodyさん
2013/04/11(木) 17:18:44.27ID:???0489nobodyさん
2013/04/11(木) 17:28:50.22ID:???echo date("Y/m/d (D) H:i:s", 365541705);
echo strftime("%Y/%m/%d (%a) %H:%M:%S", 365541705);
ロケールとか影響しないフォーマットにしてみたけど
この数字だと 1981/08/01 (Sat) 19:21:45 になるから元が違う?
0490nobodyさん
2013/04/11(木) 17:29:36.79ID:???0492nobodyさん
2013/04/11(木) 17:37:33.71ID:HixpqTLWまたsage削除を忘れました
0493nobodyさん
2013/04/11(木) 17:43:40.31ID:???0495nobodyさん
2013/04/11(木) 17:45:18.61ID:???1365541705
0496nobodyさん
2013/04/11(木) 17:45:50.66ID:???0497nobodyさん
2013/04/11(木) 17:48:38.28ID:itiKrwCWtest.c
--
#include <stdio.h>
#include <time.h>
int main()
{
time_t t = 915148821;
struct tm *tm = localtime(&t);
printf("%s\n", asctime(tm));
return 0;
}
--
test.php
--
<?php
echo date("Y/m/d (D) H:i:s", 915148821) . PHP_EOL;
--
うるう秒を考慮するzoneinfoを使うと…
$ TZ=/usr/share/zoneinfo/right/Japan ./test
Fri Jan 1 08:59:60 1999
$ TZ=/usr/share/zoneinfo/right/Japan php test.php
1999/01/01 (Fri) 09:00:21
うーむ…。
0498nobodyさん
2013/04/11(木) 18:18:16.16ID:???0499nobodyさん
2013/04/11(木) 18:23:57.62ID:HixpqTLW365541705は
date( substr(time(), -9) );
2013/04/10 (Wed) 06:08:25は
date( "Y/m/d (D) H:i:s", time() );
という関数で吐き出されています
0500nobodyさん
2013/04/11(木) 18:42:20.92ID:???なんでわざわざ substr で 後ろから9文字取り出してるの?
10桁あるんだから 1が落ちて当然だよね?
0502nobodyさん
2013/04/11(木) 18:48:26.96ID:???0503nobodyさん
2013/04/11(木) 18:54:33.33ID:HixpqTLWあれの意味はうしろから9桁なんですね
どうしてそうしたのか尋ねてみます
明日以降になると思います
0505nobodyさん
2013/04/11(木) 21:13:22.64ID:???0506nobodyさん
2013/04/11(木) 22:45:58.95ID:yLGwf0zn> ちなみに、IPアドレスから国を判断するというのであれば、自分で調べれば自前で実装できる。
IPアドレスの国への割り振りって動的に変動しているけどそれはそういうのに追従できる方法?
0507nobodyさん
2013/04/11(木) 22:53:54.56ID:???123456789123456の真ん中の67991
0509nobodyさん
2013/04/11(木) 22:55:56.12ID:???0510nobodyさん
2013/04/11(木) 22:58:49.26ID:???0511nobodyさん
2013/04/11(木) 22:59:58.02ID:???0512nobodyさん
2013/04/11(木) 23:13:28.27ID:???0514nobodyさん
2013/04/12(金) 04:09:06.68ID:???0515nobodyさん
2013/04/12(金) 18:15:51.75ID:???最初は全部ひらがなで「わって」って書いてるのに、次は「割って」って書いてる。
この一貫性のなさは絶対アスペだろ。
そこを変えるなら全部変えるべき。
最初は「100,000でわって」にして、
次は「10万で割って」にするとか。
これだったら「最初と次を変える」という一貫性が窺えるから気持ち悪さはない。
中途半端に変えるってのは精神的に安定してない証拠。
こいつ絶対にアスペ。
普段のコミュニケーションにも支障をきたしてそう。
気持ち悪い。
0516nobodyさん
2013/04/12(金) 18:34:27.03ID:???アスペの統一性の高さはちょっと異常レベルだし
0517nobodyさん
2013/04/12(金) 19:11:33.43ID:???0520nobodyさん
2013/04/12(金) 21:30:09.59ID:???文字列変換は暗黙の型キャストを嫌う場合の処理。
substr はヒントも何もそれが答えだよ。
自分で調べてないのが丸わかりだ。
0521nobodyさん
2013/04/12(金) 21:32:18.65ID:???0527nobodyさん
2013/04/14(日) 13:16:41.05ID:GUqrSjpz配列の範囲を指定して、その合計値を出す方法が知りたいです。
$a[50]から$a[70]の数値をすべて合計した値を出すなど
0529nobodyさん
2013/04/14(日) 15:05:52.19ID:GUqrSjpzありがとうございます
0530nobodyさん
2013/04/15(月) 17:12:04.80ID:Zye3ucx/0532nobodyさん
2013/04/15(月) 17:17:26.44ID:Zye3ucx/ありがとうございます
ついでといっちゃなんだがなんかヒントくれよな
0533nobodyさん
2013/04/15(月) 17:22:34.61ID:???定期的にcronなりタスクスケジューラなんかでかき集めておいて、
生成しておいたプレーンなHTMLにアクセスするほうがいいかもしんない。
0534nobodyさん
2013/04/15(月) 17:25:23.97ID:A3jblSzx本番環境ではでなかった
以下のようなエラーが表示されるようになってしまいました。
A PHP Error was encountered
Severity: Notice
Message: Use of undefined constant END_TRANSACTION - assumed 'END_TRANSACTION'
Filename: db/mysql.php
Line Number: 117
【PHPバージョン 5.3】
原因・回避方法わかりましたらご教示ください。。。
0537nobodyさん
2013/04/15(月) 17:59:13.24ID:???ドキュメントルートがおかしいのではないかって海外フォーラムでいわれているよ
開発環境と本番環境それぞれの、そのあたりを注目してみてはどうでしょう
0538534
2013/04/15(月) 18:10:51.68ID:A3jblSzxありがとうございます。そのあたりを疑ってもう少し頑張ってみます。
0539nobodyさん
2013/04/15(月) 18:11:31.29ID:???本番環境でEND_TRANSACTIONを定義しているライブラリは、開発環境に入ってる?
入ってるなら、参照できてない(パスの解決ができていない)とかかな。
あるいは、本番環境のエラー出力レベルで~Noticeしてて、本番環境でもそのエラーが
発生してるけど、ログには出てないだけとか。
0540534
2013/04/15(月) 18:50:39.07ID:A3jblSzx本番環境でもNoticeレベルのエラー表示はされるので
そのあたりの設定とは関係ないようです。
アプリケーションは丸ごとコピーしてアップしているのですが、
その中にはEND_TRANSACTIONの定義は見当たらないようなのです。。
ちなみにDB環境は以下のように変わっています。
---------------------------------------
ソフトウェア: MySQL
ソフトウェアバージョン: 5.1.49-log - FreeBSD port: mysql-server-5.1.49
データベースクライアントのバージョン: libmysql - mysqlnd 5.0.10
PHP 拡張: mysqli
---------------------------------------
↓
---------------------------------------
サーバのバージョン: 5.0.95
プロトコルバージョン: 10
MySQL クライアントのバージョン: 5.0.95
PHP 拡張: mysql
---------------------------------------
海外サイトも調べているのですが、明確な解決法が見当たらず。。。
0542nobodyさん
2013/04/15(月) 19:35:48.72ID:3Mv3hGy+実際にPHPに一緒に書いてて覗き見られることってある?
0544534
2013/04/15(月) 20:10:52.09ID:A3jblSzx解決しました。。。
vogooというリコメンドエンジンAPIです。
ライブラリのコンフィグファイルのDB設定が本番環境のままなのが
原因のようでした。
0545nobodyさん
2013/04/16(火) 01:28:10.29ID:ooHoVKGv例えば
$a[0]から$a[100]の配列があるとして
6000と同じ値が入った配列を$aの配列から取得
↓
その配列のキーだけ取り出して変数に入れる
0546nobodyさん
2013/04/16(火) 01:43:46.90ID:D4JSFeay0547nobodyさん
2013/04/16(火) 02:08:35.35ID:ooHoVKGvこのような配列があった時に
$a[0] =50
$a[1] =51
$a[2] =52
$a[3] =53
$a[4] =54
値から配列の変数を調べる方法が知りたいです
例えば値が54に該当する配列の変数がどれなのかを調べる時に使いたいです
あと配列の変数がわかった後に、そのキーだけほしいです
この例だと
54で調べると
↓
$a[4]が該当して
↓
そのキーの4
となって最終的に4がほしいです。
0549nobodyさん
2013/04/16(火) 03:20:31.00ID:ooHoVKGvありがとうございます
0551nobodyさん
2013/04/16(火) 11:29:04.50ID:ooHoVKGv勉強になります
ありがとうございます
0552nobodyさん
2013/04/16(火) 17:01:24.35ID:???0553nobodyさん
2013/04/16(火) 17:53:54.39ID:???0554nobodyさん
2013/04/17(水) 09:43:19.92ID:???0555nobodyさん
2013/04/17(水) 11:16:36.85ID:???0556nobodyさん
2013/04/17(水) 11:26:21.72ID:???0557nobodyさん
2013/04/17(水) 13:02:11.83ID:???0558nobodyさん
2013/04/17(水) 13:14:05.13ID:???0559nobodyさん
2013/04/19(金) 01:52:35.21ID:BkSiPRWu<?php echo file_get_contents('http://xxx.xxx.xxx/test.cgi');?>
下のエラーが出てしまいます。
failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error in xxx
urlに直接ブラウザでアクセスするとtest.cgiがちゃんと表示できます。
下のコードだとちゃんとyahooのトップが表示できます。
<?php echo file_get_contents('http://yahoo.co.jp/');?>
ローカルのxampp上で同じプログラムを動かした場合もちゃんと表示できます。
原因なんでしょうか??
0560559
2013/04/19(金) 01:57:02.52ID:BkSiPRWu【OS名】CentOS6.2
【PHPのバージョン】5.3.3
0561nobodyさん
2013/04/19(金) 03:32:15.65ID:???0562559
2013/04/19(金) 08:23:54.41ID:???cgiの方で呼び出しもとのホストを弾く設定になってたみたいでした。
0563nobodyさん
2013/04/19(金) 11:04:15.70ID:???0564nobodyさん
2013/04/19(金) 13:02:39.65ID:lhK9q9u1今までオブジェクト指向で書いたことがなく、ページ遷移の際にセッションに保存してそこからデータを
出し入れしたのですが、フレームワークで書かれたウェブアプリのサンプルソースを
みていると、インスタンスに全部入れ込んでいく方法がとられているのですが、
インスタンスにデータを保存して、そこから読み出し書き出しをして処理しようと思うのですが、
インスタンスに設定情報や取得情報を代入した場合、
ページ遷移した場合は当然保持されないのでしょうか
0565nobodyさん
2013/04/19(金) 14:14:51.32ID:???0566564
2013/04/19(金) 14:35:58.50ID:lhK9q9u1フレームワークの場合、クラスファイルをautoloadで読み込んだりするために
クラスファイルのパスやその他各種設定情報をインスタンスに格納していくかとおもいますが、
ページ遷移をまたぐ場合、インスタンスは保持されるのでしょうか
それともセッションなどに一時的に保存する必要があるのでしょうか
0567nobodyさん
2013/04/19(金) 14:52:24.01ID:???インスタンスに格納すると決め付けられても。 というか、 インスタンス と言うものを 勘違いしてる?
ページ間のデータのやり取りはフレームワークが勝手にやるのかもしれないし、
オブジェクト指向関係ないし
0568564
2013/04/19(金) 15:35:16.89ID:lhK9q9u1もう一度整理して・・・
やろうとしてることは、ユーザ登録のページを作成
(入力フォーム→確認画面→送信完了)で、今まで3つのphpファイルでページ遷移をしていました
今度は、index.phpにアクセスしてフォーム等の設定を読み込み→入力フォームを表示、
ユーザが入力をして確認ボタンを押すと、データを受け取るクラスを実行してindex.phpに
リダイレクトし、確認画面を表示させる〜(以降略)
という動きを考えているのですが、フォームボタンを押してページ遷移(リダイレクト)させるという処理が
単純に最初に示したphpファイル毎にページが遷移していくやり方と比較して
フレームワークの場合は一連の動作になるのでしょうか
それとも、一旦セッション等に保存して、index.phpが再度読み込まれた際にセッションから設定を
呼び出して処理をおこなうものなのでしょうか
0569nobodyさん
2013/04/19(金) 15:51:05.66ID:???index.phpで受けて index.phpで表示する。
別にセッションで受け渡ししないでも作れるよね。
アクションで、受けるとこ、結果表示するとこ分けて、セッションで受け渡す形で作るのもあるし
0570nobodyさん
2013/04/19(金) 16:18:53.21ID:???> アクションで、受けるとこ、結果表示するとこ分けて、セッションで受け渡す形で作るのもあるし
横からだけど、これ具体的にはどのフレームワーク?
0571564
2013/04/19(金) 16:36:11.06ID:lhK9q9u1なるほどです
MVCの解説サイトなどを見ながら勉強してるのですが、
だいたいindex.phpにリクエストがきて、コントローラから、初期化や設定ファイルなどを読み込んで、
Dispatcher.phpで振り分けられて、アクションに応じたクラスが実行されて、
結果をビューに渡して表示させる
・・・という流れで理解をしたのですが、ビューの結果をクライアントにレスポンスとして返されたあとのことに
触れられている説明がなく(読み足りないのかもしれません)、
クライアントがその次にリクエスト(たとえばフォームで入力ボタンを押す)をした際に、
次の振り分けでボタンを押す処理のクラスを実行するに、またindex.phpが呼び出され、
初期化や設定ファイルの読み込み、クラスのautoloadなどを最初からしなければならないのか、
はたまたその辺は保持されているものなのか、セッション等で設定を保存して読み込むようにしてあげる必要があるのか
その辺で疑問に思った次第です
書籍のサンプルでは、最初に読み込まれた際に、設定情報を格納したインスタンスを凍結させ、
それ以降の設定変更ができないようにしているのですが、そのインスタンスをセッションに保存したりするような
記述が見つからなく、混乱している状態です
0572nobodyさん
2013/04/19(金) 16:54:57.85ID:???なにで引っかかってるのかわかんないから 的外れなのかもしれないけど、
普通は、どんなアクセスも全部 index.phpで受けて 毎回毎回 初期化、設定読込は行われる。
基本的には、リクエスト毎に実行され、処理が終われば消えてなくなり、
各リクエストは関連なく独立しているものです。
アクセスしてる個人単位で連続しているように見せかけるために、
個人だけに関連するデータをセッションで保持したりしますが、
普通はインスタンスごと持ったりみたいなことはしないものです。
0574nobodyさん
2013/04/19(金) 21:22:28.01ID:???セッション情報を使うことで続きっぽく扱えるだけで、HTTPはリクエストごとに独立した処理をするのが原則
0575nobodyさん
2013/04/20(土) 13:45:38.40ID:???Merge branch 'PHP-5.3' into PHP-5.4 は
先に古いバージョンで修正されたものが
新しいバージョンの方にも適用されたという事でよいのかな?
0581564
2013/04/21(日) 17:35:31.74ID:QsqTX+06なるほど、1回毎に読み込みがおこなわれるわけですね
引っかかってる部分がようやくとけました
どうりで保存したりする処理がないわけですね
となると、リクエストに対して、必要な設定読み込みを考えないとダメですね
何でもかんでも最初に初期化設定読み込みをautoloadなどで一括に処理してしまうものだと思ってました
全体の流れや効率を考えた外枠から考えないとダメですね
0582nobodyさん
2013/04/22(月) 06:20:08.99ID:???YouTubeやニコニコ動画などは再生可能なサムネイルを
出力できますが、
ニコ生放送は再生可能なサムネイルを貼り付けることは出来ますか?
0584nobodyさん
2013/04/22(月) 17:30:21.42ID:0nrxKiO80586nobodyさん
2013/04/22(月) 23:14:46.67ID:YyKrblk5じゃあのさん来た! 次スレ
26:以下、名無しにかわりましてVIPがお送りします[]
2013/04/22(月) 22:59:02.35 ID:8TN30C6y0
じゃあ、こっからが情報戦レクチャーに入るぜwww
敵の資金源をおまいらでも一枚噛んでぶっ潰す方法だwwww
不買運動やデモは単なる手段でしか無いwww
俺が求めるのは更にその先だwwww
--- 以下スレ情報 ---
高岡さんがフジ韓流ゴリ押し批判したら干されたのでウジテレビ凸
http://hayabusa.2ch.net/test/read.cgi/news4vip/1366637744/
0590nobodyさん
2013/04/23(火) 21:53:05.68ID:870eDqk8亀だけど、ぜんぜん方向の違う勘違いしてるじゃないか
お前らちゃんと指摘してやれよw
PHPはリクエストのたびに起動して一プロセス消費して終わり。
これ、フレームワークがどうたらとか関係なく、言語仕様な。
一度作成したインスタンスを再利用するなんてのはシリアライズして
DBに保存してっていう、どっちかっていうと変態っぽいやりかただから、
まだ手を出さないほうがいいと思うし。
0592nobodyさん
2013/04/24(水) 04:02:41.23ID:???0593nobodyさん
2013/04/24(水) 04:12:15.02ID:6o5SNjBY0594nobodyさん
2013/04/24(水) 04:23:24.40ID:???0595nobodyさん
2013/04/24(水) 11:10:58.26ID:???を外部から呼び出す時、引数を与えたいのですが、
hoge.php?saitama=chichiu
以外に方法はありますか?
PHP 5.2.17です。
0596nobodyさん
2013/04/24(水) 11:14:23.84ID:???0597nobodyさん
2013/04/24(水) 12:01:08.73ID:L2MfGf1mを外部から呼び出す時、引数を与えたいのですが、
hoge.php?saitama=chichiu
以外に方法はありますか?
PHP 5.2.17です。
>>596
すみません。
0598nobodyさん
2013/04/24(水) 12:04:45.02ID:???あとPATH_INFO使うとか
0599nobodyさん
2013/04/24(水) 12:05:42.44ID:???0600nobodyさん
2013/04/24(水) 12:08:26.65ID:???で、 hoge.phpに saitama と chichiu 渡すみたいな方法はあります。
0603nobodyさん
2013/04/24(水) 13:38:58.11ID:???0604nobodyさん
2013/04/24(水) 18:32:03.09ID:???foreachで$_GETからkeyとvalue取ってくるの?
0605nobodyさん
2013/04/24(水) 18:33:19.63ID:???0607nobodyさん
2013/04/24(水) 20:53:40.70ID:???0608nobodyさん
2013/04/25(木) 02:19:49.33ID:UuN6InnxWindows7でpeclで pecl_http を入れようとしてダウンロードまではいったのですが
その後エラーが出て止まってしまいました。これはどうすればいいんでしょうか。
pecl install http://pecl.php.net/get/pecl_http
downloading pecl_http-1.7.5.tgz ...
Starting to download pecl_http-1.7.5.tgz (174,624 bytes)
.....................................done: 174,624 bytes
71 source files, building
ERROR: The DSP pecl_http.dsp does not exist.
0609nobodyさん
2013/04/25(木) 02:32:52.82ID:???http://stackoverflow.com/questions/7751679/php-http-build-url-and-pecl-install
0611nobodyさん
2013/04/25(木) 13:44:25.08ID:???英語なのであいまいにしか翻訳できなかったので間違っていたらすいません。
これはhttp_build_urlを使うためにpecl_httpを入れようとしたけど使えなかったから
http_build_url() を自作したっていう話ではないですか?
私がしたいのは http_build_url ではないのでこれには当てはまらないのではないでしょうか。
0612609
2013/04/25(木) 13:44:56.25ID:UuN6Innx>>611 は 609 です。
0613608
2013/04/25(木) 13:46:28.43ID:UuN6Innx0614nobodyさん
2013/04/25(木) 14:17:01.66ID:0FNu+M2Thttp://example.com/hoge.php/saitama/chichiu
ならできるけど、
http://example.com/hoge/saitama/chichiu
ってできる?
0615nobodyさん
2013/04/25(木) 14:37:11.67ID:???サーバーにディレクティブ渡せば楽勝でしょ。
WordPressやCakePHPのURLの仕組みを調べてみれば?
0616nobodyさん
2013/04/25(木) 15:04:32.09ID:???.htaccess に、特定のファイル名の時はapplication/x-httpd-phpを追加する
とかが一般的かな
0617nobodyさん
2013/04/25(木) 15:31:26.40ID:???0618nobodyさん
2013/04/25(木) 16:37:07.19ID:???0619nobodyさん
2013/04/25(木) 16:42:52.06ID:???0620nobodyさん
2013/04/25(木) 19:16:06.66ID:???お前たちは答えてろ
0621nobodyさん
2013/04/25(木) 19:32:36.30ID:???0623nobodyさん
2013/04/26(金) 07:59:11.43ID:h02AATTSインスタンスを生成後、オブジェクトにアクセスする際
$this->val
valの部分に他の配列に入れておいた文字列でアクセスするにはどうしたらよいでしょうか
$val = array(a,b)
$this->a
$this->b
のょうに繰り返しで処理したいです
配列だとhoge[$val]といったようにしてましたが、オブジェクトの場合はどうなるのでしょう
0625nobodyさん
2013/04/26(金) 13:34:02.60ID:wd6ISbqU【PHPのバージョン】5.3
【連携ソフトウェア】MySQL
【質問内容】
DBに書き込みデータを保存する掲示板を作っているのですが
ユーザーが書き込んだ文字列をHTMLエスケープするのはどの段階にするべきでしょうか
勿論'や;に\をつけるのはDBに保存する前だと思いますが、
<や>等HTMLとして影響を与える文字をエスケープするのはDBに保存する前か
それともDBにはそのまま保存して出力する際にエスケープすべきでしょうか
一般的な考え方があったら教えて下さい
0626nobodyさん
2013/04/26(金) 13:44:14.73ID:???DBにデータを入れる際のSQLインジェクション
そしてデータをHTMLに出力する際のクロスサイトスクリプティング
DB操作にどのAPI使ってるのかしらんがDBに入れる際
mysql関数ならmysql_real_escape_string
PDOならプリペアードステートメントを使う
DBから取り出してHTMLに出力するときにhtmlspecialcharsを使う
0627nobodyさん
2013/04/26(金) 13:45:37.38ID:???select文にたいしても同様にSQLインジェクション対策を行うこと
0628nobodyさん
2013/04/26(金) 15:17:37.16ID:wd6ISbqUどうもありがとうございます
0629nobodyさん
2013/04/26(金) 15:22:40.36ID:???出力するときに、htmlspecialcharsを使う。
これしかない。
0630nobodyさん
2013/04/26(金) 15:27:43.27ID:???有効にするタグがあるのかどうか(<a>や<strong>, <pre>などは生かすとか)によって違う。
また、エンコードが何なのかによっても違う。
0631nobodyさん
2013/04/26(金) 16:08:21.01ID:???色んな所で古くから議論されてるけど、
基本はDBに生で保存して出力時に整形する。
いろんな検証の仕方をしても多分ここに落ち着く。
それを踏まえた上で、パフォーマンスを高めるためのチューニングとして
エンコード済みのデータをケースバイケースで本データとは別に保存しておいたりすると良い。
0632nobodyさん
2013/04/26(金) 17:56:09.59ID:???ほかの人も言っていることとほぼ同様だけど
取り立てて仕様に影響するような要件がない場合は、DBには可能な限り生なデータを突っ込んだほうがいい。
突っ込む前に整形するとその後の拡張性がすこぶる悪くなったりする。
で、PHPでMySQL使っているならば、mysqli_real_escape_string関数あたり使いなはれ。
で、出力するときは、htmlspecialcharsあたりでXSS除けしなはれ。
ちなみにWHERE句なんかで外部からの値突っ込むときもちゃんとエスケープ処理かけるんだぞ。
もう一つ言うと、LIMITやOFFSET句みたいな場所を除いて外部から受け取ったIntegerを突っ込むときも
ちゃんとエスケープ処理して'つけてSQL文に流し込め。
LIMITやOFFSETは、Integer以外入りようがないのだから、正規表現かなんかでバリデートすべし。
0633nobodyさん
2013/04/26(金) 18:13:03.59ID:???昔はそれが普通だったのか?
0634nobodyさん
2013/04/26(金) 18:14:00.99ID:???0635nobodyさん
2013/04/26(金) 18:14:09.48ID:2flPsSFU0636nobodyさん
2013/04/26(金) 18:16:10.65ID:???たんに何のセキュリティ問題なのかとか具体的なことがわからなかったってだけでは?
とりあえずエスケープにはhtmlspecialcharsを使っとけばいいって覚えちゃった人が
自分のサイトでこういうふうにして入れますみたいに書いて
それを間にうけた第三者が真似していくという
0637nobodyさん
2013/04/26(金) 18:18:57.51ID:???内容はだいたいわかるけど実際に問題になるコードが書けない人
本当にアマでセキュリティホールを理解してるのは少ない
0639nobodyさん
2013/04/26(金) 19:42:40.94ID:???そのカラムの範囲を破壊されないために
<と>をエスケープしていたんだよねwww
0640nobodyさん
2013/04/26(金) 20:23:06.36ID:???そうそう、そんな理解していない奴らが簡単にWebアプリもどきを作れるようにしたPHPは犯罪
世界規模のサイバーテロに匹敵するほどの犯罪
犯罪者予備軍のPHP厨にはお似合いかw
0641nobodyさん
2013/04/26(金) 22:33:10.72ID:zqV1AZ+pわしのことやな、、getpost変数はほぼホワイトリスト解決させてる、、ヌルバイトだけはどう来るか予想できん。。。。
0642nobodyさん
2013/04/26(金) 22:35:09.48ID:???0644nobodyさん
2013/04/27(土) 14:25:23.44ID:RdpUkJUr仮にmcintosh(詳細な綴りは知らん)とwindowsに同じ問題があったとして
その影響が同じだなどという主張と変わらん
0645nobodyさん
2013/04/27(土) 14:36:40.37ID:???0646nobodyさん
2013/04/27(土) 14:48:32.82ID:???なんでmacって呼ばれてるのか考えろ!
0647nobodyさん
2013/04/27(土) 14:49:44.35ID:???0648nobodyさん
2013/04/27(土) 19:00:06.77ID:RdpUkJUr0649nobodyさん
2013/04/27(土) 22:27:02.27ID:78HtUPwGじゃあのさん来た!
421:以下、名無しにかわりましてVIPがお送りします[]
2013/04/27(土) 21:53:57.62 ID:qYDE1sEQ0
てか、すっかり野間ちゃんのこと忘れてたわwww
別件で色々あってなwwww
所詮その程度の存在なんだけどなwww野間ちゃんなんてwwww
じゃあ、今からやるかwww罰ゲームなwww
あーあwww野間のせいだwww野間が全部悪いwww
--- 以下スレ情報 ---
高岡さんがフジ韓流ゴリ押し批判したら干されたのでウジテレビ凸
http://hayabusa.2ch.net/test/read.cgi/news4vip/1366990405/
0650nobodyさん
2013/04/28(日) 01:08:05.93ID:A2fSkdFWウェブサイトを制作しており、初回訪問時に設問を表示し、その答えに応じてメニューの並び順などを変えたいと思っています。
Cookieに保存し次回訪問時も引き継ぎたいです。
$pt = $_POST["pt"];
if ($pt == ""){
$pt = $_COOKIE["pt"];
if ($pt == ""){
header("HTTP/1.1 301 Moved Permanently");
header("Location: ./start.html");
quit();}
} else {
setcookie("pt", $pt, 0, "/", "www.exsample.jp");}
$topMenu[0] = "<a href=\"aa\" alt=\"aa\">aa</a>";
$topMenu[1] = "<a href=\"bb\" alt=\"bb\">bb</a>";
switch ($pt){
case "1": $topDisp = array(0, 1);
break;
case "2": $topDisp = array(1, 0);
現在このように書いており、「start.html」にて
<form method="post" action="index.html">
<a href="http://www.exsample.jp" onclick="forms[0].pt='1'; forms[0].submit();">1</a>
<a href="http://www.exsample.jp" onclick="forms[0].pt='2'; forms[0].submit();">2</a>
<input type="hidden" name="pt" value="" /></form>
と、選択させCookieへの保存を行なっているつもりです。
しかし「index.html」へアクセスすると「start.html」に飛びはするのですが、選択しても「start」から移動しません。
どの部分に間違いがありますでしょうか。あまり知識がなく、どうか教えていただきたいです。
また、現在は「start」という別ページを置いていますが、jQueryなどを使い、設問画面がポップアップするという形を取りたいと思っております。
その方法(どの部分でどういった書き方をすれば良いか)も教えて頂ければと思います。
長文となって申し訳ありませんが、よろしくお願いします。
0651nobodyさん
2013/04/28(日) 06:40:23.43ID:???0653nobodyさん
2013/04/28(日) 19:10:31.55ID:???// 222を出力するクラスaaa
class aaa{
function aaa_m(){
echo "222<br>";
}
}
// クラスaaaを継承したクラスbbb
// ヒアドキュメント内でクラスaaaのメソッドを出力
class bbb extends aaa{
function bbb_m(){
echo <<< EOF
111<br>
{$this->aaa_m()}
333<br>
EOF;
}
}
$bbb = new bbb;
$bbb->bbb_m();
クラスbbbのメソッドbbb_mを使うと
111、222、333とならぶはずが
222、111、333となります
となってしまいます。ヒアドキュメント内でクラスを使うと
最初に呼び出される仕様なのでしょうか?
0655nobodyさん
2013/04/28(日) 19:17:29.32ID:mmUnQlFQ0657nobodyさん
2013/04/28(日) 23:50:47.53ID:3X4yk4QNで、質問の答えだが、ヒアドキュメントのパースする際に
まずはその中の命令を処理する必要があると思わないか?
この結果には驚くような要素は何も含まれていないと思うよ。
0658nobodyさん
2013/04/29(月) 00:02:01.61ID:???クラスファイルで使いたいと思い、作り直しを試みているのですが
function hout($d) {
if (is_array($d)) {
return array_map('hout', $d);
}
else {
$d = htmlspecialchars($d, ENT_QUOTES);
}
}
以下がオブジェクトで
Class Hout
publice function __construct($d)
0660nobodyさん
2013/04/29(月) 00:07:12.36ID:cl3jdKHBクラスファイルで書いてみたのがは以下の通りです
Class Hout
{
private $d;
public function __construct($data)
{
$this->d = $data;
if (is_object($this->d)) {
$this->d = get_object_vars($this->d);
}
}
public function htmlout()
{
if (is_array($this->d)) {
return array_map('htmlout', $this->d);
} else {
$this->d = htmlspecialchars($this->d, ENT_QUOTES);
}
}
}
0661660
2013/04/29(月) 00:13:10.57ID:cl3jdKHB0662nobodyさん
2013/04/29(月) 00:27:56.12ID:???{
private $d;
public function __construct($data)
{
$this->d = $data;
if (is_object($this->d)) {
$this->d = get_object_vars($this->d);
}
}
public function htmlsc()
{
var_dump($this->d);
if (is_array($this->d)) {
return array_map('Hout::htmlsc', $this->d);
} else {
$this->d = htmlspecialchars($d, ENT_QUOTES);
}
return $this->d;
}
}
としてみましたが、ループしてしまいます・・・
0664nobodyさん
2013/04/29(月) 02:22:19.12ID:???0665nobodyさん
2013/04/29(月) 03:26:57.34ID:???0666662
2013/04/29(月) 04:14:22.43ID:cl3jdKHBvar_dump($val);
$val = get_object_vars($val);
var_dump($val);
とすると、結果が
object(ArrayObject)[17]
string '0' (length=1)
string '1' (length=1)
string '1' (length=1)
string '0' (length=1)
array (size=0)
empty
となってしまうのが、上手くいかない原因のようなのですが、
なぜに、get_object_varsを通すとemptyになってしまうのでしょうか・・・
array
[0] => string'0'
[1] => string'1'
[2] => string'1'
[3] => string'0
とさせたいのですが'
0667nobodyさん
2013/04/29(月) 09:07:52.19ID:aXyeiYnzaddServers(array(
192.168.0.11 => 11211,
192.168.0.12 => 11211,
192.168.0.13 => 11211
));
で複数のMemcachedクラスタを構成しています。
Memcachedが落ちた(get(key1)できなかった)場合、DBに直接アクセスしてデータ(val1)を取得した後、
書き込みset(key1,val1)を行います。
この状態で、たとえば192.168.0.12が落ちた場合、192.168.0.12にマッピングされていたkey1が
0.11か0.13にマッピングし直されて継続されることを期待しているのですが、どうも0.12に向けられていた
割り当てられていた分が全部DBに直接アクセスしているっぽいです。
addServersでサーバーを追加したら、そのどれかが落ちていたとしても、再マッピングはされないのでしょうか?
OPT_DISTRIBUTIONを変えても駄目でした。
そうすると、addServersを行う前にサーバーの死活をチェックして、もし0.12が落ちているのであれば
addServers(array(
192.168.0.11 => 11211,
192.168.0.13 => 11211
));
のようにしないといけない、ということなのでしょうか?
(この方法だともちろんうまくいきましたが、何か納得いかず・・・)
0668nobodyさん
2013/04/29(月) 10:06:27.00ID:???0669nobodyさん
2013/04/30(火) 09:46:50.70ID:???サーバーを冗長化するのは、負荷分散で、データの多重化ではないよ。
データベースへのアクセスをメモリーを使って高速化するのが希望なら、tokyo tyrantを使いなさい。
0670667
2013/04/30(火) 15:11:25.92ID:/LZjkS9qただ、>>667の説明がまずかったようなので、流れを書きますと
Memcachedクラスタ:A、B、C
仮にkey1 => val1がBに対応づけられているとする。
ここでBが落ちたとき
プロセスX
(1) get(key1)する
(2) 当然失敗する
(3) DB叩いてval1を取る(実際には色々加工してval1を作るわけですが)
(4) set(key1,val1)する
(5) 今はクラスタが{A,C}なので、今度は(例えば)Aにkey1 => val1が保存される
プロセスY
(6) get(key1)する
(7) 今度はAに保存されているval1が返ってくる
こういう動作を期待しているんですが、どうもプロセスYでもプロセスXと同様にDB叩いてるっぽいんですよね。
それもタイミング差で数プロセスってレベルじゃなくて、数百というプロセスが何分間も。
当然DBが(結果を加工してval1を作っているWebサーバも)捌ききれなくなってあぼん。
0671nobodyさん
2013/04/30(火) 15:21:11.06ID:???6で失敗してることは確認したの?
6で成功する環境が構築できていることは確認したの?
0672nobodyさん
2013/04/30(火) 15:25:34.14ID:???同じように失敗してるとこへ聞きにいって、同じこと繰り返すに決まってる。
クラスタ纏めてるサーバーが1台あって死活まで管理してるならともかく、
簡易的な分散なんだから。
0673nobodyさん
2013/04/30(火) 15:38:05.83ID:???すみません・・・
> 6で失敗してることは確認したの?
Yes
> 6で成功する環境が構築できていることは確認したの?
addServers(array(A,C))なら期待したとおりに動きます。
>>672
こんなコード書いてやってみましたが、確かにval1は取れませんね・・・そういうもんなのか(´Д`)
$m = new Memcached();
$servers = array(
array('localhost', 11211), //Memcachedが動いている
array('192.168.0.201', 11211), array(...), array(...), ... //存在しないサーバー100個ぐらい適当にぶっこむ
);
$m->addServers($servers);
$m->set('key1','val1',time()+100); //多分localhostじゃないとこに書き込もうとしてる
var_dump($m->get('key1')); // bool(false)・・・
0674nobodyさん
2013/04/30(火) 15:46:15.33ID:???Bを速攻で復旧させたほうがスマートじゃないだろうか
数秒間落ちただけでDBが死ぬほどクリティカルじゃないんだろ?
ハードのトラブルとかで長期間落ちる場合は、addServersのところを自動なり手動なりで
書き換えてクラスタから切り離す。
あとは>>669のようにNoSQLか。どう冗長化すりゃいいのか俺は知らんけど。
0676nobodyさん
2013/04/30(火) 19:59:46.53ID:???DBそのまま叩いてもイケる
0677nobodyさん
2013/04/30(火) 20:02:21.83ID:???作成者が2chで質問って・・・
0678nobodyさん
2013/04/30(火) 20:04:01.91ID:???0679nobodyさん
2013/04/30(火) 20:06:21.67ID:???0680nobodyさん
2013/05/01(水) 03:40:01.52ID:cfjacJ3h$a = 1;
$b = 0;
if ($a == 0)
if ($b == 0) print "a";
elseif ($a == 1)
if ($b == 0) print "b";
else
if ($b == 1) print "c";
上記のようなコードを実行すると、想定では「b」が表示されるはずだったのですが
何も表示されずに終了します。
$a = 1; $b = 1; とした場合も「c」が表示されません。
$a = 0; $b = 0; では想定通り「a」が表示されます。
なぜこのような動作をするのか教えて頂けないでしょうか。
0681nobodyさん
2013/05/01(水) 04:11:57.11ID:???0682nobodyさん
2013/05/01(水) 04:12:19.66ID:???見にくすぎる。
0683nobodyさん
2013/05/01(水) 04:27:00.83ID:???if ($b == 0) {
}
} elseif ($a == 1) {
if ($b == 0) {
}
} else {
if ($b == 1) {
}
}
なんだこのクソみたいなコードは・・・
if ($a == 0 && $b == 0) {
} elseif ($a == 1 && $b == 0) {
} elseif ($b == 1) {
}
0684nobodyさん
2013/05/01(水) 04:28:40.98ID:???0685680
2013/05/01(水) 06:56:39.93ID:???理由がさっぱりです。。
if〜elseif〜else文のときは必ず{}を入れろということでしょうか?
0686nobodyさん
2013/05/01(水) 08:55:31.76ID:???やりたいことが分かった。
AddServerには、weightオプションがあるよ。
ABCをそれぞれ、321にしなさい。Weightの重い順にアクセスする。
weightがフラットだと、均等にアクセスするから、ABCのどれにアクセスするか分からない。
一度アクセスすると、CならCにずーっとアクセスする。でないと、結果が取れないでしょ?
あと、Daemon Toolsを調べなさい。落ちたmemcashedを自動的に再起動してくれる。
0687nobodyさん
2013/05/01(水) 09:01:09.31ID:???その式の解釈は
if ($a == 0)
{
if ($b == 0) print "a";
elseif ($a == 1)
if ($b == 0) print "b";
else
if ($b == 1) print "c";
}
だからです。 なんで elseif のが 一個目のifの受けだと思ったんです?
0688nobodyさん
2013/05/01(水) 09:03:12.54ID:???0689nobodyさん
2013/05/01(水) 10:30:44.81ID:???自分でコード追ってみりゃわかる
わからないうちは括弧入れよう(わかっても読みやすくするために入れるけどね)
インデントは読みやすくするために必須だけど、間違ったインデントに騙されないようにね。
0691nobodyさん
2013/05/01(水) 15:51:42.82ID:???括弧つけないのは
...
...
if ($FLAG === 0) echo "error";
...
...
こういう場合だけ
0692nobodyさん
2013/05/01(水) 16:26:56.70ID:???これ常識ネ
0693nobodyさん
2013/05/01(水) 16:32:05.68ID:???0694nobodyさん
2013/05/01(水) 17:44:31.14ID:???その認識レベルなら必ず括弧入れるべき。
面倒くさいのはわかるが括弧で区切りつけないと後々絶対同じような問題起こす。
0696nobodyさん
2013/05/01(水) 18:53:25.95ID:???たとえば、こうなった。
if ($a == 0)
if ($b == 0) print "a";
elseif ($a == 1)
if ($b == 0) print "b";
else
if ($b == 1) print "c";
0697nobodyさん
2013/05/01(水) 18:54:27.87ID:???if ($a == 0)
if ($b == 0) print "a";
elseif ($a == 1)
if ($b == 0) print "b";
else
if ($b == 1) print "c";
0698nobodyさん
2013/05/01(水) 19:43:46.49ID:j59swQb1public $hensuu;
〜
〜
$hoge = "hensuu";
echo $this->$hoge;
として、$hogeに入ってる文字列でプロパティにアクセスしたいので、
存在しないプロパティを呼び出さないようチェックを入れたいのですがうまくいきません
if(property_exists($this, 'hensuu'))
ではtrueが返ってくるのですが、
if(property_exists($this, $hoge))
ですとfalseが返ってきてしまいます・・・
0699nobodyさん
2013/05/01(水) 20:14:00.04ID:???そのコードどうなってんのよ。
0700nobodyさん
2013/05/01(水) 20:20:42.60ID:???0701nobodyさん
2013/05/01(水) 20:31:42.36ID:???そのメソッド中で変なプロパティ読み出さないようにチェックしれ
0703nobodyさん
2013/05/01(水) 23:56:42.39ID:iNKD91fwとすれば全てのエラーを出力してくれますが、
このエラー内容を取得することは出来ますか?
エラーを画面上に表示させずに、エラー内容をテキストか何かに書き出して
おきたいと考えています。
標準出力ではなくテキストなどへの出力方法などあればアドバイスいただけないでしょうか。
0704nobodyさん
2013/05/02(木) 00:30:53.74ID:???error_get_last()
register_shutdown_function() と絡めてみるとうまくいく思う
0705nobodyさん
2013/05/02(木) 00:33:05.62ID:???なら、 error_log() だな。
0706nobodyさん
2013/05/02(木) 03:39:40.66ID:???0707nobodyさん
2013/05/02(木) 05:41:36.85ID:???0708nobodyさん
2013/05/02(木) 05:49:01.99ID:PlTCCm2Zそのプラグインの使用は、終了コードと標準出力にテキストを出すというものです。
exec 関数でやればいいようですが、処理の並列化のため、
exec ('/pathto/program > /dev/null &', $output, $return_var);
とすると、標準出力を得られません。何かいい方法はありますか?
ファイルにリダイレクトしてそれを読むのでしょうか?いやいや。
0709703
2013/05/02(木) 07:53:36.09ID:7Z0Os0eY回答をもとに対応してみたいと思います。
ありがとうございました。
0711nobodyさん
2013/05/02(木) 10:52:24.02ID:???何をしたいのか良くわからないが、ここが参考になるかもな。
PHPでプロセスを呼び出してパイプで繋ぐ方法
http://d.hatena.ne.jp/UDONCHAN/20101116/1289891757
0712nobodyさん
2013/05/02(木) 13:41:47.39ID:???0713nobodyさん
2013/05/02(木) 15:03:31.48ID:???標準出力捨ててんのに何がしたいのよwwwwww
非同期で標準出力取りたいなら、どっかのファイルにぶち込んで
別のプロセスでそのファイル監視し続けるしかないんじゃないの?
0714nobodyさん
2013/05/02(木) 15:08:06.58ID:???0715nobodyさん
2013/05/02(木) 16:03:05.63ID:???fork して子プロセスで popen して読み取って、
ファイルに書き出してやがったですよ!
0716nobodyさん
2013/05/02(木) 16:04:02.00ID:???0717nobodyさん
2013/05/02(木) 20:20:16.22ID:???そして事態はより複雑に
0718sage
2013/05/03(金) 07:54:54.79ID:???複数のエラーが発生した場合は最後のエラーしかとれません。
エラーをすべて取得する方法ってありますか?
0719nobodyさん
2013/05/03(金) 08:03:38.10ID:???0720sage
2013/05/03(金) 08:59:40.30ID:???0721nobodyさん
2013/05/03(金) 09:19:17.66ID:???0722nobodyさん
2013/05/03(金) 12:58:19.36ID:???0724nobodyさん
2013/05/03(金) 16:06:03.57ID:???すみませんココ試験会場だったのですね間違えました
0725nobodyさん
2013/05/03(金) 18:08:11.32ID:???普通のレンタル鯖だと生ログ見れるところはないと思う
phpとかPerlしか動かせない鯖だと全部のエラーをキャッチしておくってのは無理じゃないかな
0726nobodyさん
2013/05/03(金) 18:23:59.04ID:???wkey.meだけどユーザー毎のホームディレクトリにlogディレクトリがあってそこにログたまっていくぞ
0727nobodyさん
2013/05/03(金) 18:54:53.52ID:???0728nobodyさん
2013/05/03(金) 20:24:59.12ID:???なんつって
0729nobodyさん
2013/05/03(金) 20:43:05.77ID:???借りる理由ってなんだ?
0730nobodyさん
2013/05/03(金) 20:46:04.14ID:???0731nobodyさん
2013/05/03(金) 20:54:23.17ID:???0732nobodyさん
2013/05/03(金) 21:34:09.24ID:???>月1000円未満で借りられるVPSがたくさんあるのに、今時プログラマがレンタルサーバ
0733nobodyさん
2013/05/03(金) 22:30:55.67ID:???いまどき、負荷で他人に迷惑とか心配するようなのなんで借りるのか。
0734nobodyさん
2013/05/03(金) 23:22:55.41ID:???0736nobodyさん
2013/05/04(土) 02:24:53.02ID:???0738nobodyさん
2013/05/04(土) 04:56:11.79ID:???0739nobodyさん
2013/05/04(土) 08:14:30.77ID:???0740nobodyさん
2013/05/04(土) 15:34:13.29ID:???0741nobodyさん
2013/05/04(土) 16:03:20.74ID:???0742nobodyさん
2013/05/04(土) 16:09:50.75ID:???語源や言葉の意味なんてころころ変わるもの
だいたいIT用語なんて確立した意味をもつものは少なく曖昧な意味が多い
下らない争いしてんじゃねえよ
729も用語無理して使うな(下手に曖昧なこというな)
732も意図理解しててあえて突っ込んでやるな
共用サーバって言いたかったんだろ
0743nobodyさん
2013/05/04(土) 17:00:42.40ID:???0744nobodyさん
2013/05/04(土) 19:34:20.11ID:???そういうたぐいのめんどくせー話はいらんわ
0745nobodyさん
2013/05/05(日) 01:54:18.29ID:???0746nobodyさん
2013/05/05(日) 01:55:09.42ID:???0748nobodyさん
2013/05/05(日) 17:12:44.70ID:WrP9RIzVIDの先頭にsenior(シニア)がつくユーザーと、つかないユーザーです。
senior102315
senior102516
112316
senior118311
120210
121653
・
・
seniorを削除して全ユーザのIDを数字のみにしたいのですが
UPDATE `table_ID` SET `field_ID` = REPLACE(`field_ID`,'senior','');
記述がどこか違っているのかわかりません。
一括削除の操作は別のコマンドを使うのでしょうか?
0749nobodyさん
2013/05/05(日) 17:28:37.62ID:???間違ってるようにみえないけど、試しに select してみ
SELECT field_ID , REPLACE〜 FROM 〜
とかさ
0750nobodyさん
2013/05/05(日) 17:58:30.08ID:WrP9RIzVそうそうに引き揚げますのでこれだけみてください
なぜ機能しないのでしょう
SELECT field_ID, REPLACE(`field_ID`,'senior','') FROM `table_ID`;
0751nobodyさん
2013/05/05(日) 18:04:11.71ID:???0752nobodyさん
2013/05/05(日) 18:09:18.89ID:???機能しないってのは結果が0件とか?
エラー表示させるとか、一番単純なやつで結果見るとかしてみては
0753nobodyさん
2013/05/05(日) 18:19:38.27ID:???IDは数値のみでもってシニアかどうかはフラグでもつければいいのに
0754nobodyさん
2013/05/05(日) 19:01:15.54ID:???0755nobodyさん
2013/05/05(日) 19:42:00.33ID:???$newid = preg_replace("/senior/","",$oldid);
$query = "update usertable set id = $newid where id = $oldid";
とかどうかな
0757nobodyさん
2013/05/05(日) 19:49:51.60ID:???制約コロコロ変えたり拡張が簡単になってるんでそ
断片化が半端なさそうだが
0758nobodyさん
2013/05/05(日) 20:02:15.57ID:???0759nobodyさん
2013/05/05(日) 20:18:14.45ID:???SQLの知識が足りないなら無理せず>>755みたいにPHP側に回せばいいだけだな
0760nobodyさん
2013/05/05(日) 20:24:49.96ID:???0761nobodyさん
2013/05/05(日) 20:26:34.38ID:???0762nobodyさん
2013/05/05(日) 20:32:37.47ID:???0763nobodyさん
2013/05/05(日) 20:34:58.73ID:???PHP→SQLって流れが一般的かと
そうするとPHPのほうが楽な人も多いと思う
0766nobodyさん
2013/05/05(日) 23:54:57.58ID:???0767nobodyさん
2013/05/06(月) 00:18:24.18ID:???アホばっか
0768nobodyさん
2013/05/06(月) 00:23:13.86ID:???そりゃSQL自由自在に使える奴ならSQLでやったほうが早いに決まってる
0769nobodyさん
2013/05/06(月) 00:37:03.05ID:???0771nobodyさん
2013/05/06(月) 00:39:03.38ID:???SQLの方が理解できる人多いと思うわ
0774nobodyさん
2013/05/06(月) 04:49:12.12ID:???継続的にやるとかなら負荷とか処理速度とか考えるけど
0775nobodyさん
2013/05/06(月) 04:56:27.67ID:???0776nobodyさん
2013/05/06(月) 07:17:16.77ID:???多くの場合PHPで加工を入れたほうが遅いのは想像に易い
が一応ちゃんとベンチとってからそういう事言わないとな
PosqlみたいなのもあるしSQLが早いっていう考えはちょっとおかしい
0777nobodyさん
2013/05/06(月) 10:20:41.47ID:???パッと見て何がやりたいのか、なんでそうなるのか凡人の頭じゃさっぱりわからないキチガイSQL
0778nobodyさん
2013/05/06(月) 11:08:56.63ID:???いくらなんでも片手間の俺よりはできるだろうと思って外注に出してるけど、
業者さんがこのレベルってことはないよね?
0780nobodyさん
2013/05/06(月) 11:49:12.07ID:???まぁSQLやらない/できない言い訳を必死に考えてんだろうけど
0781nobodyさん
2013/05/06(月) 11:54:27.69ID:???SQLでやったほうがいい処理もあるし、PHP側でやったほうがいい処理もあるに決まってんだろ
そんなにSQL好きならHTMLタグまで全部SQL側で生成しろよwwwww
0782nobodyさん
2013/05/06(月) 17:11:55.85ID:???0783nobodyさん
2013/05/06(月) 20:04:40.44ID:???0784nobodyさん
2013/05/06(月) 20:05:17.12ID:???0785nobodyさん
2013/05/06(月) 20:48:18.75ID:???外注とはコスト削減のために使うものであって、自分より質の高いものを得るために使うものじゃない(確信)
0786nobodyさん
2013/05/06(月) 21:16:20.05ID:???0788nobodyさん
2013/05/06(月) 22:19:17.49ID:???0790nobodyさん
2013/05/06(月) 22:59:21.71ID:???0791nobodyさん
2013/05/07(火) 00:30:53.24ID:???0792nobodyさん
2013/05/07(火) 01:37:23.03ID:zoq9xUOzphpって実行時に一度C言語に変換された後機械語に変換されるんですか?
それともphpインタプリタが直接機械語に変換するのでしょうか?
プログラムの動作する仕組みがよくわからないので教えてください。
0794nobodyさん
2013/05/07(火) 02:41:07.19ID:zoq9xUOzあざっす。
その変換されたものをファイルに書き出すことってできないんですかね?
というのも実行時にいちいち変換するより、もうほとんど手を加えないとういプログラムなら
変換したものを動作させたほうが速いだろうと思うのですが。
開発中 -> インタプリタで実行するごとに変換
本番環境 -> コンパイル?されたファイルを変換せずに実行
0795nobodyさん
2013/05/07(火) 04:43:13.60ID:???0796nobodyさん
2013/05/07(火) 06:06:21.19ID:zoq9xUOzそうなんですか。ありがとうございます。
初心者が言うのも変ですが、変換はできてそれを実行もできるのに
変換したものを保存することができないってのがよくわからんです。
c言語ならコンパイルしたものがファイルとして保存できますよね。
なぜphpは変換したものが保存できないのですか?
0797nobodyさん
2013/05/07(火) 07:00:35.00ID:???http://www.php.net/manual/ja/intro.apc.php
0798nobodyさん
2013/05/07(火) 08:19:30.37ID:???どうやってんのかしらんけど
0799nobodyさん
2013/05/07(火) 09:24:00.12ID:zoq9xUOzapc_bin_dumpfileでできましたー。
これ以前試したことがあってできなかったからapcはまだ不安定なんだと思ってたんですが、
php5.4.13 + apc3.1.13でファイルに書き出せました。
このバイナリデータはすでにphpは関係ないってことですよね?
ということはc言語も関係ないってことだと思うのですが、
これどうやって実行すればいいんでしょうか?
0800nobodyさん
2013/05/07(火) 09:47:48.19ID:???HipHop VM
Phalanger
0801nobodyさん
2013/05/07(火) 10:36:29.78ID:n6USVSPe【PHPのバージョン】5.4.13
【連携ソフトウェア】
【質問内容】超初心者です。
HTMLの記述の中に、<?PHP 〜 ?>を書いて、そこにPHPプログラムを書いて動的なものにしていくと思うんですけど、
while とかで求める繰り返し処理をして連想配列から出した値を、HTMLの記述のあちこちに表示させたい場合、
その表示させたい箇所ごとにwhile分を使わないといけないんでしょうか?例えば
<?PHP
<body>
while (list($key,$val) = each($arr)){
echo "$key $val \n";
}
</body>
?>
の場合だと問題ないのですが、<body>にけっこう多いコードがあったときにもし"$key"と"$val"をバラバラの場所に
表示させたいときに、それぞれにwhileを使うしかないのでしょうか?
よろしくお願いします。
0802nobodyさん
2013/05/07(火) 10:38:35.04ID:???好きにやればいい
0803801
2013/05/07(火) 10:40:42.79ID:n6USVSPewhile (list($key,$val) = each($arr)){
echo "$key";
?>
〜間にHTMLの記述〜
<?PHP
echo "$val";
}
?>
こんな感じで上と下に表示できるかなーと思ったのですが、ダメでした。
よろしくお願いします。
0804nobodyさん
2013/05/07(火) 10:47:24.21ID:???0805nobodyさん
2013/05/07(火) 10:49:30.54ID:???間のHTMLは一回だけにしたいって意味?
ループ中は文字列変数につないでいって
ループ出てからechoすりゃ一回でいける。
0806801
2013/05/07(火) 10:56:47.81ID:n6USVSPeやっったりしてました。
?>と<?PHPで、いったんPHPから抜けたら 間のHTMLはループされずに
echo "$key" と echo "$val" だけループされるのかと思ったけど、そうなりませんでした。
変数につないでいってループ出てからechoをやってみます。
ありがとうございました。
0807nobodyさん
2013/05/07(火) 10:57:43.28ID:???$str = "";
while(...) {
$str = "<li>".$key."=>".$val."</li>";
}
echo $str;
echo $str;
echo $str;
後は好きにしろ
0808nobodyさん
2013/05/07(火) 11:03:54.13ID:???APCに読ませてPHPに実行させる。
独立したapacheモジュールみたいなものを書き出しているわけじゃないよ
0809nobodyさん
2013/05/07(火) 11:04:07.17ID:???0810nobodyさん
2013/05/07(火) 19:18:37.58ID:???ああ
<?PHP
echo implode('', array_keys($arr));
?>
〜間にHTMLの記述〜
<?PHP
echo implode('', array_values($arr));
?>
0811nobodyさん
2013/05/08(水) 17:19:35.07ID:QMrGFLn3<?php
echo "1";
echo "2";
echo "3";
?>
sample.php
$file = file('test.php');
としたときに
$file[0]
には
echo "1";
がはいります。
しかし
$file[5]
には
?>
が入っています。
?>は取得出来るけど<?phpはどうやっても取得されないのでしょうか?
実際には2行目にecho "1";が来るのに配列としては[0]なのであわせられればと思っています。
0813nobodyさん
2013/05/08(水) 18:04:15.48ID:???0814nobodyさん
2013/05/08(水) 18:19:51.72ID:QMrGFLn3array(5) {
[0]=>
string(6) "
string(10) "echo "1";
"
[2]=>
string(10) "echo "2";
"
[3]=>
string(10) "echo "3";
"
[4]=>
string(2) "?>"
}
となってました。
ブラウザ側のソースには
[0]=>
string(6) "<?php
"
[1]=>
string(10) "echo "1";
と表示されています。
html上のものでなぜソースが異なるのかちょっと意味がわからないです。
0815nobodyさん
2013/05/08(水) 18:25:42.54ID:???"
[1]=>
がタグ扱いでブラウザで表示されないだけじゃねーか。
0816nobodyさん
2013/05/08(水) 18:26:35.32ID:???表示しなくするだろw
どうしてもブラウザに出したければ、htmlspecialcharsを通すとかでどうかな。
0818nobodyさん
2013/05/08(水) 19:10:17.99ID:???0820t
2013/05/08(水) 21:34:36.96ID:zJfXxHKJ【PHPのバージョン】5.3
【連携ソフトウェア】
【質問内容】
$encodingText=htmlspecialchars($writingText);
$encodingText=str_replace('\r\n','<>',$encodingText);
$encodingText=str_replace('\n','<>',$encodingText);
$encodingText=str_replace('\r','<>',$encodingText);
$encodingText=str_replace(PHP_EOL,'<>',$encodingText);
ここで聞く事なのかどうか。。2chのlogみたいにcsvにフォームからの書込みを一行保存したくて改行を<>に変換したいですけど
これだとcsv内は改行されてしまいます。。何故かPHP_EOLを使った部分で改行が「"改行<>"」という形でcsvに保存されます。
どうすりゃ改行を一行にまとめられますかね???ちなみに最初のhtmlspecialcharsは関係なかーたです
0821nobodyさん
2013/05/08(水) 21:40:22.63ID:???0822nobodyさん
2013/05/08(水) 21:52:05.37ID:???改行コード(\n)がシングルになってる。
展開させるためにはダブルにしろ。"\n"
htmlspecialcharsは出力の直前にかけろ。
ただし2chがそういう仕様ならそれを真似るなら仕方ない。
str_replaceでまとめられるものはまとめろ。
つまりstr_replace(["\r\n", "n"], '<>',$encodingText);
"\r"で改行なんて今更ない。昔あったのかも知らん。
遺贈。
0823nobodyさん
2013/05/08(水) 22:19:17.07ID:???反転させるような関数はありますでしょうか?
なければ100-(100*2)みたいな感じしかないでしょうか。
0824t
2013/05/08(水) 22:26:44.16ID:zJfXxHKJありがとうございます。str_replaceのシングルをダブルクオートに変えたら行けました。
どーもですどーもです。
ちなみにその[]で囲むやり方知らなくてこっちで動かなくて気になるんですができれば。。。。。
0825t
2013/05/08(水) 22:28:51.25ID:zJfXxHKJ-1をかけたらええですよ
0827t
2013/05/08(水) 23:17:42.41ID:zJfXxHKJおーどーもです。うーむ無理か。。
0828nobodyさん
2013/05/08(水) 23:57:01.25ID:???こうすればいけるよ。
>>826のは
5.4から array() の代わりに [] が使えるようになったよって意味の => かと。
0829nobodyさん
2013/05/09(木) 00:11:27.65ID:???0830nobodyさん
2013/05/09(木) 09:06:33.16ID:Jsywf66a【PHPのバージョン】5.3
【連携ソフトウェア】MySQL
【質問内容】
datetimeの比較がうまくいきません。
$start = new DateTime("2013/05/08 12:30:30");
$end = new DateTime("2013/05/04 12:30:30");
if( $start > $end )
{
echo "true";
}
else
{
echo "false";
}
としてもfalseのみが出ます。
仮に$startと$endを入れ替えてもfalseとなります。
http://php.net/manual/ja/datetime.diff.php を見るとオブジェクトの比較が出来ているようなのですが何か違っていますでしょうか?
0831nobodyさん
2013/05/09(木) 09:11:48.64ID:???http://ideone.com/7kfq6S
0834nobodyさん
2013/05/09(木) 10:26:25.73ID:???new を使っているからオブジェクトで定義しているんじゃないの?
中の値で比較するんだったら
if($start->gettimestamp() > $end->gettimestamp())
とかで比較しないとダメなんじゃない?
0836nobodyさん
2013/05/10(金) 22:59:44.03ID:nZ5eiGcK0837nobodyさん
2013/05/10(金) 23:03:50.33ID:???0838nobodyさん
2013/05/10(金) 23:21:28.67ID:iT9k79IA0839nobodyさん
2013/05/10(金) 23:26:36.03ID:???0840nobodyさん
2013/05/10(金) 23:50:29.42ID:ReW38688要素についてtrue(1)かfalse(0)かを確かめたいのですが
var_dumpで
object(SimpleXMLElement)#1 (1) {
["result"]=>
object(SimpleXMLElement)#4 (4) {
["options"]=>
object(SimpleXMLElement)#2 (0) {
}
["raw"]=>
object(SimpleXMLElement)#3 (0) {
}
["status"]=>
string(1) "0"
["statusmsg"]=>
string(5) "Sorry"
}
}
のようになっているのものを
if($object->result->status)
とすると0の場合も1の場合もtrueになってしまいます。
string型の0はfalseと判断されないのでしょうか?
0842nobodyさん
2013/05/11(土) 09:14:21.17ID:3jYy1XhqQRコード読み取りから空メールさせる方法とは別に、
サイトからユーザに空メールを送るようにもさせたいと思っております
mailtoを貼り付けようと思ったのですが、この場合spamが心配です
たとえば、phpで動的に書き出したページにmailtoを仕込んでおけば
spam対策になるもんでしょうか
それともなにか他に手だてがありますでしょうか
0844nobodyさん
2013/05/11(土) 12:18:36.78ID:OhMoHBiSフィールド名いじっておいて
普通に使うフィールド名は罠フィールドとしてcssで非表示
罠フィールドに何か入ってたらbotとして拒否
ということやってる
0845nobodyさん
2013/05/11(土) 22:28:31.55ID:JC/Ksawh質問1
message_typeで1を指定したらメールを送れるってことですが、
この場合このPHPが入ってるのと同じサーバのsmtpdを利用するってことですよね?
他サーバのsmtpdを使うことは出来ないんでしょうか
アプリケーションサーバとメールサーバを分けたい場合はどうすれば良いんでしょうか
質問2
エラーを出力保存するファイルを指定できるようになっていますが、
蓄積されたエラーが膨大になった時に、過去ログ化して新しい同名のファイルを
作成することになるんだと思います。
このとき、何を基準に新規ファイル作成するんでしょうか
そういうのを指定できるオプションってないですか?
よろしくお願いします
0846nobodyさん
2013/05/11(土) 22:36:28.21ID:???1
http://www.php.net/manual/ja/mail.configuration.php
2
logrotate
0848nobodyさん
2013/05/12(日) 12:39:50.54ID:kHm/fQGTググるとたくさん該当する話が出てくるんですが
$msg = "エラーです";
error_log($msg.'\n', 3, '/tmp/error.log');
error_log($msg.'\r', 3, '/tmp/error.log');
error_log($msg.'\r\n', 3, '/tmp/error.log');
error_log($msg.'\n', 3, '/tmp/error.log');
error_log($msg.'\r', 3, '/tmp/error.log');
error_log($msg.'\r\n', 3, '/tmp/error.log');
とどうやっても改行されません
エラーです\n
エラーです\n
と、そのまま出てしまいます
どうしたらいんでしょうか
0849848
2013/05/12(日) 12:46:50.30ID:???0850nobodyさん
2013/05/12(日) 12:52:41.37ID:???0853nobodyさん
2013/05/12(日) 22:07:17.68ID:4FW3vhI4178:名無しさん@13周年[]
2013/05/12(日) 20:54:52.39 ID:VA7SdRMg0
ふーーーんwwww
民主党調子こいてんなあwwww
ようおまいらwww元気ぃ?wwwよろしくやってたかい?www
--- 以下スレ情報 ---
【政治】「自民が反対したから」「官僚が抵抗したから」 民主党の『大反省会』、反省どころか、言い訳や責任転嫁がほとんど★3
http://uni.2ch.net/test/read.cgi/newsplus/1368355843/
0854nobodyさん
2013/05/13(月) 13:12:37.61ID:Y6gDftln【PHPのバージョン】5.3
【連携ソフトウェア】
【質問内容】HTMLの入力フォームにURLを入力して、
予め保存してある複数のURLと重複していないか、
リンク切れではないかという判定をしたいのですが
うまくいきません。
まず重複の判定は、入力フォームからの文字列を$str、
予め保存してるURLを"urlist.txt"に保存してます。
if(!$fp=fopen("urllist.txt","r")){
return ERROR(1);
}else{
$urllist = file("urlist.txt");
foreach( $urllist as $url ){ //URLの重複チェック
if (mb_ereg( "$str","$url" )){
return ERROR(2);
break;
}
}
fclose($fp);
}
こんな感じで、普通のURLだと重複チェックできるのですが、
yutubeやニコニコ動画などのURLだとなぜか判別できません。
0855854
2013/05/13(月) 13:14:40.79ID:Y6gDftlnget_http_headerというのをつかってみたのですが
うまくできませんでした。
何か良い方法があれば教えてください。
よろしくお願いします。
0856nobodyさん
2013/05/13(月) 13:29:28.92ID:???.は任意の一文字で合ってしまうとしても、 ? があると通らないよね。
0857nobodyさん
2013/05/13(月) 13:40:37.60ID:???0858nobodyさん
2013/05/13(月) 15:15:30.49ID:k+GDNsHpfunction &hoge()
{
return new StdClass;
}
とすると、
Notice: Only variable references should be returned by reference
とエラーログが出ますよね。
で、いったんnewを変数に入れてからreturnすると問題はなくなります。
しかしこれって、いったん変数に入れることで
PHPの処理内容としてどのような違いがあるわけなのでしょうか?
恐れ入りますが、ものすごくわかりやすく教えて下さい。
0859854
2013/05/13(月) 15:56:53.43ID:Y6gDftlnレスありがとうございます。
見てみたら、yutubeやニコ動のURLには?、&など入ってました。
これを正規表現に展開しないようにすれば、判別できるようになるのでしょうか?
展開しないようにそのまま判別するには、?、&があった場合に\を付ける的な
処理をすればできますかね?
0860nobodyさん
2013/05/13(月) 16:19:53.06ID:???完全一致でいいならstrcmpやstrcasecmp使ってはどうか。
0861nobodyさん
2013/05/13(月) 16:52:44.90ID:???質問の答えじゃ無いんだけど、なんで
function hoge()
とやらずに
function &hoge()
ってやりたいの?
0862nobodyさん
2013/05/13(月) 17:06:55.59ID:k+GDNsHpPHPの挙動と仕様への理解を深めたいだけで、やりたいわけじゃないです。
オブジェクトはデフォルトで参照で渡されるそうですが、
この場合、&を付けることでどのような違いが発生していますか?
0863nobodyさん
2013/05/13(月) 18:14:48.62ID:???んー、明確な答えを持ってるわけじゃ無いんだけど、まず、new Klassしたものはリファレンスではない。
http://php.net/manual/ja/language.oop5.references.php ・・・(1)
$a = new Klass;
この場合の$aはリファレンスでは無くオブジェクトのID。
一方、リファレンスを戻すメソッドは、&method()と定義し、リファレンスを戻さなければならない。
http://www.php.net/manual/ja/language.references.return.php
つまり、&method()では、new Klassしたものを直接戻すことはできない(型が違うので)。
&method()でreturn $variable;と書くと、$variableのリファレンスが戻される(&$variableが戻る)。
これは、(1)の$c = &$d; の場合と同じ。
0864863
2013/05/13(月) 18:16:35.34ID:???行われないのだろうかという疑問が残るが、それは良くわからない。
良くわからないので、俺は&method()は一生使わないと思う。
0865nobodyさん
2013/05/13(月) 18:22:46.46ID:???0866nobodyさん
2013/05/14(火) 00:45:31.37ID:gD2UsIagオブジェクトのIDとは知らなかったのでひじょーに勉強になりました。
> 式 の結果を返してくれることはありません。
> 可能なことは、値へのリファレンスを返すことができるということだけで、
> それ以外の何者でもありません。
という仕様だということで、&のretun newが無効なのも納得できました。
0867nobodyさん
2013/05/14(火) 01:13:37.48ID:gD2UsIagfunction hoge()
{
return 1;
}
$r = &hoge();
とした時、$rの参照先はどこを指していますか?
どこからもアクセスや改変がされない何処かなのでしょうか?
0868nobodyさん
2013/05/14(火) 09:26:33.29ID:???0869867
2013/05/15(水) 07:58:41.28ID:/TAZ4XOpマニュアルで、リファレンスはハードリンクのようなものだと学びました。
http://www.php.net/manual/ja/language.references.whatare.php
とすると、>>867では「$r = &hoge();」としても、「$r = hoge();」としても、
この場合、値に対してシンボルテーブルが割り当てられているのは「$r」に限られるため、
「$r」が保持するものも処理内容自体も、全く同じであると考えていいわけですね?
0870nobodyさん
2013/05/15(水) 22:55:26.37ID:efuZNxA4くだらない質問ですが助けてください。
【OS名】Windows7+XAMPP1.8.1
【PHPのバージョン】5.4.7
【連携ソフトウェア】PEAR 1.9.4
【質問内容】
DBからテーブルのデータを連想配列に取り込もうとしています。
Web上にあった「while($row=$hoge->fetchRow(DB_FETCHMODE_ASSOC))」を利用して実行すると、
「Notice: Use of undefined constant DB_FETCHMODE_ASSOC - assumed 'DB_FETCHMODE_ASSOC' in hogehoge.php on line 34」とエラーが出てしまいます。
エラーの通り「while($row=$hoge->fetchRow('DB_FETCHMODE_ASSOC'))」とするとエラーは消えますが、取得した配列のキーはnullになります。
どうしたら回避できるでしょうか。
なにとぞお助けください。
0871nobodyさん
2013/05/16(木) 01:43:12.19ID:???0872nobodyさん
2013/05/16(木) 02:27:01.44ID:???サーバーたててlampは辞めて欲しいけどローカル用環境ならxamppで十分でしょ
0873870
2013/05/16(木) 08:03:03.05ID:yTIwfF81ありがとうございます。
XAMPPで構成されたAPACHEやPHPは単独で入れた場合と動作が違うということでしょうか。
XAMPP消してそれぞれ単独インストールしてみたほうがいいですか?
0875nobodyさん
2013/05/16(木) 12:38:58.01ID:IW38rAuXfileで読み出し
whileで全行検索
一致部分を変更
file_put_contentで元に戻すという形で書き換えています。
linuxのsedみたいに指定箇所をざっくり書き換える方法はありますか?
0876nobodyさん
2013/05/16(木) 12:52:43.89ID:???あと、sedがいいならsed起動しろ。
0877nobodyさん
2013/05/16(木) 13:26:22.85ID:IW38rAuXすべてをいったん読み込むことなく
該当する場所のみを書き換えるのにざっくりという言葉を使ってしまいました。
申し訳ありません。
現在開発をしているところはコマンドを叩ける権限がないので
一旦すべてを読み込む以外でsedのように書き換える方法があればと思っておりました。
0880nobodyさん
2013/05/16(木) 16:59:41.66ID:???ファイルの先頭に一文字追加したときに起こっていることについても勘違いしてそう。
0881nobodyさん
2013/05/16(木) 17:21:26.79ID:???0882nobodyさん
2013/05/16(木) 17:31:23.47ID:???0883nobodyさん
2013/05/16(木) 19:08:30.78ID:???0885870
2013/05/16(木) 20:28:48.82ID:pZ2YUXztご指摘ありがとうございます。
requireはMDB2.phpだけ指定しています。
MDB2_driverも呼んでみましたが変わらなかったです。
0887nobodyさん
2013/05/16(木) 22:58:34.11ID:???MDB2なら MDB2_FETCHMODE_ASSOC
0888870
2013/05/17(金) 18:10:51.64ID:GrS1oXzW解決しました!!
マニュアルはちゃんと全部読めってことですね、猛省します・・・。
みなさまありがとうございました!!
0889nobodyさん
2013/05/17(金) 19:57:20.25ID:???0890nobodyさん
2013/05/17(金) 20:42:22.69ID:hjTCl7an↓このプログラムの値を受け取るにはどのようにしたらいいのでしょうか?
<form action="sample10-2.php" method="get">
<?php
$items=array('a-1'=>'ガム', 'b-2'=>'チョコレート', 'c-3'=>'クッキー');
foreach($items as $itemKey => $itemValue){
print('<input type="checkbox" id="'.$itemKey.'" value="'.$itemKey.'" />
<label for="'.$itemKey.'">'.$itemValue.'</label>');
}
?>
<input type="submit" value="送信する" />
</form>
0892nobodyさん
2013/05/17(金) 21:54:07.09ID:hjTCl7anarray(0) { } ってでてきました。
0893nobodyさん
2013/05/17(金) 22:03:08.07ID:???0894890
2013/05/17(金) 22:06:06.39ID:hjTCl7an0895nobodyさん
2013/05/17(金) 22:27:59.48ID:jIpNXAl4/public_htmlファルダに置いたa003.phpに対して
同じく/public_htmlファルダに置いたtest.shに
#!/usr/bin/php
cd ~/public_html
/usr/bin/php a003.php
と書いて、cronマネージャに
sh ~/public_html/test.sh
と書いて実行しましたが、a003.phpは動きません
sh ~/public_html/test.shは間違いない記述で
a003.phpは動作正常に動作しています。
test.shのphpの実行の間違えだと思うのですが、
教えてください。
0896nobodyさん
2013/05/17(金) 22:37:03.62ID:???0898nobodyさん
2013/05/17(金) 22:47:24.26ID:jIpNXAl4test.shが777にしています。
レンタルサーバーの会社に問い合わせると、
phpは動く。
cronのコマンドなどのサポートは一切できない
という返信が来ました
もう、さっぱりわかりません
0899890
2013/05/17(金) 22:48:23.15ID:hjTCl7anURLは
http://localhost/sample10-2.phpになりました
0902nobodyさん
2013/05/17(金) 23:03:59.98ID:???test.shが777にしています。
レンタルサーバーの会社に問い合わせると、
phpは動く。
cronのコマンドなどのサポートは一切できない
という返信が来ました
もう、さっぱりわかりません
0903nobodyさん
2013/05/17(金) 23:05:37.84ID:???0904nobodyさん
2013/05/17(金) 23:06:17.51ID:jIpNXAl4cd ~/public_html
/usr/bin/php a003.php
こうですか
0905nobodyさん
2013/05/17(金) 23:06:57.67ID:???0906nobodyさん
2013/05/17(金) 23:26:49.02ID:???あとは php のパスかなぁ。確認した?たまに
/usr/local/bin/php
のところもあるよ
0907nobodyさん
2013/05/17(金) 23:52:42.50ID:jIpNXAl4モジュール版 パス: /usr/bin/php
となってました
fc2 レンタルサーバーLITE
0908nobodyさん
2013/05/18(土) 00:22:14.10ID:???これおかしくないか?
間違えてないって何で言えるの?
シェルを実行しているルートからのパスにしないとダメだろ
0909nobodyさん
2013/05/18(土) 00:28:16.12ID:sKm+lEFLsh ~/public_html/test.shと記述すると
public_htmlの下に置いたtest.sh
にecho "why" > ~/public_html/naze.txtと記述した時に
public_htmlの下にnaze.txtが生成されるので、
sh ~/public_html/test.shで正しいと判断しました。
0910890
2013/05/18(土) 04:48:14.04ID:8v+sotfd受け取り側のプログラムのソースは
array(0) {
}
でした。
0911nobodyさん
2013/05/18(土) 06:37:50.58ID:6ky0kPCmどうやって表示するのかすら考えようとしないからなんだよね(笑)
0913nobodyさん
2013/05/18(土) 09:32:33.84ID:???当然ですがPOSTはされません。
>>890のPHPは、 そのような文字列を書き出すだけのものです。
その文字列が sample10-2.php へPOSTするような処理をするhtmlだと
認識して実行できるのはブラウザだけです。
普通はPOSTするだけのプログラムをPHPで書きます。
自動でPOSTするようなjavascriptを入れてブラウザになんとか渡して実行できていたとしても
checkboxは、チェックされていないとPOST時にキーすら渡しません。
0914nobodyさん
2013/05/18(土) 09:46:20.08ID:???0915nobodyさん
2013/05/18(土) 11:26:02.37ID:???#! /usr/bin/sh
/usr/bin/php 引数
引数はスクリプトのパスだ
0916890
2013/05/18(土) 19:00:46.89ID:8v+sotfd元のphpプログラムのソースは
<form action="sample10-2.php" method="get">
<dl>
<dt>商品</dt>
<dd>
<?php
$items=array('a-1'=>'ガム', 'b-2'=>'チョコレート', 'c-3'=>'クッキー');
foreach($items as $itemKey => $itemValue){
print('<input type="checkbox" id="'.$itemKey.'" value="'.$itemKey.'" />
<label for="'.$itemKey.'">'.$itemValue.'</label>');
}
?>
</dd>
</dl>
<input type="submit" value="送信する" />
</form>
です。受け取り側はわからないです
0918890
2013/05/18(土) 19:30:34.88ID:8v+sotfdレンタルサーバにうpしました。
http://yumaru51.sitemix.jp/sample10.php
0920nobodyさん
2013/05/18(土) 19:41:33.17ID:???この対戦がおわったら
0921nobodyさん
2013/05/18(土) 19:44:51.53ID:???0922890
2013/05/18(土) 20:14:52.87ID:8v+sotfd再現?PHPの勉強でブラウザ上に表示させたいだけなんです!
できたら受け取りのプログラムをどのように書けばいいか教えてください!!
0924890
2013/05/18(土) 20:34:42.77ID:8v+sotfdGETの後はvalue属性の値でいいんですか?その時は変数宣言はいりますか?
0925nobodyさん
2013/05/18(土) 20:35:29.58ID:???こうだった
このまま打て
0926890
2013/05/18(土) 20:38:06.79ID:8v+sotfdsample10-2.phpのほうで
Array ( ) て表示されてしまいました。
0927nobodyさん
2013/05/18(土) 20:43:18.18ID:???送信側idじゃなくてnameに変えろ
0928890
2013/05/18(土) 20:54:09.48ID:8v+sotfdできました!!ありがとうございます!!
ちなみにvalueの値を表示するのにはどうしたらいいですか?
0929nobodyさん
2013/05/18(土) 20:57:32.46ID:???0930890
2013/05/18(土) 21:12:47.65ID:8v+sotfd全部をチェックしたらArray ( [a-1] => a-1 [b-2] => b-2 [c-3] => c-3 ) と表示されるんですけど
キーだけ表示するにはどうしたらいいですか?
0931nobodyさん
2013/05/18(土) 21:15:38.41ID:???この場合だと
echo $_GET['nameの値'];で値が出せる
a-1だったら
echo $_GET['a-1']な
チェックされてるものだけ全部表示したいなら
foreach($_GET as $value){
echo $value;
}
で全部出る
0932890
2013/05/18(土) 21:40:16.26ID:8v+sotfdできました!ありがとうございました!!
0933nobodyさん
2013/05/19(日) 20:07:23.39ID:5aKhdCp3$desktop_path = getenv("HOMEDRIVE").getenv("HOMEPATH");
$path = $desktop_path.'\test.txt';
file_put_contents($path,"hoge");
とやっても、デスクトップフォルダではなく、ユーザフォルダにファイルが出力されてしまいます
どうするのが正しいのでしょうか
0934nobodyさん
2013/05/19(日) 20:08:40.67ID:???0935nobodyさん
2013/05/19(日) 20:11:36.88ID:???0936nobodyさん
2013/05/19(日) 20:49:22.95ID:???ありがとうございました
0937nobodyさん
2013/05/19(日) 21:00:06.37ID:???0940nobodyさん
2013/05/20(月) 16:54:47.19ID:???0941nobodyさん
2013/05/20(月) 17:02:05.31ID:???質問者と同じ人ではあるだろうけど
0944nobodyさん
2013/05/21(火) 13:52:14.79ID:zVTd5q9vいろいろなサイトを見ると、すべてのディレクトリに置く必要があると書いてあります
一般的なフレームワークのように、
ルートに置かれているindex.phpが、サブディレクトリの各ファイルを読み込んでいる場合、
サブディレクトリにも置く必要があるのでしょうか?
0945nobodyさん
2013/05/21(火) 14:07:29.21ID:???いろいろなサイトをググるより、とりあえず公式
http://www.php.net/manual/ja/configuration.file.per-user.php
0946nobodyさん
2013/05/22(水) 03:02:39.01ID:bg0nnEgAmb_regex_encoding("UTF-8");
$str = "てすと";
$regex = '(\xEE\x80\x80)|(\xEE\x80\x81)';
$array = mb_split($regex,$str);
→エラーなし
$regex = '\xEE\x80[\x80-\x81]';
$array = mb_split($regex,$str);
→Warning: mb_split(): mbregex compile err: too short multibyte code string
正規表現が表わすものは同じなのに、後の例では警告が出ます。
理由は何でしょう?
0947nobodyさん
2013/05/22(水) 07:03:42.22ID:+OY2v0pP# 戻り値と後方参照は別として
$regex = '(\xEE\x80\x80)|(\xEE\x80\x81)';
→$regex = '\xEE\x80\x80|\xEE\x80\x81'; と同一
$regex = '\xEE\x80[\x80-\x81]';
→$regex = '(\xEE\x80\x80|\xEE\x80\x81)'; と同一
0948nobodyさん
2013/05/22(水) 07:08:05.64ID:s3ucw8IQ人気メーターのような画像を生成したいと思っており
メーターのmaxValueを100と設定した場合
http://www.example.com/meterimg.php?value=100
上記URLでメーターがMAXの画像が表示され
http://www.example.com/meterimg.php?value=50
上記URLでメーターが半分の画像が表示され
こんな感じで画像生成する方法って可能でしょうか?
可能であれば参考になりそうな記事等教えて貰えれば幸いです。
またこのような手法をなんというかも知りたいです。
よろしくお願いします。
0949nobodyさん
2013/05/22(水) 07:25:19.91ID:???どんな画像を生成したいかによるが生成自体はできる。
ただ、それなら10個ほど画像用意したほうが毎回生成するよりいいと思う。
php 画像生成 gd でぐぐればでてくる。
0950nobodyさん
2013/05/22(水) 09:05:15.52ID:???0951nobodyさん
2013/05/22(水) 09:29:22.30ID:???0952nobodyさん
2013/05/22(水) 09:48:53.15ID:s3ucw8IQありがとうございます。
自分でも画像を10個程度用意してやろうかと思ったのですが
出来ればmaxvalueなる値を設定出来るようにしたかったので
この方法が出来ればなぁと質問させて頂きました
ご提言頂いたphp 画像生成 gdで調べてみます。
ありがとうございました。
0953nobodyさん
2013/05/22(水) 15:14:10.07ID:bg0nnEgAありがとうございました
同じになるように、エラーが出ない方を
$regex = '((\xEE\x80\x80)|(\xEE\x80\x81))';
としても、エラーは出ません。
[\x80-\x81]の展開部分に何か問題があるようです
mbregex compile err: too short multibyte code string
で検索しても、情報がほとんどなく困っています
0955nobodyさん
2013/05/22(水) 16:50:09.27ID:???[\xEE\x80\x80-\xEE\x80\x81] って書いてください。
0956nobodyさん
2013/05/22(水) 17:10:09.02ID:bg0nnEgAありがとうございました。
0957nobodyさん
2013/05/23(木) 10:07:22.17ID:???>>951じゃないけど、この人の言うやり方はかなり効率的だよ。
PHP-gdや固定的な画像だけでなんとかするというよりも
cssやjQueryを併用してブラウザ側に視覚的な処理を持たせることも
考えたほうが、構築も負荷も楽になるじぇ。
0958nobodyさん
2013/05/23(木) 15:08:16.74ID:???0959nobodyさん
2013/05/23(木) 19:09:57.40ID:C+sPY2uV0960nobodyさん
2013/05/24(金) 03:03:29.49ID:???0961nobodyさん
2013/05/24(金) 07:40:55.82ID:???0962nobodyさん
2013/05/24(金) 07:43:06.74ID:???0963nobodyさん
2013/05/24(金) 10:01:17.06ID:N0RBDP8p【PHPのバージョン】5.3
【連携ソフトウェア】MySQL
【質問内容】
配列について質問です。
$_POST['num1']
$_POST['num2']
$_POST['num3']
と配列があるのですが、この個数が不確定な状態です。
num1 〜 num3 までのときもあれば num1 〜 num78 まであるときもあります。
現在は1個ずつnum*があるかどうかを確認してから取り出しているのですが
num*の*の部分を正規表現みたいな感じで一気に抜き出すようなことはできないでしょうか?
もしくは効率の良い方法などあればご教授いただけないでしょうか。
0965nobodyさん
2013/05/24(金) 15:49:43.00ID:???array_map(function($element) use ($results) { if(preg_match('/^num([0-9]+)$/', $element, $m)) { $results[] = $m[1]; } });
0966nobodyさん
2013/05/24(金) 15:51:14.48ID:???$results = array();
array_map(function($element) use ($results) { if(preg_match('/^num([0-9]+)$/', $element, $m)) { $results[] = $m[1]; } }, $_POST);
これで $results に数字の部分だけが配列になって入ってるはず。
0967nobodyさん
2013/05/24(金) 15:52:54.06ID:???間違えた
$results = array();
array_map(function($element) use ($results) { if(preg_match('/^num([0-9]+)$/', $element, $m)) { $results[] = $m[1]; } }, array_keys($_POST));
何やってんだおれ
0969nobodyさん
2013/05/24(金) 16:21:49.71ID:???0970nobodyさん
2013/05/24(金) 16:22:38.74ID:???何のための三項演算子だ
0971nobodyさん
2013/05/24(金) 16:25:56.38ID:???0972nobodyさん
2013/05/24(金) 16:27:20.22ID:???0973nobodyさん
2013/05/24(金) 16:28:13.75ID:???0974nobodyさん
2013/05/24(金) 17:37:29.91ID:tSKlADWF鯖がcentosで空メールのシステムを作っているのですが、
aliecesにパイプ処理で受信してからphpに処理を引き渡してます
ウェブサーバーでphpを動かす時はapacheですが、こんな風にパイプで
phpに処理させるときって、そのphpファイルを実行するユーザは誰なんでしょう
0975nobodyさん
2013/05/24(金) 17:39:49.26ID:???for($i = 1 ; $i<=78 ;$i++)
if (isset($_POST['num'.$i]))
$r[$i] = $_POST['num'.$i];
でいいんじゃねーのと思うがね。
0976nobodyさん
2013/05/24(金) 17:59:56.83ID:???こんな風にというのがどんな風なのかわからないが、コマンドラインでphpを実行するのならそのユーザ、
cronもそのユーザ、apacheで実行されるphpでコマンドを起動するなら、apache。
0977976
2013/05/24(金) 18:02:40.48ID:???だったら、postfixなんかを起動したユーザ(普通はroot)かな。
0978976
2013/05/24(金) 18:09:44.10ID:???デフォルトだとnobodyみたい。
http://d.hatena.ne.jp/takel/20100827
0979nobodyさん
2013/05/25(土) 19:59:05.35ID:aLejvzSwUTF-8の文字コードであれば、mb_strstrを使うべきなのでしょうか?
0980nobodyさん
2013/05/25(土) 20:23:17.62ID:???0981nobodyさん
2013/05/25(土) 20:24:38.26ID:aLejvzSw0982nobodyさん
2013/05/25(土) 20:29:04.77ID:???全角文字と半角文字
アルファベットとひらがな
シングルバイトとマルチバイト
UTF-8とASCII
それぞれ意味が違うから気をつけてな
0983nobodyさん
2013/05/25(土) 20:30:05.85ID:aLejvzSw何ででしょうか?
0984nobodyさん
2013/05/25(土) 21:03:47.41ID:???0985nobodyさん
2013/05/25(土) 22:34:50.52ID:???質問と言うより相談なんですが
mysqlのパスワードなどが書かれているphp(config.php)のの保存場所ですが
皆さんどのように保存してますか?
httpでアクセスできない場所に格納するだけしかやってないのですが
もっと良い方法とかあったりするんでしょうか?
0987nobodyさん
2013/05/26(日) 09:35:49.57ID:???公開ディレクトリに設置してるけど、
ホームページにドクロマークをつけて
「クリックするな」というリンクを張ってるよ。
0988nobodyさん
2013/05/26(日) 18:55:22.13ID:???0989nobodyさん
2013/05/26(日) 18:56:05.70ID:???0990nobodyさん
2013/05/26(日) 18:59:25.23ID:???言語の美しさ?とかじゃなくて実行効率・開発効率を重視してます。
ほぼ毎週くらい、新規に要求定義が変わってくるんです。
もう3年ほど運用してますが。
0991nobodyさん
2013/05/26(日) 19:00:41.03ID:???googleも大好きpython
python選んでおけば間違いない
0992nobodyさん
2013/05/26(日) 19:43:09.74ID:???0993nobodyさん
2013/05/26(日) 19:44:31.09ID:???0994nobodyさん
2013/05/26(日) 19:46:28.42ID:???0995nobodyさん
2013/05/26(日) 21:34:54.53ID:???0996nobodyさん
2013/05/26(日) 21:37:25.99ID:???0997nobodyさん
2013/05/26(日) 21:56:58.54ID:???0998nobodyさん
2013/05/26(日) 22:07:17.00ID:???0999nobodyさん
2013/05/26(日) 22:36:59.39ID:lTpjZRZk【PHPのバージョン】6.4
【連携ソフトウェア】MySQL PDO
【質問内容】
PDOの接続からload data infileを使おうとするとmysqlからAccess denied for userのエラーが出てしまうのだけど
どうすればいいんでしょう?
ちなみに接続オプションにPDO::MYSQL_ATTR_LOCAL_INFILEをセットしてもダメでした。
1000nobodyさん
2013/05/26(日) 22:57:44.75ID:???そして解決しましたmysqlの接続ユーザにfile権限がついてませんでした。
mysqlいちいち面倒くさい。。。
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。