トップページ⇒php
1001コメント298KB

【PHP】下らねぇ質問はID出して書き込みやがれ 131

レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん2013/11/10(日) 15:46:09.34ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 130
http://kohada.2ch.net/test/read.cgi/php/1379566039/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0002nobodyさん2013/11/10(日) 15:47:11.87ID:???
関連リンク
■本家マニュアル   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/11/10(日) 15:47:44.07ID:???
【簡易FAQ】
1.文字コードは何を使えばいいの?
 →1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
 → http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
 → Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
 → 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
  「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
 → {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
 → cronかタスクスケジューラを使え。
7.extractって危険なの?
 →変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
 → URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
 → .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
10. そもそもインストールの時点でうまくいかない
 → 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
  Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
0004nobodyさん2013/11/10(日) 15:48:22.33ID:???
11. SQLの質問はどこで?
 → データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
 → ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
 → 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
 → よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
  http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
15. クッキーの情報をユーザから隠したい
 → セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
 → strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
 → まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
 → C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
  参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(http://〜とか)を扱う際の限界
 → fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
  必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
 →19.を参照
21. 画像処理一般 or GDの限界
 → ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
 → 好きにしてください
0005nobodyさん2013/11/10(日) 15:50:32.33ID:???
           (:    /⌒ヾミァ―=、=ミ、 __
          ゝ_/        \ンヾ `ヽ
          / 7 /       ヽ Y´ ̄`ヽ)
            / j{. {-{ー{ ト { }_}  }ゝ   人
        / /Yヘ {!∨八 ト、j\| ヽj彡爪   ヘ
          / / //!ヘY⌒ヾ\<⌒ヾ! ∧  i|   li
.        / / // i小xx rー ┐ xx?Wノ'  i|   l|
.        / / // 厶| l> .ゝ_ノ ィ// {{  i|   l|
      / / // 〈 |  ̄ ̄ ̄ ̄ ̄| `ヽ  i|   l|
    / / //:/?Y  こ  テ  |   〉 j|  八
.    /  / // (´‐う こ  .ン  と)/}}   '、   \
   人  〃〃 =てノ  ま   プ (ニ ノ ∧  ヾ.    ヽ
  ( ゚Y⌒7'゙´ 入ヽ| .で  レ .(Y}}⌒ヽ}   ヾノ  ノ}}
  /` 弋__{{ /' `‐|__________|ノヽ 八  /⌒Y⌒ヽ
0006nobodyさん2013/11/10(日) 15:59:23.33ID:???
>>1 乙!
0007nobodyさん2013/11/10(日) 18:56:43.11ID:???
30MBのテキストファイルに含まれる abcde という5文字からなる文字列を
メモリを節約する方法で削除する方法を教えてください
ファイル丸々読み込んで一括置換はNGです
0008nobodyさん2013/11/10(日) 19:02:40.38ID:???
sed
0009nobodyさん2013/11/10(日) 19:23:56.76ID:???
より高度なRoRに引っ越しすることをお勧めしよう
Railsスレで質問すれば俺が答えてあげよう
その代わり最大限の敬意を示し、パソコンの前で土下座したまえ
そお誠意が俺まで伝わってきたら答えてあげる

多くの有力企業が採用するRoRにようこそ
0010nobodyさん2013/11/10(日) 20:22:03.37ID:???
http://www.techempower.com/benchmarks/#section=data-r7&;hw=i7&test=query
ROR(笑)
0011nobodyさん2013/11/10(日) 22:08:15.43ID:???
>>7
読み込みながら別ファイルに書けばいいじゃん。
001212013/11/11(月) 07:35:43.60ID:XJY1LijC
//HTML取得
$context = stream_context_create(array('http'=>array('method'=>"GET",'header'=>"User-Agent: Mozilla/5.0 (Windows 7; rv:13.0) Gecko/20100101 Firefox/13.0.1")));
$str = file_get_contents("http://www.yahoo.co.jp/";, false, $context);


//範囲を抽出
$hani_s = "主なサービス";
$hani_l = "みんなのアンテナ";
$pattern1 = "/(?<=".$hani_s.").*?(?=".$hani_l.")/misu";

if(preg_match($pattern1,$str,$match)) $zentai = nl2br(htmlspecialchars($match[0]));

//単語を取得
$tango_s = 'a href="';
$tango_l = '">';
$pattern2 = '/(?<='.$tango_s.').*?(?='.$tango_s.')/misu';

if(preg_match_all($pattern2, $zentai, $match2))


$con = 0;
foreach($match2 as $val){
$youso = count($val);

while($con < $youso){
echo $val[$con] . "<br />";
$con++;
}
}

HTMLを取得し、正規表現で単語を取り出したいのですが、Notice: Undefined variable: con inとエラーが出てきます
$tango_s = 'a href="';をタブルクォート外して$tango_s = 'a href=';にすれば問題なく動くのですが、何が悪いですか?
0013nobodyさん2013/11/11(月) 10:23:19.27ID:???
>>12
正規表現を勉強し直しなさい
0014nobodyさん2013/11/11(月) 11:56:52.28ID:XJY1LijC
正規表現のどこが悪いのでしょうか?
$pattern2 = "/href=\".+>/"; 単純にこう書いてもダブルクォートがある限りエラー出るんですが
0015nobodyさん2013/11/11(月) 12:33:37.29ID:sFgCUL53
>Notice: Undefined variable: con inとエラー
if(preg_match_all($pattern2, $zentai, $match2))
$con = 0;
0016nobodyさん2013/11/11(月) 12:40:46.85ID:???
htmlspecialchars したらどーなるか考えよう。

オプションなしで使ってる時点で、
何をしたくてどうなって欲しいのか何にも考えてないのが分かる。
0017nobodyさん2013/11/11(月) 12:51:22.02ID:XJY1LijC
>>16
やっと解決できたありがとう
エスケープされるとか完全に失念してた
0018nobodyさん2013/11/11(月) 15:53:52.85ID:???
【Android】デベロッパーの集うスレPart21
http://kohada.2ch.net/test/read.cgi/prog/1381939989/l50

ここでPHPのソースがダウンロードして見られるって主張してる人がいるんですが
本当でしょうか?

>+ PHPのソースを見る方法はある
>+ その方法は誰でも出来る簡単な方法をついた盲点
>+ 方法は簡単でもその発想には普通行き付かないため今まで気づかれないでいた
>+ システム上は不正な方法ではなく正規な方法に分類されるので
>  今も放置されてる(一部のサーバーはこれに気づき、もしくは実際に攻撃され、設定で変更し対策済み)
>+ まだ放置されている場合が多いので公表はできない

>この方法が今まで何十年も気付かれず放置されていた事に恐怖するくらい
>記憶に新しい2chサーバーを襲った奴がこの方法(だけとは限らないが)を使い
>とある公開サイトに毎日莫大な量の企業の情報をUPしてる
>ヤフー、カネボウ、東京大学、etc
0019182013/11/11(月) 16:00:52.24ID:HoDQm5Na
すみませんID出すのを忘れていました
今年の6月くらいから発覚しているようです

>+ 今までそれが正しい設定という認識で、何十年としっかり機能しているサーバー(施錠)
>+ それが今年の6月頃に、特に違法な手段でもない誰にでもできる方法で壁をすり抜ける方法が発覚した
>  つまり鍵の意味がない
>+ 発覚するまでの過去何十年とそれを一部の人が悪用し、サーバー管理者と同じ権限をフルに悪用されていたこともあわせて発覚した
>  つまり神話が崩れた。神話に胡坐かかず独自にさらなるセキュリティーをかけていた技術者は
>  たとえ侵入されていたとしても大丈夫だった。これが侵入されても大丈夫を前提に組んだシステム全般に言えた
>+ この方法はバグでも違法でもないためセキュリティーパッチの対象にはなっていない
>+ 回避方法はその正当な手段で機能する何かをOFFにする
>+ しかしこれをOFFにすることで通常の運用にも支障をきたす運営状態のメーカーが多数存在する
>+ よってOFFにしないで運用している場所が今も存在しており このセキュリティーホール(…正式には違う)は今もなお眠っている
0020nobodyさん2013/11/11(月) 16:12:06.83ID:???
>>18
PHPの脆弱性が見つかったかと思ってちょっとそのスレ読んだけど
発言主は恐らく闇プログラマーだと思われる
関わってはならない
0021nobodyさん2013/11/11(月) 16:15:40.38ID:???
最後に.txtを付けるとかね(笑)
0022nobodyさん2013/11/11(月) 16:25:30.66ID:???
apacheの設定でPHP関連を削除すればみれる
0023nobodyさん2013/11/11(月) 16:26:17.91ID:???
あと教本とかに書かれているようなPHPをソースコードとして表示する設定をしてればみれる
0024nobodyさん2013/11/11(月) 16:30:25.26ID:???
http://kohada.2ch.net/test/read.cgi/pcnews/1377980797/

http://lolipop.jp/info/news/4149/
0025nobodyさん2013/11/11(月) 22:36:28.08ID:dmRoqQkv
header('Content-Type: image/jpeg');で読み込んだ画像を編集してブラウザ出力しようとして、失敗したのでソースを削って消去法で探っていったらincludeが原因だったんですがこれはどういった理由になるんでしょか?
0026nobodyさん2013/11/11(月) 22:42:00.98ID:???
>>25
回答者にエスパーがいることを期待しないでくれ
ちゃんと自分がやったことを書いてくれないと何も答えられん
0027nobodyさん2013/11/11(月) 23:03:28.69ID:dmRoqQkv
すみません。。書くとややこしくなりそうだからあえて端折って書きました。。
【OS名】mac10.9
【PHPのバージョン】5.4
【連携ソフトウェア】gd
【質問内容】
header('Content-Type: image/jpeg');で保存している画像を読み込み編集した画像をただ出力しようとしてます。
やり方として画像クラスを書いてる別ファイルをincludeで読み込んで画像オブジェクトの画像として出力しようとしてます。
最終的にimagejpeg関数で出力してるのですが画像編集して保存はうまくいくのですが画像編集してブラウザで表示する事だけが何故かうまくいきません
別の所に同じようなブラウザ画像出力を作っててそっちはうまくいくので環境依存問題じゃないと思います。パーミッションも調べました
ソース削りながら消去法でしらべていったらincludeで引っかかりました。原因はほぼこれなので一応解決はしてるのですが画像objを出来れば使いたいのでincludeが原因の理由が知りたいです
0028nobodyさん2013/11/11(月) 23:10:05.92ID:???
解読班はよ
0029nobodyさん2013/11/11(月) 23:12:28.45ID:???
よくわからんがincludeではなくreadfile使ったら?
0030nobodyさん2013/11/11(月) 23:14:30.60ID:???
なぜrequireではないのか
0031nobodyさん2013/11/11(月) 23:14:44.35ID:???
うまくいかないじゃわからんわ
再現できる最小限のコードを
エラーが出たなら具体的なエラーを
0032nobodyさん2013/11/11(月) 23:17:00.84ID:???
日商エスパー3級の俺でも分からん
0033nobodyさん2013/11/11(月) 23:19:37.68ID:FYu5xnhQ
javascript で 特定のディレクトリ内のファイル名を取得するために
Ajax 通信でPHPを使用します。
<?php
$res_dir = opendir('../hoge');
while( $filename = readdir($res_dir)) {
echo "$filename";
};
closedir($res_dir);
?>
としたのですが返り値の配列にはファイル名毎ではなく1文字ずつ入ってしまいます。
何か解決方法はないでしょうか?
0034nobodyさん2013/11/11(月) 23:22:05.77ID:dmRoqQkv
>>31
極端に言うと
<?php
//include 'objectImage5.php';
$im = imagecreatetruecolor(100, 100);
imagestring($im, 3, 40, 20, 'GD Library', 0xFFBA00);
header('Content-Type: image/gif');
imagegif($im);
imagedestroy($im);
?>
これを
<?php
include 'objectImage5.php';
$im = imagecreatetruecolor(100, 100);
imagestring($im, 3, 40, 20, 'GD Library', 0xFFBA00);
header('Content-Type: image/gif');
imagegif($im);
imagedestroy($im);
?>
するとブラウザ上でリンク切れ画像状態になります。ちょっと読み込み方includeから別に変えてきます。。
0035nobodyさん2013/11/11(月) 23:25:22.46ID:???
>>33
配列で返してるように見えない
サーバとブラウザの間のプロトコルがJSONだとすれば、ちゃんとJSONに整形して返してあげないと
0036nobodyさん2013/11/11(月) 23:26:20.64ID:???
>>34
そのincludeしたphpでなにかechoされてるんじゃない?
0037nobodyさん2013/11/11(月) 23:27:09.46ID:???
>>34
読み込みに失敗してwarningやcriticalエラー出力されてるのにコンテンツタイプがgifだからブラウザはgifとして扱ってるだけだろ
0038nobodyさん2013/11/11(月) 23:32:06.05ID:dmRoqQkv
すみません原因分かりました。。include先で<?php 〜〜〜?>の後に一つ無駄な改行入れてたとこでした。。。

これも伝わってますかね、、?
0039nobodyさん2013/11/11(月) 23:45:19.43ID:???
お決まりですね
0040nobodyさん2013/11/11(月) 23:48:37.35ID:???
>>38
その説明ならみんなばっちり理解できたと思う
0041nobodyさん2013/11/12(火) 00:02:19.74ID:OEcexEaQ
>>35
ありがとうございます。
json_encodeしてからだといけました。
0042nobodyさん2013/11/12(火) 00:04:22.72ID:???
>>38
俺は最初から原因わかってたよ、日商エスパー2級だから
0043nobodyさん2013/11/12(火) 00:23:11.47ID:???
DOM当たりかなと思ったけどそんなおちかよ
HTMLにコード埋め込む時以外なら?>で閉じんでよろしい
0044nobodyさん2013/11/12(火) 00:31:47.12ID:???
>>38
他に何か言うことは?
0045nobodyさん2013/11/12(火) 00:34:56.29ID:???
DOMじゃなくてUTFのBOMの話ね
もうだめかもわかんから寝るわ
0046nobodyさん2013/11/12(火) 00:37:17.85ID:???
header前のincludeでエラーならゴミ出力は確実だと思った
>>34をアップする前の説明ではheader後にjpegをダイレクトにincludeしてるのかと思ってた

混乱させられただけに>>38の締め方で、ちょっとコメカミに血管浮いた
0047nobodyさん2013/11/12(火) 00:40:50.53ID:???
>>44
どう書けば分かり易かったですかねぇ。。。?
0048nobodyさん2013/11/12(火) 00:41:07.92ID:???
まあまあ、ありがちなミスだ
エスパー研究所の中上級事例として各自再発防止方法を検討する振りをして寝よう
0049nobodyさん2013/11/12(火) 11:31:05.35ID:???
>>38
一応
http://www.infiniteloop.co.jp/docs/psr/psr-2-coding-style-guide.html
>PHPだけが書かれたファイルについては、終了タグ「?>」を省略しなければなりません。

PSR-2は必ず守らなければいけないものではないが、この1文はいつでも守って問題ない
0050nobodyさん2013/11/12(火) 11:32:38.08ID:???
テンプレに
PHP: The Right Way
http://ja.phptherightway.com/
を入れて欲しい
0051nobodyさん2013/11/12(火) 15:32:44.23ID:???
Rubyistの好きそうな洗脳サイトだな
0052nobodyさん2013/11/12(火) 15:55:43.98ID:???
>>51
なんのこといってるの?
0053nobodyさん2013/11/12(火) 16:03:50.97ID:???
ぱっとみたけどPHP初心者向けのサイトじゃないね
5.5を前提に話をすすめてるあたり
少なくともプログラム初めてって人向けではない
ぱっと見た感じ公平的な視点で書いてよさそうな感じ
結局どこかに利権が及んだり偏った記事になってそうだけど後で読んでみるわ
0054nobodyさん2013/11/12(火) 16:09:41.51ID:???
他の言語を習得していて、PHPは始めての人向けって印象を持った
自分プログラミングはPHPが初めての初心者
0055nobodyさん2013/11/12(火) 16:36:33.98ID:???
テンプレは、公式サイト系だけで十分でしょ。
理由
1. サイトの記述内容の正確性が担保されてない。
2. 単に宣伝したいサイトが紛れ込む可能性がある。
3. 個人サイトだと、その後どう変わるか予測できない。
0056nobodyさん2013/11/12(火) 17:18:08.98ID:???
あれ、>>50のサイトみんな知らないの?
0057nobodyさん2013/11/12(火) 17:21:39.34ID:???
初めて読んだがよくできてる
だけどここに来るような初心者が理解できるとは思わない
更にだけども>>3-4の腐ったFAQよりは載せる価値はある
0058nobodyさん2013/11/12(火) 17:26:22.94ID:???
>>56
知ってるよ。有名すぎだもん

PHP勉強会とかで普通に有名。初心者は絶対読めって言われるサイト
ここと公式サイトと徳丸を押さえれば十分って言われてるよ
0059nobodyさん2013/11/12(火) 17:31:14.31ID:???
>>53
ずっと最新版を使えって書いてあるだけだよ
内容自体は5.5に偏ってない
0060nobodyさん2013/11/12(火) 17:35:52.52ID:???
有名なサイトじゃないでしょ。
他の有名サイト等から引用もしくはリンクされている箇所がないから。
0061nobodyさん2013/11/12(火) 17:40:00.51ID:???
>>60
他の有名サイトってどこだ?
0062nobodyさん2013/11/12(火) 17:44:35.70ID:???
日本で有名になってまだ日は浅いからな
0063nobodyさん2013/11/12(火) 17:46:05.42ID:???
ここの人ってPSRも否定派が多いの?
0064nobodyさん2013/11/12(火) 17:49:23.19ID:???
見てみたけど内容が難しすぎ
マニュアルを最初から読んでチュートリアルに従ったほうが理解しやすい
あれじゃ初心者敬遠してしまうわ
0065nobodyさん2013/11/12(火) 17:51:15.96ID:???
↑
別に載せるのには反対じゃないよ
分かる人は見ればよい
0066nobodyさん2013/11/12(火) 18:00:12.82ID:???
>>61
定義が曖昧ですみません。たしかに、「有名」では客観性に欠けますね。
例としては、「PHP」で検索して上位20位くらいに有るサイト。
又は、ヤフーカテゴリの「PHP」に掲載されているサイト。
これらは、有名と言えると思います。

こういったサイトから引用やリンクされている箇所を見たいです。
あるのでしょうか。
0067nobodyさん2013/11/12(火) 18:10:25.71ID:FYat+6O3
>>66
根本としてさ、既に上位20位に入ってるよ
0068nobodyさん2013/11/12(火) 18:10:27.67ID:???
>>66
いまググったら、本家・ユーザ会・特集記事を除けば、ここが最も有名らしいぞ。

初心者用PHP入門
www.standpower.com/?
0069nobodyさん2013/11/12(火) 18:17:17.80ID:???
>>50
そんなの、PHPの本スレのテンプレに入れとけと思ったが、本スレと呼べるものがなかったわ
0070nobodyさん2013/11/12(火) 18:19:22.53ID:???
>>50
初心者向けではないな。
PHP触り始めて興味が湧いて、本気でやろうって思うときに見るサイトだ
0071nobodyさん2013/11/12(火) 18:23:28.93ID:???
PHPのコーディング規約ってC系が多いな
俺Java系だからあうものがない
まぁ別にいいよね
0072nobodyさん2013/11/12(火) 18:25:59.71ID:???
>>66
普通に奥村さんとかThe Right Way推してるからリンクしてるよ
上位10位に入ってるっしょ奥村さんのサイト
0073nobodyさん2013/11/12(火) 18:36:19.81ID:???
奥村って誰よとググったけど、http://oku.edu.mie-u.ac.jp/~okumura/php/でいいのか?
2005年くらいに見た感じのページだな。
0074nobodyさん2013/11/12(火) 18:49:27.53ID:???
>>53
5.5前提が、なぜ初めての人向けでないのか意味がわからない。

>>55
みんな十分だというが、網羅されてないことは結構ある。
0075nobodyさん2013/11/12(火) 18:50:38.25ID:???
>>67 灯台下暗し。お恥ずかしい限りです。
>>68 >>72 ありがとうございます。
0076nobodyさん2013/11/12(火) 19:01:26.98ID:???
>>74
初心者なんかのライトユーザがもっとも使用するレンタルサーバで5.5が入ってると思ってんの?
0077nobodyさん2013/11/12(火) 19:30:01.02ID:mGwFoyBt
phpの関数が多くて、ありそうかな?と思っただけなんですが
配列の全ての要素に@を追加するような関数ってありますか?

array[0] #hoge
array[1] #fuge
array[2] #sage
↓
array[0] #hoge@
array[1] #fuge@
array[2] #sage@
みたいにしたいのですが
0078nobodyさん2013/11/12(火) 20:00:20.89ID:???
array_mapでどうにかする
0079nobodyさん2013/11/12(火) 20:15:28.37ID:???
>>77
ありません
簡単だから作れ
0080nobodyさん2013/11/12(火) 20:36:06.80ID:mGwFoyBt
了解です
フツーに作ってみます
0081nobodyさん2013/11/12(火) 20:55:23.68ID:???
>>76
おまえさんは、もうちょっとそのサイトの文章を読むべきだ
0082nobodyさん2013/11/12(火) 20:57:27.77ID:???
そのサイトの文章と5.5が初心者向けではないは関係ないからね
0083nobodyさん2013/11/12(火) 21:01:49.86ID:???
俺は初心者には5.5薦めるわ
共有サーバなんて使うやついないしな
0084nobodyさん2013/11/12(火) 21:05:39.05ID:???
初心者がXAMPPに手を出しやすいのは事実だが
0085nobodyさん2013/11/12(火) 21:40:02.59ID:???
>>83
現実を見ろ
0086nobodyさん2013/11/12(火) 21:42:31.98ID:???
そんなに共有サーバ使わせたいの?
0087nobodyさん2013/11/12(火) 21:47:46.17ID:???
気合いれてVPSとか上位プラン使うようなやつは開発者の中でも少数派
SNSやフリーのブログで十分なほどなのに月額300円が相場
一般人じゃ100円サーバだな
0088nobodyさん2013/11/12(火) 21:53:30.75ID:???
僕の周りの初心者で公開してるやついないってのが味噌だな

PHP勉強したてで公開したいってただの趣味?
0089nobodyさん2013/11/12(火) 22:00:27.78ID:???
趣味で触ってる人と仕事でやってる人で全然違うと思うぞ

共有サーバって
趣味でやってて、しかもWordPressとか既存のパッケージいれて
ちょっと手を加えてぐらいのレベル対象だろ

仕事で使うにはこのレベルじゃありえないから共有サーバなんてもたん
根本、会社でPHPを初心者に教えるときにまず、公開するなら相談しろと言う
何か漏洩されたら堪らんからな
0090nobodyさん2013/11/12(火) 22:04:07.73ID:???
根本って誰や
0091nobodyさん2013/11/12(火) 22:05:25.89ID:???
>>89の最後の3行が何を言いたいのかわからない
0092nobodyさん2013/11/12(火) 22:31:49.02ID:???
仕事で共有サーバを使うことなんてない。
仕事で教えた初心者に共有サーバを使わせることなんてない。

って言ってるんだろ
0093nobodyさん2013/11/12(火) 22:40:43.43ID:???
Q PHPをなんではじめるのですか?

A WPのテンプレートがいまいちなので改造してみたい
A 自サイトでこういうことをしたかったがPHPとかじゃないと出来ないと言われた
A 仕事でやらなきゃいけません
A プログラムの勉強をしたい
A こういうWebサービスをやりたい

専用サーバーが必要なのは最後のケースだけ
0094nobodyさん2013/11/12(火) 22:45:24.07ID:???
>仕事で共有サーバを使うことなんてない。
誰が?
クライアントならそんなのパッケージ開発でもない限り知ったこっちゃないでしょ
ていうかWP改造案件とか多いし、共用サーバでWPだけで回してるクライアントも多い
開発者ならローカル使えばいいだけだし、共用サーバが持たないとか話がおかしい
0095nobodyさん2013/11/12(火) 23:06:28.67ID:???
アカマイ使ってサイト構築してる人いる?
どんな構成?
0096nobodyさん2013/11/12(火) 23:12:41.27ID:???
IDないわ、PHPと関係ないわ
0097nobodyさん2013/11/12(火) 23:17:12.91ID:???
ごめん、質問変えるわ
グローバル対応をするために最適な構築はどんな感じ?
コスト考慮も
0098nobodyさん2013/11/12(火) 23:18:45.00ID:???
レンタル鯖板でどうぞ
0099nobodyさん2013/11/12(火) 23:24:11.04ID:???
>>92ってか>>89
IT土方をなめんな
PHPを使ってるのは自社サービスとか
大手の下請けで高給もらってるやつだけじゃないんだ
0100nobodyさん2013/11/12(火) 23:29:19.57ID:???
>>93
共有
共有
不明
手元のPC
専用
0101nobodyさん2013/11/12(火) 23:40:23.21ID:???
mixiとかヤフオクとかWebサービスが中心でない限り
アプリケーション開発とかやってるとこでも
会社の紹介や問い合わせフォームぐらいだろ
ようは会社のウェブサイトであるところがほとんどで
共用サーバでもおかしくないレベル
0102nobodyさん2013/11/13(水) 00:07:41.07ID:???
共用サーバって、コンプライアンス上使えない会社が多いんだよな
0103nobodyさん2013/11/13(水) 00:11:00.53ID:???
友人に毎朝8時に起動してメール配信するの作ってと言われて
無償でレンタルサ−バーのcronとphpの色々作ってあげたら
会社で使うためのものだったって経験したことあるわ

その程度に考えてるところもあるんだろクソ
0104nobodyさん2013/11/13(水) 00:11:34.07ID:???
なんでコンプライアンスが関係するんだ?
0105nobodyさん2013/11/13(水) 00:14:40.09ID:???
個人情報がらみだろ
0106nobodyさん2013/11/13(水) 00:16:10.91ID:???
社内サーバならともかく、外部サーバにわざわざ個人情報入れるのかよw
0107nobodyさん2013/11/13(水) 00:17:00.95ID:???
問い合わせフォームでアウトだよ?
0108nobodyさん2013/11/13(水) 00:20:51.35ID:???
問い合わせフォームか
>>101見てなかったわ
0109nobodyさん2013/11/13(水) 10:39:37.89ID:???
素人に毛を生やしただけのものが業務に使われてるのが、プログラム界だけのことだと思ってるなら、
絶望が足りない。
0110nobodyさん2013/11/13(水) 11:47:06.10ID:???
どっちも底辺ってことだろ。
日本は底辺が多いからな
0111nobodyさん2013/11/13(水) 12:31:04.32ID:???
ただの道具に、使う人間の問題もってきて道具の問題だって大騒ぎすんのはアホだってこと。
何が底辺だw
0112nobodyさん2013/11/13(水) 13:08:29.89ID:???
>>111
意味不明やな
0113nobodyさん2013/11/13(水) 13:12:58.90ID:???
>>103
会社に請求書叩きつけてやれ
0114nobodyさん2013/11/13(水) 13:26:56.75ID:???
phpどころかプログラミングと全く関係ない製薬営業やってるけど
webサイト作ったりメール配信できるもん作るとどんくらい貰えんの?
転職考えてるんだけど
0115nobodyさん2013/11/13(水) 13:39:18.36ID:???
>>114
転職?
誰もお前なんか雇わんと思うが
0116nobodyさん2013/11/13(水) 14:17:17.36ID:???
絶 対 に 製 薬 営 業 の 方 が 稼 げ る
0117nobodyさん2013/11/13(水) 14:23:19.44ID:???
夢みてフリーのデザイナーやるのはやめとけマジで
0118nobodyさん2013/11/13(水) 14:26:25.25ID:???
>>114
まぁ、初級プログラマで50万円/月くらい
中級80万円/月
上級は青天井
あんまり大したこと無いよ
それでもよければどうぞ
0119nobodyさん2013/11/13(水) 14:39:40.87ID:???
釣り糸がでかすぎて話になりませんね
0120nobodyさん2013/11/13(水) 14:42:48.78ID:EC93HFLx
初級・中級・上級のスキルの区分は、どんな感じでしょうか?
(自分は、>>114 ではないです)
0121nobodyさん2013/11/13(水) 14:46:51.46ID:???
せいぜい月20万ぐらいだろ
出来るやつでも30万ぐらい
ITドカタに夢を見過ぎ
0122nobodyさん2013/11/13(水) 15:08:35.97ID:???
初級で50万はありえないけど>>121はもっとありえない
業界間違えてないか?
0123nobodyさん2013/11/13(水) 15:12:56.05ID:???
ITドカタも普通の会社員と変わりねーぞ
スーツ着て出社してスーツ着て仕事して
アホな上司のいう事聞いて忘年会新年会の幹事させられて・・・。
0124nobodyさん2013/11/13(水) 15:13:25.32ID:???
ま転職して現実を見るといいよ
そんな給料良ければみんなやってる
0125nobodyさん2013/11/13(水) 15:16:17.39ID:???
あごめん、正社員の話か
0126nobodyさん2013/11/13(水) 15:16:56.96ID:???
製薬会社の営業だから今の給料は良いんだろーけど
本当に会社員と変わりないから↓みたいな夢見るの止めとけ
http://farm1.static.flickr.com/211/461515655_9f3b7386ff.jpg
0127nobodyさん2013/11/13(水) 15:23:35.96ID:???
この業界ってほとんど零細企業ばかりなのに不安定さがすきなの?
キャリア積んで20年勤続とかならともかく50万?
リクルートサイトが出してる年収例とかに騙されちゃう口?
それともMSやGoogleとか外資系ITトップに名を連ねるとこにでも就職できるの?
0128nobodyさん2013/11/13(水) 16:18:28.86ID:???
プログラマーでスーツ着て出社する会社ってほとんど見たことないんですが
0129nobodyさん2013/11/13(水) 16:21:58.22ID:???
ないね
0130nobodyさん2013/11/13(水) 17:43:10.12ID:???
俺はニートだけどプログラマーやってる俺の友達仕事帰りに会うといっつもスーツだぞ
0131nobodyさん2013/11/13(水) 18:12:00.37ID:???
客先常駐プログラマはスーツだろ
0132nobodyさん2013/11/13(水) 18:23:50.48ID:???
この業界不安定なのは事実だが、零細ってわけじゃない

給与帯が上になるほど、センスとコネが重要な業界
0133nobodyさん2013/11/14(木) 04:10:03.48ID:???
ゲーム作成会社へスーツで面接に行ったら
コスプレみたいだって言われたぞ
0134nobodyさん2013/11/14(木) 05:43:47.22ID:F7e5g5ZR
単に似合ってなかったからだw
俺レベルのチビデブハゲになると、
一切の冗談も言ってもらえなくなるから
まだマシな方だだろう。
0135nobodyさん2013/11/14(木) 12:24:04.77ID:E2bhgOuX
preg_replace 系(_all や _callback含む)で、正規表現にマッチした文が大きく(長く?)なるものを置換しようとすると、
レスポンスの応答がなくなってしまいます。

開発環境でこの現象は生じて、環境はWindowsXP、PHPのバージョンは5.4.19、Apache/2.4.4 (Win32)を使用しています。
同じものをサーバーにアップロードした場合は、ちゃんと動作します。

何か改善方法はありませんか?
0136nobodyさん2013/11/14(木) 13:11:45.16ID:???
メモリが足りないんだろ
0137nobodyさん2013/11/14(木) 13:13:47.05ID:???
PCのスペックとサーバーのスペック教えてくれ
0138nobodyさん2013/11/14(木) 13:26:01.78ID:???
例え開発環境でもWindowsXP使ってるようでは…
0139nobodyさん2013/11/14(木) 13:41:39.01ID:E2bhgOuX
調べてたら、PHPのバグレポートにありました

Bug #60231 child process exited with status 3221225725
https://bugs.php.net/bug.php?id=60231



どうやらスタックサイズを増やせば解決しそうなので試してみることにします
0140nobodyさん2013/11/14(木) 14:00:44.89ID:???
>>139
Apacheのログに
child process exited with status
が出てたら正解

Windows特有の問題やな
PHPのバグではない

Apacheの設定ファイルでThreadStackSizeを設定すれば良いだけか
0141nobodyさん2013/11/14(木) 18:03:10.70ID:???
>>140
ステータスコードを無視する人ってそそっかしいんだなぁ。
そそっかしいあまりWindows特有の問題だなんて思い込んでる。
0142nobodyさん2013/11/14(木) 19:08:01.53ID:???
>>141
ステータスコード1個じゃないんだよ
0143nobodyさん2013/11/14(木) 19:13:38.15ID:???
>>141
これってmpm_winntに起因する問題じゃないのか?
0144nobodyさん2013/11/14(木) 22:39:31.89ID:???
>>142
スタックオーバーフローを示すステータスコードが複数あって、
さらに子プロセスが終了する原因はそれしかないというのならいいけど。

>>141
windows以外はスタックが無限にあると?
0145nobodyさん2013/11/14(木) 23:16:16.54ID:???
スタック関係はWindows特有ではないけどWindows以外では滅多におきん罠
Javaとか別途に定義する系や、スレッド系は起きるけどな
0146nobodyさん2013/11/15(金) 15:13:17.81ID:???
このスレでPHPの話をすることも有るんなだw
いつもの殺伐したした雰囲気じゃないと不安になるわ・・・
0147nobodyさん2013/11/15(金) 17:06:38.69ID:???
Windowsで開発するの本当いい加減にしろよ
VirtualBoxすらいれられないチンパンども
0148nobodyさん2013/11/15(金) 17:09:16.09ID:???
Windowsで開発してもいいけど、改行コードを勝手にCRLFにしてcommitするのだけは勘弁してくれ。
0149nobodyさん2013/11/15(金) 17:19:17.86ID:???
GitならコミットするときにLFにすればいいじゃん
0150nobodyさん2013/11/15(金) 17:22:00.01ID:???
どこの会社みても開発はWindows
Linuxで開発しろとかいってんのは100%尼
0151nobodyさん2013/11/15(金) 17:23:06.75ID:???
どこの(へぼ)会社
0152nobodyさん2013/11/15(金) 17:27:26.50ID:???
なんの問題もなく出来るのに、自分ができないからって道具のせいにするのは恥ずかしい限りだな。
0153nobodyさん2013/11/15(金) 17:58:59.94ID:???
>>150
うちは全員Macだけど
0154nobodyさん2013/11/15(金) 18:01:19.41ID:???
本番環境とできる限り揃えるかだけじゃないのか?
0155nobodyさん2013/11/15(金) 18:02:32.18ID:???
全員って何?会社にPC持参したり普及PC選べんの?
0156nobodyさん2013/11/15(金) 18:03:31.25ID:???
普及じゃなくて配給
日本語むずかしいね
0157nobodyさん2013/11/15(金) 18:07:57.50ID:???
うちは配給PC選べるよ。持参PCは手続きがめんどくさい。
予算上限はあるけどね

MacでもWindowsでもLinuxでもなんでもいいのだが
Vagrantの利用がルール
0158nobodyさん2013/11/15(金) 18:33:35.37ID:???
単体テストの段階は環境使い回し、結合テストで本番環境1つ用意。
PHPなんてこんなもんでいいよ。
別にPHPを馬鹿にしてるわけじゃなくて環境の差の影響を受けにくいから、
結合テストでバグが出ても数分で解決できるケースがほとんど。
もちろん要件定義がしっかりしてればの話。
0159nobodyさん2013/11/15(金) 18:46:25.01ID:???
PHPには、そもそも単体テストとか結合テストとか必要ないだろ?
すぐに結果が出る。
すぐ修正できる。
それがメリットじゃん、サーバーサイドJavaとかと違って
0160nobodyさん2013/11/15(金) 19:05:09.92ID:???
規模が大きくなるとそうもいってらんないんじゃ
0161nobodyさん2013/11/15(金) 19:07:06.19ID:???
>>160
そんな規模ならPHPは使わないよ
0162nobodyさん2013/11/15(金) 19:23:52.11ID:???
学生かニートの書き込み↓

150 名前:nobodyさん[sage] 投稿日:2013/11/15(金) 17:22:00.01 ID:???
どこの会社みても開発はWindows
Linuxで開発しろとかいってんのは100%尼
0163nobodyさん2013/11/15(金) 19:26:45.24ID:???
>>161
世界のPHPベースのWebサービスはどうなるんだい
0164nobodyさん2013/11/15(金) 19:57:14.89ID:???
>>162
くやしかったの?>>147さん
0165nobodyさん2013/11/15(金) 19:57:57.26ID:???
>>163
161 にとってFacebook程度は雑魚レベルなんだろ。
0166nobodyさん2013/11/15(金) 20:25:14.54ID:???
>>157
配給PC選べるならそりゃMACにするだろうな
単純に値段高いし壊れやすいけどハード自体は高性能だし
つうかリッチだなとこだなオイ
0167nobodyさん2013/11/15(金) 20:52:07.04ID:???
>>166
Macは4割ぐらいしかいないよ

Linuxにするのが性能の割りに安いから
それにモニタ3枚とかしてるやつも多い
0168nobodyさん2013/11/15(金) 21:22:42.81ID:???
全員Macって言うたやん。

ま、普通の規模のとこならHPやDELLあたりから法人向けのを導入するんじゃね。
少数精鋭じゃないけど小規模のとこはハードには金をかけざるを得ないからね。
0169nobodyさん2013/11/15(金) 22:12:17.28ID:???
>>168
すまんな153は俺じゃないんだ

DELLも結構入ってる
自分で決められない奴はMacかDELLになる
0170nobodyさん2013/11/15(金) 22:48:10.58ID:???
>>164はWindowsでしか開発したことがないからWindowsでの開発を否定されるとまるで自分を否定されたかのように感じちゃうんでしょ
0171nobodyさん2013/11/15(金) 22:54:48.89ID:???
またその流れかよ。
マ板に行けよ
0172nobodyさん2013/11/15(金) 22:59:08.01ID:???
>>170
くやしかったの?
0173nobodyさん2013/11/15(金) 23:10:52.20ID:???
Mac使ってるアホは文系デザイナーなんだろ
0174nobodyさん2013/11/15(金) 23:11:12.10ID:???
そもそも、IIS なんかで PHP を動作させてもパフォーマンスも悪いし安定動作しないよ
0175nobodyさん2013/11/15(金) 23:12:25.40ID:???
>>173
頭の悪い土挫が言いそうなセリフだなw
0176nobodyさん2013/11/15(金) 23:14:59.73ID:???
俺はやったことないが、IIS7でFastCGIで組むといいらしいじゃないか
0177nobodyさん2013/11/15(金) 23:17:02.85ID:???
>>176
(ほんの)ちょっとはマシになったってくらい
0178nobodyさん2013/11/15(金) 23:25:35.23ID:???
http://msdn.microsoft.com/ja-jp/gg535422.aspx
ASPとのライバル関係にあるPHPのシェアを無視できなかったMSは
せめてIISを使ってくれとPHPerに懇願しました
0179nobodyさん2013/11/15(金) 23:42:41.90ID:???
開発なんて慣れてるOSが一番
個人的にはiOSの開発もしないしVisual Studio使えないからマックはいらないって感じだけど
マックはなんかデザイナーや開発者っぽい(=一般人向けではない)っていうイメージがあるし
もってたら出来る男って感じがするけど
最近はiPhoneのおかげで一般人でも浸透してきてるしレア度はあんまないね
0180nobodyさん2013/11/15(金) 23:54:54.86ID:???
昔はVAIO持ってるとモテたけど今はMacbook Airだな。
10インチクラスのタブレット(iPad)を、
社長やってるいとこが出先でよく使ってたけど、あれは見てて滑稽だったわ。
タブレットはクールじゃないね。
0181nobodyさん2013/11/16(土) 00:03:59.42ID:???
Macがモテる時代は2年前ぐらいに終わってるっしょ
0182nobodyさん2013/11/16(土) 00:07:59.93ID:???
キモブサがどんなPC持ってたってモテるわけないだろ
鏡見ろよ
0183nobodyさん2013/11/16(土) 00:11:29.13ID:???
ぼくあぽー
あいぽーん5が売れなくて困ってるの
だれかぽすけて
0184nobodyさん2013/11/16(土) 00:24:54.66ID:???
プログラム自体の話は出来ないのに、混ざりたがるから、
自分でもなんか言える人の話に誘導しようと必死ないつものアホ
0185nobodyさん2013/11/16(土) 00:39:24.79ID:???
おこなの?
0186nobodyさん2013/11/16(土) 00:43:26.50ID:???
Windows最高
XAMPP最高

ということで終了
0187nobodyさん2013/11/16(土) 01:26:55.15ID:???
結局、質問にちゃんと答えられたのは>>140だけで
それ以外は無知を晒してるだけだったな
挙句の果てに Winsowsガー PHPガー XAMPPガー とか言い出しちゃう低脳っぷり(笑)
0188nobodyさん2013/11/16(土) 01:29:07.24ID:???
>>139が自己解決したってのにそれの後追いで別に大した追加情報もなしにドヤ顔してるのが>>140
0189nobodyさん2013/11/16(土) 01:33:09.14ID:???
いや、140は質問者が自分でほぼ答えを出した後だろ
まあ、それ以前の間抜けな回答や以降の低脳っぷりってところは同意だが。
0190nobodyさん2013/11/16(土) 01:35:30.17ID:???
>>186
一生マスかいてろw
0191nobodyさん2013/11/16(土) 02:01:46.78ID:???
まぁこんな雰囲気にした>>147がチンパンだったということでもういいだろ?
0192nobodyさん2013/11/16(土) 02:08:23.19ID:???
まぁ、いいけど、PHP と Windows は、そもそも相性が良くない。
遊びならなんでもいいけどね
0193nobodyさん2013/11/16(土) 02:10:44.25ID:???
開発環境と動作環境は別の話。
相性がよいかどうかは開発環境には関係ない。
0194nobodyさん2013/11/16(土) 02:18:15.25ID:???
>>193
開発環境が Windows で、動作環境が Unix系 + Apache ってこと?
なんと無駄なことを
0195nobodyさん2013/11/16(土) 02:28:39.00ID:???
無駄と発想する時点でお前が底辺なのは判った
0196nobodyさん2013/11/16(土) 02:32:02.75ID:???
>>194
それは無駄ってか、単なる情弱なだけだろw
0197nobodyさん2013/11/16(土) 02:38:18.02ID:???
>>194
apacheなんてのはおまけなんだよ
開発に主眼をおくべきものは自分にとって使いやすいOSと使いやすいIDEだ
0198nobodyさん2013/11/16(土) 02:48:07.07ID:???
>>197
一生マスかいてろw
0199nobodyさん2013/11/16(土) 07:50:04.07ID:???
httpdに何を使ってるか
OSが何かで影響受けないプログラムもあれば、受けるものもある
それ次第だから、勝手にすればいいんじゃね?

大体ひっかかるのがWindowsにImageMagickをインストールするのが大変ってとこか

開発環境と、開発実行環境も別か
俺はPhpStorm派だから、IDEはWindowsでもMacでもLinuxでも動くから問題ない
Windowsでやってたときは、当然VMだった
0200nobodyさん2013/11/16(土) 08:02:01.34ID:???
IDEがクロスプラットフォームでも、それを使えるまでにかかる労力や、
その他全体の使い勝手・作業効率なんかを考えると、
慣れ親しんだOS使うのが一番いいに決まってるわ。
最悪プログラムなんてのはメモ帳で書ける。
WindowsクライアントからSSHでLinuxサーバにログインして、
サーバのファイルを直接viで編集なんてのは昔ならよくあった話。
0201nobodyさん2013/11/16(土) 08:15:44.39ID:???
スクリプトでOS依存書いてる時点で極限のアホだろ
とは思う
0202nobodyさん2013/11/16(土) 08:16:52.02ID:???
>>201
お前の中ではそうなんだろうな
0203nobodyさん2013/11/16(土) 08:20:03.05ID:???
>>202
俺だけじゃない、お前以外な
02044842013/11/16(土) 08:24:54.41ID:???
>>201
redis依存書いたら前までWindowsじゃ無理だったしな
OS依存なんて腐るほどあるっしょ

スクリプトのPATH_SEPARATORとかそういう意味を言ってるなら同意だが
0205nobodyさん2013/11/16(土) 08:29:32.63ID:???
C:\WINDOWSとかOS依存がわかりやすい記述は無意識に排除しちゃうし
PHPの場合OS依存で書くほうが難しいな
初めて使う関数はマニュアルちゃんと見るし知らずにOS限定の関数使うなんてこともない

この手の問題に遭う低スキルの人はちゃんと環境構築したほうがいいだろうね
0206nobodyさん2013/11/16(土) 08:37:12.04ID:???
最近はネットだけでいいって人もいるだろうけど
現実問題PHP開発以外にもやることはたくさんあるのでWindowsじゃないと不便
だからWindowsでいい
VMはOSが重くなるし汚くなるから入れない
世の中の人間そんなにPCいっぱい持ってませんよ
0207nobodyさん2013/11/16(土) 08:43:55.39ID:???
人それぞれってことだ

俺っは今Linuxで苦労したことないし
Windowsじゃないと駄目なことが今のところない
0208nobodyさん2013/11/16(土) 08:53:13.23ID:???
Windowsで苦労したことないし
Linuxじゃないと駄目なことも今のところないね
0209nobodyさん2013/11/16(土) 08:59:50.40ID:???
OS依存で書くバカは他人に使ってもらう前提のフレームワークやライブラリを
書いたことがないんだろうな、とは思う
0210nobodyさん2013/11/16(土) 09:05:25.89ID:???
OS依存の話はやめよう

C:\WINDOWSとかならただのバカだし
使用するミドルウェアの問題ならどうしようもない

話すだけ無駄ですよ
0211nobodyさん2013/11/16(土) 09:10:09.28ID:???
Linuxで開発すれば OS依存しないのかよwwww
0212nobodyさん2013/11/16(土) 13:29:14.82ID:???
>>211
誰かそんなこと言ってるか?このスレで
被害妄想なのか劣等感の現れなのか
0213nobodyさん2013/11/16(土) 13:40:46.89ID:???
今更どうしたの?悔しいの?
0214nobodyさん2013/11/16(土) 13:47:56.32ID:???
>>213
相当悔しそうだなw
0215nobodyさん2013/11/16(土) 14:08:58.49ID:???
>>213
なにがそんなに悔しいんだ?
0216nobodyさん2013/11/16(土) 15:27:22.51ID:???
( ゚,_・・゚)ブブブッ
0217nobodyさん2013/11/16(土) 17:47:20.20ID:???
WindowsでPHP使えるの?
てか、そんなことして何か意味あるの?
0218nobodyさん2013/11/16(土) 18:08:16.94ID:???
レンタルサーバに変更するたびにアップロードして開発するやつにはわからない話
0219nobodyさん2013/11/16(土) 18:18:13.33ID:???
>>218

> アップロードして開発する

この意味がわからないんですが、解説してくれる?
全体も意味不明なんだけど
0220nobodyさん2013/11/16(土) 18:37:26.94ID:???
>>219
>>1
0221nobodyさん2013/11/16(土) 18:38:46.80ID:???
>>220
うるせい馬鹿
0222nobodyさん2013/11/16(土) 18:43:44.24ID:???
>>220
>>1001
0223nobodyさん2013/11/16(土) 22:05:00.99ID:???
>>217
アドベソフトと仲良くさせるためです。。わし的には、
0224nobodyさん2013/11/16(土) 22:08:30.79ID:???
>WindowsでPHP使えるの?
無知の極みだな
0225nobodyさん2013/11/16(土) 23:20:32.23ID:F3TLx1sI
$ints = array(1,3,4,5,6,7,8,9....∞);
$intsの中にある数字の最大値maxのキーを収得する関数はありますか?
0226nobodyさん2013/11/16(土) 23:21:01.62ID:???
>>225
ある
0227nobodyさん2013/11/16(土) 23:23:24.27ID:???
あぁ、sortすればいいのか。
めんどくさいこと考えてたわw
0228nobodyさん2013/11/16(土) 23:34:15.95ID:???
sortしたらキーは失われるけどいいのけ?
0229nobodyさん2013/11/17(日) 00:48:19.62ID:???
配列操作のパターンと
sqlite::memory:に1回いれてmax使うパターン試してみたけど
やっぱ配列操作でやるほうが断然早いしメモリ使用量も少ないな
0230nobodyさん2013/11/17(日) 02:28:59.85ID:???
>>217
Windowsだろ?
使えるわけないじゃんw
アホなの?
0231nobodyさん2013/11/17(日) 09:37:26.57ID:???
誰も反応してくれないからって自演か
0232nobodyさん2013/11/17(日) 13:01:07.39ID:iaEwZT+S
>>229

あなたみたいに、無駄かもしれないけどとりあえずやってみようっていう人は素晴らしいと思う。
0233nobodyさん2013/11/17(日) 18:10:59.78ID:???
「使える」ってのがどういう意味なのかにもよるな

「動作する」って意味ならLinuxでもWindowsでも使える

「実用に耐える」って意味ならLinuxでもWindowsでも使えない
0234nobodyさん2013/11/17(日) 23:19:57.93ID:???
あるログインサイトが、Operaには対応していないため、
[ID]と[パスワード]の入力欄は表示されますが、肝心な[ログイン]ボタンが表示されないので、ログインできません
このOperaは、ガラケーのフルブラウザなんですが、どうにかしてログインさせる方法はありませんでしょうか?
[ID]と[パスワード]の入力欄は問題なく入力できます
宜しくお願いします。
0235nobodyさん2013/11/17(日) 23:33:39.91ID:???
EnterでFormにSubmit飛ばない?
0236nobodyさん2013/11/17(日) 23:35:12.68ID:???
つうかPHP関係あるのかよ
0237nobodyさん2013/11/18(月) 00:08:15.70ID:???
>>233
どこの言語に人?
0238nobodyさん2013/11/18(月) 00:15:21.89ID:???
>>237
どこの言語の人って言いたかったかw

PHPが使えないって言ってるやつは大体本人が使えないだけって決まってるからな
0239nobodyさん2013/11/18(月) 12:57:44.49ID:+1FXVq0T
PHPのオブジェクト指向における多態性(ポリモーフィズム)について質問です。
多態性(ポリモーフィズム)とは、端的に、どういうことを指すのでしょうか?
わかりやすい要点や具体例、使いどころなどをご教示ください。

なお、自分で調べて次のことを知りました。
ネットで調べると、複数のクラスのメソッドの命名を同一にして、場面により切り替えることとありました。
また、ある本では、オブジェクトの引数に他のオブジェクトを渡してそのメソッドを切り替えることとありました。(ストラトジーパターン)
Javaの本では、オーバーロードという仕組みで、引数の数の違いによりメソッドの振る舞いを変えることとありました。

ただ、調べても抽象的で理解が困難です。
ご回答よろしくお願いします。
0240nobodyさん2013/11/18(月) 14:04:36.24ID:???
>>239
いろんな言語にある ToString メンバがソレにあたるよ
0241nobodyさん2013/11/18(月) 14:05:27.46ID:JW8eEpfY
【OS名】xampp
【PHPのバージョン】5.4.7
【連携ソフトウェア】MySQL
【質問内容】
PHPでDBの内容を複数取得して表示する時、どの方法がいいんでしょうか?
PDO::query、PDOStatement::fetch+execute等色々あるようで、
検索しても色々な方法があってよくわからないです。。。
最新のものがいいとは思うのですが、最新のものもどれかよくわかりません。お助け下さい。
0242nobodyさん2013/11/18(月) 14:45:15.05ID:???
>>241
複数取得の意味が良くわかんない
どうゆうこと?
0243nobodyさん2013/11/18(月) 15:12:26.33ID:???
>>239
PHPのような動的型付け言語(インタープリター)では、基本的にオーバーロード(多重定義)という仕組みはない。
PHPの場合オーバーロードを実現するために、func_get_argsなんかを使って条件分岐でやる必要がある。
ようは引数に渡す型の種類や引数の数は違えど、処理内容が同じになる場合とかに使うわけだけど、
何が嬉しいかというと、メソッド名(関数名)を1つだけ覚えとけばいいとか、メソッド名を考えるのに困らないとか、
まぁそんなところ。(多重定義否定派やそれがよくないと感じる人もいる)
オーバーロードを使わない場合、>>240のあげるtoStringは、
intToString($int)とかboolToString($bool)とか冗長な名前でごった返すことになる。
ただPHPではfunc_get_argsでやると複雑になるので、そういう実装を取る人も多い。

http://php.net/manual/ja/language.oop5.overloading.php
ここで書かれているPHPのオーバーロードというのは、
注釈にも書いてる通り他の言語のオーバーロードとは意味あいが違うので注意。
0244nobodyさん2013/11/18(月) 15:18:20.79ID:???
何を取得しようとクエリ使っとけば無難
0245nobodyさん2013/11/18(月) 15:28:53.99ID:???
つか、オーバーロードじゃなくてオーバーライドだろ
0246nobodyさん2013/11/18(月) 15:37:21.09ID:???
>>239
> ネットで調べると、複数のクラスのメソッドの命名を同一にして、場面により切り替えることとありました。
> また、ある本では、オブジェクトの引数に他のオブジェクトを渡してそのメソッドを切り替えることとありました。(ストラトジーパターン)
これらがポリマーフィズム
> Javaの本では、オーバーロードという仕組みで、引数の数の違いによりメソッドの振る舞いを変えることとありました。
これはポリマーフィズムじゃない

多態性(ポリモーフィズム)は複数のクラスに同じメソッド名を設定することで
どのクラスが来ても同じメソッドの呼び方で実行させられってもの
大体は、インターフェースか継承で実現するもの

ポリマーフィズムに関してはJavaもPHPも差がない
0247nobodyさん2013/11/18(月) 15:51:04.64ID:???
Javaだと仮引数に型を明示しないといけないが、PHPは型を明示する必要がなく(しようと思えばできるが)、
その場合、全く関連性の無いオブジェクトでも同一メソッド名のメソッドがあればポリモーフィズムを実現できる。
というのが、JavaとPHPの違い。
0248nobodyさん2013/11/18(月) 16:06:16.24ID:???
え?オーバーライドもポリモーフィズム実現手段だけどオーバーロードもポリモーフィズム実現手段だろ
素人ばかりだな
0249nobodyさん2013/11/18(月) 16:07:41.17ID:???
オーバーライドっていうか継承ね
0250nobodyさん2013/11/18(月) 16:11:32.63ID:???
>>248
全ての言語仕様は実現手段だよな
0251nobodyさん2013/11/18(月) 16:13:50.49ID:???
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1430714984
この人の言ってることがわかれば参考になると思うよ
わからないからそんな質問してるんだろうけどね
オブジェクト指向の勉強なんてのはPHPでやるもんじゃないので
一回Javaコース入ったほうがいいと思う
0252nobodyさん2013/11/18(月) 16:32:37.32ID:???
>>250
0253nobodyさん2013/11/18(月) 16:38:37.75ID:???
オーバーロードがポリマーフィズム実現手段かは
SmallTalkのときから長らく議論されてる問題

僕はポリマーフィズム実現手段派
0254nobodyさん2013/11/18(月) 16:45:12.30ID:???
ポリマーフィズム → ポリモーフィズム
SmallTalk → Smalltalk
0255nobodyさん2013/11/18(月) 16:51:58.32ID:???
ポリマーってエチレン思い出すからやめてくれ
0256nobodyさん2013/11/18(月) 17:14:25.82ID:???
俺は破裏拳
02572392013/11/18(月) 17:27:24.47ID:hjGdNC9C
ご回答ありがとうございます。とても参考になりました。

>>243
多態性(ポリモーフィズム)のメリットを理解できました。
メソッド名の統一により楽できることが利点の一つなのですね。

>>246
抽象クラスで、メソッドの実装と名称を強制するのと同義と考えて大丈夫ですよね。

>>247
同一のメソッド名にすれば、その効果が、結局、ポリモーフィズムであるということですよね。

>>251
そのページの説明を読みましたが、解答がポリモーフィズムからずれて、オブジェクト指向全般の概要になっている気がします。
ただ、次の部分は、ポリモーフィズムの説明だと思いました。
もっとも、PHPのオーバーロードは、Javaとは別物のようです。

『他にも "オーバーロード" といった便利な機能があります。
引数の種類を変えれば、同名のメソッドを定義できるというものです。
いい例えが思いつきませんが、攻撃する際に "こうげき" のみでダメージ判定されるものと
"こうげき" と "まりょく" でダメージ判定される攻撃の二つがある場合、必要な引数が前者で1つ、後者で2つなのでどちらも記述できるといったカンジです。』

ありがとうございました。
0258nobodyさん2013/11/18(月) 19:39:12.50ID:???
>>241
外部からのデータを扱う場合、prepareメソッドを使う(無害化する機能有り)
外部からのデータを扱わない場合、queryメソッドを使う(無害化する機能無し)

分からなければ常にprepare使えばOK
0259nobodyさん2013/11/18(月) 21:31:57.27ID:???
order by ascかdescかを選択するときなんかの時はprepare使いづらいよね
0260nobodyさん2013/11/18(月) 21:44:21.81ID:???
>>259
え?
0261nobodyさん2013/11/18(月) 21:52:48.72ID:???
入力値でどっちにするか決まるけどbindできないじゃん
条件文使わないといけなくなるから使いづらい
0262nobodyさん2013/11/18(月) 21:53:41.23ID:HK3o2Mp0
>>261
それ何でやっても同じだろ
0263nobodyさん2013/11/18(月) 21:58:12.44ID:???
プリペアードステートメント使うことと
条件によってクエリが変わることは全く別物だぞ
0264nobodyさん2013/11/18(月) 22:00:52.85ID:???
はい

じゃやっぱクエリ2つ用意するのね
0265nobodyさん2013/11/18(月) 22:04:57.29ID:???
何のためにプリペアードステートメント使うか理解してから使おう、な
0266nobodyさん2013/11/18(月) 22:53:34.11ID:???
気持ちは分かる。
パラメータを無害化することしか知らない人には分からないだろうけど。
02672342013/11/18(月) 23:36:38.28ID:???
済みません、スレチでしたら誘導お願いできませんか?
0268nobodyさん2013/11/18(月) 23:39:32.18ID:???
>>267
そもそもなんでPHPスレだと思ったの?
0269nobodyさん2013/11/18(月) 23:53:32.87ID:???
>>234
それはそのサイトの管理者問い合わせしたほうがいいんじゃね?
連絡がつくなら修正してくれるんじゃね?
0270nobodyさん2013/11/19(火) 00:24:28.55ID:???
>>266
プリペアドステートメントの他の使い方って?
0271nobodyさん2013/11/19(火) 01:02:24.07ID:???
>>270
プリペアすることだろ
0272nobodyさん2013/11/19(火) 10:43:34.31ID:???
PHPがレベル低いって思われる最たるものが大手のFWでprepare使わずに、自前やquoteメソッドで対応してる例があることだ
0273nobodyさん2013/11/19(火) 10:54:41.60ID:???
そういうのをPHPガーって言うのが恥ずかしくない頭なんだろうな。
0274nobodyさん2013/11/19(火) 11:09:09.11ID:???
>>273
これに関しては仕方ないんじゃないか
FuelPHPとかあそこらへんも終わってたような
0275nobodyさん2013/11/19(火) 11:57:37.76ID:???
個別のソフトの問題や、使ってる人の問題を、言語自体の問題にすり替えて仕方ないと言ってるから、
あおりのレベルが低いんだよな。
0276nobodyさん2013/11/19(火) 12:16:10.14ID:???
使えないFWが多いのはちょっと問題だとは思うけどなー
使ってる人の問題だけど、そういうFWを推してる人はどうにかならんかな
0277nobodyさん2013/11/19(火) 12:17:54.87ID:???
下見て暮らしてる奴だからしょうがない
0278nobodyさん2013/11/19(火) 12:18:57.84ID:???
>>277は>>275に対してね
0279nobodyさん2013/11/19(火) 12:20:03.73ID:???
FWなら結局、CakePHPがいいよね。
0280nobodyさん2013/11/19(火) 12:28:14.36ID:???
よくない
0281nobodyさん2013/11/19(火) 12:30:37.60ID:???
CakePHPは日本と日本のオフショア先だけまだまだ盛んだな
0282nobodyさん2013/11/19(火) 12:39:02.32ID:???
fuelは出た手の頃、ormがPrepare使ってなくて使うのやめたんだが
今も治ってないの?
0283nobodyさん2013/11/19(火) 12:53:02.64ID:hKBGRur1
>>282
http://fuelphp.jp/docs/1.6/general/security.html#sql
0284nobodyさん2013/11/19(火) 13:15:30.92ID:???
>>283
ダメではないか
0285nobodyさん2013/11/19(火) 13:17:38.96ID:???
私JKで試したわけぢゃないけどーprepare+bindXxxって
query+quoteに比べて処理工数が多いだけに遅そうだしー
ただでさえ遅いFWの速度をあげるには仕方ないのでゎ
0286nobodyさん2013/11/19(火) 13:21:29.56ID:???
>>285
そんなんボトルネックにならん
0287nobodyさん2013/11/19(火) 13:23:36.67ID:???
ちっちゃいのが積み重なると大きくなるけどね
0288nobodyさん2013/11/19(火) 13:24:21.74ID:???
>>284
一昔前の文字コードやエスケープ処理での脆弱性を知らないんだろうし

シングルバイト系の人は知らない人多いし
0289nobodyさん2013/11/19(火) 13:37:06.01ID:hKBGRur1
>>284 >> 288
だめなの?
fuelphpてSQLインジェクション防げないんだ…
これはオワコンだわ
0290nobodyさん2013/11/19(火) 13:49:33.19ID:???
>>289
基本的には防げてるし、新たに発見された脆弱性も継続して修正されてる。
http://fuelphp.com/security-advisories

「プリペアードステートメントを使ってないからSQLインジェクションの脆弱性がある」というのはFUD。
とはいえ、プリペアードステートメント使えやとは思うけどね。
0291nobodyさん2013/11/19(火) 13:57:50.15ID:???
SQLインジェクションは、Prepare使わないと防げないわけではない。
そもそもでいえば、インジェクション防止の機構じゃねーし。
SQLの機構じゃなくて、ライブラリのラッパなので、仕様によっては
使っていても問題ないというわけではない。
0292nobodyさん2013/11/19(火) 13:58:01.02ID:???
>>285
クエリを実行するとき、データベースサーバでは、
1. 構文解析
2. 実行計画立案
3. クエリ実行
の処理が必要で、prepareでは1または1&2が行われる。(構文のみで実行計画を立てて固定する場合と、3で渡された
パラメータをもとに実行計画を立てる場合がある)
一方、exec queryでは毎回1〜3が行われる。
なので、同じ処理をパラメータを変えながら複数回実行する場合、プリペアードステートメントを使った方が速い場合がある。
0293nobodyさん2013/11/19(火) 14:08:35.69ID:???
レスありがとうございます
>>268
PHPが何なのか解らず、単にネットプログラムの質問スレで質問させて頂きました

>>269
大手企業サイトなので厳しいですね

ど素人ながら、ログインボタンのURLとかPCでログイン後のURLとか試したんですが、無理でした
0294nobodyさん2013/11/19(火) 14:12:15.36ID:???
>>293
> 大手企業サイトなので厳しいですね
大手こそ対応してくれそうなもんだが。
「○○のサイトって、ガラケーのフルブラウザだとログインもできない糞サイトだわ」
とかネットで言われると困るだろうし。
0295nobodyさん2013/11/19(火) 14:15:18.76ID:???
>>289
そこそこ有名なPHPのフレームワークにそんな基本的な脆弱性があるなら、大垣氏あたりが騒いでるよ。
0296nobodyさん2013/11/19(火) 14:48:00.13ID:???
>>295
もちろん知ってる。>>284と>>288を皮肉ったんだよ、
0297nobodyさん2013/11/19(火) 15:30:48.92ID:???
>>288の話ってPHPの脆弱性の話じゃないだろ、常識だろ?
0298nobodyさん2013/11/19(火) 15:39:16.53ID:???
http://gihyo.jp/dev/serial/01/php-security/0042
0299nobodyさん2013/11/19(火) 15:49:48.19ID:???
>>295
quoteだけでは防げない問題を見つけてつぶしていってくれてるんだよ。
0300nobodyさん2013/11/19(火) 15:55:45.62ID:???
http://www.tokumaru.org/d/20100701.html

昔のMySQLみたいなprepareがクライアントサイドで処理とかゴミな実装されてると
prepareのほうが脆弱性の巣窟になりかねない。

この場合、徳丸氏や大垣氏が騒ぐから問題はいつか解決される
0301nobodyさん2013/11/19(火) 16:05:50.48ID:???
今htmlフォームのradio,cheakbox,selectを使ってphpにポストしています
ポストしたデータ類はdbやcsvに書き込んだり保存したりするわけでもなく
switch($_POST["color"])
{
case "red":return imageColorAllocateAlpha($i,200,200,200,$alpha);break;
~~~~~~
default:return imagecolorallocate($i,255,255,255,$alpha);break;
}
で最終的に変な物が飛んできてもdefaultで処理されると思うんですがセキュリティ的にこれ$_POSTを正規表現やstrlenで弾くべきですか?
0302nobodyさん2013/11/19(火) 16:09:44.47ID:???
>>301
大丈夫
0303nobodyさん2013/11/19(火) 16:12:49.08ID:???
>>302
ありがとうございます。。
0304nobodyさん2013/11/19(火) 16:17:55.45ID:???
>>301
一応、問題ない。
ただ、不正な値をエラーとして弾くと、ログから変な操作をする奴を突き止めやすい。
0305nobodyさん2013/11/19(火) 17:47:12.58ID:???
自分はpost値をひと通りチェックして処理入る前に
想定外のものがあったらexitして真っ白にして不気味感を演出したり
headerでbad requestあたりを返すと思う
0306nobodyさん2013/11/19(火) 18:06:18.79ID:???
俺は大抵302でヤフーにお任せするわ
0307nobodyさん2013/11/19(火) 20:51:48.38ID:???
headerにbad request(400)なんてあるんだね。
余談だが、404にすべきページをエラーページに飛ばしてたら
ソフト404とかで注意されたよ。
0308nobodyさん2013/11/19(火) 20:54:19.28ID:???
>>307
ステータスを404にしないからだな
0309nobodyさん2013/11/19(火) 21:10:38.01ID:???
うわー自前で正規表現やらintvalだの使ってvalidationしてたけどfilterなんてあったのか
0310nobodyさん2013/11/19(火) 21:14:07.64ID:???
<?php
header("HTTP/1.0 404 Not Found");
header("Location: http://www.example.com/error/";);

こんな感じにしたら、なぜか、最初のヘッダーは無視されて、
結局、302でのリダイレクトになっちゃうから404を出すのは諦めたんだけど。
404出してから更にエラーページに遷移するのは無理っぽい。
fiddlerでステータスコードを確認した限りの話だが。
0311nobodyさん2013/11/19(火) 21:14:29.22ID:???
>>309
FilterとCtypeは重要
0312nobodyさん2013/11/19(火) 21:15:39.77ID:???
>>310
そりゃだめだろ
リダイレクト先で404出さないと
0313nobodyさん2013/11/19(火) 21:17:35.20ID:???
>>310
それおかしいだろ
リダイレクト先のそのURLで404を返すようにしなさいよ
0314nobodyさん2013/11/19(火) 21:18:06.73ID:???
リロードしてなかったのごめんね
03153102013/11/19(火) 21:37:04.47ID:XtFCM7Hl
まじですか・・・。
いや、エラーページは200を返す普通のページにしてたんだけど。
もちろん、存在しないページ用の404ページ(ヘッダー404)は別に用意してるんだけど。
つーか、むしろエラーページに飛ばさないで、素直に404ページに飛ばせばいいのか。
03163102013/11/19(火) 21:42:44.27ID:XtFCM7Hl
普通、エラーページも404ヘッダーを出すものなのですか?
0317nobodyさん2013/11/19(火) 21:49:59.72ID:???
エラーページで404が必要なときは404

厳密には200を返す必要があるときはない
0318nobodyさん2013/11/19(火) 21:54:36.62ID:???
404 FOT FOUNDとかechoしておいて200返してるのはかなりかっこ悪いとは思う
03193102013/11/19(火) 22:48:57.12ID:9JiWXD43
レスありがとうございます。
どうも頭が混乱してしまいました。
こうすれば大丈夫でしょうか?

POSTパラメーターが不正 → エラーページ
(200ステータス: echo ”リクエストが不正です”)

GETパラメーターが不正か不存在 → 404ページ
(404ステータス: echo ”ページが存在しません”)

GETパラメーターの場合に、エラーページに飛ばしていたのが、
ソフト404の原因だと思うのです。
0320nobodyさん2013/11/19(火) 23:00:34.26ID:???
>>319
RFC2616か、WikipediaのHTTPステータスコードでもいいから読んで
どういう時にどれを使えばいいか分かるから
0321nobodyさん2013/11/19(火) 23:04:02.90ID:???
パラメーターの問題じゃない
hoge.phpというファイルは存在しているんだから404を返すのは不自然
03223102013/11/19(火) 23:29:26.30ID:9JiWXD43
>>320
ご指摘に従い、HTTPステータスコード等について調べてみます。

>>321
mod_rewriteで、GETパラメーターを静的URLに書き換えてリンクとして活用しているのですが、
この場合もhoge.phpは存在するとみなされるのでしょうか?
(例)ttp:example.com/hoge/2013/11/29
9999とか不正な値がきたら、404に飛ばせばいいかなと思ったのですが。

わかりづらい説明ですみません。
0323nobodyさん2013/11/19(火) 23:44:52.18ID:???
mod_rewriteでやってもアプリケーション側で弾かない限り
実質的にはhoge.php?y=2013&m=11&d=29みたいな感じで見れると思うけど
hoge.phpが存在するというのを表向きに知られたくないのなら好きにすればいいんじゃね
目的とか実装によりけりだよそのへんは
0324nobodyさん2013/11/19(火) 23:51:53.10ID:???
>>322
ファイルがあろうがなかろうが、そのURLを存在させたくなければ404でよい

> (例)ttp:example.com/hoge/2013/11/29
> 9999とか不正な値がきたら、404に飛ばせばいいかなと思ったのですが。
404が適切。
0325nobodyさん2013/11/19(火) 23:59:01.39ID:???
ブログ記事を表示するページのurlが
example.com/post/ブログ記事のid
だとして、存在しないidだったときは404返してたんだけど間違ってる?
03263102013/11/20(水) 00:10:19.19ID:VLPy2k85
>>323 >>324
(例)ttp:example.com/hoge/2013/11/29
結論として、このurlの不正な値の場合に、200のエラーページに飛ばしていたのがソフト404の原因ですよね。

ご指摘くださったことを参考に、もう一度、ページの構成と遷移、
ステータスコードの関係について検証したいと思います。
ありがとうございました。
0327nobodyさん2013/11/20(水) 00:31:49.62ID:???
>>325
あってる
0328nobodyさん2013/11/20(水) 07:53:07.64ID:???
訳もわからず404や403を返しちゃうのは恥ずかしいよね。
自分で書いてるスクリプトなのにw
400と500のどちらかを返すだけの方が無難だよねw
0329nobodyさん2013/11/20(水) 08:01:27.90ID:???
>>328
君は存在してることが恥ずかしい
0330nobodyさん2013/11/20(水) 09:35:19.42ID:???
>>328
httpステータスコードでググってこい
0331nobodyさん2013/11/20(水) 11:28:24.00ID:35fCUlou
通常、ファイルが存在しない場合に備えて、.htaccessに次の様な設定をすると思います。
ErrorDocument 404 /error/404.php(404ヘッダーを出力)

ここから質問です。
次のURLのid値が不正な場合、404となるよう、同様に、/error/404.php に遷移できますか?
ttp://example.com/post/id

header('Location: ttp://example.com/error/404.php');
post.phpで出すこのヘッダーは302ですが、遷移すれば、結果として404扱いになるのでしょうか?
0332nobodyさん2013/11/20(水) 11:33:09.19ID:???
その 404.php は何を返すの?
03333312013/11/20(水) 11:36:20.51ID:35fCUlou
>>332
オリジナルに作成した、いわゆる404ページです。

もしかしたら、(404ヘッダーを出力) という部分は間違いかもです。
0334nobodyさん2013/11/20(水) 11:57:47.58ID:???
UAがリダイレクトを許可する設定なら404
そうでないなら302
不安ならPHP側で処理に合わせてheaderとresponse返すようにすればおk
0335nobodyさん2013/11/20(水) 12:22:36.67ID:???
>>331
Locationは「リソースの別の場所を案内する」ために用いられるもの
「リソースが見つからない」場合の挙動は定義されていない
各ベンダーの実装は404とLocationを一緒に出すと無視される
よって include('error/404.php'); 等とするしかない
03363312013/11/20(水) 12:41:10.58ID:35fCUlou
>>334 >>335
ありがとうございます。
header("HTTP/1.0 404 Not Found");
このヘッダー出力だけで、自動で遷移する、ErrorDocument 404 と
同様の効果があると良いのですが、どうも無理なようですね。

<?php
//idチェック処理後不正な場合
header("HTTP/1.0 404 Not Found");
include('error/404.php');
exit;

やはり、こうして読み込むしかないということですね。
ありがとうございました。
0337nobodyさん2013/11/20(水) 12:43:47.50ID:???
404.php側でヘッダに404を出せよというだけじゃね?w
0338nobodyさん2013/11/20(水) 12:48:58.33ID:???
>>337
ソフト404エラーでググれ
0339nobodyさん2013/11/20(水) 17:14:42.69ID:???
>>337
だよね

>>338
?
0340nobodyさん2013/11/20(水) 17:32:58.48ID:???
>>337
404.phpに移動していいならそれでいいね。
ただ、.htaccessにErrorDocument設定をしたのと同じ振る舞いを希望するなら、その手じゃ駄目なんじゃ。
0341nobodyさん2013/11/20(水) 17:55:26.35ID:???
変な質問ですみません。

最近転職してPHPを触るようになったのですが、Linux上のvimで開発しています。
開発時にインデントをある程度入れると思うのですが、普通はどのようにインデントを
入れるのが正しいソースの書き方なんでしょうか?

今触っているソースは特に改行やTABインデントがなく、そのまま1行でずっと
書かれてあり可読性としてどうなのかなと思いつつも、そういうルールかもしれないと思い
自分も特にインデント等を入れずに開発しているのですが。。

わかりにくい書き方で申し訳ありませんが、どなたか教えて頂けないでしょうか
0342nobodyさん2013/11/20(水) 17:57:19.88ID:???
難読化してんのかね?
整形して編集してリリース時にまた改行消す、とかでいいんじゃ?
0343nobodyさん2013/11/20(水) 17:58:27.74ID:???
コーディング規約ないならご自由に
後で自分が追うことになっても苦労しない程度にね
0344nobodyさん2013/11/20(水) 18:00:00.26ID:???
>>337 >>339
次の文は正しい?それとも間違い?
『転送元で302を出しても、転送先で404を出せば「ソフト404」にならない』
0345nobodyさん2013/11/20(水) 18:00:42.18ID:???
>>341
インデント、改行の入れ方はいろいろある
http://www.infiniteloop.co.jp/docs/psr/psr-2-coding-style-guide.html
http://ja.phptherightway.com/
のコーディングスタイル
いろいろあってどれが正しいとかはないが、会社やプロダクトでどうなっているか次第

一行に書くのがルールですって言われたら会社辞めちゃいそう
0346nobodyさん2013/11/20(水) 18:01:44.56ID:???
>>344
Googleの話だよな?ソフト404って
正しいよ。ただ転送は301がオススメ
0347nobodyさん2013/11/20(水) 18:05:42.61ID:???
>>346
そうGoogleの話。
理解できた。ありがとう!
0348nobodyさん2013/11/20(水) 18:05:59.79ID:???
>>342-343
パッと見た時に「読みにくい」と思ったのが最初です
例えば

 $hoge = array('aaa' => $aaa, 'bbb' => $bbb);

のようなものがあったとして(実際はもっと多いです)

 $hoge = array
          (
           'aaa' => $aaa,
           'bbb' => $bbb
          );

のように書いた方が後で見た時に読みやすいと思いまして。。

>>345
資料の方ありがとうございます。
そちらを見てみます。
0349nobodyさん2013/11/20(水) 18:07:21.19ID:???
>>341
それって最終的にそうしてるってだけで、
編集用のコメントが入ってたりインデントもちゃんと入ってるソースが別にあるでしょ?
つうか会社に人に聞きなさいよ。
0350nobodyさん2013/11/20(水) 18:08:46.70ID:7VTPw3qr
変なこと聞きますが、base64_encodeでダブルクオーテーションが
含まれる文字列に変換されることってありえませんよね?
0351nobodyさん2013/11/20(水) 18:11:55.88ID:???
インデント、手で入れてるんですか?
0352nobodyさん2013/11/20(水) 18:13:31.78ID:???
>>350
ないと思うけど
0353nobodyさん2013/11/20(水) 18:14:21.21ID:???
>>341
インデントはスペース4つが普通。
いろんな文法チェッカーツールも、デフォルトではタブでインデントしてると警告を出すのが多い。
0354nobodyさん2013/11/20(水) 18:17:04.21ID:???
>>349
ないんです
聞いてみたら「昔からこうだった」らしいので。
そういうものなのかなと少し疑問に思って質問しました。すみません

>>353
TABじゃないらしいですね。
>>345さんの教えてくれたページを見て驚きました

スレ汚し申し訳なかったです
0355nobodyさん2013/11/20(水) 18:17:34.09ID:7VTPw3qr
>>352
ですよね。CSVファイルに保存するとき、base64_encodeして保存してるのですが、
たまにダブルクォーテーションが余分についてファイルが壊れている事があります。
原因が全くわからないので、バグを見つけられずに困っていました。

他の原因を探ってみます。
0356nobodyさん2013/11/20(水) 18:19:19.18ID:???
>>354
PHPのインデントはスペース派が多いけど
どっちでもいいよ。会社やプロダクトで決められたほうを使うべきかな
0357nobodyさん2013/11/20(水) 18:20:47.24ID:???
>>356
PSR-2がスペース使うのがMUSTだから、どっちでもいいならスペース使っといた方がいい。
0358nobodyさん2013/11/20(水) 18:43:18.00ID:???
>>341
vimの設定ちょこちょこしておけばインデントは勝手にやってくれるよ。
インデントを入れずに書くのはやめといたほうが。
0359nobodyさん2013/11/20(水) 18:56:19.40ID:???
>>354
やべえなその会社w
お前が引っ張っていってやれ
0360nobodyさん2013/11/20(水) 19:11:37.50ID:???
>>357
PSR-2に従うならだな
従うかはMUSTではないからな

うちはPSR-1までは従ってるけど、コーディングスタイルは全然違うな
0361nobodyさん2013/11/20(水) 19:29:19.34ID:???
>>346
いい加減な事を教えないでくれ
301はリソースが一時的に別の場所に「ある」時に使う
ソフト404エラーは404を返すべきところで「404を返さない」事を指す
0362nobodyさん2013/11/20(水) 19:45:20.59ID:???
>>361
違うよ、まず301は恒久的だぞ、一時的は302
301にしろ302にしろ、リソースが新しいURIに移動したことを示す。
404はURIに一致するリソースが見つけられない、リソースはあるがリクエストを拒否したい等々
移動させることは勝手だし、リソースのあるなしは関係ない。

>ソフト404エラーは404を返すべきところで「404を返さない」事を指す
その通りだが、そのURIを301にしてその先で404を返すのは勝手。
その場で404を返そうがどっちでも良い
返せるならその場の方が好ましいとは言えるかもしれない
0363nobodyさん2013/11/20(水) 19:48:23.17ID:ZNkS7nHy
PHPで重複組合せを簡単にやるにはどうしたらよいでしょうか?
もし関数やライブラリがあれば教えてください。
無ければサンプルコードを教えてください。よろしくお願いします。
0364nobodyさん2013/11/20(水) 19:52:53.93ID:ZNkS7nHy
補足です。

仮に、[1, 2, 3, 4, 5] の5つから3つ選び出す場合、
$result = [
 [1, 1, 1], [1, 1, 2], [1, 1, 3], [1, 1, 4], [1, 1, 5],
 [1, 2, 2], [1, 2, 3], [1, 2, 4], [1, 2, 5],
 ...
 ...
 [1, 5, 5],
 [2, 2, 2], [2, 2, 3], [2, 2, 4], [2, 2, 5],
 [2, 3, 3], [2, 3, 4], [2, 3, 5],
 ...
 ...
 ...
 ...
 [5, 5, 5]
];

このように出力したいです。
0365nobodyさん2013/11/20(水) 20:08:13.76ID:???
PHPマニュアルが変わった?
0366nobodyさん2013/11/20(水) 20:10:39.68ID:???
変わった
0367nobodyさん2013/11/20(水) 20:39:38.18ID:???
>>362
> 違うよ、まず301は恒久的だぞ、一時的は302
ごめん、俺が取り間違えてる

> 404はURIに一致するリソースが見つけられない、リソースはあるがリクエストを拒否したい等々
> 移動させることは勝手だし、リソースのあるなしは関係ない。
404は適当な理由による拒否として使うコードではない (RFC 2616#10.4.5)
拒否する理由に合わせて400、401、403、406等が用意されている

> その場で404を返そうがどっちでも良い
> 返せるならその場の方が好ましいとは言えるかもしれない
Googleが決めたソフト404エラーを回避する義務がないのは同意するけど
無いものを無いと知っててクライアントに教えないのはHTTPサーバーとして行儀が悪い
今回のケースではPHPで対応できるのだから404を返すべき。この点は譲れん
0368nobodyさん2013/11/20(水) 20:59:29.17ID:???
>>364
$a = [1, 2, 3, 4, 5];
print_r (combine($a,3));

function combine($a, $n) {
if($n==1) return $a;
$result = array();
foreach ($a as $v1)
foreach (($n==2?$a:combine($a,$n-1)) as $v2)
$result[] = array_merge((array)$v1, (array)$v2);
return $result;
}
0369nobodyさん2013/11/20(水) 21:02:06.21ID:???
>>367
10.4.5
This status code is commonly used when the server does not wish to
reveal exactly why the request has been refused, or when no other
response is applicable.
書いてあるよ。

>無いものを無いと知っててクライアントに教えないのはHTTPサーバーとして行儀が悪い
301と404のセットで教えてるから良いんだよ
301を返さずに404の方が好ましいかもしれない。だがMUSTじゃないし問題なし
0370nobodyさん2013/11/20(水) 21:25:52.44ID:???
>>369
> 10.4.5
それは404の説明ではなく commonly used な
「リクエストを拒否する理由を隠したい、適当なものがない時にも使われている」という使用例だ
ソフト404エラーの話とはまた違う

> 301と404のセットで教えてるから良いんだよ
だから選択ではなくセットで使えという事が
ソフト404エラーに該当するしHTTPサーバーとしての振る舞いとしても良くないと言ってるんだ
0371nobodyさん2013/11/20(水) 21:31:48.37ID:???
まだやってたのか
0372nobodyさん2013/11/20(水) 21:38:05.31ID:???
>>369
>>344に対する回答>>346が間違い
それだけの話だ
0373nobodyさん2013/11/20(水) 21:42:05.18ID:???
>>370
HTTPステータスの話とソフト404の話をごっちゃにしないでくれ

ソフト404はあくまでGoogleがこれ404がいいよねってURLだ
あくまで提案であり、このままだと404と見なすよって意味だ

元の質問が、302→404としたらソフト404でなくなるかだ
答えは「なくなる」だ。これはHTTPステータスではなくGoogleの話だ

>それは404の説明ではなく commonly used な
>「リクエストを拒否する理由を隠したい、適当なものがない時にも使われている」という使用例だ
>ソフト404エラーの話とはまた違う
そのとおり、最初からソフト404エラーとしてそれを説明してないので問題ない
0374nobodyさん2013/11/20(水) 21:45:08.54ID:???
>>372
どうみてもあってるんですが、どこが間違ってるんでしょうか?
0375nobodyさん2013/11/20(水) 21:48:25.66ID:???
厳密には
https://support.google.com/webmasters/answer/181708?hl=ja
>存在しないページに対して 404 と 410 以外のコードを返すこと(または 404 を返す代わりにホームページなど他のページにリダイレクトすること)は、問題となる可能性があります。
と書いてはあるんだ

実際は302か301で404に飛ばしても、ソフト404エラーの解決にはなる
0376nobodyさん2013/11/20(水) 22:06:42.02ID:???
>>373
そうだな対Googleの話に絞ろう
https://support.google.com/webmasters/answer/181708?hl=ja
> 存在しないページに対して 404 と 410 以外のコードを返すこと
> (または 404 を返す代わりにホームページなど他のページにリダイレクトすること)は、問題となる可能性があります。
> まず、その URL にページが存在することが検索エンジンに明示されます。
> その結果、URL がクロールされ、コンテンツがインデックスに登録される場合があります。

質問者はそのURLに対するリクエストをリダイレクトすると
ソフト404エラーにならなくなるのか?を訪ねているのだから答えはNOだ
0377nobodyさん2013/11/20(水) 22:13:11.42ID:???
>>376
どうやってコンテンツがインデックスに登録されるんだい?
404返してるページはgoogleはインデックスしないぞ
0378nobodyさん2013/11/20(水) 22:17:24.84ID:???
>>375
ごめんリロードしてなかった
俺のサーバーじゃないならリダイレクトしようが何しようが全然構わないけど、
初心者が見に来るスレだからこそ理想的な手段でやって欲しい
0379nobodyさん2013/11/20(水) 22:23:26.54ID:???
スレチだしそろそろ終わらせようか

>>377
404や410を返さないURLをどう扱うかは俺ではなくGoogleが決める事
そしてソフト404エラーを回避するためには404、410を返す以外の解決手段が書かれていない
それ以上何を語ればいいんだ
0380nobodyさん2013/11/20(水) 22:26:20.27ID:???
>>344 >>346
404か410をその場で返す方が
301や302を利用して404に飛ばすより好ましい

ってレスすれば良いだけではないか
>>361の暴走が全てを狂わせた感じだな
0381nobodyさん2013/11/20(水) 22:39:23.48ID:???
>>380
はいはい俺の暴走俺の暴走
質問者も居ないみたいだしもう終わらせよう
0382nobodyさん2013/11/20(水) 22:39:40.62ID:???
>>377
これこれ。
> (または 404 を返す代わりにホームページなど他のページにリダイレクトすること)
404を返さずに404らしきページを返すことを、google用語でソフト404という。
だから、404らしきページを返すんなら、ちゃんとステータスコードも404にしろよってことだ。
0383nobodyさん2013/11/20(水) 22:42:16.58ID:???
>>382
俺の暴走だからもういいからPHPの話をしよう

                     /j
                   /__/ ‘,
                  //  ヽ  ‘, 、
                    //    ‘  ! ヽ        …わかった この話はやめよう
                /イ       ‘, l  ’
               iヘヘ,       l |  ’
               | nヘヘ _      | |   l       ハイ!! やめやめ
               | l_| | | ゝ ̄`ヽ | |〈 ̄ノ
               ゝソノノ   `ー‐’ l ! ¨/
            n/7./7 ∧        j/ /     iヽiヽn
              |! |///7/:::ゝ   r===オ        | ! | |/~7
             i~| | | ,’ ’/:::::::::::ゝ、 l_こ./ヾ..     nl l .||/
             | | | | l {‘:j`i::::::::::::::::`ーr ‘         ||ー?{
              | ‘” ̄ ̄iノ .l::::::::::::::::::::::∧       | ゝ    ‘,
      , 一 r‐‐l   γ /、::::::::::::::::::::::::〉ー= ___  ヘ  ヽ   }
    / o  |!:::::}     / o` ー 、::::::::::::i o ,’:::::::{`ヽ ヘ     ノ
   / o    ノ:::::∧   /ヽ  o  ヽ::::::::| o i::::::::ヽ、 /   /
   /    ノ::::::/    /::::::::ヽ  o  ヽ:::| o {::::::::::::::Υ   /
0384nobodyさん2013/11/20(水) 22:46:13.11ID:???
>>383
分かってる人が多い中で、単にかみ合わなかっただけに見えるけど、
そんな荒れなさんな。よくあること。
0385nobodyさん2013/11/21(木) 11:52:00.88ID:???
>>376
> ソフト404エラーにならなくなるのか?を訪ねているのだから答えはNOだ

ならなくなるのがNOなのか、
なるのがNOなのか。
0386nobodyさん2013/11/21(木) 13:55:32.19ID:z+wm09wI
ところで、フレームワークについてはどう思う?
俺は、Symfony、Zend、Cakeを利用したことがあるけど、
実際は、PurePHP派なんだ。
フレームワークは重い。
人材を探すのが難しい、学習コストがかかる(特にSymfony)
そして、案件が少ない。
と商業的にはいいとこなしなんだけど。
逆に、標準PHPは、PHPプログラマならどんなフレームワーカーでも、対応できる。
設計書とオブジェクト指向さえしっかりしていればね。
こう思うんだけど、皆はどう思ってる?まさかクールだからって理由でフレームワークを使っているわけではあるまい。
0387nobodyさん2013/11/21(木) 13:59:57.42ID:z+wm09wI
PureなPHPと、一般普及してるフレームワークを利用しているPHPとどちらの
案件が多いのだろうか?
やっぱ、殆どがフレームワークでの案件?
0388nobodyさん2013/11/21(木) 14:08:25.90ID:???
フレームワーク指定の案件を受けたことないわ
フレームワークを知ってる人たちが使うと早く案件が終わるから使うってパターンが多いんじゃないの?
0389nobodyさん2013/11/21(木) 14:33:34.62ID:???
フレームワーク禁止案件ならいくつかあった
0390nobodyさん2013/11/21(木) 14:35:35.69ID:???
自社フレームワーク禁止案件ならあったな
0391nobodyさん2013/11/21(木) 14:37:29.80ID:???
何を使うかは受注側、それもメインプログラマが決定すべきものでしょ
既に開発が始まってるPJにアサインされたらやるしかないけど
開発中から開発後まで使うことでメリットを感じるフレームワークならそれでいい
03923892013/11/21(木) 15:32:28.62ID:???
>>391
> 何を使うかは受注側、それもメインプログラマが決定すべきものでしょ

リリース後、自社メンテを睨んでたんだと思うよ。
0393363-3642013/11/21(木) 16:58:54.01ID:Bf2F+E9Z
>>368
ありがとうございます!!
神様と呼ばせてください!!
神様ありがとうございました!!!
0394nobodyさん2013/11/21(木) 17:32:10.23ID:???
ごめん、一箇所無駄があるわw
0395nobodyさん2013/11/21(木) 20:12:07.71ID:???
>>368
これだと数が増えるにつれ際限なくメモリ使うから糞コードだぞ
0396nobodyさん2013/11/23(土) 02:09:37.21ID:???
phpで掲示板を作ったのですが、次は何を作るのがオススメですか?まだ3ヶ月の初心者です。
0397nobodyさん2013/11/23(土) 02:18:18.78ID:???
>>396
PHPから離れて別の言語を探索してみるのもよし
0398nobodyさん2013/11/23(土) 02:19:06.56ID:???
流体シミュレーションでも作るといいよ
0399nobodyさん2013/11/23(土) 02:20:08.49ID:???
>>396
次はwordperssを使いましょう
それでHPを作成販売すればお金が稼げます。実際にやってる企業も多いですよ
0400nobodyさん2013/11/23(土) 02:21:36.61ID:???
>>396
次はDBMSを勉強しよう
お薦めはPostgreSQL
日本では使用例も日本語文献も多いから
0401nobodyさん2013/11/23(土) 02:23:15.44ID:???
>>396
WordPressのようなものは初心者にはおすすめしません。
まずはPHPをしっかり理解して自分である程度のシステムを組めるようになること
0402nobodyさん2013/11/23(土) 02:24:53.38ID:???
WordPressこそ初心者向けだろwww
使いこなすだけでプロとなんら変わらない事が出来るからやっておけw
0403nobodyさん2013/11/23(土) 02:44:24.06ID:???
全くつられやすいなお前らは
0404nobodyさん2013/11/23(土) 02:56:51.81ID:???
>>402
おまえが初心者だろ?
プロの仕事わかってないだろwww
0405nobodyさん2013/11/23(土) 03:05:42.91ID:???
いや、今時主流になってるサイトはWordPressで作れるだろ
しかも簡単。面倒臭い事は全部WordPressでやってくれる
まさに初心者向けな

必死になっちゃってる奴はライバル増えておまんま食い上げられる事でも危惧してんのか?www
0406nobodyさん2013/11/23(土) 03:45:46.44ID:???
という自演でしたwww

釣られてやったんだ感謝しろよ>>396
0407nobodyさん2013/11/23(土) 11:05:07.08ID:co3F0dNX
TwitterのOAuthログイン実装してるんだけど
ローカルの開発環境だとどうやって試せばいいの?
0408nobodyさん2013/11/23(土) 11:45:06.48ID:HUwpIheR
PHPは社員研修で習ったばかりの新卒エンジニアです
PHPで利用できるフレームワークの選定のための準備を任せられまして
ORMでセキュリティが問題ないものを探しています
フレームワークからORMが分離できないものでも問題ないです

・クライアントの文字コードを接続時に指定できること
・クエリパラメータはプリペアードステートメントを利用していること
・識別子はクォートされること
は最低条件です

最終的には先輩エンジニアと全コードを見ることになっています
目星をつけておきたいのです
お願いしまうす
0409nobodyさん2013/11/23(土) 11:45:24.53ID:???
>>407
xampp
0410nobodyさん2013/11/23(土) 11:47:40.85ID:???
>>408
smarty
0411nobodyさん2013/11/23(土) 12:07:02.08ID:HUwpIheR
>>410
smartyはテンプレートエンジンだと習ったのですが
ORMでsmartyがあるのでしょうか?

URLを教えていただけるとうれしいです
0412nobodyさん2013/11/23(土) 12:12:05.98ID:???
>>408
Doctrine、ZF2、PHP ActiveRecordは大丈夫
使うと怒られるだろうがPhalconPHPも大丈夫

FuelPHP、ZF1はダメ
0413nobodyさん2013/11/23(土) 12:50:13.63ID:???
選定の準備を任されたってことの意味を理解してないな
こんなところで聞いてるのがバレたらお叱りを受けますよ
0414nobodyさん2013/11/23(土) 12:58:11.24ID:???
最終的に「オレオレフレームワーク」が最強ってのに辿り着くんだけどね。
0415nobodyさん2013/11/23(土) 13:06:08.32ID:HUwpIheR
>>412
ありがとうございます。PhalconPHPおもしろそうです
Cは会社の人で触れる人多いのでこちらも候補にあげさせてもらいます

>>413
選定のための準備でWeb上のブログ記事や質問サイトを使うことは許可されてるので大丈夫です
目星をつけたものを全ソースコードを読むことになっています
0416nobodyさん2013/11/23(土) 13:10:46.92ID:???
教育係がめんどくさくて新人に全部丸投げとかwww
0417nobodyさん2013/11/23(土) 13:51:08.24ID:xzL6Vqsq
http://kohada.2ch.net/test/read.cgi/php/1362790136/62 の
<?php
$body = "submit=%8F%91%82%AB%8D%9E%82%DE&FROM=%21ninja&mail=sage&MESSAGE=Hello+world&bbs=php&key=1362790136&time=1";
$length = strlen($body);
$head = "POST /test/bbs.cgi HTTP/1.1\r\nHost: kohada.2ch.net\r\nUser-Agent: Monazilla/1.00\r\n".
"Referer: http://kohada.2ch.net/test/read.cgi/php/1362790136/l50\r\nContent-Type: application/x-www-form-urlencoded\r\n";
$out = $head."Content-Length: ".$length."\r\n\r\n".$body;
$fp = fsockopen("kohada.2ch.net", 80, $errno, $errstr, 30);
if (!$fp) {echo "$errstr ($errno)<br>\n";exit;}
fwrite($fp, $out);
$cookie = "Cookie: ";
while (!feof($fp)) {
$str = fgets($fp, 128);
if (strpos($str, "Set-Cookie: ") === 0) {
$str = str_replace("Set-Cookie: ", "", $str);
list($cook, ) = explode(";", $str);
$cookie .= $cook."; ";
}
}
fclose($fp);
$cookie .= "NAME=\"\"; MAIL=\"\"; yuki=akari; HAP=*ここに FOXdayo〜から始まる文字列を記入*;\r\n";
$out = $head.$cookie."Content-Length: ".$length."\r\n\r\n".$body;
$fp = fsockopen("kohada.2ch.net", 80, $errno, $errstr, 30);
if (!$fp) {echo "$errstr ($errno)<br>\n";exit;}
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
?>
0418nobodyさん2013/11/23(土) 13:57:05.37ID:xzL6Vqsq
のPHPで2chに書き込むコードを使いたいのですが、
このまま使うと
HTTP/1.1 200 OK
Date: Sat, 23 Nov 2013 04:43:35 GMT
Server: Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8q PHP/5.3.8 mod_antiloris/0.4
Vary: Accept-Encoding
Content-Length: 344
Connection: close
Content-Type: text/html; charset=shift_jis

<html lang="ja">
<head>
<title>書きこみました。</title>
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
(以下略)
という感じで2chの書き込み完了ページがそのまま出てくるのです。
でも最初にレスポンスヘッダが排出されて出てくるので、レスポンスヘッダと実際のページ内容を分けたいのですが、
できますか?
できれば、<HTML>で分けるなど、他のページで使えない方法ではないものを教えてほしいです。
よろしくお願いします。
0419nobodyさん2013/11/23(土) 15:20:20.90ID:???
>>418
空行で分割
0420nobodyさん2013/11/24(日) 11:00:32.25ID:???
ヘッダは空行までというのはhttpに限らず広く使われてる
0421nobodyさん2013/11/24(日) 17:32:01.73ID:BjxkHZDb
【OS名】Mac OSX 10.8.5
【PHPのバージョン】5.3.26
【質問内容】
ウェブ上のサンプルコードを参考に、
PHPからアメブロに投稿しようとしているのですが、
403エラーが返ってきて、うまく行きません。

ホームページ・ビルダーのブログ投稿機能では投稿できているので、
API自体は生きていると思うのですが・・・

原因のわかる方、よろしくお願いします。
0422nobodyさん2013/11/24(日) 17:35:58.91ID:???
>>421
その情報じゃ答えようがないよ
0423nobodyさん2013/11/24(日) 17:48:32.03ID:BjxkHZDb
>>422
どんな情報が必要でしょうか。
0424nobodyさん2013/11/24(日) 18:15:31.18ID:???
>>423
実行したコードと
403エラーを認識したもの

があれば大体いけるんじゃないか?
0425nobodyさん2013/11/24(日) 19:08:52.68ID:97obQaT5
>>419>>420
ページ本体にも空行が使われていたら、一つ目の空行で分割
ということで良いのでしょうか?
04264212013/11/24(日) 19:41:29.93ID:BjxkHZDb
>>424
文字数制限とリンク制限で書き込めないのですが、
「phpを使ってアメブロへ投稿する方法」などを参考にしました。

cURLのレスポンスを見ると403エラーになっています。
0427nobodyさん2013/11/24(日) 21:15:33.33ID:???
>>426
アメブロは調べる限り公式な情報が不足しすぎてるから
根本AtomAPI理解できてないなら難しいと思うよ

401エラーでないってことはWSSEでこけてるわけではないな
403エラーは、根本何か間違えてる以外にも、記事の中にYoutubeの動画をいれるとか
iframeいれるとかでもおきるみたいで、いろいろ謎

ソースをhttp://codepad.org/で公開して、パスだけ貼るとか
リクエスト全部を貼るとかか

いろいろ長いので投稿テストしてるなら、短いのにしてくれな
04284212013/11/25(月) 03:25:17.64ID:kknZe82B
>>427
丁寧にありがとうございます。

ソースはcodepad.org/p9CmA3rZです。

nonceの値を変えてみたり、パスワードのハッシュ化あり・なしなど、
いろいろな組み合わせを試したのですが、
すべて403になります。

ホームページ・ビルダーにアメブロに投稿できる機能があり、
パケットキャプチャで解析したところ、
同じエンドポイントを使っていて、そちらはちゃんと投稿できているので、
PasswordDigestの仕様が変わったのか、もしくは根本的に何か間違えているのか・・・

よろしくお願いします。
0429nobodyさん2013/11/25(月) 09:47:03.64ID:???
>>425
そうだよ、ヘッダに空行は無い約束だけど、本文に空行はありうるからね。
0430nobodyさん2013/11/25(月) 09:48:37.45ID:???
あ、ついでに、ヘッダの先頭が空白(TAB含む)だったら前行からの継続ということね
0431nobodyさん2013/11/25(月) 15:02:57.99ID:???
名前空間使うと、new \Exception() とかに \ 付けなきゃいけなくなってめんどくさいですね
0432nobodyさん2013/11/25(月) 17:17:33.17ID:???
>>431
¥が嫌ならバクスラにしたら?
0433nobodyさん2013/11/25(月) 17:56:46.92ID:???
どういうつもりでそんなこと言うんだろうか
0434nobodyさん2013/11/25(月) 19:29:47.02ID:???
相対参照する場面すべてで .\ をつける羽目になるよりはいいと思うんだよね。
0435nobodyさん2013/11/26(火) 03:31:23.15ID:5uCWNNk/
初心者ですが、教えてください。
サイトのトップページにコンテンツの更新情報を載せたいのですが、
データベースを利用せず実現したいです。
どのようにすればいいですか?
0436nobodyさん2013/11/26(火) 03:35:37.67ID:???
【OS名】windows 7
【PHPのバージョン】5.3.26
【質問内容】
<div id="exa">
<select name="exmanple" id="exmanple">
<option selected value="test1">test1</option>
<option value="test2">test2</option></select></div>

でPOST通信を行ってます。一部JSでselectタグを書き換えており
document.createElement('select')〜document.getElementById("exa").appendChild("select")して
います。動的に書き換え後にPOSTした遷移ページでhistory.back()すると
JS書き換え前のHTMLが復元されてしまいます
JS介さない場合は、POSTした要素が復元されますが、動的に書き換え後にselect要素を
復元するためにする事はなんでしょうか?
0437nobodyさん2013/11/26(火) 04:04:53.98ID:???
>>435
コンテンツのタイムスタンプ。

>>436
history api?
0438nobodyさん2013/11/26(火) 04:43:11.65ID:???
クラスのメソッドにpublicは省略せずに付けるべきですか?
0439nobodyさん2013/11/26(火) 05:01:07.63ID:???
好きにしろ
0440nobodyさん2013/11/26(火) 08:17:31.39ID:???
>>435
require_once('koushinjouhou.html');
0441nobodyさん2013/11/26(火) 14:49:11.80ID:???
>>435
どういうサイト形式なのか知らないけど、いずれにしても
更新と連動して記事タイトルとURLを蓄積するデータファイル
を作成する必要がある
必要なデータをデータベースに放り込んでおけば、後は必要に応じてリクエスト
するだけなので楽ができる

データベース使わなくても、PHPでCMS作って記事投稿と同時にkousinjyouhou.htmlに
<a href="example">記事タイトル</a>を追加して、それをincludeしたり、iflameで
読み込んだり、JSでdocument.writeしたり諸々方法論はあるけど
0442nobodyさん2013/11/26(火) 15:04:48.50ID:???
>>441
> <a href="example">記事タイトル</a>を追加して、

それをするためのソースをどうやって作っておけばいいのかって質問だと思うんだが。
0443nobodyさん2013/11/26(火) 18:54:53.30ID:QvBM31iq
>>441
>>442
みなさんご回答ありがとうございます。

私の説明不足で申し訳ございません。
考えていたのは「yyyymmdd.csv」という更新情報ファイルを日ごとに作成し、
ディレクトリに保存しておく(5日分のみ)。
トップページにアクセスすると、ディレクトリからファイル一覧を取得し
最終更新日ファイルの内容を表示させるというものです。

気になっていたのは、
FTPで更新情報ファイルをアップする際に、PHP側のプロセスと排他制御ができるのか
という点です。
0444nobodyさん2013/11/26(火) 19:23:45.69ID:QvBM31iq
435です。
追記します。
FTPに限らず、サーバーのApache(PHP)とは
別のプロセスで更新される「update.txt」があるとして、
ファイル更新中に、ユーザーからのリクエストを待たせることは可能ですか?

ニコニコ動画のランキングのようなものをDBを利用せず実現したいです
0445nobodyさん2013/11/26(火) 20:22:42.40ID:QvBM31iq
435です。
またまた追記します。

http://heartbeats.jp/hbblog/2013/10/atomic01.html
上記のようにスクリプトを組めばいいのでしょうか?
一度試してみます。

また
「ニコニコ動画のランキングのようなものをDBを利用せず実現する」場合、
一般的にどのような方法が用いられるのでしょうか?
ご存知の方、教えてください。
0446nobodyさん2013/11/26(火) 21:46:53.29ID:???
PHPで画像サイズを縮小するためにEXIF情報を削除することは一定レベル以上の方であれば実行していると思います
このEXIF情報ですが削除してはいけないものというのはありますでしょうか?
熟達者の方のご意見をいただければ幸いです
一定レベル以下の方はEXIF情報削除などしていないでしょうから、コメントしてくださらないで結構です
0447nobodyさん2013/11/26(火) 21:59:48.25ID:???
>>446
テンプレ読もう、な
0448nobodyさん2013/11/26(火) 22:03:35.43ID:???
マルチなのか〜なんなのか〜上から目線の変な人

EXIF情報を使う予定がなければ削除して問題ない
04494462013/11/26(火) 22:18:16.15ID:???
>>448
アホやな
てめえみたいな低レベルには聞いてないんだよw

全部消したら、お前のへぼサイトみたいになってまうやないか
分かる奴おらんのか?

教えたろか?
04504462013/11/26(火) 22:30:07.63ID:???
もうええわ
自己解決したし
0451nobodyさん2013/11/26(火) 22:30:55.58ID:???
バイナリプログラミングなんて誰でもできるのに
exifでドヤ顔()
0452nobodyさん2013/11/26(火) 22:36:51.93ID:???
>>450
hetakusonaengiyana

>>451
おたくはちょっとできそうやな
他の虫けら先生とは違うようや
バイナリプログラミング、ここにいる分かってない連中に解説したれや
0453nobodyさん2013/11/26(火) 22:40:08.53ID:???
>>451
んで、具体的にはどうするよ?
0454nobodyさん2013/11/26(火) 22:43:09.38ID:???
RFCとか技術仕様書をちゃんと読めて理解できる人もこういうスレには多いので、
ちょっと先の段階に進めたからって天狗にはならないほうがいいですよ。
傍から見てるとかなり恥ずかしいので。
04554462013/11/26(火) 22:43:37.79ID:???
>>453
解説などできないさ
このスレには>>448みたいな低レベルがド素人に教えるスレなんだから
0456nobodyさん2013/11/26(火) 22:44:24.44ID:???
Railsスレで門前払いされたもんだからここで何とか回答を引き出そうと必死
0457nobodyさん2013/11/26(火) 22:45:32.10ID:???
>>446
>>1
0458nobodyさん2013/11/26(火) 22:51:17.32ID:???
まぁここは入門生に下級武士が教える場だから
込み入った質問には答えられないよ
上級武士探しな
04594462013/11/26(火) 23:03:44.72ID:???
いや、わしは答えを知っているから探さないでもよい
ここにいる人間がそんな簡単な質問にも答えられない分際で偉そうに教えてるという証明がしたかっただけ
04604462013/11/26(火) 23:05:37.89ID:???
無能同士仲良くやっとけ
ほな
0461nobodyさん2013/11/26(火) 23:11:35.16ID:???
Railsにもいたかまってチャンか

あぼーんしとこ
0462nobodyさん2013/11/26(火) 23:12:53.99ID:???
ある一定以上っていうからどんな話かと思ったら
ただのバイナリ操作とか・・・
あんまり僕をがっかりさせないでくれ
0463nobodyさん2013/11/26(火) 23:16:06.62ID:???
でも低レベルな解答が出ちゃったのも事実
>>462も上から目線だけど解説できないんでしょw
0464nobodyさん2013/11/26(火) 23:17:04.19ID:???
自演が特長なんで、ほっといたほうがいいよ

Railsスレだと釣られて、かわいそうなことになってたよ
0465nobodyさん2013/11/26(火) 23:17:11.11ID:???
そうやって解説させようとするいつもの煽り教えて君
0466nobodyさん2013/11/26(火) 23:18:49.89ID:???
解説してやるから金用意しろ
0467nobodyさん2013/11/26(火) 23:20:05.23ID:???
ここにはチンカス素人しかいないから難しい解説はムリポ
前から思ってた
0468nobodyさん2013/11/26(火) 23:21:02.70ID:???
いきり立っても正解は答えられず
結局無能集団の証明になっちまったな(-_-;)
0469nobodyさん2013/11/26(火) 23:21:19.61ID:???
暴言入り煽りの自演が入るのが特徴
0470nobodyさん2013/11/26(火) 23:22:36.97ID:???
技術的に負けちゃったね
今の所不正解しか出てないし
0471nobodyさん2013/11/26(火) 23:23:14.65ID:???
446の一人芝居に付きあわんでいいよ

はい次のかたどうぞ〜
0472nobodyさん2013/11/26(火) 23:26:01.77ID:???
自分も実はこのスレ低能ばかりだなと思ってた
0473nobodyさん2013/11/26(火) 23:27:06.12ID:???
ちょっと難しい問題には不正解者しか出なかった
それが全て・・・・
0474nobodyさん2013/11/26(火) 23:28:09.89ID:QvBM31iq
445をお願いします
0475nobodyさん2013/11/26(火) 23:31:52.27ID:???
>>474
ggrks
0476nobodyさん2013/11/26(火) 23:33:17.67ID:???
>>474
何を聞きたいのかもう1度整理して
0477nobodyさん2013/11/26(火) 23:33:47.55ID:QvBM31iq
>>475
キーワードだけでも教えていただけないでしょうか?
0478nobodyさん2013/11/26(火) 23:35:40.53ID:QvBM31iq
>>476
「ニコニコ動画のランキングのようなものをDBを利用せず実現する」場合、
一般的にどのような方法が用いられるのでしょうか?

でお願致します。
0479nobodyさん2013/11/26(火) 23:35:50.30ID:???
>>477
PHP 入門 amazon
0480nobodyさん2013/11/26(火) 23:37:32.00ID:???
初心者の私は446の答えが448に思えてしまいます。
446さん、解説願えますか?
0481nobodyさん2013/11/26(火) 23:39:38.09ID:???
>>480
ここには正解出せる人はいないよ
そういうスレだから
残念ながら>>449の反応が理解した人間の反応
0482nobodyさん2013/11/26(火) 23:40:57.00ID:???
>>481
そうでしたね446さんには答えられないんでしたね
0483nobodyさん2013/11/26(火) 23:40:57.00ID:???
ちょっとお前ら黙ってみな
446が名無しに戻って荒らしてるからそのうち連投規制かかるから
それまでスレ放置しとけ
0484nobodyさん2013/11/26(火) 23:52:56.53ID:fv8eO2Pf
PHP5.4です。
bindvalueで演算子を変更することはできるでしょうか?
WHERE id > 5
や、
WHERE id < 5
など、bindvalueでsql文を変更したいと思っています。無理でしょうか。

$query = 'SELECT * FROM table WHERE ? ? ?';

$st = $pdo->prepare($query);
$st->bindvalue(1, 'id', PDO::PARAM_INT);
$st->bindvalue(2, '<', PDO::PARAM_STR);
$st->bindvalue(3, '5', PDO::PARAM_INT);
$st->execute();
0485nobodyさん2013/11/27(水) 00:00:46.17ID:???
無理です
0486nobodyさん2013/11/27(水) 00:03:51.59ID:???
>>483
不正解者おつ
0487nobodyさん2013/11/27(水) 00:19:17.40ID:???
446も答えられないのか
0488nobodyさん2013/11/27(水) 00:26:43.68ID:???
間違った解答者が出てから446が興奮しだした
railsにも出没したが446は正解知って問題を出す
やや難しいレベルの
んで間違えた解答者が出たら馬鹿にして罵る
でもスレの1/5か1/10程度の人間しか解答できないくらいの難度設定の問題だから馬鹿にされた解答者に援軍は来ない
railsでは何度かあったよ
正解の最後の文字を言ったりしていたから質問が目的じゃないみたい
0489nobodyさん2013/11/27(水) 00:27:54.31ID:???
だから黙っとけって!
0490nobodyさん2013/11/27(水) 00:29:49.15ID:???
>>489
馬鹿らしい
解答できなかったからって見苦しい
一人で黙っておきな
0491nobodyさん2013/11/27(水) 00:31:42.08ID:???
>>443
>>1といいたいところだけど、ほっといても連投するだろうから。
参照されるパスに直接アップロードすることを避ければいいよ。
一般に言われる、cp -> mvと同じ。
0492nobodyさん2013/11/27(水) 00:35:03.63ID:???
誰もまともに取り合ってないだけなのに、空気読めないって怖いね。
04934432013/11/27(水) 00:35:23.02ID:???
>>491
ありがとうございます
あまり参考になりませんでしたのでもう少しググって調べます
0494nobodyさん2013/11/27(水) 00:36:31.68ID:???
>>488
Railsスレだと2人に釣られてたみたいだが
0495nobodyさん2013/11/27(水) 00:38:45.93ID:???
>>493
具体的にいうと、creatだと途中を読まれるかもしれないから排他制御が必要かもって思うんでしょ?
だったらinodeを別にすればいいって話。単純だよ。
0496nobodyさん2013/11/27(水) 00:40:07.98ID:???
railsスレでは一人正解者が出ていたかな
ここは今のところゼロで不正解者一人
railsの方が優秀だね
0497nobodyさん2013/11/27(水) 00:40:40.42ID:???
そうだね
じゃ早くrailsスレに戻ったほうがいいよ
ここにいると優秀じゃなくなっちゃうからね
04984932013/11/27(水) 00:41:43.37ID:???
>>495
そんな簡単なことを聞いているのではないんですよ
しょうもな
0499nobodyさん2013/11/27(水) 00:42:09.19ID:???
>>496
railsスレって正解者一人だと思ってたんだ
釣られた事実に気づいてなかったとは驚き
0500nobodyさん2013/11/27(水) 00:43:09.33ID:???
>>498
?じゃあ、改めて質問を書いてくださいな。
> FTPで更新情報ファイルをアップする際に、PHP側のプロセスと排他制御ができるのか
これについてはこれ以上情報いらないでしょ。あとID
0501nobodyさん2013/11/27(水) 00:43:53.63ID:???
とりあえずIDがないのは無視する方向に切り替えるか
0502nobodyさん2013/11/27(水) 00:44:39.79ID:???
まぁ、スレのルールだしね。日付も変わってるしどうにもならん。
0503nobodyさん2013/11/27(水) 00:44:57.28ID:bulawsjl
>>491
>>495
493は私?ではありません。
491、495さんありがとうございます。

上げていただいたキーワードで調べてみます。
何度も同じようなことを書き込んでしまい申し訳ありませんでした。
0504nobodyさん2013/11/27(水) 00:45:56.41ID:???
>>503
何でキレた?
あやまれよクズが
0505nobodyさん2013/11/27(水) 00:46:20.86ID:???
大丈夫弁解しなくても荒らしてるのは1人だけなのはみんな知ってるから
0506nobodyさん2013/11/27(水) 00:47:14.75ID:???
>>504
質問するならID出そう
0507nobodyさん2013/11/27(水) 00:47:24.46ID:???
別人なんだ
ならいいや
0508nobodyさん2013/11/27(水) 00:49:05.39ID:???
Railsスレと一緒

質問者にも暴言吐いて絡んでくる荒らしだから無視してあげてね
0509nobodyさん2013/11/27(水) 00:50:19.52ID:???
風呂入ってる間に部下どもが騒いでしまったようだな

さぁ、ものども、RoRスレに帰るぞ

phpにもまた来てやるから、もう少し勉強して正解出せるように鍛えときな
0510nobodyさん2013/11/27(水) 00:53:23.54ID:???
>>509
釣られたところに戻るんだ

乙
0511nobodyさん2013/11/27(水) 00:55:35.14ID:???
--------------------------終 了--------------------------




--------------------------再 開--------------------------
0512nobodyさん2013/11/27(水) 00:59:15.49ID:???
正直何が正解なのか分からなかった
分かってる人はすごいな
0513nobodyさん2013/11/27(水) 01:08:31.55ID:???
誰も回答してないのに正解も不正解もないし
>>448が回答じゃなくて単にあしらってるだけ
最近写真にGPS情報入ってるかもしれないのを知ってはしゃいでるガキにしか見えない
0514nobodyさん2013/11/27(水) 01:10:10.08ID:???
消しちゃいけない例外項目は何で、それを実装するには?
てな問題意図なのかな?

そしたら一つは思い浮かぶけど
0515nobodyさん2013/11/27(水) 01:17:17.68ID:???
言葉遊びには付き合わなくていいと思うの
0516nobodyさん2013/11/27(水) 01:20:04.87ID:bulawsjl
>>491,495
教えていただいたキーワードより
http://d.hatena.ne.jp/kaz-coz/20111220/1324359287
http://za.toypark.in/html/2009/06-01.html
http://d.hatena.ne.jp/LukeSilvia/20081001/p1
http://www.wikihouse.com/linuxfs/index.php?inode_operations
上記を参考に理解することができました。
ありがとうございました。
0517nobodyさん2013/11/27(水) 01:21:17.05ID:???
>>514
思い浮かばない人もいるだろうね
それで上げ足を取られたという構図か
0518nobodyさん2013/11/27(水) 01:39:30.20ID:???
思い浮かばないってのは普通だから気にしなくてもいいんじゃない?
技術っていうものは必要になったときに都度調べてやるわけで、
EXIFがどういうものかは知っていても、その細かな仕様までは普通知らないでしょう。
特にプログラムの世界では、前提知識から調べたいことに早く辿りつくのを目的として、
用語と大雑把にどういうものかを把握してるだけで良い。
0519nobodyさん2013/11/27(水) 01:43:40.25ID:???
>>518
でも通過した人ならある程度は覚えてるよね
こんなことも通過していない人が多いのにはびっくり
ここで教える前に自分が制作したサイト見直した方が良いと思う
厳しいかもしれないけど
0520nobodyさん2013/11/27(水) 01:45:05.93ID:???
車輪の再発明とかオナニーが好きな人はそう多くないと思うの
0521nobodyさん2013/11/27(水) 01:46:45.67ID:???
中学生ぐらいまでだったら無意識でやってたかもしれないけど
今の俺にとって覚えたのを披露したくてドヤ顔して質問スレで問題出してくるとかちょっと理解できないwww
0522nobodyさん2013/11/27(水) 01:49:58.36ID:???
>>519
それはある
予想される正解を辿っていない人が結構いそうで驚き
悔しいのか荒らしに一々反応してるところから低レベル
おっと、こういうレスすると自演とか言われちゃうなw
0523nobodyさん2013/11/27(水) 01:59:14.86ID:???
世の中には画像のないWebサイトだってあるわけで
何がその人の通過点であるかなんてのは個人によりけり
俺もexifにはjsでライブラリ作ったことある程度には詳しいけど
煽ってる人はたまたま知ってる話題でよかったね
0524nobodyさん2013/11/27(水) 02:03:35.44ID:???
画像ないWEBサイトかw
少なくともここで教えるには値しないよな
>>523のような熟練者なら何を気をつけるのよ
0525nobodyさん2013/11/27(水) 02:15:52.60ID:???
>少なくともここで教えるには値しないよな
なんで?
画像処理には疎くてもパフォーマンス厨でキャッシュ周りは任せろとかいうやつもいるだろ
何が得意かというのは人それぞれ
0526nobodyさん2013/11/27(水) 02:18:42.64ID:???
通過点とか学校の授業みたいに一定のカリキュラムでもあるのかよwww
ウルトラC級の馬鹿が混じってるなー
0527nobodyさん2013/11/27(水) 02:19:42.31ID:???
論より証拠でEXIF削除で気をつけることぐらい瞬殺で答えたら?
別に出し惜しみするレベルの問題でもないじゃんw
0528nobodyさん2013/11/27(水) 02:25:53.06ID:???
人を試すような人間に答える義理もないし煽っても答えは出ませんよ
05295272013/11/27(水) 02:29:17.20ID:???
a〜〜〜〜o〜〜〜〜
ヒント
これすぐに出てこないのに熟練者気取りか
荒らしと同レベルか偉そうにしている分ひどいなw
0530nobodyさん2013/11/27(水) 02:33:05.25ID:???
偉そうって・・・
通過点なんてのは個人によりけりと当たり前のことを言っただけなんだがな
あんたのことなんて鼻から相手にしてません
05315272013/11/27(水) 02:36:04.47ID:???
>>530
こちらは知っていて、あなたが知らない事を馬鹿にされているわけだから、
当該問題に即答するのが手っ取り早いのに
御託ばっかり並べてるところを見ると知らないね?
知らないなら恥さらしのように熟練者なんていきがらなければいいのに

普通これ知らないとまともなサイトには遠く及ばないよ
0532nobodyさん2013/11/27(水) 02:41:55.01ID:???
誰も熟練者と名乗った覚えはないしw
まぁ熟練者でもいいけどいくら煽っても答えませんけどね

>普通これ知らないとまともなサイトには遠く及ばないよ
こういう馬鹿なことを言うから突っ込まれてるだけなのをそろそろ理解したほうがいい
普通って何?まともなサイトって何?
主観なんてどうでもいい
05335272013/11/27(水) 02:45:39.79ID:???
>>532
まぁこれやってないと普通とは程遠いよ
簡単な質問にばかりドヤ顔で答えてないで少しは自分の精進をはかった方が良いよ
あなた低レベルだからこちらは得るもの少ない
ヒントを頼りに考えて脳ミソ鍛えなノシ
0534nobodyさん2013/11/27(水) 02:46:25.50ID:???
はい論破完了
もう少し頭使いましょうね
0535nobodyさん2013/11/27(水) 02:54:18.54ID:???
>>534
ヒント付きでも分からないのかwww
0536nobodyさん2013/11/27(水) 02:55:36.85ID:???
>>535
おまえもだろ
俺もだけどw
0537nobodyさん2013/11/27(水) 03:00:34.65ID:???
荒らしの要求は徹底的に無視して相手にせず、
矛盾をつきまくってピエロにしていくとはなかなかいい勉強になりました。
0538nobodyさん2013/11/27(水) 03:05:00.55ID:???
>>534 = >>537
荒らしごときの簡単な問題が分からないなんて悔しいね
あんまり落ち込むな
0539nobodyさん2013/11/27(水) 03:10:39.69ID:???
おこなの?
くやしいのうwwww
0540nobodyさん2013/11/27(水) 03:12:00.94ID:???
>>527はとりあえずめちゃくちゃ恥ずかしいやつ。
顔真っ赤にしてもっと怒れよ!
0541nobodyさん2013/11/27(水) 03:17:06.06ID:???
荒らしの愉快犯より技能低いとか正直恥ずかしい
しかももてあそばれて大激怒してるとかどんだけw
0542nobodyさん2013/11/27(水) 03:18:22.82ID:???
>>527=>>535=>>538=>>541
悔しいのはわかったからもう寝ろ
0543nobodyさん2013/11/27(水) 03:41:36.07ID:???
Webサイトを作るためにExifを除去しなければならないことがマストになる日が来てたとはなぁ。
言い換えると、Webサイトを作る際にはjpegだったりtiffだったりを使わなければならないのか。
実に面倒だなぁ。gifを排除せよってときよりも面倒だ。
0544nobodyさん2013/11/27(水) 03:58:40.14ID:???
タイプヒンディングいいな
スカラー型には使えないのが残念だけど
phpにもuse strictみたいなの作って型宣言強制してほしいわ
0545nobodyさん2013/11/27(水) 06:41:19.95ID:i5P0J2fr
>>485
ありがとうございます
悲しいです
0546nobodyさん2013/11/27(水) 06:54:22.79ID:???
そりゃbindValue(Param)は字のごとく、(変数)値拘束だからな。
カラム名や文や演算子には使えない。
>>484の例で使えるのは3番の5の部分のみ。
'<'っていう演算子にPARAM_STRしてるのはちょっと笑ってしまったわ。
0547nobodyさん2013/11/27(水) 07:13:21.31ID:???
$col = 'id';
$com = '<';
$query = "SELECT * FROM table WHERE {$col} {$com} ?";

$st = $pdo->prepare($query);
$st->bindvalue(1, '5', PDO::PARAM_INT);
$st->execute();

$colと$comが外から受け取る値なら、適切な処理をしないと、
全部SELECTしてしまうような事態になりかねないので、
セキュリティに自信がないならお勧めしない。
0548nobodyさん2013/11/27(水) 07:30:14.33ID:i5P0J2fr
>>546-547
おぉ、ありがとうございます
>>547さんの方法で行けそうです。使わせていただきます。
↓みたいな感じならセキュリティ的にも大丈夫そうですね。
if(分岐条件){
$com = '<';
}else{
$com = '>';

}
0549nobodyさん2013/11/27(水) 07:56:14.73ID:???
かまってちゃんは
顔真っ赤ってワードが好きなんだよな〜
0550nobodyさん2013/11/27(水) 08:20:38.22ID:???
語尾に縮れ毛も好きだよね
0551nobodyさん2013/11/27(水) 08:45:11.78ID:???
純粋にわからんわ
EXIFの中身さわったことないしな

まいっか。正答も見当たらんし、ないのかもしれん
0552nobodyさん2013/11/27(水) 09:29:31.86ID:???
EXIFにはGPSデータが入ってるし除去するのが適切として
確かに消してはいけないものが一つ(私は一つだけ思い浮かぶ)ある
さすがに多くの人が使っているのだろうとは思ったけど皆の反応見ると意外に対策してない?てかEXIFすら除去してない?
私は上にあったようにimagemagckではaから始まるコマンドで対処する
0553nobodyさん2013/11/27(水) 10:02:00.90ID:???
Exifで消しちゃいけない情報とか画像スレじゃないんだから、どうでもいいっすね。
消しちゃまずいとこ消さないで、画像閲覧に支障がない部分を全部消すにしても、
出来るマーならライブラリを使ってさっくり解決すればいいこと。
中の仕様とかそんなの隅々まで知る必要もないし時間の無駄。
というか知らんでも同じ結果に至るのに、知ってなきゃまともなサイト作れないとかイミフ。
だいたいExif関連が問題になりそうな不特定多数のWebサービスを、
仕事じゃなしに、低効率なPHPで気合入れて個人で作るんですか?(笑)
XAMPP使うなとか、FWのソース嫁とか、マシン語やれってのもそうだけど、
問題が起きたら自己解決できないからとか言って、
不必要なことまでやりたがるのは研究ならいいけどマーには向いてないね。
0554nobodyさん2013/11/27(水) 10:11:51.47ID:???
stripImageしかしてないわ
0555nobodyさん2013/11/27(水) 10:16:59.85ID:???
>>552
自尊心とかくすぐる煽りが足りないから無視してるだけ

少なくともこういう時困るってのを出さないと誰もまともには反応しない
0556nobodyさん2013/11/27(水) 10:30:20.04ID:???
exifなんてgdでimagecreatefromjpegで読み込んでそれをimagejpegして画像作成するだけで全部情報吹っ飛ぶわ
0557nobodyさん2013/11/27(水) 10:57:27.37ID:???
どーせ 例の縦横のこと言いたいんだろ。
0558nobodyさん2013/11/27(水) 11:22:49.91ID:???
orientaionの話なら、対応しないよ
iOSのブラウザ以外基本対応してないから要件で特別なことがない限りしない

exifから削除したらいけない情報でもなんでもない

どちらかというとiPhoneだって認知したときのみ対応等の特別処理
0559nobodyさん2013/11/27(水) 11:31:55.74ID:???
スペル間違えるし。orientationだ

>>552というか>>527というか>>446が直接ImageMagickを叩いてるとは驚いた
IMagickあるんだから使えよ、auto-orientに値するものはまだないけどな

あと、ImageMagickの-auto-orientはコマンドじゃなくてコマンドラインオプションだからな
間違えるなよ

別の言語系のImageMagickの実装はauto-orientのメソッドあるのにPHPはまだだな
getImageOrientationで方向とってrotateか
0560nobodyさん2013/11/27(水) 11:35:28.67ID:???
いや、聴きもしてねーことをぐだぐだ書くスレじゃねーし。
優越感に浸れて気分いいんだろうけどさ
0561nobodyさん2013/11/27(水) 11:39:47.34ID:???
まぁ落ち着けよ
もう>>446は恥ずかしくて出てこれないだろうし
ただこういうやつはまた現れるものなので
夜になったら帰ってくるかもしれないからそれまでにとりあえず話題を変えてくれ
0562nobodyさん2013/11/27(水) 11:57:21.67ID:???
あれ、これ>>446の質問が間違ってね?

もし、auto-orientのことだったら
EXIFから削除してはいけないものでなくて
EXIFを削除するときにやらなければいけないことってだけ
(やらなくても実は良いんだけど)

って考えると>>448の回答えぐいな
0563nobodyさん2013/11/27(水) 12:50:42.82ID:???
えぐくないよ。
GPS情報を消すのが適切って言ってる人いるけど、場合によるもの。
0564nobodyさん2013/11/27(水) 13:04:02.94ID:???
exifなんてものはユーザの意図を知らないサーバ側でどうにかする問題じゃないし
本来無知なユーザに責任を持つ必要はないが
問題になる可能性を考慮してSNSやアプロダでは消してもいい
無知は問題がおきたときにサイトのせいにするので評判にも関わるからな
0565nobodyさん2013/11/27(水) 13:07:21.44ID:???
>>563
至極当たり前のことだけ書いてるからさ

これに>>446が鬼の首を取ったように反応する

って構図がえぐいなと
0566nobodyさん2013/11/27(水) 16:19:49.21ID:???
>>436
自己解決

ユーザーが指定するoptionタグを1つに絞るためselectタグを
parentNode.removeChild(select);
としてからselectタグをcreateElementしてた事がhistory.back()で復元されない原因

単にJSで指定のoptionをselectedさせると動的に書き換え後のselectも復元された
0567nobodyさん2013/11/27(水) 20:16:00.24ID:???
>>558>>559
おっ、正解者出たね。それにしても正答率少ない。
他の奴にいたっては、あぁそれね、みたいなリアクション取ってるねw
昨日いたぶりまくっても答えなられなかった分際で¥

ときに、>>558さんよ
EXIFでは気を付けるところってそんなもんでいいんだよな?確認のため
他にもアドバイスあるかい?

俺もここにいる多数と同様エキスパートでも何でもないから、何かあったら教えてくれ

ちなみに俺はRoR派でimagemagick直接はいじっていない。
0568nobodyさん2013/11/27(水) 20:17:40.06ID:???
他にもって、画像周りでEXIF除去以外の分野ってことね
0569nobodyさん2013/11/27(水) 20:37:56.63ID:???
>>567
知ってる人いた!僕に何か教えてください!
0570nobodyさん2013/11/27(水) 21:12:46.95ID:???
まだ頭悪いやついたのか
馬鹿にされてんのに上から目線で何が正解者だよ
0571nobodyさん2013/11/27(水) 21:19:51.66ID:???
>>567
ほんもの?
0572nobodyさん2013/11/27(水) 23:05:39.42ID:???
IDのない質問は無視
0573nobodyさん2013/11/27(水) 23:14:33.16ID:ZK+gtB40
>>558>>559
おっ、正解者出たね。それにしても正答率少ない。
他の奴にいたっては、あぁそれね、みたいなリアクション取ってるねw
昨日いたぶりまくっても答えなられなかった分際で¥

ときに、>>558さんよ
EXIFでは気を付けるところってそんなもんでいいんだよな?確認のため
他にもアドバイスあるかい?

俺もここにいる多数と同様エキスパートでも何でもないから、何かあったら教えてくれ

ちなみに俺はRoR派でimagemagick直接はいじっていない。



他にもって、画像周りでEXIF除去以外の分野ってことね
0574nobodyさん2013/11/27(水) 23:24:20.58ID:???
・ 質問者として、態度をわきまえること。
0575nobodyさん2013/11/27(水) 23:31:07.54ID:???
>>574
低技能乙
0576nobodyさん2013/11/27(水) 23:34:34.87ID:???
> EXIFでは気を付けるところってそんなもんでいいんだよな?確認のため
> 他にもアドバイスあるかい?
最初からちゃんとこれで質問してれば回答する気にもなったが、さすがになぁ。。
0577nobodyさん2013/11/27(水) 23:35:56.40ID:???
>>576
まぁまぁ
0578nobodyさん2013/11/28(木) 00:34:21.10ID:HGMmiVb1
皆さんのやり取りを見ていて一つ疑問が
exif情報を消して保存した後にauto orientをしたくなった場合はどうすれば良いのでしょうか?
つまりEXIF削除し元データとして保存しその後別のサイズで画像を作りたくなった場合です
根本的にorientation情報だけ残して他を消すという方法はないのでしょうか?
0579nobodyさん2013/11/28(木) 01:10:06.24ID:???
>>578
EXIF情報のorientationはおまけ
消したらその方向はもうわからない。

>根本的にorientation情報だけ残して他を消すという方法はないのでしょうか?
ない。

>つまりEXIF削除し元データとして保存しその後別のサイズで画像を作りたくなった場合です
リサイズするだけで良いでしょうに、元データと同じ方向にはなるよ
0580nobodyさん2013/11/28(木) 01:21:26.95ID:HGMmiVb1
>>579
非常に助かりました。ありがとうございます。
上記で言う所の元データ保存時には、auto-orientで方向の情報がついたものが保存されるということでしょうか
auto-orientというのはEXIF情報から違うところへ方向情報を移し替えるものという理解になりつつあります
0581nobodyさん2013/11/28(木) 01:24:20.70ID:???
>>580
>auto-orientというのはEXIF情報から違うところへ方向情報を移し替えるものという理解になりつつあります
auto-orientは実物の画像を回転させるの。物理的に

本来画像にEXIFで向きなんて必要ない。元の画像がその方向を向いてれば良いだけ。
0582nobodyさん2013/11/28(木) 01:27:33.55ID:HGMmiVb1
>>581
ありがとうございます。
PHPからは少し話題が外れてしまいますが、実践では欠かせないポイントとなりそうですね
助かりました。
0583nobodyさん2013/11/28(木) 01:35:55.37ID:???
>>582
EXIFに関しては>>448が完璧。これはEXIFの宿命

EXIFのorientation情報で回転させるかは要件次第だからむやみにやるものではないってのも認識すべき
0584nobodyさん2013/11/28(木) 01:45:42.77ID:HGMmiVb1
>>448さんのコメントからすると、とりあえず消してOKということですね
私の場合はユーザーが意図した方向を向いてアップロードされていれば良いという要件だけなのでauto-arientを活用させていただきたいと思います。
0585nobodyさん2013/11/28(木) 07:02:39.50ID:???
なんだ、ちゃんと質問できんじゃん
0586nobodyさん2013/11/28(木) 10:05:08.57ID:???
人格が入れ替わっトルw
0587nobodyさん2013/11/29(金) 11:14:51.89ID:???
久々に見に来てみたら、PHPと関係ない話で盛り上がってた。
95%以上、データ取扱の仕様の話じゃん。
0588nobodyさん2013/11/29(金) 23:35:44.90ID:???
>>587
そして俺とお前のようにゴミしかいなくなった
0589nobodyさん2013/11/30(土) 10:06:52.02ID:W5pThAv1
【OS名】FreeBSD 9.1-RELEASE-p7 amd64
【PHPのバージョン】5.3
[mysql]5.5

古いサーバーから新しいサーバーへサイトを移転したんですが、何故かDBのデータが表示出来ません。
Mysqlのデフォルト文字コードはutf8なんですが、set names ujisとデータベースに接続した時にクエリーを発行しています。
サイトの管理画面である設定を更新した所、DBへはデータが更新されてるんですがなぜかPHP経由で表示しようとすると出力出来ません。
(phpMyadminで確認)
set namesで以前は古いサイトを新しいサーバーへ移転した時は問題なかったんですが、今回のサイトだけは上手く行きません。
DBのデータをprint_rで見たところ、日本語だけ出力出来ないようです。
何か解決策はあるんでしょうか?
0590nobodyさん2013/11/30(土) 10:13:17.46ID:???
set names utf8
0591nobodyさん2013/11/30(土) 10:28:57.00ID:???
set names utf8 は使うな
0592nobodyさん2013/11/30(土) 12:14:34.97ID:???
http://jp.php.net/manual/ja/function.mysql-set-charset.php
0593nobodyさん2013/11/30(土) 12:58:27.16ID:R4pRLN+y
【OS名】win7
【PHPのバージョン】5.3

PHP+MYSQLで掲示板を作成・運営してます。所が、外国の人から
スパムコメントをされる事があり、日本語以外のコメントは受付ないように
設定した所、英語+ソニーのようにこちらの対応をかいくぐってスパム
コメントを残されてしまいました。
当然、ipでその都度BANしているのですが、イタチごっこです。
やはり画像認証等を導入すべきでしょうか?
0594nobodyさん2013/11/30(土) 13:47:43.76ID:???
>>593
それはお前が決めることだ
0595nobodyさん2013/11/30(土) 14:36:43.64ID:???
ドメインで、国外を排除したら?
0596nobodyさん2013/11/30(土) 15:06:05.97ID:???
>>595
.comはどうすんの?
0597nobodyさん2013/11/30(土) 15:08:12.49ID:???
ipで国判定して弾くとか
geoipってあったきがする
0598nobodyさん2013/11/30(土) 15:15:38.61ID:???
掲示板やブログコメで画像認証ってハードル高いよな
「じゃあ書くのやめるわ」って思われるのがオチ
0599nobodyさん2013/11/30(土) 15:21:56.14ID:???
お前らが今書き込んでる2chはどうやって海外IPを弾いてるかも知らんのか・・・
まともな解答者いねーな、ここは。
0600nobodyさん2013/11/30(土) 15:30:01.18ID:???
>>599
海外IPを弾くのがベストアンサーとは限らんだろ。
海外に住んでる日本人や外国人と交流するサイトもあるんだから。
自分の視野の狭さに気づかず上から目線とか恥ずかしいね。
そもそも英語のコメが海外のIP発とも限らんし。
0601nobodyさん2013/11/30(土) 15:30:01.43ID:???
2chは海外ipウェルカムでしょアメリカ合衆国とかドイツとか
地域表示欄に度々表示されてるがな
0602nobodyさん2013/11/30(土) 15:48:55.88ID:???
>>599
恥ずかしいw
0603nobodyさん2013/11/30(土) 15:54:24.18ID:???
>>593
スパムがbotなら、JavaScript+PHPでbotか人かを判別できるよ。
たとえば、投稿ボタンがクリックされたら、仕込んだトークン値をJavaScriptで加工してからPOSTで送信。
PHPでは、その加工したトークンの値が正しいかを確認。
これだけでも随分スパムは減るよ。
0604nobodyさん2013/11/30(土) 23:11:17.51ID:HGPAKAoD
(>>)1,2,3は「array(1,2,3)」、(>>)4-10は「array(4,5,6,7,8,9,10)」
というように2chの投稿にある安価の数字から配列を作りたいのですが、
(>>)1,2,3,4-10,11,12
というようなアンカーを処理するにはどうすればいいでしょうか?

カンマでexplode()して配列ループ、ハイフンがあったら分割して
range()する三度手間しないといけないでしょうか?
0605nobodyさん2013/11/30(土) 23:55:12.81ID:???
>>604
どんな風になったらいいと思ってるの?
0606nobodyさん2013/12/01(日) 22:09:29.70ID:???
>>603
JavaScriptオフの人は・・・
まあ今どきそんな人考えなくてもいいのかね
0607nobodyさん2013/12/01(日) 22:33:57.70ID:AEFe7KWl
YouTubeのリンク先の動画が消されてるかどうかを調べる事ってPHPでできる?
0608nobodyさん2013/12/01(日) 22:39:02.70ID:???
>>607
×できる?
○できますか?
0609nobodyさん2013/12/01(日) 23:19:23.69ID:???
>>607
出来る。
でもめんどくさい
0610nobodyさん2013/12/01(日) 23:23:31.98ID:???
>>606
ワンタイムトークンをhiddenに入れときゃいい
トークンまで読み取るSPAMなら負けを認める
0611nobodyさん2013/12/02(月) 03:01:40.84ID:???
JavaScriptを解釈するHTTPクライアントは難しいけど
hiddenフィールド読みとりは簡単で対策にはならんな
0612nobodyさん2013/12/02(月) 06:49:31.44ID:dhG1eR96
$fp = fsockopen('tls://smtp.gmail.com', 465, $errno, $errstr);
//echo fread($fp, 4096);
fwrite($fp, "EHLO localhost\r\n");
echo fread($fp, 4096);

こんな感じで2行目のfreadをコメントアウトすると
4行目のfreadには3行目のEHLOのレスポンスは含んでおらず
1行目でソケット接続した際のwelcomeメッセージが返ってくるだけになり
スクリプトが進行していないように思えます
これはソケット接続の際とfwriteをした際には
毎回freadを使わないといけないのでしょうか?
0613nobodyさん2013/12/02(月) 06:57:23.29ID:???
は?
0614nobodyさん2013/12/02(月) 11:57:12.20ID:???
配列定義のリテラルが十年も拒否られ続けた理由って何?
一度聞いた気がするけどあまりに昔のことなので忘れてしまった
0615nobodyさん2013/12/02(月) 13:19:06.81ID:???
>>614
同じ事をするために複数の構文は要らない
0616nobodyさん2013/12/02(月) 14:03:16.04ID:???
>>612
4行目のfreadの後でもう一回freadしてみ
0617nobodyさん2013/12/02(月) 19:40:09.11ID:dhG1eR96
>>616
レスありがとうございます
fsockopenの1回+fwriteした回数分freadしたら全部表示されました
ということはちゃんとリクエストは到達してるということなんですね
fread使うのは直前のコマンドのレスポンスでエラー処理や条件分岐なんかをするだけで
正常に実行されてるなら使わなくても問題なさそうですね
どうもありがとうございました
0618nobodyさん2013/12/02(月) 20:08:52.31ID:???
>>614
あの言語とかあの言語っぽくなるから
0619nobodyさん2013/12/02(月) 20:42:19.34ID:???
>>617
直前のコマンドのレスポンスが返ってくるの?
君の質問と矛盾しているように見えるが
0620nobodyさん2013/12/02(月) 21:04:34.95ID:???
>>619
お前言いたいことはわかってるのにわざと揚げ足取る友達いないタイプだろ
0621nobodyさん2013/12/02(月) 21:59:28.38ID:???
いや、fsockopenの仕様なんて知らないけど文章読んでるだけで矛盾があったから聞いただけだけど・・・
何なのこの人・・・
0622nobodyさん2013/12/02(月) 23:57:27.93ID:???
>>617
やろうとしてることって、直前のレスポンスが取れるまでぐるぐる読むってことだよね。
気持ち悪いしメモリにも悪いんで都度レスポンスは読んでください。
内部使用しらないけど、ソケットバッファあふれてもしらないよ
06236122013/12/03(火) 02:01:56.77ID:Fpfk36ag
日付変わってるのでID変わってると思いますが612です

>>619
freadを使う目的としての話をしました
コマンド実行後freadすれば直前のが返ってくるという意味ではありません

>>622
fsockopenの使用例と関連関数ではいまいち使い方がわからなくて
おかしなこと書いてたらすみません
>>617は>>616にヒントを頂いてそう書いたのですが
都度レスポンスを読むとは>>612の最後の2行で言ってることでよいということなのでしょうか?
それともfreadの使い方や使う関数間違ってますか?
0624nobodyさん2013/12/03(火) 02:53:04.73ID:???
>>623
向こうが送ってきたデータは読み取り用のバッファに消えずに蓄積されると思いなさい
06256122013/12/03(火) 07:21:36.31ID:Fpfk36ag
>>624
なるほどだいたいイメージが掴めました
レスポンスが必要なくてもfreadは使ってどんどんデータを消していくってことですね
レスポンスが必要ない場合>>612のコメントとechoを外した感じのソースでやろうと思います
ありがとうございました
0626nobodyさん2013/12/03(火) 15:49:16.46ID:???
https://paiza.jp/poh/ec-campaign

言語 最速実行時間 最遅実行時間 受験数
Java 0.07 秒 0.59 秒 293
PHP 0.01 秒 9.08 秒 295
Ruby 0.02 秒 9.47 秒 274
Python 0.08 秒 9.61 秒 302
Perl 0.02 秒 8.56 秒 183
C 0.01 秒 0.08 秒 205
C++ 0.01 秒 2.05 秒 453
C# 0.04 秒 2.95 秒 159


PHPってCやC++と同じくらい速いんだな(驚愕)
Ruby(笑)Python()
0627nobodyさん2013/12/03(火) 16:08:23.59ID:???
多言語を貶す人ってちょっとおかしいよね。
0628nobodyさん2013/12/03(火) 16:42:06.00ID:c8Q9t4rO
formからボタン押して、PHPでファイルのダウンロードダイアログを出した時って、
画面の更新されないけど、これってダウンロードダイアログ出さずに意図的に行えないですか?
ダウンロードとは全く関係ない、formからのボタンを押した際、画面の更新無しで処理進めてほしいんだけど。
0629nobodyさん2013/12/03(火) 16:51:33.64ID:???
>>626
あの記事に450人は釣られたってことか
何やってんだか
0630nobodyさん2013/12/03(火) 17:28:16.50ID:???
>>626
CとC++は2.5倍の試行回数じゃないか?
0631nobodyさん2013/12/03(火) 17:48:59.09ID:???
PHPがJavaやC#に勝てるはずないじゃん。
実行時に文法チェックしてんだから。
0632nobodyさん2013/12/04(水) 00:34:32.24ID:???
定期的にこういう話題出るけどもう秋田
0633nobodyさん2013/12/04(水) 03:38:21.32ID:RQaJn6C5
捨て台詞を標準エラー出力に吐いてプログラムを終了する関数ってありますか?die()みたいな感じのです
fputs(STDERR,"aa")を使って自前で作るしか無いですかね?
0634nobodyさん2013/12/04(水) 04:21:08.49ID:???
http://php.net/manual/ja/function.exit.php
0635nobodyさん2013/12/04(水) 07:20:30.17ID:???
die()
0636nobodyさん2013/12/04(水) 08:49:45.88ID:???
>>635
通報した
0637nobodyさん2013/12/04(水) 12:34:33.47ID:PBvUKlOP
>>628ですけど答えがわからず困ってます。
他で聞いてみますありがとうございました。
0638nobodyさん2013/12/04(水) 13:43:53.74ID:???
>>637
セキュリティのためだから無理
0639nobodyさん2013/12/04(水) 13:44:56.75ID:???
ってダウンロードの話じゃないのか
Ajaxで
0640nobodyさん2013/12/04(水) 18:51:38.51ID:???
rssで画像表示させたいんだけど、simplexmlって関数じゃ出来ないかな?
0641nobodyさん2013/12/04(水) 23:58:15.96ID:???
言語も関数も関係ないわ。RSS 仕様 でググれ。
0642nobodyさん2013/12/05(木) 00:13:39.15ID:???
PHPの関数なら実装しかねないからなそういうの
0643nobodyさん2013/12/05(木) 00:59:46.01ID:???
文字列の加工は正規表現でいいじゃん
正規表現使えるならxml関数使う必要ない
0644nobodyさん2013/12/05(木) 03:49:17.06ID:???
>>1読まないやつに答えるな
0645nobodyさん2013/12/06(金) 04:34:47.39ID:KKHOJGxq
file get contentsをログインが必要なサイトで使いたいです
ログイン画面でurlにidとpasswordのパラメータ含めてログインして、目的のページに遷移してからfile get contentsしてもログインしてない状態のhtmlを取得してしまいます
何か知恵を下さい お願いします
0646nobodyさん2013/12/06(金) 06:15:05.28ID:???
第三引数のcontextを作成してクッキー食わせろ
まぁcurlでやるのがより簡単だろう
0647nobodyさん2013/12/06(金) 09:59:38.77ID:Z8WCy1ZX
超初心者ですみません。
ファイルを読み込んで、ファイルの中身が10文字以下の場合、アラートを出したいのです。
以下のようにしてしまうと、一行が10文字以下の場合になってしまいます。
hogehoge.txt全体で10文字以下の場合にアラートを出すようにするには、どのようにしたらよいでしょうか?

$file_name = "hogehoge.txt";

$fp = fopen($file_name, "r");
while ($line = fgets($fp)) {
アラートを出す処理;
}
fclose($fp);
0648nobodyさん2013/12/06(金) 10:09:43.12ID:???
10文字ってのが10バイトでいいならfilesizeでやれば?
そのコードでやるならwhile内で文字数カウントしてループ外でアラートを出せばいい
0649nobodyさん2013/12/06(金) 10:10:14.01ID:???
whileの後
0650nobodyさん2013/12/06(金) 10:23:34.34ID:???
マルチバイト文字は考慮するのかうんぬん
0651nobodyさん2013/12/06(金) 11:47:05.85ID:???
>>647
$data=file_get _contents("./hoge.txt")

if(strlen($data)<10){
echo "alert";
die();
}
0652nobodyさん2013/12/06(金) 11:56:38.20ID:???
マルチバイト考慮するならmb_strlenを使う
10文字以下なので<=もしくは11にする
echoのあとにdieとか冗長die('alert')でよい
0653nobodyさん2013/12/06(金) 12:48:47.10ID:???
curlでcookie使う時にCURLOPT_COOKIESESSIONってcookie受信する時はtrueで
送信する時はfalseでいいですか?
0654nobodyさん2013/12/06(金) 13:21:29.61ID:KKHOJGxq
>>646
ありがとうございます
できればそのcurlでの具体的なプログラムを記述して頂ければ幸いです
0655nobodyさん2013/12/06(金) 13:26:01.71ID:???
curl php cookieとかでぐぐれよ
0656nobodyさん2013/12/06(金) 13:32:47.14ID:KKHOJGxq
ごめんなさい
ググってきます
0657nobodyさん2013/12/06(金) 19:59:55.57ID:bFPQLUri
質問です
curlでログイン処理をしているのですが、ログイン失敗してもエラーが出ません。
どうしたらエラーがでますか?よろしくお願いします。
0658nobodyさん2013/12/06(金) 22:49:00.32ID:???
>>657
ID変わってるが>>654だろ?
>>1-4 を読め。テンプレうめろ。ルールも守れないなら人に頼るな。
自分の仕事を人に無料で書かせてコピペで済ませようとすんな。
0659nobodyさん2013/12/07(土) 02:33:21.08ID:f05rVb/u
>>658
656ですけど657は私ではありませんよ
0660nobodyさん2013/12/07(土) 02:52:12.25ID:epRjxDfQ
いや私が656です
自己解決しました
0661nobodyさん2013/12/07(土) 07:57:51.95ID:???
ログイン失敗してもエラーが出ないってそりゃそうだろ
PHP側で問題がおきてるわけじゃないしな
相手サイトのログイン失敗時のメッセージでもソース中から探し出すしかないわな
0662nobodyさん2013/12/07(土) 08:01:32.52ID:Pb/7pHpN
みなさん騙されないでください、私が本人です。
違う場所で質問して回答貰えたのでここでの回答受付は終了します。
0663nobodyさん2013/12/07(土) 08:11:31.96ID:???
つまらないし誰もそんな低レベルな自演煽りなんて相手にしないのでさっさと帰りな
0664nobodyさん2013/12/07(土) 12:46:47.91ID:???
回答受付って何様こいつ。心配しなくても誰も答えんよ。
0665nobodyさん2013/12/07(土) 21:18:32.99ID:???
header関数でページ遷移したいのですがうまく行きません。
a.phpからb.phpに遷移したいのですが、遷移せずにhtmlとbodyだけが出力された状態になります。(エラーメッセージは出ません)

しかし、不思議なことにローカルホスト上では正常に動きます(遷移します)


わかる方いたら教えて下さい!
0666nobodyさん2013/12/07(土) 21:54:27.10ID:???
>>665
テンプレ読もうな
0667nobodyさん2013/12/07(土) 22:27:54.64ID:???
お前はそれで質問してるつもりなのか?
0668nobodyさん2013/12/07(土) 23:32:44.66ID:???
しまった、ここにはゴミクズしかいなかったか
0669nobodyさん2013/12/08(日) 16:07:21.67ID:???
arrayの内容がkey=>valueの配列でkeyがstringであった場合において
そのkeyが存在する要素が先頭から何個目のindexなのか調べる関数は
あるのでしょうか?

無いから大人しく回そうかと思います。
0670nobodyさん2013/12/08(日) 16:25:39.77ID:???
連想配列として使うなら順序が保証されない前提でプログラムした方がいい。
順序が必要ならキーを別の配列に入れておくか値をオブジェクトにして順序をつっこんでおいた方がいいんじゃないかな。
06716692013/12/08(日) 16:34:31.90ID:???
無いから → 無いなら

>>670
構造体だとindex管理が面倒なのでclassで作った方がよさそうですね
ありがと
0672nobodyさん2013/12/08(日) 20:01:06.71ID:???
連想配列に順序なんてねぇよなw
0673nobodyさん2013/12/08(日) 21:23:55.40ID:???
http://www.php.net/manual/ja/language.types.array.php
> PHP の配列は、実際には順番付けられたマップです。
0674nobodyさん2013/12/08(日) 23:22:42.65ID:???
PHPの配列は順番保証されるよ
この程度も知らんでおまえらよくやってるな
PHPしかやってないからかえってPHPのことがよくわかってないのでは?
0675nobodyさん2013/12/08(日) 23:42:44.31ID:???
何のために順番保障してんの?
0676nobodyさん2013/12/08(日) 23:44:05.67ID:???
順番が保証されないと思ってるのは>>672だけか。。がんばりな。
言語仕様マジ重要。
0677nobodyさん2013/12/08(日) 23:56:42.29ID:???
>>675
単なる実装上の都合かと
0678nobodyさん2013/12/09(月) 00:00:32.72ID:???
PHPの配列使う上でその違いがユーザになんか影響あんの?
0679nobodyさん2013/12/09(月) 00:03:13.16ID:???
順序保証がないとksortも無意味になるな
0680nobodyさん2013/12/09(月) 00:08:44.70ID:???
>>678
活用できる場面で活用すれば、レスポンスがはやくなる。
0681nobodyさん2013/12/09(月) 15:20:10.15ID:qNQlBpJg
GETで値を取得して、比較する文がたくさんある場合、
一度GETを変数に取り込んで、
その変数で比較した方が早かったりするの?
めんどくさいから、すべてGETのまま比較してるんだけど、
一般的にはどちらでするの?
0682nobodyさん2013/12/09(月) 15:23:06.45ID:???
見やすい方で
0683nobodyさん2013/12/09(月) 16:21:14.67ID:???
>>681
速い・遅いって、100万回比較して1ms違うかどうかレベルの話でしょ。
なので>>682で。
0684nobodyさん2013/12/09(月) 16:51:43.20ID:???
>>681
まず最初に、get で期待どおりに値を取得できてるかどうかを判定するのが基本。
isset とかでね。
だから、そんときに別の変数に代入されるな、普通は
0685nobodyさん2013/12/09(月) 17:06:09.97ID:???
普通はこう変数に取り込むでしょ。速さは知らないが。

$val = isset($_GET['key']) ? $_GET['key'] : '';
0686nobodyさん2013/12/09(月) 17:47:42.09ID:???
>>685
それだと空文字列のパラメータが渡されたのか、パラメータ自体がなかったのかわからなくなる
0687nobodyさん2013/12/09(月) 18:06:18.04ID:???
>>686
たしかに、そうだね。
しかし、いずれにしても、空文字の場合には、エラーとして弾けば問題ないよ。
まあ、要件と実装の方法にもよるけど。
0688nobodyさん2013/12/09(月) 19:33:11.49ID:qNQlBpJg
$hennsuu = HtmlConvert($_GET['nantoka']);
おらはゲットダイレクトしない場合は
こんな感じで、関数を5つくらい作って
パターンによって取り込んでる。
isset使ったことなかった。
速さは変わらないのか。今のままでいいかな。
なんかGETダイレクトだと、イメージでは
遅くなる感じしたもんで。どもでした。
0689nobodyさん2013/12/09(月) 19:59:56.92ID:???
>>688
論点がずれるけど、それだと $_GET['nantoka'] が存在しない場合に、
noticeエラーが出るよ。その点でよくないと思う。
0690nobodyさん2013/12/09(月) 20:03:56.78ID:???
組み込みのFilter使ってる
0691nobodyさん2013/12/09(月) 22:53:39.77ID:???
issetって不思議な関数だよな
それに渡すときだけはそれがなくてもNoticeにならない
0692nobodyさん2013/12/09(月) 23:00:23.09ID:???
>>691
別に自前の関数でも
func($foo = '') {
…
}
とかしとけばNULLを渡してもNoticeにはならんだろ
0693nobodyさん2013/12/09(月) 23:07:01.92ID:???
>>691
issetやemptyは関数ではなくて言語構造だからですよ。
0694nobodyさん2013/12/10(火) 00:11:01.34ID:???
>>692
$ary['存在しないキー'] 使った時点でNoticeでるよ
0695nobodyさん2013/12/10(火) 03:34:52.84ID:???
なんでベンチとらないんだろ
0696nobodyさん2013/12/10(火) 08:21:30.23ID:???
みんながやってるのと同じことを選んでで安心を得たいだけなんだから、
自分で確認するわけが無い。
0697nobodyさん2013/12/10(火) 12:54:42.14ID:???
ベンチの問題じゃないよこれは。
0698nobodyさん2013/12/10(火) 17:13:14.99ID:ZXq0cpwg
class none{
var hairetu = array();
}

$h = new none;
$h->hairetu['newkey'] = ''newvalue;

こういうことをしようとすると
Cannot use object of type stdClass as array
と怒られるわけですがnewkey付きで要素は追加できないの?
06996982013/12/10(火) 17:24:01.12ID:???
$h->hairetu[] = ''newvalue; ←これだと問題ないけど
$h->hairetu['newkey'] = ''newvalue; ←こっちだと
arrayではなくてobject(stdClass)になるからだめなんだね
classを違う書き方することにします。
0700nobodyさん2013/12/10(火) 17:46:31.39ID:???
>>698
うちの環境(5.3でも5.5でも)だと普通にそのソースで通る
ダブルクォーテーションは足した

何か他間違えてるよ
0701nobodyさん2013/12/10(火) 17:47:41.02ID:???
>>698
うちでは問題無いけど。
PHPのバージョンいくつ?
0702nobodyさん2013/12/10(火) 17:57:36.95ID:???
>>698
通らないはずがない
別のミスはないか?
07036982013/12/10(火) 18:05:04.88ID:???
$php5 -v
PHP 5.5.6-1 (cli) (built: Nov 21 2013 09:55:16)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies

$time = time();
$h->hairetu[] = $time; ←これだとvar_dumpはarray()だしvalueはintだけど
$h->hairetu[$time] = 'value';←これにするとarrayではなくobject(stdClass)になって
キーがstringにになってしまう。$timeを123の数字に置き換えても文字列になるから
仕様なのだと思う。
07046982013/12/10(火) 18:10:49.00ID:???
あ、ごめん
確かにこっちに書いた部分だと通ったw

出直してきます!
0705nobodyさん2013/12/10(火) 18:11:40.85ID:???
var hairetu →var $hairetu
07066982013/12/10(火) 18:31:47.41ID:???
同じ部分でjsonを使っていたので何となくjsonで読書していたのが原因でした。
お騒がせしました。

夕食後にserializeにしたいと思います。

class none {

var $hairetu = array();

}

class s {

var $Value = 'value';

}

$s = new s();

$h = new none;
$time = time();
$name = 'hairetu';
$h->{$name}[$time] = $s->Value;

var_dump($h);

$json = json_encode($h);
var_dump(json_decode($json));
0707nobodyさん2013/12/10(火) 20:40:26.57ID:???
仕様なのだと思う(キリッ
0708nobodyさん2013/12/12(木) 18:44:48.26ID:fJCy4SYM
PHP4で作ってたサイトをPHP5環境に移行させてます
変数を <?=変数?> で表示してたんですが、PHP5で表示されなくなりました
この書き方は廃止されたのでしょうか?
また廃止されていた場合、
<?php
echo 変数;
?>
の書き方しかないのでしょうか?
ググりたいんですがなかなかこの点について書いてるサイトが見つからず困ってます
0709nobodyさん2013/12/12(木) 18:46:55.97ID:???
>>708
php.iniのshort_open_tag
ビルド時に無効にしてたら効かないかも
0710nobodyさん2013/12/12(木) 19:16:08.72ID:???
http://togetter.com/li/600908

やっちゃったか
0711nobodyさん2013/12/12(木) 19:57:57.29ID:???
>>710
大垣が完全論破されたってことでいいの?
0712nobodyさん2013/12/12(木) 20:07:51.06ID:fJCy4SYM
>>709
いけました!
ありがとうございます
0713nobodyさん2013/12/13(金) 00:48:59.15ID:???
>>711
実務上ではそうみたい

バインドを使わないのはゴミって言われたに等しいな
0714nobodyさん2013/12/13(金) 01:47:44.69ID:???
php5.4~ではShort_open_tag=0でも<?=が使えるらしいよ
0715nobodyさん2013/12/13(金) 08:37:59.63ID:???
>>710
よく分からん。まとめてくれ。
0716nobodyさん2013/12/13(金) 09:39:31.42ID:???
あっちでやってくれ
0717nobodyさん2013/12/13(金) 10:40:37.06ID:???
>>710
>>295
ウケル
0718nobodyさん2013/12/13(金) 15:25:45.87ID:???
大垣ってほんとウザイな
0719nobodyさん2013/12/13(金) 15:53:22.32ID:???
大垣ってなんでそこまで必死になれるんだろう
功績は認めるけど、性格が小物すぎる
0720nobodyさん2013/12/13(金) 15:56:19.52ID:???
わざわざこんなスレで叩いてるやつも同一人物で必死に見える
07217192013/12/13(金) 16:28:40.67ID:yL3mhT89
ちげーよ
ID出しておくわ
0722nobodyさん2013/12/13(金) 16:50:28.51ID:???
>>720
わざわざって、2chでPHP関連の総合スレ的役割なのは、このスレしかないじゃん
俺からすると、別の場所で書く方がわざわざ感を感じるけどな
0723nobodyさん2013/12/13(金) 17:04:47.52ID:???
PHP関係なくね?
それを言うなら2chで大垣関連の総合スレがこのスレだからここでやるおだろ
0724nobodyさん2013/12/13(金) 17:11:03.83ID:???
徳丸先生のブログ。

PHPとセキュリティの解説書12種類を読んでSQLエスケープの解説状況を調べてみた
http://blog.tokumaru.org/2013/12/php12sql.html

> 安全なSQLの呼び出し方は、公開されてから一度も改版されていないので、「安全になった」という表現は
> 適当でありません。現在のものが安全だとすれば、それはもともと安全であったことを意味します。

バッサリ
0725nobodyさん2013/12/13(金) 17:15:45.51ID:???
何をしたいんだか。
どこがどうおかしいのかの説明がなければ意味不明だぞ。
0726nobodyさん2013/12/13(金) 17:25:56.11ID:???
>>725
つい最近、大垣氏が次のようなブログを書いたんだけど、

IPAの「安全なSQLの呼び出し方」が安全になっていた
http://blog.ohgaki.net/ipa-how-to-use-sql-calls-to-secure-your-web-site

徳丸先生が、それをバッサリと切り捨てたって話ね。

関連Togetter:
大垣さんのIPA批判
http://togetter.com/li/599648
0727nobodyさん2013/12/13(金) 17:27:51.83ID:yL3mhT89
>>724
さすが徳丸さんだな
とてもわかりやすい解説してるし、意見を押し付けていない
何より徳丸本と大垣本も解説してくれたのはよかった
0728nobodyさん2013/12/13(金) 17:31:38.18ID:???
エスケープエスケープうるさいんだよ
0729nobodyさん2013/12/13(金) 18:55:09.64ID:???
わざわざここに書いて賛同を得るような話題でもあるまい。
そもそも質問じゃねーから、勝手に総合スレ扱いするのが間違い。

俺様の気になった事柄がみんなの話題になるとうれしいだけだろう。
0730nobodyさん2013/12/14(土) 00:28:35.98ID:???
つうか名前出してるやつ叩くなら同じ土俵に上がれよ
ツイッター参戦すればいいだけでここは場違い
0731nobodyさん2013/12/14(土) 01:37:34.24ID:???
大垣はどうでもいい
このスレの回答者も平気でプリペアてかバインド使わないで良いとか言うから心配だ
0732nobodyさん2013/12/14(土) 06:29:09.87ID:???
昔はそんなもんなかったからな
0733nobodyさん2013/12/14(土) 09:05:24.68ID:???
>このスレの回答者も平気でプリペアてかバインド使わないで良いとか言うから
そんなの見たことないけど無理して妄想ででっちあげしなくてもいいのよ
0734nobodyさん2013/12/14(土) 13:34:25.00ID:N7nQofZQ
質問させて下さい。
cmsを使わずに、phpのみのプレーンでサイト製作中なのですが、
cmsのような投稿記事の仕組みを実現したいと思っています。

トップページ(index.php)に「お知らせ記事」の最新1件だけ、表示させて、「全件見る」のリンクから「お知らせ記事」のアーカイブページ(archive.php)に全件表示させたいです。
それで記事なのですが、archive.phpにソースを追加していくのではなくて外部ファイル(info.inc)に記述してそれを読み込む形にしたいと思っています。

info.incには

<div class="post num001">
<h3>お知らせ1</h3>
<p>文章。文章。文章。文章。文章。</p>
</div>

<div class="post num002">
<h3>お知らせ2</h3>
<p>文章。文章。文章。文章。文章。</p>
</div>

・・・続く

といった形で、お知らせ記事をエディタで追加記述しようと思っています。
・index.php、・archive.php、・info.inc
にどのような構文を書けば実現できるでしょうか?宜しくお願いします。
0735nobodyさん2013/12/14(土) 13:40:22.39ID:???
>>734
info.inc のフォーマットにもよるけど、上のような内容なら、index.php では空行まで読めばいいんじゃないかな
もちろん、require は使えないから、ファイルを読む関数を使って echo で出す感じになると思う

archive.php では単純に require すればいいと思う
0736nobodyさん2013/12/14(土) 13:46:08.86ID:N7nQofZQ
>>735
早速のご回答ありがとうございます。
しかしながら、php素人でして、具体例的なソースコードを教えていただければ幸いです。
0737nobodyさん2013/12/14(土) 13:50:00.54ID:???
>>736
素人でも書いてみなよ
そしたらコメントつけるからさ。他の人もコメントしてくれるよ

ただ教えてもらうより、学習の能率が断然違う
0738nobodyさん2013/12/14(土) 22:10:27.56ID:???
>>736
>>1-5 読め
お前が書いたソースを貼れば校正や意見はもらえる。
てめえの仕事を人に無料でやらせようとすんな。入門書読んでから取り組む程度のことができないなら大人しく人に金払ってやってもらえカス。

皆さん、こういうカスは職業プログラマの質を下げ単価を下げる原因を作り技術者を安くこき使うことしか考えないカスな輩ですので相手にしないようにしましょう。
0739nobodyさん2013/12/14(土) 23:01:51.81ID:N7nQofZQ
>>738
info.incには
<!--Post STA-->
<div class="post num001">
<h3>お知らせ1</h3>
<p>文章。文章。文章。文章。文章。</p>
</div>
<!--Post END-->

<!--Post STA-->
<div class="post num002">
<h3>お知らせ2</h3>
<p>文章。文章。文章。文章。文章。</p>
</div>
<!--Post END-->

とコメントをいれ、

archive.phpには
<?php
$src = file_get_contents('http://URL');
$src = mb_convert_encoding($src, 'UTF-8', 'auto');
$res = preg_match('/<!--Post STA-->(.*)<!--Post END-->/su', $src, $mch);
echo $mch[1];
?>
こんな感じでなんとか表示させることはできました。
あと、indexの最新が分かっていない状況です。
修正やご指南宜しくお願いします。
0740nobodyさん2013/12/14(土) 23:58:11.16ID:3rH+tT3X
まず
プログラムは魔法じゃない
つまり
指示したようにしか動作しない

つまり
1件だけ取り出したいなら
基本的にはそれを区別して取り出せるように保存する必要がある

細かいところにまで行き届いてるプログラムには一々そういう手間をかけてこさえてあるんだよ
0741nobodyさん2013/12/15(日) 00:01:18.71ID:???
>>739
自分である程度やったなら少しアドバイスする。
最新をinfoの上に追記するか下に追記するかでプログラムは変わるが、お知らせなら上に追加して行く方がいいだろう。
上に追加するならstrpos関数で最初に出てくる<!--Post END-->の位置までを取得してsubstrで一つ目の記事を取得するといい。
$latest = substr($text, 0, strpos($text, '
<!--Post END-->'));
みたいな感じだな。
保存フォーマットがスマートじゃないが手書きなら仕方あるまい。
0742nobodyさん2013/12/15(日) 00:08:18.33ID:???
>>739
ではヒントを

正規表現の (.*) の部分は greedy match といってなるべく長い文字列にマッチするようになっている
abcabcabc に a(.*)c をマッチさせると、 bcabcab がひっかかる
0743nobodyさん2013/12/15(日) 00:13:23.33ID:???
>>739
自分である程度やったなら少しだけアドバイスしてやる。
最新をinfoの上に追記するか下に追記するかでプログラムは変わるが、お知らせなら上に追加して行く方がいいだろう。
上に追加するならstrpos関数で最初に出てくる<!--Post END-->の位置までを取得してsubstrで一つ目の記事を取得するといい。
$latest = substr($text, 0, strpos($text, '
<!--Post END-->'));
みたいな感じだな。

保存フォーマットがスマートじゃないが手書き更新で素人でもできるが目的があるなら仕方あるまい。

だが、なぜURLから読み込むのとかarchiveはそんなプログラム書く必要あんの?とかツッコミどころは多すぎるからもう身近な人にレビューしてもらえよ。あんた一人で納品は無理だわ。
0744nobodyさん2013/12/15(日) 01:23:13.20ID:ASKbBAVd
>>739
大人しく聞いてたらアンタ何様?趣味で作っているサイトだから納品とか言ってもねーこと勝手に述べてんじゃねーよ。
たかだかphpごときで、2chで素人相手にえらそーにして喜んでるレベルじゃ、現実社内で誰にも相手されて無い日陰もんのさびしー奴なんだろな。
ろくに教える事もできないんだったら黙ってろよ。無視すればいいだろ?お前みたいな存在が、掲示板の質を落とすんだよ。
注意したいことがあっても、いい大人だったら言葉使いくらいちゃんとしろよ。
「カス」とか言ってる事が低俗な人間だぞ。まあ頑張れ
0745nobodyさん2013/12/15(日) 01:38:10.14ID:???
これがあの煽り教えて君か
0746nobodyさん2013/12/15(日) 02:35:53.39ID:???
教えて君がキレたな。カス程度言われてきれるなら2chにくんなよカス。
たかがそのpho「ごとき」だってさ。たかがなら人に聞かずにひとりでやれば?
0747nobodyさん2013/12/15(日) 03:47:29.81ID:???
>>739
archive.php:
<?php

$src = file_get_contents('./info.inc');
preg_match_all('/<!.+?>(.*?)<!.+?>/s', $src, $m);

foreach ($m[1] as $v) {
print($v);
}


index.php:
<html>
<body>
<?php require './archive.php'; ?>
</body>
</html>
0748nobodyさん2013/12/15(日) 08:21:04.01ID:???
POST STA☆
0749nobodyさん2013/12/15(日) 10:01:17.44ID:???
>>739
CSVかDBにしなよ
正規表現で無理やり取得する珍回答が続いてるが
0750nobodyさん2013/12/15(日) 11:59:54.80ID:???
info.inc を直接修正したい、という要求があるんだろう
その要求自体がなんだかなあと思わないでもないが、分からないでもない
0751nobodyさん2013/12/15(日) 12:40:58.89ID:???
趣味とか言い訳してたがそう言う要求がある時点で趣味じゃないだろ。趣味や勉強ならDB使うわな。
やっぱ教えて君で人に仕事させようとするカスだな。もうスルーしよ。
0752nobodyさん2013/12/15(日) 13:15:52.51ID:???
PHP素人が手を出すようなことじゃない
やりたいなら場数を踏みなさいって言ってあげればよかったのに
0753nobodyさん2013/12/15(日) 13:43:32.16ID:???
>>750-751
趣味なんだから自分からの要求だろ
自分からの要求は容易に変えられる
CSVに変えるのが一番まとも
0754nobodyさん2013/12/15(日) 13:55:45.36ID:NrEa4Wnc
phpでmysqlに接続したいけど、こんなエラーが出る。
Error:Can't connect to local MySQL server through socket '/tmp/mysql.sock' (13)


phpのソースはこれ。
<html>
<body>
<?php
$link = mysql_connect('localhost:/tmp/mysql.sock', ‘root’, ‘password’);
if (!$link) {
die('Error:'.mysql_error());
}
$close_flag = mysql_close($link);
?>
</body>
</html>


コマンドラインでは接続できる。

# mysql -S /tmp/mysql.sock -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.5.31-log Source distribution


環境はCentOS 6.4でhttpdもphpもyumで入れた。
なんでこんな簡単そうなのが動かないんだろう?
0755nobodyさん2013/12/15(日) 14:45:50.72ID:???
>>754
エラーメッセージの13はpermission deniedだから、その辺を疑ってみては?
httpdユーザから/tmp/mysql.sockにアクセスする権限があるかどうか、とか
0756nobodyさん2013/12/15(日) 15:05:17.54ID:???
>>755

サンキュウ。一応誰でもアクセスできるはずなんだけど。勘違いしてるかな?

# ls -la /tmp/
drwxrwxrwt. 13 root root 4096 Dec 15 05:03 .
dr-xr-xr-x. 23 root root 4096 Dec 15 03:38 ..
…
srwxrwxrwx. 1 mysql mysql 0 Dec 15 05:03 mysql.sock


httpdはユーザapacheで動いてる。
0757nobodyさん2013/12/15(日) 16:17:11.22ID:???
>>755

apache使わずに直接phpでならアクセスできるんで、
apache側の権限の問題みたい。

とりあえず、ありがとう。
0758nobodyさん2013/12/15(日) 17:15:35.68ID:???
restart
0759nobodyさん2013/12/15(日) 18:30:48.75ID:???
restartしてもダメだった。

httpd.confもいじるところがない。困った。

php単体では動くからスレ違いだよね。
0760nobodyさん2013/12/15(日) 18:40:18.06ID:???
$link = mysql_connect('localhost', ‘root’, ‘password’);
0761nobodyさん2013/12/15(日) 19:03:59.94ID:???
だから、php直なら動く。
apacheからだとダメ。

明示的にソケット名を書いても書かなくても同じ。

そのくらいは全部試してるよ。
0762nobodyさん2013/12/15(日) 19:40:34.73ID:???
>>761
Secure libuxがonとかない?OSの環境が詳しくわからないとなんとも言えないが。
0763nobodyさん2013/12/15(日) 20:31:36.75ID:y5Xmkgcg
CSVはないわ
,使うだけで面倒な手間かかるとかないわー
0764nobodyさん2013/12/15(日) 21:19:51.99ID:???
>>754 mysql_connect('127.0.0.1:/tmp/mysql.sock'...で
0765nobodyさん2013/12/15(日) 22:30:06.88ID:r6HNRZ2+
>>759
centosでyumで入れた、php.iniの
mysql.default_scoket =
は空。空だと、mysqlの設定に従う。
こっちはデフォルトだと
/var/lib/mysql/mysql.sock
/tmp/mysql.sock
になってるってことは、どっかの設定をいじってるか、
他の環境で書かれた見本をそのまま使ってしまったか。
0766nobodyさん2013/12/15(日) 22:31:29.50ID:???
sq.safe_mode=1の可能性も微レ
0767nobodyさん2013/12/16(月) 03:03:17.87ID:???
ソケット名は制御できてる。明示的にmy.cnfもphp.iniも書いた。
そもそも最初の質問時、mysqlコマンドでソケット名を明示的に書いてるよ。


そんで、やっとわかった。SELinuxが邪魔してた!!!
/etc/selinux/configでdisabledにしてやった。ざまあみろ

SELinux最低。あの海外って奴も最低。ろくなドキュメントも資料もなしで
こんなダメダメ機能作っちまうんだから。
0768nobodyさん2013/12/16(月) 08:06:14.95ID:???
無視された>>762さん可哀想
0769nobodyさん2013/12/16(月) 08:25:20.63ID:???
ID出してなくて態度も悪い質問者なのにな
0770nobodyさん2013/12/16(月) 09:12:48.07ID:???
初歩的なサーバ設定で躓いてましたか

クリアできて良かったですな
0771nobodyさん2013/12/16(月) 09:37:25.23ID:???
>>767
だめなのはお前の頭だ
Windowsでも使ってろよ
0772nobodyさん2013/12/16(月) 11:52:15.85ID:???
バカはお前らだろ
ソケット名がどうしたとかrestartしろとか、見当違いの意見ばっか書きやがって。
何にもわかってないの、お前らだろ。
基本的な設定でつまずいた?その基本的な設定について想いもよらず、書いておいたソケット名も観ないで、
php.iniがどうしたとか、知ったかかましたのは誰だよw


そもそもこんなレベルのyohgakiってバカがPHP認定試験なんてやってる時点で
お前らPHPやろうどものオツムのレベルも知れるってもんだよw
http://bogus.jp/wp/?p=1452
0773nobodyさん2013/12/16(月) 11:56:52.97ID:???
ふーん。いろんな意味で乙
0774nobodyさん2013/12/16(月) 12:09:30.34ID:???
馬鹿が使っちゃいけないわけではないからな。
0775nobodyさん2013/12/16(月) 13:53:34.83ID:???
>>772
おまえのサーバ環境はここの住人にはわからん
誰よりもおまえが一番わかってるじゃんか
0776nobodyさん2013/12/16(月) 14:13:55.53ID:???
おい、何なんだよ、クソZendのサイトの重さは!!
一番模範にならんといかんのに、あんだけ重いと、
PHPで作ったサイトなんてゴミじゃないかと思うだろ
0777nobodyさん2013/12/16(月) 14:21:02.92ID:???
>>776
普通の感覚だと思わん
0778nobodyさん2013/12/16(月) 15:01:07.85ID:???
は?
0779nobodyさん2013/12/16(月) 15:30:25.86ID:???
>>778
質問ならID出してね
0780nobodyさん2013/12/16(月) 16:20:51.66ID:AASW/wKp
誰かさ、IDE、Zend-Eclipse-PHP使った場合のPleiadesの反映の仕方しってる人いたら教えてくれない?
使ってる人PHPerいると思うんだけど
昔のEclipsePDTと設定方法変わってるようで出来ないんだけど
0781nobodyさん2013/12/16(月) 16:23:13.48ID:AASW/wKp
ごめん、
http://www.javadrive.jp/eclipse3/install/index4.html
見たら出来た
0782nobodyさん2013/12/16(月) 22:30:47.92ID:xJSmvJCz
こいつアフィikuraだろ
0783nobodyさん2013/12/17(火) 15:03:14.51ID:YSE5hBqx
http://tenhou.net/0/?7041
天和というオンライン麻雀のURLなんですが、
この?以降ってGETで取れるんでしょうか?
0784nobodyさん2013/12/17(火) 15:16:46.81ID:???
>>783
取れる
0785nobodyさん2013/12/17(火) 15:35:45.50ID:YSE5hBqx
>>784
ありがとうございます!
0786nobodyさん2013/12/17(火) 16:13:22.84ID:???
getっていうかQUERY_STRINGだな
0787nobodyさん2013/12/17(火) 23:13:47.59ID:???
file_get_contentsでリクエストしているプログラムでタイムアウトの検知が思うようにいきません。
php.iniのdefault_socket_timeoutの設定を30として、
30秒以上たったらタイムアウト処理をしたいのですが、
file_get_contentsがタイムアウトの判定をして戻り値が帰ってくるのがリクエストしてから60秒後になります。
なぜ30秒後ではなく60秒後になるのか理由がわかる方いましたらお願いします。
0788nobodyさん2013/12/17(火) 23:32:30.00ID:???
まずスレタイを読もう
07897872013/12/17(火) 23:40:28.62ID:3IDEqrk4
すみません
>>787宜しくお願いします
0790nobodyさん2013/12/18(水) 00:39:42.75ID:???
突っ込んだんなら答えてやれよ…

俺はhttpリクエストにfile_get_contents使ったことないから内部実装知らんし
使う気ないから調べる気もないから確認手順くらいだが。

iniに直接書いたんだよな?webサーバの再起動はしたよな?
直前でini_getしてみたか?タイムアウトの値はちゃんと変わってる?
変わってないなら書き換えたiniは正しい?
ini_set使ってるなら権限あるか?

ちゃんと反映されてるのにそうなるなら
ソケットタイムアウトとリクエストタイムアウトの設定別なんじゃないか?
他の言語でもcurl関数でも別に設定できるもんだし。リクエストタイムアウトの方が60になってるとかじゃないの?
第三引数にstream contextでタイムアウト渡せるみたいだし、それも渡して見たらどうだい?
0791nobodyさん2013/12/18(水) 00:44:20.61ID:???
ピコーン
30秒指定して60秒になるなら15秒に設定すればよい
0792nobodyさん2013/12/18(水) 00:49:40.83ID:???
>>791
それでうまくいかない(60秒のまま)なら、設定すべき場所が違うってことだな。
しかしなんでPHPは設定ファイルが変に散らばってるんだ
0793nobodyさん2013/12/18(水) 03:14:24.81ID:???
設定ファイルが変に散らばってる・・・?
0794nobodyさん2013/12/18(水) 11:44:06.98ID:???
ini_get で確認と
https://bugs.php.net/bug.php?id=41631
0795nobodyさん2013/12/18(水) 12:48:03.32ID:???
うちのPHPは設定ファイルが変に散らばったりしてないいい子だよ。
0796nobodyさん2013/12/19(木) 08:48:51.27ID:wgY346L5
【OS名】-
【PHPのバージョン】-
【連携ソフトウェア】-
【質問内容】PHPの設定方法を解説しているような書籍はないでしょうか?
mbstring.languageを設定せず、mbstring.internal_encodingのみ設定すればどうなるか
などがわかるようになりたいです
0797nobodyさん2013/12/19(木) 12:14:49.99ID:???
そこまで実験したいデータが整ってるなら実践すればいいのに
ローカルにxamppでもインスコしてphp.iniいじればいいだけの話よ
0798nobodyさん2013/12/19(木) 13:01:02.19ID:???
>>796
ソース読めないの?
0799nobodyさん2013/12/19(木) 19:55:29.39ID:+TJKY+xb
$opts = array(
'http'=>array(
'method'=> "GET",
'header'=> "User-Agent: Agent\r\n"
)
);
$context = stream_context_create($opts);
echo file_get_contents('http://example.jp/ex.php', false, $context);

上のようにUser-Agent(UA)などヘッダーを変えてサイトにアクセスしたいのですが、
アクセスするとUAが分かるサイトにアクセスしてもUAは「PHP/5.2.17」のままで、ヘッダーが変更されていません。
WindowsのPHPで試すと普通に変更されているのですが、
どうすればちゃんと変更されるか、おかしいかもしれない所を教えて下さい。

OSは多分Linuxで(ディストリビュージョンは分からない、)
PHPのバージョンはUAの通り5.2.17、
ホスティングサービスは「000webhost」です。
0800nobodyさん2013/12/19(木) 22:44:15.58ID:???
stream_context_createのユーザノートで、5.2系のバグだって言ってる人いるね
ini_set(user_agent', ...しろってさ
でもこれbtsでは見つからんね
0801nobodyさん2013/12/20(金) 02:32:21.57ID:???
PHPのリファレンス的な本てない?
Webで調べられるんだけど、どうも本がないと落ち着かない性分で。
0802nobodyさん2013/12/20(金) 11:40:46.63ID:???
>>801
ID出せ
0803nobodyさん2013/12/21(土) 10:39:14.61ID:???
PHPのリファレンス的な本があるかないかだって
Webで調べられる
0804nobodyさん2013/12/21(土) 11:57:35.62ID:???
これはひどい
0805nobodyさん2013/12/21(土) 12:04:51.56ID:???
>>801
たぶんない
本にすると広辞苑も真っ青の厚さ
0806nobodyさん2013/12/21(土) 12:17:23.90ID:???
印刷すればいい
0807nobodyさん2013/12/21(土) 13:42:28.86ID:???
持ち歩くの大変そうだな
3kgぐらいにはなるんじゃね?w
0808nobodyさん2013/12/21(土) 16:54:16.17ID:Fs+OLeyH
艦橋変数を取督したかったんだけど、$_ENV だと
中身が空っぽで、 getenv() でならちゃんと取れた。
$_ENV って廃止にでもなったの?
0809nobodyさん2013/12/21(土) 17:02:03.83ID:???
>>808
variables_order
0810nobodyさん2013/12/22(日) 03:40:53.85ID:???
わざとなのか知らんが誤字がうざすぎる
0811nobodyさん2013/12/22(日) 10:52:42.43ID:ZRst6cJ1
>>800
stream_context_create()を実際に使いたい所では
User-AgentだけでなくPOST送信や他のヘッダも送信したかったので、
ホスティングサービスを変えてしまう事で解決しました。
他のPHP5.3系のホスティングで同じようにテストしても
UAが「PHP/5.3.20」になっていた物があったので、バージョンのせいでは無いと思います…

ですが、ありがとうございました
0812nobodyさん2013/12/22(日) 15:25:35.88ID:???
>>811
デフォだとUAは空かPHPやから、バージョンまで入ってるのはどっかで
設定されとんのやろな
管理者に聞いてみるのがはやそうと思う
0813nobodyさん2013/12/24(火) 20:19:35.69ID:???
function ikioiSort( $a, $b )
{
$var="ikioi";
if ($a[$var] == $b[$var]){return 0;}return ($a[$var] < $b[$var]) ? -1 : 1;
}
function timeSort( $a, $b )
{
$var="time";
if ($a[$var] == $b[$var]){return 0;}return ($a[$var] < $b[$var]) ? -1 : 1;
}
$s = array(
array( 'id' => 1, 'ikioi' => 0, 'time' => 30 ),
array( 'id' => 2, 'ikioi' => 0, 'time' => 10 ),
array( 'id' => 3, 'ikioi' => 56756, 'time' => 10 ),
array( 'id' => 4, 'ikioi' => 87, 'time' => 10 ),
array( 'id' => 5, 'ikioi' => 86, 'time' => 90 ),
);
usort($s, "timeSort");
usort($s, "ikioiSort");


timeとikioiで連想配列を二段ソートしたくてusortを二回かけてみたんですけどうまくいきませんでした。
上の例だとikioiとtimeが最小のid=>2が一番上に来てほしいんですがどうすればいいでしょうか??
0814nobodyさん2013/12/24(火) 21:02:23.96ID:???
IDないね
0815nobodyさん2013/12/28(土) 03:32:26.02ID:ylfqKSgs
ゲーム・漫画作品の検索結果にAMAZONからリンクした画像を表示するシステムを組んだのですが
ブラウザが広告非表示アドオン(Adblockなど)をかけている場合表示されません
自サーバー内にも画像は用意できるのですが、
弱小サーバーの趣味サイトですので、できるだけ転送量は減らしたいのです
ユーザーにAdblockを外すよう促すのもユーザビリティ的に良いとは思えません
ですのでAdblockがかかってる場合のみ、自前のサーバーからの画像を表示するようにしたいのですが、
アドオンの有効無効をPHPで判定することは出来ますか?
0816nobodyさん2013/12/28(土) 03:46:47.58ID:???
アフィ消えてユーザもよろこんどるやろ
0817nobodyさん2013/12/28(土) 08:24:22.97ID:???
>>815
出来ません。以上です。
0818nobodyさん2013/12/28(土) 13:06:29.45ID:0EjFEbqK
URLの最後のスラッシュ以降だけ取得する方法教えて

ttp://hoge/apple → apple

ttp://hoge/hoge/orange → orange
0819nobodyさん2013/12/28(土) 13:18:30.58ID:???
parse_url
0820nobodyさん2013/12/28(土) 13:46:19.96ID:0EjFEbqK
サンクス

$url = 'ttp://〜';

print_r(parse_url($url));

この後は?
0821nobodyさん2013/12/28(土) 13:59:14.20ID:???
$parseUrlArray[count($parseUrlArray)-1]
0822nobodyさん2013/12/28(土) 13:59:16.82ID:1zQ6eOqn
s|.*/||
0823nobodyさん2013/12/28(土) 14:08:07.49ID:0EjFEbqK
ごめん わかんないや
配列が表示されるんだけど、どうやって最後だけ表示するの?
Array ( 〜〜〜
0824nobodyさん2013/12/28(土) 14:23:00.86ID:???
$arr = explode("/", $_SERVER["SCRIPT_NAME"];
echo $arr[count($arr)-1];
0825nobodyさん2013/12/28(土) 15:40:38.61ID:???
>>823
$URL = "http://www.〜";
$path_info = pathinfo($URL);
echo $path_info['basename'];//拡張子あり
echo $path_info['filename'];//拡張子なし
0826nobodyさん2013/12/28(土) 19:15:36.85ID:0EjFEbqK
>>824>>825
ありがとう!
$URL = "http://www.〜";
$path_info = pathinfo($URL);
echo $path_info['basename'];//拡張子あり
echo $path_info['filename'];//拡張子なし
で逝った!
0827nobodyさん2013/12/29(日) 12:47:22.13ID:???
ご愁傷様
0828nobodyさん2013/12/30(月) 01:27:01.42ID:pS70nk2t
スレ違いかもしれませんがちょっと質問させてください。

海外サーバにお名前.comで取得したドメインを割り当てサイトをWPで構築しています。

そのサイトには、特定のホスト(プロバイダ)からアクセスした際には
ドメインがうまく認識されず閲覧する事が出来ません。

具体的には、
http//hoge.com/ というテストサイトに対して
e-mobile.ne.jp  からならアクセス出来るのに
***.cims.jp からアクセスすると”ページが見つかりません。” というエラーメッセージが表示されてしまいます。

もうドメインをサーバに割り当ててから随分と時間がたっているのでドメインの浸透具合では無いと思うのですが・・・
一体何が原因なのでしょうか?
0829nobodyさん2013/12/30(月) 02:42:29.34ID:???
ネームサーバーにでも問い合わせて調査したら?
0830nobodyさん2013/12/30(月) 04:28:56.27ID:???
IEならDNSミスの場合はページを表示できませんじゃなかったっけ
ページが見つかりませんはWPのRoute設定がおかしいやもしれんぞ
0831nobodyさん2013/12/30(月) 11:21:09.19ID:???
hostとかdigとかで調べたら
0832nobodyさん2013/12/30(月) 13:35:34.79ID:???
まずは、3日待てw
0833nobodyさん2013/12/30(月) 14:53:33.98ID:???
>>828
Webサーバのログ見れば403か404か500かわかる
0834nobodyさん2013/12/30(月) 15:25:58.34ID:???
>>828
このスレにまったく関係ないのに質問してる所がたちが悪い
0835nobodyさん2013/12/30(月) 19:48:41.84ID:cOhuElU4
>>829 〜 >>833
確認してみます。


>>834
断りいれてるだろうが。バカ。
0836nobodyさん2013/12/30(月) 21:39:32.15ID:???
>>835
4ね低能
0837nobodyさん2013/12/31(火) 01:51:29.62ID:???
キレやすい若者
0838nobodyさん2013/12/31(火) 20:29:04.70ID:???
断り入れると許されるのか、斬新だな
0839nobodyさん2013/12/31(火) 22:34:55.40ID:8qYMp9pv
>>838
ちんぽ も アナルも小さいおっさんだなw
0840nobodyさん2014/01/01(水) 04:00:43.04ID:???
断れば許されるかもしんないけど、いきなりフルスロットルの正義面はやりすぎやろ
せめて解決まで本性隠すべき
0841nobodyさん2014/01/01(水) 06:28:54.74ID:JfNBMGF/
ページャーを作っています。
1ページに20項目表示(0〜20番目)、$_GET['page']の値が1なら21〜40、といった感じで
SQLで取得しようとしています
ですが、以下だとうまく取得できません。行数が0になっているようです。
下から三行目を
$query = 'SELECT id , comment , time FROM db WHERE 1 = 1 ORDER BY `id` ASC LIMIT 0 , 20';
とLIMIT ?をLIMIT 0とすればうまく動くのですが、どこが間違っているのでしょうか?
$queryに直接
・・・ LIMIT' . $_GET['post'] * 20 .' , 20';
と代入するのは避けたいです。よろしくお願いします

$_GET['post'] = 0; /* デバッグ用。任意の数値が入ります */
$server = "localhost";
$mydb = "db";
$usr = "root";
$pass = "";
$pdo = new PDO("mysql:dbname=" . $mydb . ";host=" . $server, $usr, $pass);

$query = 'SELECT id , comment , time FROM db WHERE 1 = 1 ORDER BY `id` ASC LIMIT ? , 20';
$st = $pdo->prepare($query);
$st->execute(array($_GET['page'] * 20));
0842nobodyさん2014/01/01(水) 07:15:20.78ID:???
$_GET['post']
$_GET['page']
存在しない変数*20=0
0843nobodyさん2014/01/01(水) 07:21:24.17ID:JfNBMGF/
>>842
ありがとうございます!
ですが、まだだめです。。。
エラーなどは表示されず、SELECTの結果が0行になってるようです。
>>841以降は
foreach ($st as $key) {
echo 1;
}
などと書いています。
また、MYSQLで
SELECT id , comment , time FROM db WHERE 1 = 1 ORDER BY `id` ASC LIMIT 0 , 20
と流してみても結果はちゃんと返ってきました
0844nobodyさん2014/01/01(水) 07:29:05.40ID:JfNBMGF/
自己解決しました
http://9jp.info/archives/89
LIMITの場合は数値で渡す必要があり、この場合は文字列で渡していることになっているようです。
bindValueでPARAM_INTを指定して渡さければならないようです。
お騒がせしました
0845nobodyさん2014/01/01(水) 08:22:43.75ID:???
*20してる時点で数値になってると思うのだが
0846nobodyさん2014/01/01(水) 08:39:22.62ID:???
[test.php]
test.php?page=n

<?php
$pdo = new PDO('sqlite::memory:');
$pdo->query('create table t (id integer)');
for ($i = 1; $i <= 100; $i++) {
$pdo->query("insert into t (id) values ({$i})");
}
$st = $pdo->prepare('select id from t limit ?, 20');
$st->execute(array($_GET['page'] * 20));
print_r($st->fetchAll(PDO::FETCH_ASSOC));

設定かもしれないけど自分の環境じゃ普通に動くよ
0847nobodyさん2014/01/01(水) 11:59:44.95ID:???
http://www.phppro.jp/qa/3904
http://qiita.com/_dozen_/items/e3c00a0a581378a4cc70
うーん、俺はならなかった。
0848nobodyさん2014/01/01(水) 16:34:30.16ID:???
>>846 Sqliteは型変換するからPHPコードではテストにならん
0849nobodyさん2014/01/01(水) 16:39:14.20ID:???
どうでもいいけど、queryの中身も一緒に出力してみりゃ一発だろう
0850nobodyさん2014/01/01(水) 20:54:15.99ID:???
>>848
kwsk
0851nobodyさん2014/01/02(木) 12:23:34.40ID:tWkHXUai
質問のテンプレを省略させていただきます

【質問内容】
エラーメッセージの出力レベルに関する質問なのですが、開発中はE_ALL
運用中はどのような設定にするべきなのでしょうか?
0852nobodyさん2014/01/02(木) 14:17:53.52ID:???
>>851
回答を省略させていただきます

【回答】
0853nobodyさん2014/01/02(木) 18:25:14.46ID:???
>>851
E_ALLで開発したならE_ALLのままでいいんじゃない。
ただ、display_errors はoffにして、error_log でログを取るようにする。
0854nobodyさん2014/01/02(木) 23:14:21.14ID:tWkHXUai
>>852
テンプレの省略申し訳ない

>>853
ありがとうございます
display_errorsについてもう少し調べてみます
0855nobodyさん2014/01/03(金) 03:48:55.99ID:kSb+qF3j
swatchのようなログをリアルタイムで監視するスクリプトを作りたいのですが、
どういう関数なんかを使えば、ファイルを監視できるでしょうか?
0856nobodyさん2014/01/03(金) 03:59:02.10ID:???
while
filesize
sleep
0857nobodyさん2014/01/04(土) 14:39:20.45ID:2QKgJdHW
switch文について質問です。
case句に、変数を使って大丈夫でしょうか?
試したところエラーにはならなかったのですが、念のため、ご教示ください。

(簡易サンプル)
$a = "a";
$b = "b";
 
switch($c){
  case $a:
    echo "aaa";
    break;
  case $b:
    echo "bbb";
    break;
  default:
    echo "default";
}

よろしくお願いします。
0858nobodyさん2014/01/04(土) 15:19:00.34ID:???
大丈夫だよ
08598572014/01/04(土) 19:54:00.11ID:YYfpyfup
>>858
問題ないみたいで良かったです。
ありがとうございました。
0860nobodyさん2014/01/06(月) 15:07:22.97ID:WdppQndE
Smarty3の最新版ってHTML5に対応してますか?
0861nobodyさん2014/01/06(月) 17:15:38.12ID:???
スレ違いです
0862nobodyさん2014/01/06(月) 18:56:02.27ID:???
えっ?
だってSmartyスレ存在しないし、PHPじゃん
0863nobodyさん2014/01/06(月) 20:28:51.96ID:???
何がどうなってたらHTML5に対応してるってことになるんですか?
0864nobodyさん2014/01/06(月) 20:31:10.04ID:???
smartyスレがないのは使う人がいなくて必要ないからだよ
そんな要らないものを使いたいなら頼ってこないでくれる?
自分で調べて頑張りなよ
みんなそうしています
0865nobodyさん2014/01/06(月) 20:48:51.42ID:???
>>860
自分自身が対応すれば良いだけ。
0866nobodyさん2014/01/06(月) 21:33:49.72ID:???
>>864
要らないものを使いたいんじゃなくて、スレを立てるほど困ることがないんだと思うよ。
0867nobodyさん2014/01/06(月) 21:36:23.83ID:???
スレ立ててしまえばいいんじゃね
すぐ落ちるだろうけど
0868nobodyさん2014/01/06(月) 21:41:00.54ID:???
アホか、Smartyはデファクトスタンダードだろうが
0869nobodyさん2014/01/06(月) 21:46:02.86ID:???
過去にも何度かスレは立ってたけど、今はないね。
実際スレがあったとして、>>860のような質問をされても困るというか。
0870nobodyさん2014/01/06(月) 21:54:12.84ID:???
>>868
使ってる人まわりにいないや
生のPHPのほうが百倍マシだろ
0871nobodyさん2014/01/06(月) 22:16:03.32ID:???
smarty()
0872nobodyさん2014/01/06(月) 23:00:05.49ID:???
>>870
じゃぁどうやってViewを実装してるんだ?
0873nobodyさん2014/01/06(月) 23:15:18.73ID:???
<?php foreach ($a as $key => $value) : ?>
<tr><td><?php echo $key; ?></td><td><?php echo $value; ?></td>
<?php endforeach; ?>

まぁFWでもviewロジックなんて普通にあるだろ
0874nobodyさん2014/01/06(月) 23:17:49.53ID:???
キャッシュ機能つきでもテンプレートなんて50行あれば余裕でかけるし
viewの実装ごときにsmartyの導入なんて必要ないだろjk
0875nobodyさん2014/01/07(火) 00:09:56.51ID:???
>>872
とりあえずZendFWでも使ってみたら?
smartyを併用する!!ってブログは多々見つかるけど、普通に使ってみたらいい
0876nobodyさん2014/01/07(火) 03:23:28.81ID:???
>>860
パーサコアはデリミタの外側はほぼテキストと見なすので、テキストデータなら何でも - html5でも - 大丈夫です
プラグインの出力はxhtmlだったり4.01だったりします
0877nobodyさん2014/01/07(火) 18:09:00.76ID:???
やぁ〜れやれ
ここはマスターベーション野郎どもが巣食ってるようだな
0878nobodyさん2014/01/07(火) 18:18:44.03ID:???
ジェネレーションギャップを感じるものすごいオッサン臭いのがきたな
0879nobodyさん2014/01/07(火) 19:21:46.28ID:???
</tr>
0880nobodyさん2014/01/07(火) 23:38:51.46ID:???
今時PHP使ってるのなんてオッサン老害だけだから仕方がない。
まともな人はほとんど皆Rubyに移行してしまったしね。
0881nobodyさん2014/01/07(火) 23:45:41.60ID:???
Rubyはないわ100%
0882nobodyさん2014/01/07(火) 23:46:59.89ID:???
Ruby 使ってる人にまとまな人がいるんだ!?
0883nobodyさん2014/01/08(水) 00:11:33.57ID:???
Rubyとかw
0884nobodyさん2014/01/08(水) 00:14:33.66ID:???
rubyはまじでないわ。メリットがない
PHPやらないならJavaかC#だろ
もしくはスマホアプリやゲームエンジン系
0885nobodyさん2014/01/08(水) 00:15:45.37ID:KwLq/Ik2
rubyとPHPはメリットがないよなあ
0886nobodyさん2014/01/08(水) 01:53:12.27ID:???
PHPは仕事でもバリバリ使ってるが
ちょっとしたバッチ作るときはこの上ないほど最強
0887nobodyさん2014/01/08(水) 07:26:28.55ID:???
PHPでバッチねぇ…ナンカチガウ
それならPerl使うな
0888nobodyさん2014/01/08(水) 08:00:23.54ID:???
perlはさすがにないな
0889nobodyさん2014/01/08(水) 10:09:38.08ID:KwLq/Ik2
perlかpython100歩譲ってtclかrubyだな
phpはない
0890nobodyさん2014/01/08(水) 10:31:47.05ID:???
>>889
オッサン、高齢プログラマー
0891nobodyさん2014/01/08(水) 10:37:06.18ID:???
>>889
独り言を書くのはやめましょうね。
質問をするスレですよ。
0892nobodyさん2014/01/08(水) 13:46:11.64ID:???
バッチなんてどの言語でもいいわ
0893nobodyさん2014/01/08(水) 13:47:10.02ID:???
Perl利用者の高齢化問題
0894nobodyさん2014/01/08(水) 14:40:20.31ID:???
他言語の質問スレでこんなこと書く程度のやつだけ見て
perl利用者を悪く言うのは他の人たちに失礼ですよ。
0895nobodyさん2014/01/08(水) 16:31:50.53ID:KwLq/Ik2
tcl,ruby,phpは基本的にインスコされてないからなあ
0896nobodyさん2014/01/08(水) 16:35:30.78ID:???
PHPはない、とか言ってるヤツ、なんでこのスレに来るの?
ツンデレってやつか?
ほんとはPHPを愛してるんだろ(笑)
0897nobodyさん2014/01/08(水) 17:34:53.16ID:???
phpが入ってたら使ってもいいけど入ってないからな
自分で使う処理ならなんでもいいけど
ある程度広く使わせるものならphpはない
バッチ処理での話だけど
0898nobodyさん2014/01/08(水) 17:37:22.48ID:???
>>896
バッチの話だろ?
0899nobodyさん2014/01/08(水) 20:33:12.25ID:???
>>895 >>897
3秒ぐらいでインスコ終わるじゃん
0900nobodyさん2014/01/08(水) 20:34:19.58ID:???
他人にわざわざインスコしろと
0901nobodyさん2014/01/08(水) 20:39:51.00ID:???
他人って別にLinux管理者だろ。
1コマンド3秒ぐらいどうってことないだろ。
0902nobodyさん2014/01/08(水) 20:43:15.13ID:???
そういう問題じゃない
いらんものをインスコさせるなということ
0903nobodyさん2014/01/08(水) 20:57:27.79ID:???
最初からインスコされてるという理由で言語を選ぶのかおまえは。
他に重要な要素があるだろ。
0904nobodyさん2014/01/08(水) 20:59:11.91ID:???
お前全く話を理解してないだろ?
自分で使う分にはいいって言ってんじゃん
他人にばら撒くようなやつでは
最初からインスコされてるというのは重要であり
phpでバッチとかどう考えても親切じゃない
0905nobodyさん2014/01/08(水) 21:02:20.86ID:???
だから言ってるだろ、ここはバカな奴らしかいないんだって
ゆとりの底辺集団しかいないんだよ
0906sage2014/01/08(水) 21:04:35.31ID:???
functionは実行していなくてもincludeすると処理時間に影響するんでしょうか?
0907nobodyさん2014/01/08(水) 21:24:13.74ID:???
他人にばら撒くってなんだー

バッチだよな?ツールの話してないよな?

PHPを使ってるWebサーバ以外で動かすバッチをPHPで書いたら
普通の会社ではただの嫌がらせ
0908nobodyさん2014/01/08(水) 22:02:36.36ID:???
>>906
するかしないかで答えたら、する
ただ、どれぐらいするかは量によるとしか
ほとんどの場合は気にするほどではない
0909nobodyさん2014/01/08(水) 22:38:04.11ID:???
windowsのphp-cgi超便利だな、バッチ書くのに最適
0910nobodyさん2014/01/08(水) 22:46:27.26ID:???
俺はバッチとかツール書く時はJavaだな
実行時に文法エラー起きるのは耐えられん
0911nobodyさん2014/01/08(水) 22:48:09.17ID:???
バッチ程度のコード書いて文法エラーとか
0912nobodyさん2014/01/08(水) 22:57:59.18ID:???
>>907
アプリケーションの設定とかバッチですんだろ
0913nobodyさん2014/01/08(水) 23:01:52.65ID:???
インストール〜初期設定なんかの環境構築に使うな
0914nobodyさん2014/01/09(木) 00:23:03.46ID:GwAoR65D
$r = file_get_contents($url);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$r = curl_exec($ch);
curl_close($ch);

この二つがあった場合、何故か一部のサイトだと
後者のcurl_exec()では空文字が返ってきます。
接続自体は成功しているみたいなんですが空文字です。
file_get_contents()の方は普通に文字列が返ってきます。
curl_setopt()のパラメーラに何か不備がありますか?
まったく問題無く文字が入っているサイトもあるのですが…
09159142014/01/09(木) 00:27:58.27ID:???
恐らくアクセス先が転送されている
場合の問題だと思いました。
お騒がせしました。
0916nobodyさん2014/01/09(木) 03:28:50.53ID:nfYPkA56
ヴァーチャルドメインでドメイン毎に別々の php.ini を使い分けることはできますか?
どうやったらいいでしょうか?
0917nobodyさん2014/01/09(木) 03:44:23.87ID:???
お宅の構成によるよ、ぐぐった方が早い
一応こういうのもあるけどhttp://www.php.net/manual/ja/ini.sections.php
0918nobodyさん2014/01/09(木) 03:55:44.61ID:nfYPkA56
>>917
早速のご回答ありがとうごさいます。
おーこれでいけるなって思ったら、よく読んだらCGIモード専用なんですね(泣)
0919nobodyさん2014/01/09(木) 04:25:18.29ID:???
初期設定ってbashじゃだめ?phpのような大げさなものを持ち出すほど複雑な初期設定なの?

>>910
不安ならlint使えば?
0920nobodyさん2014/01/09(木) 05:08:26.25ID:???
インストーラーがやることに初期設定が含まれてだな
0921nobodyさん2014/01/09(木) 05:56:11.90ID:GwAoR65D
改めてお願いします。

ttp://techblog.yahoo.co.jp/architecture/api1_curl_multi/
ここのサンプルのgetMultiContents()といのを
以下みたいにして実行したらいくつか空文字が返ってくるんですが
これは同時接続の制限か何かでそうなってしまいますか?

$us = array();
for($i = 0; $i < 100; ++$i){
array_push($us, 'http://www.google.co.jp/search?q=' . $i);
}
getMultiContents($us);
0922nobodyさん2014/01/09(木) 06:35:18.57ID:???
なんか糞スレあげまくってる阿呆いるなと思って他のスレ見てたら
どこも古参スレばかりだな
2ch離れ加速しすぎワロタ
もはやこの板ってこのスレのためだけにあるようなもんだな
0923nobodyさん2014/01/09(木) 08:28:18.09ID:???
>>910
バッチにjavaって一番ありえないだろ
文法エラーなんて先にチェックしろよ

>>913
インストーラーなら
その鯖で使う予定の言語なら何でも良いよな
インストーラーがその言語も入れるなら考える必要あるけどさ
0924nobodyさん2014/01/09(木) 13:05:52.81ID:???
>>916
バーチャルドメインってapacheのVirtualHostのことか?
http://jp1.php.net/manual/ja/configuration.file.php
じゃだめなの
0925nobodyさん2014/01/09(木) 14:28:02.36ID:???
>>924
自分の環境も書かないで 「よく読んだらCGIモード専用なんですね(泣)」 とか書いてるバカだから
触らない方がいいよ。
0926nobodyさん2014/01/10(金) 05:03:36.30ID:???
今頃になって CVE 2012-1823 の攻撃がモリモリ来てるわ
うちだけかな?
0927nobodyさん2014/01/11(土) 00:30:15.92ID:jaRfR0WQ
stream_socket_enable_crypto() が成功しません
実際のコードはこのようにしています


$modes = array(
STREAM_CRYPTO_METHOD_TLS_CLIENT,
STREAM_CRYPTO_METHOD_SSLv3_CLIENT,
STREAM_CRYPTO_METHOD_SSLv23_CLIENT,
STREAM_CRYPTO_METHOD_SSLv2_CLIENT
);

stream_set_blocking ($fp, true);
$len = count($modes);
for ($i=0; $i<$len; $i++)
{
// すべてエラーになる
if (stream_socket_enable_crypto($fp, true, $modes[$i]) === true)
{
$success = true;
break;
}
}
stream_set_blocking ($fp, false);


どなたか解決方法がわかる方お願いしますorz
09289272014/01/11(土) 00:31:13.10ID:jaRfR0WQ
補足です
phpinfo()ではOpenSSLは以下のようになっています
openssl
OpenSSL support enabled
OpenSSL Library Version OpenSSL 1.0.0-fips 29 Mar 2010
OpenSSL Header Version OpenSSL 1.0.0-fips 29 Mar 2010

よろしくお願いします
09299272014/01/11(土) 01:32:53.49ID:jaRfR0WQ
上から順に、

STREAM_CRYPTO_METHOD_SSLv3_CLIENT
 error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number

その他
 stream_socket_enable_crypto(): SSL/TLS already set-up for this strea


のエラーメッセージが出ています。
誰か助けてくださいorz
0930nobodyさん2014/01/11(土) 07:40:01.42ID:???
いや、そのメッセージ通りじゃないの
0931nobodyさん2014/01/11(土) 16:07:30.22ID:z+c05/rZ
アフィリエイト報酬横取り!まとめサイトを狙うスマートフォンアプリ
http://matome.naver.jp/odai/2138898952264714501
09329272014/01/11(土) 19:04:53.96ID:jaRfR0WQ
どなたか助けてください
0933nobodyさん2014/01/11(土) 19:47:04.45ID:???
>>932
>>929が上から順じゃないんだけど
STREAM_CRYPTO_METHOD_TLS_CLIENTはどこいった?
09349272014/01/11(土) 19:49:35.40ID:jaRfR0WQ
>>933
失礼しました。上から順は誤りです。

STREAM_CRYPTO_METHOD_SSLv3_CLIENT のみ error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number と出て、
残りの
STREAM_CRYPTO_METHOD_TLS_CLIENT
STREAM_CRYPTO_METHOD_SSLv23_CLIENT
STREAM_CRYPTO_METHOD_SSLv2_CLIENT
が
stream_socket_enable_crypto(): SSL/TLS already set-up for this stream
と出ています。
0935nobodyさん2014/01/11(土) 19:53:43.90ID:???
>>934
stream_socket_enable_crypto(): SSL/TLS already set-up for this stream
このエラー通りでしょ

最初が本当にSTREAM_CRYPTO_METHOD_TLS_CLIENTなの?
そうだとすると$fpを作ったところから書かないと意味ないよ

第一さ、ソースのほうもさ
ループで一個づつ設定する意味が理解できん
09369272014/01/11(土) 19:57:07.38ID:jaRfR0WQ
>>935
エラーの解決法はどうすればいいんですか?

ループで設定しているのはZendを参考にいていますけど・・・。
// If all is good, switch socket to secure mode. We have to fall back
// through the different modes
$modes = array(
STREAM_CRYPTO_METHOD_TLS_CLIENT,
STREAM_CRYPTO_METHOD_SSLv3_CLIENT,
STREAM_CRYPTO_METHOD_SSLv23_CLIENT,
STREAM_CRYPTO_METHOD_SSLv2_CLIENT
);

$success = false;
foreach($modes as $mode) {
$success = stream_socket_enable_crypto($this->socket, true, $mode);
if ($success) break;
}

if (! $success) {
require_once 'Zend/Http/Client/Adapter/Exception.php';
throw new Zend_Http_Client_Adapter_Exception("Unable to connect to" .
" HTTPS server through proxy: could not negotiate secure connection.");
}
09379272014/01/11(土) 19:57:52.80ID:jaRfR0WQ
他にどなたかわかる方、お願いします。
0938nobodyさん2014/01/11(土) 20:14:54.28ID:???
>>937
このプログラムより前に
ストリームにSSL/TLSを設定してしまってるってエラーに書いてあるでしょうに
0939nobodyさん2014/01/11(土) 20:17:42.22ID:???
ZendのソースはZend/Http/Client/Adapter/Proxy.phpのことかい?

このソースだと$this->negotiatedをつかって
二度stream_socket_enable_cryptoで設定するのを防いでるよ
0940nobodyさん2014/01/12(日) 01:18:23.34ID:q2C1gqcI
【OS名】Windows
【質問内容】初歩的なことです
phpを使った練習を始めたいんですけど、
<php?
echo "Hello world!";
って書いて拡張子を.phpにして、
ブラウザ画面でHello world!って見たいんですけど、
php.netからどこで何をダウンロードすれば良いかわかりません。
0941nobodyさん2014/01/12(日) 02:26:49.15ID:???
<php?じゃなくて<?phpな

必要なものはphpのwindows用バイナリファイル
http://windows.php.net/download/
ここから自分の環境にあったzipをダウンロード
0942nobodyさん2014/01/12(日) 08:12:14.48ID:z78hdL9x
vmに犬糞でも入れるのがベスト
09439402014/01/12(日) 12:23:32.90ID:q2C1gqcI
>>941
<?php あ、はい。

最新版の5.5で、VC11
64bitなので、x64
マルチ対応スレッドで、Thread Safe
をとりあえず選択しとけば困らないと思ってるのですが、
zipとは別に、debug.puckをダウンロードすべきですか?
debug.puckって何するんですかね?
09449402014/01/12(日) 12:46:35.96ID:q2C1gqcI
ダウンロードしたのを適当に展開して、
php.exeとかの.exeファイルを実行すると
MSVCR110.dllがないから再インストールしろとか言われる
09459402014/01/12(日) 13:20:02.29ID:q2C1gqcI
>>944の問題はググって解決したし、>>943はとりあえずdebug.puckも展開までした。
で、結局、>>940をどうすれば良いのかわからないです。教え下さい。
0946nobodyさん2014/01/12(日) 16:02:17.91ID:???
ウェンドウズなんかそういうのを一括でセットアップしてくれるインストーラなかったっけ?
0947nobodyさん2014/01/12(日) 17:40:22.00ID:???
Xampp入れて、htdocフォルダにファイルを置けば簡単なのに。
0948nobodyさん2014/01/12(日) 18:44:32.11ID:???
予想通りというか単にphpバイナリの場所がわからないってだけじゃなかったんだな
apacheとかwebサーバが必要
どうせ設定出来なくて挫折するだろうからxamppでも入れときゃいいよ
0949nobodyさん2014/01/12(日) 18:53:17.10ID:???
>>940
http://www.apachefriends.org/jp/xampp.html
09509402014/01/13(月) 01:33:05.70ID:mgMypIex
とりあえず、xampp入れました。
色々教えて下さった方々、ありがとうございます。
0951nobodyさん2014/01/13(月) 15:03:01.17ID:qnOxD/aG
[mysql5 apache cakephp2]
バッチ処理中にテーブルロックをかけており、
バッチ処理中はクライアントからのselectをエラーとして返したいです。

こちらで試したものは、
innodb_lock_wait_timeoutを設定し、selectをタイムアウトさせる
というものでしたが
タイムアウトしませんでした。
(詳細)
バッチ処理側でlock writeをしているので、
クライアント側からselectするとタイムアウトすると思われたのですが、
タイムアウトすることなく、ずっとクエリ結果を待っている。
さらに、クライアント側が結果を待っている間に、
バッチ処理側でunlockをすると、
クライアント側にphp実行時間オーバーというエラーが表示されます。

どのようにすればタイムアウト(もしくはテーブルロックを検知)できるのでしょうか?
0952nobodyさん2014/01/13(月) 15:31:49.20ID:???
クライアント側でinnodb_lock_wait_timeout
0953nobodyさん2014/01/13(月) 16:21:40.90ID:???
> innodb_lock_wait_timeout applies to InnoDB row locks only. A MySQL table lock does not happen inside InnoDB and this timeout does not apply to waits for table locks.

バッチ処理入ったら自分でDB内にフラグ立てるのがいいんじゃない?
SHOW ENGINE INNODB STATUSを元にビュー作ってもいいかしらんがめんどくさそう
0954nobodyさん2014/01/13(月) 17:20:19.26ID:???
>>953
毎回ロック状況を確認してからSelectはナシでしょ
タイムアウトするほど長いロックならサービス止めればいいんじゃ
つかTable lockがInnodbと関係ないなら普通にロックタイムアウトしないのかね?
0955nobodyさん2014/01/13(月) 17:31:29.78ID:M4MkuiNS
PHPをそれなりに勉強し初めて1年
なにか作ろうと2か月ぐらい大垣氏の「Webアプリセキュリティ対策入門」やWebの連載読みこんだ
でもサーバの負荷とか全くわからないから、ストレッチングとかどのくらいやっていいのかとかもわからない
俺がWebアプリを勉強し始めたのは間違いかもしれない
公開することを前提としたら一番難しいアプリケーションの形態ではないのか……?
結構時間も金も本につぎ込んでしまったしどうにか物にしたいんだが、何かアドバイスないでしょうか先輩方
0956nobodyさん2014/01/13(月) 17:32:07.84ID:???
>>954
バッチプロセスのロックはタイムアウトで開放されると思うけど、待たされる方(SELECT)が任意にタイムアウトできるかは分かりません
ごめんね!
0957nobodyさん2014/01/13(月) 17:53:35.74ID:???
>>955
質問をどうぞ
0958nobodyさん2014/01/13(月) 19:23:17.22ID:pkO99UiH
質問
演算子で+=ってのは俺もよく使うんだが
Arrayでこれをやるとどういう意味になるの?

$options += array('cache' => true);

$optionsが空だったら$options['cache']がtrueになるだろうけど
cacheが既に指定されていたら上書きされるの?
と思って試してみたらされなかった。空っぽの時のみ追加という意味なのか?
0959nobodyさん2014/01/13(月) 19:47:12.30ID:???
$optionsに追加という意味

$options['hoge'] = true;
$options += array('cache' => true); //$options['cache'] = true;
print_r($options);
0960nobodyさん2014/01/13(月) 19:54:20.80ID:pkO99UiH
>>959
それは実際に確かめてわかったんだけど

$options['cache'] = false;
$options += array('cache' => true);

とした場合、$options['cache']はfalseから変わらないことを確認したので
2行目は$options['cache'] = true; とイコールではない。
じゃあ何なんだろう?というのが質問の意図。
0961nobodyさん2014/01/13(月) 19:58:57.94ID:pkO99UiH
配列の演算でぐぐったら、答はこれか
http://php.net/manual/ja/language.operators.array.php

+ 演算子は、右側の配列を左側の配列に追加したものを返します。 両方の配列に存在するキーについては左側の配列の要素が優先され、 右側の配列にあった同じキーの要素は無視されます。

つまり
$options += array('cache' => true); は
$options = $options + array('cache' => true); と全く同じだとすると
同じキーがある場合、元からある値が優先されるってことか

配列の結合はいつもarray_mergeを使ってたから、知らなかったわ
0962nobodyさん2014/01/13(月) 20:01:21.74ID:???
ただのバグだろ
PHPにはよくある話だ
つうかそんな気持ち悪い書き方すんな
0963nobodyさん2014/01/13(月) 22:01:45.49ID:???
>>961
値じゃなくインデクスを集合とみた演算になってるわけか
そこのユーザノートにも書いてあるけど誰得仕様だな

$lhs = [1, 2, 3];
$rhs = [4, 5, 6];

print_r($lhs + $rhs); # => 1, 2, 3

unset($lhs[1]);

print_r($lhs + $rhs); # => 1, 3, 5
0964nobodyさん2014/01/13(月) 22:22:20.41ID:???
>>955
サーバ負荷なんてユーザーが殺到してから考えればいい
大企業でも人を集めるのは相当難しいからね
0965nobodyさん2014/01/14(火) 06:00:48.15ID:ayHjqoXt
質問です。

ログインが必要なページのログイン後のページソースの一部を取得したいのですが
file_get_contentを利用してソースまるごと取ってから正規表現で分解するしかありませんか?

<span class="number">5</span>

一々全部取得せずに上記タグの5だけを取得したいのですが可能でしょうか?
0966nobodyさん2014/01/14(火) 06:06:52.73ID:???
>>965
どこのサイト?
0967nobodyさん2014/01/14(火) 06:13:57.33ID:ayHjqoXt
>>966
レスありがとうございます。
申し訳ないのですがどこのサイトかは答えられないです。

広告の管理画面で、一つの広告の成果を見るたびに毎回ログインが必要なサイトで
自分用として一括して見れるようにしようと思っています。
0968nobodyさん2014/01/14(火) 07:08:09.90ID:???
相手の構成次第だけど多分無理かなー
0969nobodyさん2014/01/14(火) 07:11:21.44ID:ayHjqoXt
>>968
ですよね・・・
ありがとうございました。
0970nobodyさん2014/01/14(火) 07:35:35.69ID:Sq6mFv9G
在日の親は、子供を朝鮮幼稚園・朝鮮学校に入れたいっていうのが多いのよ。
日本人からすると、なんでだろうって思うけど、日本人の学校では、民族の誇りを持った教育がしてもらえないんだそうだ。
よく分からないけど、流刑者の白丁が密入国して住み着いたじゃ誇りが持てないけど、日本人に強制連行された被害者なら誇りが持てる、とかそういう事かな??

市原市の能満は昔から市街化調整区域で、新規の建物は造れないことになっている。
そのため土地が安く、日本の法律を無視した在日が、次々と移り住んできた。
そこで問題になったのが、朝鮮学校だ。なかなか許可が下りず、一番近くても千葉市にしかない。
そこで在日居住区の能満内にあった、能満幼稚園・市原小・市原中・緑高の保育士や教師を、朝鮮化する事を考えた。
今では通称在日幼稚園の保育士は全て朝鮮帰化人で、在日の父兄からの絶大な支持を受けている。
遠くからでも、わざわざ通称在日幼稚園に入園させたいという在日の親は、後を絶たない。
この在日幼稚園卒園者はほぼ朝鮮系の帰化人と在日だ。
0971nobodyさん2014/01/14(火) 14:40:43.06ID:???
>>967
file_get_contentsでIDとパスワードをPOSTすればいけるんでは?
HTMLのパースはまた別の話
0972nobodyさん2014/01/14(火) 15:25:02.75ID:???
>>965
場所が常に明白(または、今回のような個人用途)で、かつ、rangeリクエスト可能ならそうしてみるとか。
全部取得するほうが大抵楽だと思うけど。
09739652014/01/15(水) 19:29:11.05ID:INbU8D8p
>>971,972
遅くなりましたがレスありがとうございます。
現在は既にfile_get_contentsを使用して一括確認出来るよう
自分用の管理画面を作っております。

rangeリクエストを調べてみたのですが少し実装がややこしそうなので
相手方の管理者に問い合わせ、filegetcontentsを利用した一括確認を
利用していいか問い合わせてみます。

ありがとうございました。
0974nobodyさん2014/01/16(木) 03:53:02.76ID:???
API提供してくれりゃいいのにね。
0975nobodyさん2014/01/17(金) 02:07:27.54ID:???
APIの方が 鯖の負荷大きかったりしてな
0976nobodyさん2014/01/18(土) 22:44:23.71ID:JLR/e4Bf
符号なし整数って使えますか?
long integer が使えればそれでもいいです。
0977nobodyさん2014/01/18(土) 23:12:42.80ID:???
30分毎に○○(RSSなど)を更新する
みたいな処理はどういう設計にしたらいいですか?
マルチスレッドでがんばるんでしょうか?
0978nobodyさん2014/01/18(土) 23:42:38.40ID:???
cron使え
0979nobodyさん2014/01/19(日) 00:51:50.34ID:+Tp+kBdt
現在のセッションから他の全セッションの変数の値を取得したいのですがどのようにしたらいいですか?
0980nobodyさん2014/01/19(日) 01:36:53.31ID:qd8Uvbtv
>>979
現在のセッションってどういう意味?
一度セッションをクローズしてから、クローズした元のセッションのデータを取得したいってこと?
0981nobodyさん2014/01/19(日) 01:39:30.66ID:+Tp+kBdt
>>980
他のセッションIDのことです
0982nobodyさん2014/01/19(日) 02:02:39.33ID:???
>>981
全部?
0983sage2014/01/19(日) 02:13:15.45ID:qd8Uvbtv
>>981
いまいち言ってることが良くわからんなぁあ
0984nobodyさん2014/01/19(日) 02:35:03.38ID:+Tp+kBdt
3人のセッションが開始されているとしてPHPSESSIDがA、B、Cとすると
AがアクセスするとB、Cのもつ変数が表示されるようにしたいのです
0985nobodyさん2014/01/19(日) 07:01:00.90ID:???
DBとかキャッシュ使え
0986nobodyさん2014/01/19(日) 13:02:42.48ID:???
何をしたいのか分からんね
セッションが動くたびにトランザクション走る設計なんて嫌でしょ
共有データは正規化してCascadeで消えるようにしたら楽な気がする
0987nobodyさん2014/01/19(日) 13:16:05.06ID:???
セッションIDを固定にすれば?
0988nobodyさん2014/01/19(日) 13:24:47.61ID:???
そもそもそんなことして何がしたいのかよく分からん
具体的にやりたいことのイメージを書いてみ?
もっとマシな解決方法あるから
0989nobodyさん2014/01/19(日) 14:01:42.50ID:???
まあたぶん>>985の言うようにキャッシュ使うのがいいだろうな
0990nobodyさん2014/01/19(日) 14:22:59.94ID:???
3人でA〜Cってことは全部っぽいな
想定人数が異常に少ないから同時間っぽいな
B、Cと特定的に書かれてるが、たぶんB、CのIDは不明なんだろうな
0991nobodyさん2014/01/19(日) 14:26:14.90ID:???
>>979の言ってることはわからなくもない。

たとえば、チャットアプリで、チャット中のユーザーAとユーザーBがいた場合、
ユーザーAのセッションを読み込む際に、ユーザーBのセッションも一緒に
読み込めたら便利なのにと考えたことがある。

だけど、無理なんだよね。相手のセッションやクッキー情報を読み込むのは不可能だし。
結論は、取得できない。
0992nobodyさん2014/01/19(日) 14:32:18.67ID:???
というかチャットみたいにユーザモデルが存在するサービスならどうにでもなる
FW使ってるならモデルにSession統合するだけで済むし
管理パネルで整合性が必要だとか、ブラウザゲーで遷移管理を共有したいとかってケースが面倒
0993nobodyさん2014/01/19(日) 14:34:31.89ID:???
おまえら想像でモノ言ってもしょうがねぇだろ
0994nobodyさん2014/01/19(日) 15:17:03.28ID:???
そういうのをセッションを使って、セッションの値自体を使わないで実装するのが普通
0995nobodyさん2014/01/19(日) 15:17:30.61ID:???
>>2
MLのホストは結構前に変わった http://ml.php.gr.jp/mailman/listinfo/
Smartyはそろそろよくね?
0996nobodyさん2014/01/19(日) 20:55:33.57ID:???
別に行数足りないわけでもないし消す必要もないだろ
0997nobodyさん2014/01/20(月) 03:56:37.85ID:elKBZme8
関数がバイナリセーフかそうでないかなんてどうやって判別するの?
リファレンスに「この関数はバイナリセーフです」とか書いてないよね
0998nobodyさん2014/01/20(月) 04:47:15.96ID:???
290 :デフォルトの名無しさん:2014/01/20(月) 03:26:19.69
PHPで長々とひどいソースコード書いて
おそらく多大な時間をかけたんだろう、Rubyとかなら5分もいかないようなものを「○○作れたー^^」とかいって
ブログ書いてる奴が多い
PHP自体でマシなアルゴリズムや記法を提供してやればマシになるのかなと思って
ちょっとPHPの言語仕様見直したけど、それも不可能だと悟った
彼らはなんなのアレ。マジアレ何。それで良いのかと問いかけたい。
ほんの一週間でいいからRubyやらPythonでまともな書き方を覚えたら
考えも変わってくれるとは思うんだけど

前提を疑えよな
その$とか->とか意味のない記号で埋め尽くされてるソースを見て
何かを感じれば他の言語を試すだろ普通は
プログラミングのような「誰がやっても同じようなもの」に対して
時間をかけて丁寧に一字一句かいていくとか、固執とかはいらないんだよ、

もっとササッとかいて、見やすい、速い、動く、  これだけで良い
こだわりを持って時間かけて何かやりたいならそれは間違いなくプログラミングでやるような事じゃないから
効率の悪いソースコードはリファクタリングでソースファイルごと削除される
PHPで書いてるソース全部がそれだからね
0999nobodyさん2014/01/20(月) 06:15:52.59ID:???
だから言ったろ?PHPはゆとり向けじゃないんですよ上級者向けなんです
1000nobodyさん2014/01/20(月) 06:25:32.94ID:???
次
http://kohada.2ch.net/test/read.cgi/php/1390166591/
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。