【PHP】下らねぇ質問はID出して書き込みやがれ 101
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2010/11/15(月) 13:00:07ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 100
http://hibari.2ch.net/test/read.cgi/php/1288168893/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0002nobodyさん
2010/11/15(月) 13:00:47ID:???【PHP】下らねぇ質問はID出して書き込みやがれ 99
http://hibari.2ch.net/test/read.cgi/php/1286938893/
【PHP】下らねぇ質問はID出して書き込みやがれ 98
http://hibari.2ch.net/test/read.cgi/php/1284805237/
【PHP】下らねぇ質問はID出して書き込みやがれ 97
http://hibari.2ch.net/test/read.cgi/php/1279833891/
【PHP】下らねぇ質問はID出して書き込みやがれ 96
http://pc11.2ch.net/test/read.cgi/php/1275032024/
【PHP】下らねぇ質問はID出して書き込みやがれ 95
http://pc11.2ch.net/test/read.cgi/php/1271636105/
【PHP】下らねぇ質問はID出して書き込みやがれ 94
http://pc11.2ch.net/test/read.cgi/php/1268835461/
【PHP】下らねぇ質問はID出して書き込みやがれ 93
http://pc11.2ch.net/test/read.cgi/php/1266229386/
【PHP】下らねぇ質問はID出して書き込みやがれ 92
http://pc11.2ch.net/test/read.cgi/php/1263035502/
【PHP】下らねぇ質問はID出して書き込みやがれ 91
http://pc11.2ch.net/test/read.cgi/php/1260247989/
【PHP】下らねぇ質問はID出して書き込みやがれ 90
http://pc11.2ch.net/test/read.cgi/php/1258187482/
【PHP】下らねぇ質問はID出して書き込みやがれ 89
http://pc11.2ch.net/test/read.cgi/php/1255263534/
0003nobodyさん
2010/11/15(月) 13:01:29ID:???■本家マニュアル http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル http://pear.php.net/manual/ja/
■メーリングリスト http://ns1.php.gr.jp/mailman/listinfo/
■ZFマニュアル http://framework.zend.com/manual/ja/
■Smartyマニュアル http://www.smarty.net/manual/ja/
(以下英語)
■Zend本家 http://www.zend.com/
■Zend Framework http://framework.zend.com/
■php | architect http://www.phparch.com/
■Smarty http://www.smarty.net
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0004nobodyさん
2010/11/15(月) 13:02:09ID:???1.文字コードは何を使えばいいの?
→1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
→ http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
→ Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
→ 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
→ {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
→ cronかタスクスケジューラを使え。
7.extractって危険なの?
→変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
→ URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
→ .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
0005nobodyさん
2010/11/15(月) 13:02:50ID:???→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
11. SQLの質問はどこで?
→ データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
→ ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
→ 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
→ よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
15. クッキーの情報をユーザから隠したい
→ セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
→ strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
→ まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
→ C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(http://〜とか)を扱う際の限界
→ fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
→19.を参照
21. 画像処理一般 or GDの限界
→ ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
→ 好きにしてください
0006nobodyさん
2010/11/15(月) 15:15:02ID:???よっぽど「ID出して」に拘っているらしいのw
0007nobodyさん
2010/11/15(月) 15:24:08ID:???わざわざ立ててやったのにこっちにくるな
0008nobodyさん
2010/11/15(月) 16:14:47ID:???0009nobodyさん
2010/11/15(月) 16:47:23ID:???0010nobodyさん
2010/11/15(月) 17:05:57ID:???0011nobodyさん
2010/11/15(月) 17:37:00ID:3z5XhT6cttp://www.res-system.com/weblog/item/619
でOK?
読み書きの時とかロックとかした方がいいの?
0012nobodyさん
2010/11/15(月) 17:40:20ID:???0013nobodyさん
2010/11/15(月) 17:41:04ID:???1:Nじゃなくて1:1の関係だからってことね
0014nobodyさん
2010/11/15(月) 17:48:33ID:???で、$_SESSIONに色々いれてってsession_write_closeのタイミングでwriteされる
普通なら全部の処理が終わった後かな
それまでDBに値は保存されない
まぁ非効率な書き方だけどそこに書いてあるのは使えると思う
0016nobodyさん
2010/11/16(火) 11:26:05ID:+AQcrCT7$array = array(0 => 'green', 1 => "", 2 => null, 3 => 'red');
上記の時、 $newArray = karaSakujyo($array);
みたいに一発で出来る関数がありそうなものなのですが見つからず。。
このブログに書いてあるやり方しかないのかな。。
http://ameblo.jp/hitomix-blg/entry-10359303759.html
0017nobodyさん
2010/11/16(火) 11:31:38ID:???http://www.php.net/manual/ja/function.array-filter.php
これの例2
そもそも空って何?って感じだけどな
0018nobodyさん
2010/11/16(火) 11:40:27ID:+AQcrCT7ありがとうございます!! 簡単にできました!!
0019nobodyさん
2010/11/16(火) 11:52:34ID:+AQcrCT7PHPのswitch文はあまり使わないほうがよいのでしょうか?
「PHP の switch 文は怖くて使えない」
http://www.revulo.com/blog/20081002.html
この記事を読んで以来、ifばっかり使ってきたのですが、
最近elseifを多様するコードを書く機会がありまして。
0020nobodyさん
2010/11/16(火) 12:07:54ID:???ケースバイケースであるのは言うまでもなく
本質がちゃんとわかってればそんな記事は書かない
緩やかな比較が問題にならないのであれば使えばいいじゃない
0021nobodyさん
2010/11/16(火) 12:25:13ID:???そもそもその例は引数がString型にかも関わらずint型をいれてるのがおかしい
JavaではIllegalArgumentExceptionが投げられるケース
ようするに最初に引数のチェックをすればいい
if (!is_string($value)) {
return '';
}
0022nobodyさん
2010/11/16(火) 12:43:39ID:???心配するな。
002319
2010/11/16(火) 13:47:36ID:ppACHWY2とても参考になりました。
0024nobodyさん
2010/11/16(火) 13:49:04ID:???「緩やかな比較」が原因でしょ?
原因理解していないとifでもswitchでも関係ないとおもふ
0025nobodyさん
2010/11/16(火) 14:00:56ID:???0026nobodyさん
2010/11/16(火) 14:09:26ID:???0027nobodyさん
2010/11/16(火) 14:17:04ID:???宣言外の型が入ってたらエラーなり例外出すに決まってるだろjk
0028nobodyさん
2010/11/16(火) 14:31:32ID:???0030nobodyさん
2010/11/16(火) 15:03:35ID:???0031nobodyさん
2010/11/16(火) 15:19:23ID:???それから見ればかわいいもんさ
0032nobodyさん
2010/11/16(火) 15:24:37ID:???静的型付けを経験してないと理解には苦しいのかもな
0033nobodyさん
2010/11/17(水) 00:16:46ID:???0034nobodyさん
2010/11/17(水) 01:34:13ID:???それから見ればかわいいもんさ
0035nobodyさん
2010/11/17(水) 02:50:55ID:???if ($hello);
echo("こんにちは"+"こんにちは");
endif;
>
0036nobodyさん
2010/11/17(水) 03:43:00ID:???0037nobodyさん
2010/11/17(水) 08:23:36ID:glr8FxGN$email (変数)
$this->email (インスタンス変数)
下のような例みたいに、引数で値を渡しても、インスタンス変数で
渡してもどちらでもできる場合が多いのです。
シンプルに引数で渡せる場合は常に引数で処理したほうがよいでしょうか?
引数が多くなって配列で渡さないといけなかったり、処理をまたがる
時のみインスタンス変数を使うのでしょうか?
function send_email () {
$this->email = '[email protected]';
$this->emailText ();
}
function emailText() {
$text = 'あなたのメアドは' . $this->email . 'です';
echo $text;
}
0038nobodyさん
2010/11/17(水) 08:29:03ID:???オブジェクト指向プログラミングって知ってるかね
0039nobodyさん
2010/11/17(水) 09:52:54ID:???引数で渡した場合の例とインスタンス変数で渡した場合の例を書いたら
分かる人がいるかも知れません。
0040nobodyさん
2010/11/17(水) 10:05:38ID:???より柔軟に対応したいならソースは膨らむけどどれにも対応できるように書けばいい
004137
2010/11/17(水) 13:07:43ID:IiWTl4Z8引数で処理したほうがシンプルな場合は、出来る限り引数で
処理していこうと思います。
処理をまたがる時などは今まで通りインスタンス変数で。
0042nobodyさん
2010/11/17(水) 13:09:21ID:???0043nobodyさん
2010/11/17(水) 13:44:02ID:???0044nobodyさん
2010/11/17(水) 13:53:16ID:???$this->emailText ($this->email);
ってやりかねない。
0045nobodyさん
2010/11/17(水) 13:59:29ID:???0046nobodyさん
2010/11/17(水) 16:48:19ID:WSlo4hEX5.3?6?
0047nobodyさん
2010/11/17(水) 17:28:08ID:???http://www.php.net/downloads.php
0048nobodyさん
2010/11/17(水) 17:28:22ID:???0049nobodyさん
2010/11/17(水) 17:29:38ID:WSlo4hEX0050nobodyさん
2010/11/17(水) 17:43:27ID:???0052nobodyさん
2010/11/17(水) 23:30:00ID:1zVuoSwhC++で作成したプログラムを起動し、結果を得る方法はありますか?
0053nobodyさん
2010/11/17(水) 23:31:59ID:???005452
2010/11/17(水) 23:37:35ID:1zVuoSwhどのようにして行うのでしょうか?
動作のイメージは、
(1) Webブラウザ上で、「実行」ボタンを押す。
このとき、ユーザが入力した情報をPHPに送る
(2) PHPは、ユーザの入力情報をC++の引数にしてC++プログラムを実行する
(3) PHPは、C++の実行結果を受け取り、加工し、ユーザに表示する
という流れです。
0055nobodyさん
2010/11/17(水) 23:39:17ID:???0056nobodyさん
2010/11/18(木) 00:38:25ID:???http://jp.php.net/manual/ja/ref.exec.php
このへんの関数使えって答えが欲しいんだろ
0057nobodyさん
2010/11/18(木) 00:46:31ID:???0058nobodyさん
2010/11/18(木) 00:49:01ID:???これで意味通じるしそう思ってるのは1人だけ
0059nobodyさん
2010/11/18(木) 00:49:45ID:???0060nobodyさん
2010/11/18(木) 00:54:52ID:???0062nobodyさん
2010/11/18(木) 01:00:58ID:???性格悪いに対して意地悪といったんだろ?
なんにしても中途半端で抽象的すぎる
黙ってたほうがいいわ
0063nobodyさん
2010/11/18(木) 01:03:54ID:???どのようにして行うのですか?こういうイメージです→それでおk
アフォすぎるwwwwwww
006459
2010/11/18(木) 01:06:30ID:???ちがうちがう。53、55、57に対して。
解決法を求めてるのに「ありますか?」に「ある」は見当違いで意地悪だ、と。
まあ黙るよ
0065nobodyさん
2010/11/18(木) 01:08:22ID:???0066nobodyさん
2010/11/18(木) 01:10:36ID:???0067nobodyさん
2010/11/18(木) 01:38:44ID:???これツマラン
0069nobodyさん
2010/11/18(木) 02:25:17ID:???ググればでてくると思う
0070nobodyさん
2010/11/18(木) 03:16:36ID:AjT8/33v0071nobodyさん
2010/11/18(木) 03:19:21ID:???0073nobodyさん
2010/11/18(木) 03:37:13ID:???>>54
$output = shell_exec("command " . escapeshellarg($input));
とか。``でも一緒。
標準エラーに何か出すようなものなら 2>&1 でリダイレクト。
>>70
こんなスレあった。
海外ネット決済 総合Part14 【PayPal その他】
http://hibari.2ch.net/test/read.cgi/yahoo/1283357863/
0075nobodyさん
2010/11/18(木) 12:27:09ID:Kr+Dzwb60, 1, 2 と整列されるにはどうすればよいでしょうか?
例1
array {
[0]=>array { ["area"]=>"東京"}
[3]=> array { ["area"]=>"埼玉" }
[4]=> array { ["area"]=> "千葉" }
}
例2
array {
[0]=>array { ["area"]=>"東京"}
[1]=> array { ["area"]=>"埼玉" }
[2]=> array { ["area"]=> "千葉" }
}
0076nobodyさん
2010/11/18(木) 12:45:48ID:???007775
2010/11/18(木) 12:53:52ID:Kr+Dzwb6うおーーーー!! うまくいきました!!! 神すぎる。。
この問題でさっきからずっといろいろ考えていまして、
arrayのマニュアル見てもなかなかそういう動きをするのが見つからなかったのです。
本当にありがとうございます!!
0079nobodyさん
2010/11/19(金) 01:47:42ID:???ファイルロックはできないんでしょうか?
0081nobodyさん
2010/11/19(金) 07:13:42ID:???$random1 = rand(1,$count);
$random2 = rand(1,$count);
$random3 = rand(1,$count);
while($randam2 == $random1){
$random2 = rand(1,$count);
}
while($randam3 == $random1 or $randam3 == $random2){
$random3 = rand(1,$count);
}
これで3つ全部が違う数字になると思ったんですが、同じ数字が出たりします
どこをどう直せばよいでしょうか?
0082nobodyさん
2010/11/19(金) 07:14:23ID:dkGBucVh$count = 13;
$random1 = rand(1,$count);
$random2 = rand(1,$count);
$random3 = rand(1,$count);
while($randam2 == $random1){
$random2 = rand(1,$count);
}
while($randam3 == $random1 or $randam3 == $random2){
$random3 = rand(1,$count);
}
これで3つ全部が違う数字になると思ったんですが、同じ数字が出たりします
どこをどう直せばよいでしょうか?
0083nobodyさん
2010/11/19(金) 07:35:25ID:???0084nobodyさん
2010/11/19(金) 07:37:15ID:???>randam
0085nobodyさん
2010/11/19(金) 07:52:29ID:dkGBucVhさっきのがなぜできないのかはわからないままですけど・・・
$count = 13;
while($count > 0){
$random[] = $count;
$count--;
}
shuffle($random);
print_r($random);
echo $random[0].' '.$random[1].' '.$random[2];
0086nobodyさん
2010/11/19(金) 09:41:21ID:???$random2 == $random1 だったらいけたのかもね。
1〜$countまでのランダムで、重複しない3つの数値 だったら
$rand = range(1,$count)
shuffle($rand);
$r1 = $rand[0];
$r1 = $rand[1];
$r2 = $rand[2];
0087nobodyさん
2010/11/19(金) 10:02:35ID:???0088nobodyさん
2010/11/19(金) 10:10:05ID:dkGBucVhスペルミスには気づかなかったですありがとうございました
rangeで入れれるんですね
前にそういう入れ方しようとして思った挙動しなかったからずっと封印してました
0091nobodyさん
2010/11/19(金) 10:51:20ID:dkGBucVhnatsort($foo);
krsort($foo);
だとnatsortの自然順が無効になってしまいまいした
0092nobodyさん
2010/11/19(金) 10:52:54ID:???0093nobodyさん
2010/11/19(金) 11:11:26ID:???期待はずれ。
0094nobodyさん
2010/11/19(金) 12:00:42ID:???0097nobodyさん
2010/11/19(金) 13:17:45ID:???0098nobodyさん
2010/11/19(金) 15:20:34ID:???IDは全表示仕様で何の問題もないはずだけど
困る奴がいるとしたら自分で振って自分で答えている奴だけだろ
0099nobodyさん
2010/11/19(金) 15:28:06ID:???とってもこの板の住人とは思えない発言だな
0101nobodyさん
2010/11/19(金) 15:56:56ID:???010279
2010/11/19(金) 18:27:10ID:Xg+w3hRV【OS名】centos
【PHPのバージョン】5.3.3
【質問内容】
<?xml version="1.0" encoding="UTF-8"?>
<data>
<name>test</name>
</data>
のxmlに追記して
<?xml version="1.0" encoding="UTF-8"?>
<data>
<name>test</name>
<document>
<date>2010/11/19 18:14:40</date>
<text>テキスト情報</text>
</document>
</data>
の様にdocumentを増やしていきたいです.
以下で追記できたんですがファイルをロックして同時書き込みおきないようにできますか?
$xml = simplexml_load_file($xmlpath);
$data = $xml->addChild("document");
$data->addChild("text","テキスト情報");
$xml->asXML($xmlpath);
0103nobodyさん
2010/11/19(金) 18:31:53ID:???マルチシネ
0104nobodyさん
2010/11/19(金) 19:44:03ID:???0105nobodyさん
2010/11/19(金) 19:48:21ID:YGq1Nnb/具体的にはproc_openを使ってcadaverを実行、fwriteでユーザ名、パスワード入力を行ったあと
さらにfwriteでmkcolコマンドを入力してフォルダを作成しようとしたのですが、
認証が終わった後のmkcolコマンドが実行されず、コネクションが切られてしまいます
以下が書いたコードです(長いので出力部などは削りました)
$despec = array(
0 => array("pipe","r"), //標準入力
1 => array("pipe","w"), //標準出力
2 => array("pipe","w") //エラー
);
/*$URLはwebdavのアドレス*/
$cmd = "cadaver ".$URL;
$cadaver = proc_open($cmd,$despec,$pipes);
fwrite($pipes[0],"ユーザ名"."\n");
fwrite($pipes[0],"パスワード"."\n");
fwrite($pipes[0],"mkcol test"."\n");
fclose($pipes[0]);
fclose($pipes[1]);
fclose($pipes[2]);
proc_close($cadaver);
また、悪あがきで各fwriteの前後にsleepを入れて処理を少し止めてみてもうまくいきませんでした…
原因のわかる方どうかご教授お願いします
0106nobodyさん
2010/11/19(金) 22:04:25ID:???認証までは確実に完了していますか。
stream_get_contentsで出力を取得して確認してから次のコマンドを送信していますか。
直接関係ないですが$URLはescapeshellargしたほうが安全ですね。
0107105
2010/11/19(金) 23:28:02ID:YGq1Nnb/レスありがとうございます。
認証までは標準出力の結果から成功していることが確認できたので、
stream_get_contentsをパスワード入力のコマンドの後に挟んであげたところ、
mkcolコマンドが実行され、webdavにフォルダを作成することができました。
一度出力をとってあげる必要があったのですね…。
全部入力が終わった後に出力を取ろうとしていたのが悪かったようです。
本当に助かりました。ありがとうございます!
0109nobodyさん
2010/11/20(土) 03:50:59ID:QJj9HgSp0110nobodyさん
2010/11/20(土) 06:56:15ID:ZtcK2EKTありがとうございます逆順にできました
>>100
多い場合の重複のないランダムの数字いくつか、ってどうするのがよいですか?
後学のためにご教授いただければ幸いです。お願いします。
0112nobodyさん
2010/11/20(土) 09:55:13ID:???> ん?>>86でだめなの?
なんでそれを>>110にきくの?
>>100が「$countが小さい時限定」って言ってるから「じゃあ大きいときはどーすんの」って聞いてんだろ
0115nobodyさん
2010/11/20(土) 10:02:16ID:???0117110
2010/11/20(土) 10:04:44ID:ZtcK2EKT>>113が答えだと思って受け止めておきます
ありがとうございます
0118nobodyさん
2010/11/20(土) 10:07:11ID:???0119nobodyさん
2010/11/20(土) 10:16:01ID:???可読性とか言ってるから代入文が3行あることを言ってるのかもね
$data = array(11,22,33,44,55,66,77,88,99);
$n = 3; // 取りたい数
// スライスで先頭3件する場合
shuffle($data);
$ret = array_slice($data, 0, $n);
// array_randを使う場合
$ret = array();
$keys = array_rand($data, $n);
foreach ($keys as $key) {
$ret[] = $data[ $key ];
}
shuffleでいいと思うけど、不必要な分までシャッフルしてるのが気になるなら後者で
ちなみにarray_randは第2引数が1だった時、違う動きするのでそれだけ注意
0120nobodyさん
2010/11/20(土) 10:22:23ID:???0121119
2010/11/20(土) 10:34:24ID:???>119の後ろから2行目の事言ってたのかw
0123nobodyさん
2010/11/20(土) 11:38:10ID:???> 不必要な分までシャッフルしてるのが気になるなら
array_randも内部的には同じようなことをしているような気がする。
0124nobodyさん
2010/11/20(土) 14:13:21ID:92vo/MT60126nobodyさん
2010/11/20(土) 17:23:28ID:???0127nobodyさん
2010/11/20(土) 22:47:15ID:U0bykvKx『メール送信』が出来ないので、教えてください。
参考書通り、入力(html)→確認画面(php)→送信(php)を行っているのですが
確認画面から送信ボタンを押しても、何分もかかった末にエラーになります。
送信を行うphpファイル(send_inqury.php)はhttp://219.94.194.39/up2/src/fu27630.jpg
エラーメッセージはhttp://219.94.194.39/up2/src/fu27631.jpg
結構な時間をかけてググッたりして、smtpサーバなどが問題であることはわかりました。
php.iniを修正する必要があるようで、http://ccfa.info/cgi-bin/up/src/ccfa39654.jpg
のように書き換えましたがダメでした。sendmail.iniも修正する必要があるというページも見つけたのですが
(http://okwave.jp/qa/q6063083.html など)
私のsendmail.iniはhttp://ccfa.info/cgi-bin/up/src/ccfa39655.jpgしかなく、どこを修正すればよいかわかりません。
なお、php.iniのport番号を25でなく465にしているのは、jcomの設定がそうなっているからです。
xamppのコントロールパネルの「Port-Check」のいう箇所をクリックしたときに表示されるのが
http://ccfa.info/cgi-bin/up/src/ccfa39656.jpg となっていて、
「Mercury(SMTP)」という箇所が25なのですが、これは無関係で465にしておいて良いのかもわかっていません。
どこをどう修正すればメール送信が出来るようになるでしょうか。ご助言おねがいします。
0128nobodyさん
2010/11/20(土) 23:21:36ID:???0129nobodyさん
2010/11/20(土) 23:41:48ID:???0130127
2010/11/20(土) 23:54:48ID:U0bykvKx申し訳ありません。起動してるかどうかだけでなく、質問の意味さえよくわかりません。
Outlook Expressから直接メールすることは出来ますが・・・そういうことではないですよね!?
0131nobodyさん
2010/11/21(日) 00:11:03ID:???0132nobodyさん
2010/11/21(日) 00:11:05ID:???0133nobodyさん
2010/11/21(日) 00:13:57ID:???あれはサーバパッケージであってLAMPを個別にインストールする必要がないってだけのシロモノ
個々にとってきたところで用語もしらないのに高望みすればどっちみち同じとこでハマル
0134nobodyさん
2010/11/21(日) 00:20:24ID:???ローカルで完結する処理を勉強しなよ
0135nobodyさん
2010/11/21(日) 00:30:07ID:???xamppにはsendmailみたいなものはないのかな?
Windowsのことはよくわからないけど、sendmaneとかいう代替ツールがあった記憶が…。
0136nobodyさん
2010/11/21(日) 00:39:13ID:???0137nobodyさん
2010/11/21(日) 00:51:27ID:???0138127
2010/11/21(日) 00:55:30ID:ywZ4z07q>>136の言うとおり、あります。>>127の下から6行目(空白を除く)が中身です。
http://ccfa.info/cgi-bin/up/src/ccfa39655.jpg(再掲)
>他の厳しいご意見をくださっている方々へ。
力不足過ぎることは自覚しております。
ローカルで完結する処理を勉強というのも最もだとは思います。
ただ、例えば画像アップロードの練習なりユーザー認証の練習なり、
様々な箇所で、つまずくことが増えるかと思うのです。
以前、軽く学ぼうとしたときもそこらへんでつまずきました。
本来は先に学ぶべきこともあるのかもしれませんが、
私の勝手な事情ですが、多少、急ぎ足で学ぶ必要もあったりで。
一応、質問スレなので、どなたかでもお答えくださっているうちは
図々しくも、居座らせていただきます。ご理解ください。
0139nobodyさん
2010/11/21(日) 00:59:23ID:???変わったやつだからほっとけばいいよ。 で、それだけ書いて説明しないのな、奴。
あんな初心者向けで説明側が楽なもんも無いのに。
0140nobodyさん
2010/11/21(日) 01:02:40ID:???経験者向けだよ
0142127
2010/11/21(日) 01:07:12ID:ywZ4z07q参考ページ
http://pgse.seesaa.net/index-2.html
http://oshiete.goo.ne.jp/qa/6063083.html (こちらは再掲)
ただ、私のsendmail.iniは127や138に貼ったとおりで、どう修正すれば良いかわかりません。
>>137のmarcuryという記述も、sendmail.iniにあるのですが、具体的にどうすればよいかわかりません。
0143nobodyさん
2010/11/21(日) 01:07:55ID:???0144nobodyさん
2010/11/21(日) 01:10:03ID:???おめーさんはxamppコントロールパネルをいじったことはないのか
0145nobodyさん
2010/11/21(日) 01:10:21ID:???わからんなら答えるなよ邪魔だから
0146nobodyさん
2010/11/21(日) 01:11:26ID:???0148nobodyさん
2010/11/21(日) 01:13:39ID:???0149nobodyさん
2010/11/21(日) 01:14:53ID:???0152nobodyさん
2010/11/21(日) 01:19:57ID:???こっちこなくていいから
0153nobodyさん
2010/11/21(日) 01:20:50ID:???【PHP】下らねぇ質問はID出して書き込みやがれ 101
http://hibari.2ch.net/test/read.cgi/php/1289793607/
0157127
2010/11/21(日) 01:29:10ID:ywZ4z07q過去に少し学んだときは、上二つ(ApacheとMySpl)のみ触っていたので
Mercuryの存在に気づきませんでした。
Mercuryを起動させ、フォーム画面(html)を開いて、テスト送信しようとしたら
確認画面にすら行かず、確認画面を作ったphpファイルを開くか保存するかの画面が出てきたのですが・・。
また、Mercuryというのを使う場合、127の下5行に書いたポート番号の違いは関係ないのでしょうか?
sendmail.iniの修正方法も引き続き、よろしくお願いします。
0158nobodyさん
2010/11/21(日) 01:31:18ID:???sendmailの設定のどこがPHPと関係してるの?
0159nobodyさん
2010/11/21(日) 01:38:41ID:???xamppの構成要素の一つとしてPHPがあるだけで
メールサーバの動かし方とか設定の仕方をPHPスレで聞くのは全くもってスレ違い
まずPHPを経由せずにメールを送れるようになってから質問することをお勧めする
0163nobodyさん
2010/11/21(日) 03:23:19ID:???xamp(というよりwindows自体)は設定とか訳が分からなくてやる気が失せた
windowsはサーバー用途に向いてないね。
0164nobodyさん
2010/11/21(日) 03:27:31ID:???0165nobodyさん
2010/11/21(日) 03:37:00ID:???0166nobodyさん
2010/11/21(日) 05:41:53ID:9VXuUNTgどこが信用できそうですかね。
何箇所かあるのですが、利用規約で当社の都合で止めることがあるって
所が多いもんで。
それと、JavaScriptでローカルからリクエストするのと
Ajaxでサーバからリクエストするのとどっちがいいんでしょう。
0167nobodyさん
2010/11/21(日) 07:02:59ID:???http://www.kawa.net/works/ajax/ajaxzip2/ajaxzip2.html
これならフリーで自前で完結する。データは自分で要更新。(宣伝じゃないよ)
> それと、JavaScriptでローカルからリクエストするのと
> Ajaxでサーバからリクエストするのとどっちがいいんでしょう。
あのぉ・・・ AjaxってJavascriptを利用した技術?なんですが・・・
Ajaxもクライアントがサーバーにリクエストする基本は同じ。
0168nobodyさん
2010/11/21(日) 07:09:19ID:???大抵のサービスは日本郵政でDLできるKEN_ALL.CSV使ってるだけだから自分で作ったら?
フォーマットちょっとクセがあるからしょぼいサービスだと060-0000とか604-0971とかで検索すると結果が変になる。
月1回、差し替えする作業をしたくないという意味だったら
日本郵政からzipをDLして設置するスクリプトを動かすとか。
後半は「外部API叩く時、Javascriptから直接か、ProxyにPHPを挟むか」ってことだね?
IPアドレス単位でリクエスト数制限掛かってる場合はできるだけ直接で実装、
APIの返却結果が信用ならないとか、クロスドメイン関係で何か問題出る時は
仕方ないのでProxy挟むか…という感じ。
ここまで書いたからもう投稿するけど、どこにPHPの要素がw
0170nobodyさん
2010/11/21(日) 09:25:00ID:???つまりしょぼくないって事さ!
0171nobodyさん
2010/11/21(日) 11:30:23ID:???0172nobodyさん
2010/11/21(日) 11:33:09ID:???Ruby 1995年
Perl 1987年
0173nobodyさん
2010/11/21(日) 11:34:43ID:???むしろ最近新しいスクリプト言語出てないんだな
0174nobodyさん
2010/11/21(日) 11:51:05ID:???Groovyとか2003年だよ
まぁJAVAって言っちゃえばあれだけどさ
0175nobodyさん
2010/11/21(日) 11:54:52ID:???0176nobodyさん
2010/11/21(日) 12:08:06ID:???PHPは3が出た98年くらいにはかなり一般層まで流行ってたじゃん
0177nobodyさん
2010/11/21(日) 12:57:10ID:x8KxVX64データベース絡みですが、SQL 構文自体ではなく php 側の設定の問題だと思うのでここでお願いします。
PDO を通して SQLite3 を使っています。
初期設定をし、以下の方法で SQLite3 のデータベースを表示できました。
$dbh = new PDO('sqlite:test.sqlite3');
$sql = 'SELECT * FROM test;';
$res = $dbh->query($sql);
$row = $res->fetch(PDO::FETCH_ASSOC);
...
ところが、以下の方法だとエラーが出てしまいます。
$dbh = new PDO('sqlite:test.sqlite3');
$sql = 'SELECT * FROM test;';
$sth = $dbh->prepare($sql);
$res = $sth->execute();
$row = $res->fetch(PDO::FETCH_ASSOC);
...
Fatal error: Call to a member function fetch() on a non-object in 〜.php on line 58
(つづく)
0178177
2010/11/21(日) 12:57:35ID:x8KxVX64このエラー自体は検索すると多くでてきたのですが、大概は SQL 構文が間違ってると言われます。
ただ、query が上手く通ってるので、SQL 構文に間違いはないと思います。
execute の結果を var_dump してみたところ、bool(true) と出ます。
確かにオブジェクトではないのでエラーが出るのは分かるのですが、
マニュアルによると execute は、SQLite3Result オブジェクトもしくは FALSE を返すとあるので、
true が返ってきている原因が分かりません…。
環境は以下の通りです。
Windows XP
Apache 2.2 (httpd-2.2.17-win32-x86-no_ssl.msi)
PHP 5.2.14 (php-5.2.14-win32-installer.msi)
PupSqlite (pupsqlite_ver_1991.zip)
長くなってしまいましたがよろしくお願いします。
0179nobodyさん
2010/11/21(日) 13:12:59ID:???http://www.php.net/manual/ja/pdostatement.execute.php
0180nobodyさん
2010/11/21(日) 13:14:33ID:???http://www.revulo.com/blog/20060522.html
0181177
2010/11/21(日) 13:26:08ID:???http://www.php.net/manual/ja/sqlite3stmt.execute.php
間違えて↑を見ていたようです。>>179 さんのリンクで全て解決しました。
>>180 さんと合わせて、本当にありがとうございました!
0182nobodyさん
2010/11/21(日) 13:56:31ID:???0183nobodyさん
2010/11/21(日) 14:08:20ID:???0184nobodyさん
2010/11/21(日) 16:03:58ID:???0185nobodyさん
2010/11/21(日) 16:08:53ID:???0186nobodyさん
2010/11/21(日) 16:12:48ID:???SQLiteの方が移植性高くて楽
PHP5以降だとPHPあれば動くしな
どこかに移すのもSQLiteのファイルをもってくだけ
これほど楽なものはない
0187nobodyさん
2010/11/21(日) 16:14:05ID:???0188nobodyさん
2010/11/21(日) 16:20:08ID:???権限周りの設定云々も必要になってくる
文字コードの設定もね
本や配布スクリプトの場合
そういった環境依存になる部分がSQLiteの方が少なくなる
だからSQLiteの方が多くなるのは必然と言える
0189nobodyさん
2010/11/21(日) 16:23:13ID:???どこがだよw
0190nobodyさん
2010/11/21(日) 16:26:13ID:???0191nobodyさん
2010/11/21(日) 16:28:01ID:???0192nobodyさん
2010/11/21(日) 16:30:44ID:???0194nobodyさん
2010/11/21(日) 16:34:35ID:???0195nobodyさん
2010/11/21(日) 16:35:29ID:xEOrsG3N0197nobodyさん
2010/11/21(日) 16:53:03ID:???答えられないんじゃねぇかw
ともかく別にMySQL好きなわけでもないけどそれでもSQLiteが多いはねーわ。
シェアも機能も、やっぱりオマケ程度のDBだよ。
0198nobodyさん
2010/11/21(日) 16:54:27ID:???0199nobodyさん
2010/11/21(日) 16:57:31ID:???このスレでは今後も不毛なレスが続く
0200nobodyさん
2010/11/21(日) 16:59:23ID:???そして前提として本や配布スクリプトとも書いてる
そこにMySQLとSQLiteの比較をするのは馬鹿としか言いようがない
シェアとしては利用できる規模等も考慮すれば
MySQLの方が多いのは当たり前
因みにchromeやfirefoxでもsqliteが使われてるわけだが
これらをシェアとして考えれば多いとも言えるな
利用ケースを考えろよ
0201nobodyさん
2010/11/21(日) 17:07:52ID:???0202nobodyさん
2010/11/21(日) 17:12:52ID:???こっちこなくていいから
0203nobodyさん
2010/11/21(日) 17:45:17ID:???>多くなると書いてるんだが・・・
だからその根拠は(ry
>そして前提として本や配布スクリプトとも書いてる
MySQLのインストールCDが付属している本もあるし
MySQLが必要なフリー配布スクリプトだってあるけど?
だから、それらの前提でSQLiteが多いって主張したいならそれでもいいけど、その根拠を示さないとまったくもって無価値な主張じゃないか。
>因みにchromeやfirefoxでもsqliteが使われてるわけだが
>これらをシェアとして考えれば多いとも言えるな
ほうほう、で、数字は?
0204nobodyさん
2010/11/21(日) 17:47:24ID:???0205nobodyさん
2010/11/21(日) 17:48:19ID:???0206nobodyさん
2010/11/21(日) 17:53:37ID:???ヲチスレとか作ってそこでやるのはどうだろうか。
この板に作るなら「PHPerに突っ込みを入れるスレ」とか多少範囲を広く取らざるを得ないだろうけど。
ネットwatchなら「PHP関連スレのヲチスレ」とか。
スレに関する苦情はこちらみたいな感じに>>6あたりに入れといてくれたら誘導もしやすい。
>>202の言う隔離ってのがこれの事ならURL出した上で誘導して欲しい。
0207nobodyさん
2010/11/21(日) 17:55:47ID:xL1nv8Noクライアントに結果を返した後に、処理を続行することってできますか?
本来は全ての処理が完了するまではクライアントに待ってもらう必要があると思います。
クライアントに関係の無い処理がある場合に、途中で結果を返したいのです。
アドバイスよろしくお願いいたします。
0208nobodyさん
2010/11/21(日) 18:08:36ID:???output_bufferingが有効になってると、出力が貯められ
実行完了時に一気に出力されます
ob_flashを実行すれば貯められたバッファを送信できます
マニュアルの出力制御のあたりを見て下さい
PHP: ob_flush - Manual
http://jp.php.net/manual/ja/function.ob-flush.php
0209nobodyさん
2010/11/21(日) 18:09:04ID:???醜いわ!
0211nobodyさん
2010/11/21(日) 18:22:24ID:???ignore_user_abort()してそのまま続ける方法もあるけど、
別プロセスをバックグラウンド実行させるのが楽だと思う
`/usr/local/bin/php backgroundprocess.php > /dev/null 2>&1 &`;
CGI版ならclose(STDOUT)でできるかもしれない。未確認。
0212207
2010/11/21(日) 18:54:02ID:xL1nv8Noありがとうございます。説明不足でした。
「途中」ではなくて、その段階でクライアントとの接続を終了したいのです。
--------------------
echo "welcome";
// この段階で、クライアントとの接続を終了したい
// => クライアント側では、この段階で表示が完了する
...あとはサーバ側の処理のみ...
--------------------
>>211
ありがとうございます。
connection_abortみたいな関数があれば助かるんですけどね。。
この手の処理は簡単には実現できないのでしょうか。
他に簡単な方法があれば教えていただきたいです。
0213nobodyさん
2010/11/21(日) 19:58:46ID:???どうもありがとう。
自分で作るのはメンテが面倒。
APIはサ−ビス終了すると困る。
というあたりが悩みどころでした。
サーバー側はPHPで書いているんで、このスレでもいいんじゃないかと。
それこそすれ違いだけど、日本郵政がサービスしてくれるのが
いちばんいいんですけどね。
こういうのこそSaaSで実現すべきですよ。
0214nobodyさん
2010/11/21(日) 20:24:17ID:???0215nobodyさん
2010/11/21(日) 20:53:05ID:???なんだそれ。
0217nobodyさん
2010/11/22(月) 02:35:44ID:???0218nobodyさん
2010/11/22(月) 08:19:44ID:???開き直るとは許しがたい。
0219nobodyさん
2010/11/22(月) 08:48:51ID:???暇なPHPerが他に書き込むスレも無くこのスレにたむろして
何か書けることは無いかとレスを捻り出した結果だな
0220nobodyさん
2010/11/22(月) 08:56:43ID:???0221nobodyさん
2010/11/22(月) 14:24:34ID:???ぴー ひゃら ぺーぺー
0222PHP忍者 ◆vx6KgJyjvE
2010/11/22(月) 17:32:07ID:???0223nobodyさん
2010/11/22(月) 18:22:17ID:???0224nobodyさん
2010/11/22(月) 18:59:46ID:???0225nobodyさん
2010/11/22(月) 19:03:28ID:???適当に言っただけなのにww
0226nobodyさん
2010/11/22(月) 20:34:36ID:???チャイナです
0227nobodyさん
2010/11/22(月) 21:30:53ID:???0228PHP忍者 ◆vx6KgJyjvE
2010/11/22(月) 22:52:33ID:???0229nobodyさん
2010/11/22(月) 23:56:33ID:???3回回ってワンと言え
0230PHP忍者 ◆vx6KgJyjvE
2010/11/23(火) 00:00:00ID:???|r'⌒X⌒X⌒ヽ ∩゙⌒゙、⊃
|ヽ__乂__乂__ノ (。Д。)⊃ ワン
0231nobodyさん
2010/11/23(火) 00:03:15ID:???質問お待ちしておりまーす
0232nobodyさん
2010/11/23(火) 00:13:06ID:???Call to a member function quoteSmart() on a non-object
と出て使えません。
0234nobodyさん
2010/11/23(火) 00:31:39ID:???0237nobodyさん
2010/11/23(火) 19:23:33ID:NoNXE+F/0238nobodyさん
2010/11/23(火) 19:30:48ID:???PHP: file_get_contents - Manual
http://php.net/manual/ja/function.file-get-contents.php
第5引数でバイト数指定できる
0239nobodyさん
2010/11/23(火) 20:47:22ID:ZNYYZV27print_r(glob('*表示*'));
とすると、0x5Cに引っかかるのか、ファイルが存在しても何も表示されません。
mb_internal_encoding などを変えてみたり、mb_convert_encoding もしてみましたが、解決できていません。
何とかならないでしょうか。よろしくお願いします。
0240nobodyさん
2010/11/23(火) 20:52:40ID:???0241nobodyさん
2010/11/23(火) 21:13:13ID:???0242nobodyさん
2010/11/23(火) 21:19:51ID:???0243nobodyさん
2010/11/23(火) 21:49:42ID:???0244nobodyさん
2010/11/23(火) 22:06:37ID:???それも駄目でした。
php4.4.9でも同じになるようです。
もちろん、'*示*' だと正常に結果を返してくれます。
0245nobodyさん
2010/11/24(水) 04:36:40ID:???mb_internal_encodingやmb_convert_encodingをどう変えてみたのか具体的に。
環境変数$LANGに合わせてエンコードを変えていますか。
0246239
2010/11/24(水) 07:53:39ID:???>>245 ありがとうございます。
環境変数$LANGとは何のことでしょうか?
試したコードは以下のようになります。
以下を一行にしたものをコマンドプロンプトから実行します。
php -r "mb_language('Japanese');
mb_internal_encoding('SJIS-win');
mb_regex_encoding('SJIS-win');
print_r(glob(mb_convert_encoding('*表示*','SJIS-win')));"
0247nobodyさん
2010/11/24(水) 09:19:11ID:???http://www.geocities.jp/rui_hirokawa/php/win/
0248nobodyさん
2010/11/24(水) 10:02:09ID:???0x5CはWindowsではディレクトリの区切りを表す文字コード
つまり'*表示*'とした場合、「表」の先頭コード0x95で終わるディレクトリ以下にある「示」で始まるものを探索してるということ
0249nobodyさん
2010/11/24(水) 10:38:27ID:???0250nobodyさん
2010/11/25(木) 01:51:53ID:???globがUTFを返せばいいんだろ?
環境が無いので試せないが、php.iniの設定で変更できんのか?
0251nobodyさん
2010/11/25(木) 05:58:30ID:???プログラムはUTFで書いて、データはSJISが普通。
読み上げと書き込みの時に変換する。
0252nobodyさん
2010/11/25(木) 06:04:08ID:???0253nobodyさん
2010/11/25(木) 07:31:23ID:???そうじゃなくてglobに渡す&返す文字列がSJISじゃなければ
>>248-249のようなことにならなくて済むと思うんだが
0254nobodyさん
2010/11/25(木) 09:26:23ID:???理由はwin32/glob.c、win32/readdir.cあたりを見れば分かる。
globみたいのは元々ネイティブAPI丸投げだし、Windows環境のエミュも結構てきとう。
回避策1: glob('*')とかreaddirで全部読んで、PHPスクリプト内でフィルタリングする。
回避策2: win32/readdir.cを改造してUTF-8とかに変換する。
win32/glob.cをstreamWrapper系に改造すればもっと汎用的になるのかな?
よく知らないけど。
0255nobodyさん
2010/11/25(木) 10:32:38ID:???Windowsってファイル名は内部ではUnicodeで管理してるんじゃなかったっけ。
0256nobodyさん
2010/11/25(木) 11:22:17ID:???NTFS上にもUTF-16で保存されてる。
Win32APIのAとWとUNICODEマクロの話は省略。
win32/readdir.cではFindFirstFileA/FindNextFileAでSJISに変換済みのchar*を読んでる。
0257nobodyさん
2010/11/26(金) 07:38:25ID:8z1vMVxd自動的にプログラミングで判別してカテゴリに分けたいです。
検索する文字列はクーポンのタイトルとクーポンの紹介文のみを使います。
※「飲食」のカテゴリに分けたい時
mb_strpos を使い、「カレー」、「焼肉」、「ピザ」 などの文字が紹介文に入ってて、
「エステ」、「マッサージ」、「脱毛」 などの文字列が入ってない。
上記のようなプログラムで判別しようと思っているのですが、
このやり方の問題点、もしくは最適な関数、もっとよいやり方などがあれば
教えてもらえないでしょうか?m(_ _)m
0259nobodyさん
2010/11/26(金) 08:22:08ID:???0260nobodyさん
2010/11/26(金) 08:42:25ID:6Tea9Sr/mb_strposで問題なさそうなのですね。ありがとうございます。
>>259
朝から吹き出してしまったw
飲食カテゴリ
・下記のどれか1つでも含む
「焼肉」 「カレー」 「食べ放題」 「レストラン」 (ここのワードは慎重に選ぶ)
・以下のワードをいずれも含まない
「エステ」、「マッサージ」、「脱毛」、、、、、、、(ここのワードは多くしてもよし)
こんな感じで考えております。
0262nobodyさん
2010/11/26(金) 13:57:25ID:hU0kBnUaコマンドプロンプトから「tasklist /v」をした時の結果を取得したくて
exec('tasklist /v',$ret);と書きました。
イメージ名とかPIDは正常に取得できるのですが
ウインドウタイトルの大半がN/Aになってしまい、取得出来ません。
コマンドプロンプトから「tasklist /v」をした時の結果と同じ値を取得するにはどうしたらよいのでしょうか
0263nobodyさん
2010/11/26(金) 17:34:24ID:???マニュアル嫁
とりあえず、execにはこう書いてあるな。
返り値
コマンド結果の最後の行を返します。コマンドを実行し、 一切干渉を受けずに直接コマンドから全てのデータを受けとる必要が あるならば、PassThru() 関数を使ってください。
実行されたコマンドの出力を取得するには、必ず output パラメータを設定・使用してください。
0264nobodyさん
2010/11/26(金) 17:54:59ID:???うちでは問題なし。そうでないのも取れる。
N/Aってなってるの、なんちゃらSERVICEじゃねーの?
0265nobodyさん
2010/11/26(金) 19:03:09ID:???このphpと同じPCの同じユーザーで同時に動いています。
exec、passthru、shell_exec、systemで
$cmd='tasklist /v /fi "imagename eq aviutl.exe"';
を実行させたのですが、全てウインドウタイトルが「N/A」となってしまいます。
コマンドプロンプトから
tasklist /v /fi "imagename eq aviutl.exe"
と実行するとウインドウタイトルも「出力中 50%」と取得出来るのですが。
0267nobodyさん
2010/11/26(金) 19:20:15ID:???>>262で十分理解できるだろ?>>263も明らかに見当違いの回答だし。
まぁうちには環境がないので何のアドバイスもできんが。
0268nobodyさん
2010/11/26(金) 19:25:08ID:???0269nobodyさん
2010/11/26(金) 19:44:57ID:???0270nobodyさん
2010/11/26(金) 20:40:39ID:???$cmd='tasklist /v';
exec($cmd,$ret1,$ret2);
print_r($ret1);
の結果が
http://sakuraweb.homeip.net/uploader/src/up139167.png
このようになり、aviutlだけでなく、メモ帳や専ブラ等々、全てのプログラムでウインドウタイトルがN/Aとなっていて取得できません。
phpの設定はこのような感じです。
http://sakuraweb.homeip.net/uploader/src/up139168.png
httpdの実行権限の問題かなと思ったのですが、ウインドウタイトルが取得できている方、
httpd.exeのユーザー名は何になっていますか?
http://sakuraweb.homeip.net/uploader/src/up139167.png
自分は97行目の通り、"NT AUTHORITY\SYSTEM"となっています。
0271nobodyさん
2010/11/26(金) 22:19:29ID:???> ID変わって失礼します。
> ID変わって失礼します。
0272nobodyさん
2010/11/26(金) 22:25:08ID:I8yzn2Dg0273nobodyさん
2010/11/26(金) 22:36:35ID:???http://bbs.wankuma.com/index.cgi?mode=al2&namber=23325&KLOG=44
かな?
0274nobodyさん
2010/11/26(金) 23:42:37ID:???ありがとうございます。
ですが、このトピックの方はApacheでは実行できてIISでは実行できない
という現象みたいで、自分はApacheで実行できない状態なんです。
>>どうやら、Apacheではcmd.exeの指定は要らないが
とありますので、これじゃない と思います。
0275239
2010/11/27(土) 00:05:56ID:???if (strpos($filename, '\\') === false)
$files = glob($dir.$filename.'.*');
else if (preg_match('/^Windows/i', $_SERVER['OS']))
exec('dir /B "'.$dir.$filename.'.*"', $files);
ただ、dirコマンドを何度も呼ぶとヒープメモリ?を食いつぶすのか、新しいプロセスを立ち上げることができなくなります。
この状態になると、Windowsを再起動しないと何もできなくなります。
タスクマネージャを見た限りでは特にメモリは消費していないのですが…
phpを再起動させても効果はないようです。
最終的にはreaddirで何とかしようと思いますが、
ヒープメモリ?を解放する方法などがあればご教示ください。よろしくお願いします。
0277nobodyさん
2010/11/27(土) 08:32:01ID:HnSqylEA「鍋」 「焼肉」 などの文字列を検索するロジックを書いています。
mb_strpos を使っていますが、 特定の文字列が発見された時にtrueを返す
ereg関数のほうがよいでしょうか?
0278nobodyさん
2010/11/27(土) 09:24:29ID:???0281nobodyさん
2010/11/27(土) 15:37:06ID:???前後のコードを見ないと何とも言えないが、
「dirコマンドを何度も呼ぶ」というのはどういう状態?
同じプログラムの中で exec('dir 〜 を何度も実行してるってこと?
$filesは毎回初期化してるの?
0282nobodyさん
2010/11/27(土) 16:20:26ID:JYCUoFVzuniqid()では同じマイクロ秒で生成されると駄目なようで、uniqid(mt_rand())では長すぎるので困っています。
0283nobodyさん
2010/11/27(土) 16:33:37ID:???0284nobodyさん
2010/11/27(土) 16:42:10ID:JYCUoFVzDBやファイルを使い生成した文字列がユニークかどうかを走査するのではなく、もっとスマートな処理方法はないでしょうか?
0285nobodyさん
2010/11/27(土) 16:45:23ID:???0287nobodyさん
2010/11/27(土) 16:48:25ID:???0288282
2010/11/27(土) 17:04:34ID:JYCUoFVzただ、保存する度に問い合わせて衝突するなら新しく生成してまた問い合わせる・・・を繰り返えすのが普通なのでしょうか?
uniqid(mt_rand(), true)を使えば膨大な量のデータがあっても衝突無しに一発で保存できます。けど文字数が多すぎます。
なので、TouTube(あるいはTinyURL)のように英字の大文字小文字を使用してより短い文字列に出来ないかと考えています。
>>286
連番では駄目です。
0289282
2010/11/27(土) 17:09:10ID:JYCUoFVzすみませんタイプミスです。正しくはYouTubeです。
書いていて気づいたのですが、要はuniqid(mt_rand(), true)で生成される文字列が大文字小文字を交えた半角英字と数字と一部の記号なら短くなりそうなので、
そういった類のスクリプト等があれば教えてください。
0290nobodyさん
2010/11/27(土) 17:09:41ID:???0291nobodyさん
2010/11/27(土) 17:10:27ID:???あらかじめDBにユニークIDを鬼のように入れておいて、割り当てられてないレコードを引っ張り出して処理するしかないと思うが
0292282
2010/11/27(土) 17:15:04ID:JYCUoFVzそれをやるなら空でInsertしたDBのauto_incrementなPRIMARYを使って再度そのレコードをUpdateした方がよくはないでしょうか?
0293nobodyさん
2010/11/27(土) 17:15:15ID:???tempnam
でいけるんちゃう?
0294282
2010/11/27(土) 17:26:12ID:JYCUoFVz試してみましたが、ファイル名が連番で保存されていました。
今、一つ閃いた事があるので試しきます。
上手くいけば報告します。
みなさんありがとうございました。
0296nobodyさん
2010/11/27(土) 17:57:47ID:???0298nobodyさん
2010/11/27(土) 19:36:36ID:???連番駄目なのは、どうせ見た目だけだろ、上司がそういったとか。
0299282
2010/11/27(土) 20:15:21ID:JYCUoFVz閃いた事=>>297でして、無事解決しました。
本当にありがとうございます。
0300nobodyさん
2010/11/27(土) 23:39:27ID:???0301nobodyさん
2010/11/28(日) 00:20:55ID:???sha1の結果を10進数にすることが不可能だった
桁あふれ?桁おち?用語よくわかんないけど全部は出きらない感じ
あれって解決方法あったのかなぁ
0302nobodyさん
2010/11/28(日) 01:29:17ID:???http://ideone.com/pKvtM
0303nobodyさん
2010/11/28(日) 02:56:22ID:???0304275
2010/11/28(日) 04:10:26ID:???ありがとうございます。
関数で頻繁に呼び出しています。
メモリリークですが、どうもAviraAntiVir5が原因だったようです。
お騒がせしました。
0305nobodyさん
2010/11/28(日) 04:12:42ID:???7bitぐらいにするミラクルな方法はないものか
0306304
2010/11/28(日) 04:13:27ID:???http://hibari.2ch.net/test/read.cgi/sec/1290286255/11
0307nobodyさん
2010/11/28(日) 04:19:36ID:???0308nobodyさん
2010/11/28(日) 10:37:38ID:???まぁアルファベットを含めた連番?だけど。
0309nobodyさん
2010/11/28(日) 11:18:44ID:???ユニーク生成しているのと大差ないからな
0310nobodyさん
2010/11/28(日) 14:37:02ID:???3-4つくらい同じ動画になって、以降は動画が存在しないな
0311nobodyさん
2010/11/28(日) 14:42:38ID:???0312nobodyさん
2010/11/28(日) 15:15:14ID:???連番じゃ無いのではないか?
0313nobodyさん
2010/11/28(日) 15:20:14ID:???0314nobodyさん
2010/11/28(日) 15:20:39ID:???0315nobodyさん
2010/11/28(日) 15:24:55ID:???0316nobodyさん
2010/11/28(日) 15:40:17ID:???エラーチェックの意味無いな。
0317nobodyさん
2010/11/28(日) 15:41:23ID:???0318nobodyさん
2010/11/28(日) 16:06:18ID:???0319nobodyさん
2010/11/28(日) 16:17:36ID:???意味を持つ有効なデータが上位4bit分しかなくて下位2bitが余っただけでしょ
よくあること
0320nobodyさん
2010/11/28(日) 17:53:00ID:???0321nobodyさん
2010/11/28(日) 18:12:56ID:oUHpYIlN初期値で選択ずみにしようと思っているのですが、
セキュリティ的にはまずいのでしょうか?
もしNGなら、なぜダメかを教えていただければ。
0323nobodyさん
2010/11/28(日) 18:17:54ID:oUHpYIlNありがとうございます。
では、特に問題はないのですね。
結構、初期値がチェックしてないサイトをよく見てたので、
ダメなのかなと思ってました。
0324nobodyさん
2010/11/28(日) 18:19:27ID:???0325nobodyさん
2010/11/28(日) 18:20:25ID:oUHpYIlNなるほど。では、やはりチェック外しておこうかと思います。
ありがとうございました。
0327nobodyさん
2010/11/28(日) 18:43:04ID:???0328nobodyさん
2010/11/28(日) 18:44:08ID:???Onにしないでどうする
共用PC使う人がチェク外せばいいだろ
0329nobodyさん
2010/11/28(日) 18:46:49ID:???0330nobodyさん
2010/11/28(日) 18:50:33ID:???0331nobodyさん
2010/11/28(日) 18:54:50ID:???0332nobodyさん
2010/11/28(日) 18:56:28ID:???0333nobodyさん
2010/11/28(日) 19:03:16ID:???0334nobodyさん
2010/11/28(日) 19:05:01ID:???0335nobodyさん
2010/11/28(日) 19:54:53ID:???McAfeeのダウンロードがデフォルトでチェックされているので
うっかりしていると勝手にインストールされそうになることがあるので止めて欲しい。
「次回から自動的にログイン」も同様で、チェックしたい人が意識して
チェックさせるようにすべき。
無意識ではなく、確実に本人の意思でチェックしていることが重要だと思う。
0336nobodyさん
2010/11/28(日) 19:57:52ID:???>うっかりしていると勝手にインストールされそうになることがあるので止めて欲しい。
わざわざAdobeが一緒に入れようとしてくる理由を考えろ
0341nobodyさん
2010/11/29(月) 19:47:56ID:8Uo/Jl2+ob_startで設定したコールバックで$php_errormsgを見ても何もありません。
こういう場合どうやってエラーの内容確認すればいいんでしょう?
0342nobodyさん
2010/11/29(月) 23:36:51ID:???$php_errormsgはtrack_errorsが有効じゃないと何も吐かない。
なぜob_start()使うのかわからんが、使うんだったら
ob_start();
require_once 'そのクラスファイル.php'; // includeじゃなくrequire
$errmsg = ob_get_contents();
ob_end_clean();
0343342
2010/11/29(月) 23:40:05ID:???error_reporting(0x7FFFFFFF); // エラー全部吐くようにする
ini_set('display_errors', 1);
が最初に必要。
0344nobodyさん
2010/11/30(火) 02:43:25ID:???何のための定数だよ、意味が分からなくなるだろ
error_reporting(E_ALL | E_STRICT);
こう書きなよ。
こういう「結果は同じなんだから結果だけ書いとけ」みたいな感じで書かれると
定数の意味がないし、メンテナンスが面倒だから自分が書くものだけにしてほしい
0345nobodyさん
2010/11/30(火) 05:59:01ID:???それもそうだな。とにかくエラー全部と思って
バージョン関係なくエラー全部用のコピペだったんだけど、
今回はE_ALLだけで十分だな
0346nobodyさん
2010/11/30(火) 07:20:07ID:H2kkF3xUサーバーメンテの際はなにも取得できません
代入したデータが空であれば、取得できませんでした、と表示させてるんですけど、
メンテで取得できない場合、simplexml_load_file()自体が
failed to open stream: HTTP request failed!
ってなってしまいます
どうすればいいでしょうか?
0347nobodyさん
2010/11/30(火) 07:28:24ID:2WrqxWb3ユーザーから受け取った数値の、百の位以下を0にしたい。
56102
↓
56000
こんな場合どうしたらいいですか?
0348nobodyさん
2010/11/30(火) 07:33:26ID:???http://www.php.net/manual/ja/function.round.php
>>346
is_file, is_readable, file_exists等
0349nobodyさん
2010/11/30(火) 07:33:40ID:???0350nobodyさん
2010/11/30(火) 07:41:53ID:???まず、文字列に変換して、
終わりから3つを0に置換して
(必要なら)再度、数値に変換する。
http://www.sasaraan.net/program/php/tips.php?id=settype(型の変換)
http://www.php-ref.com/bapi/02_substr_replace.html(置換)
もしくは、1000で割って、その余りを元の数から引けばいいんじゃないか?
0354nobodyさん
2010/11/30(火) 08:42:31ID:rNn1SdByで変換に失敗したかどうか判りますが、変換に失敗した部分を抜き出す良い方法はないでしょうか?
0355nobodyさん
2010/11/30(火) 08:52:40ID:???0356nobodyさん
2010/11/30(火) 12:43:26ID:???それでも「?」に変換される文字があったりしてちょっと区別しにくいですが、
もうちょっと試行錯誤してみます。
0357nobodyさん
2010/11/30(火) 13:01:55ID:???詳細の状況によると思うが、一般的にはどうかな?
0359nobodyさん
2010/11/30(火) 14:54:43ID:???0360nobodyさん
2010/11/30(火) 15:57:26ID:vry2lrbmこの質問に回答してくれ
0361nobodyさん
2010/11/30(火) 17:51:46ID:???$kuji = array("凶","小吉","小吉","中吉","中吉","中吉","吉","吉","大吉");
$result = array();
for ($i = 0; $i < 10; $i++) {
$result[] = array_rand($kuji);
}
?>
<table>
<?php
foreach ($result as $key => $value) {
$key++;
echo "<tr><td>{$key}回目</td><td>{$kuji[$value]}</td></tr>";
}
?>
</table>
0362nobodyさん
2010/11/30(火) 19:40:35ID:???一発で欲しい形でデータを取るための複雑なクエリーで最適化できてないのもあるけど、結果取得に20秒位かかってるんだけど、クエリーはシンプルにして結果取得を短い時間でできるものにして、クエリーを複数回実行して結果を処理でなんとかしたらどうかなと思ったんだよね。
0363nobodyさん
2010/11/30(火) 19:57:22ID:???クエリーがきちっと最適化できてないだけじゃないの?
まぁこれ以上はシステム構成やデータ件数等も関連してくるし
スレチにもなるから若干過疎ってるがmysqlのスレ行くほうが良いよ
0365nobodyさん
2010/11/30(火) 22:28:10ID:???56102
↓/100
56.102
↓*100
56102
こうならないっけ?
0366nobodyさん
2010/12/01(水) 01:29:45ID:???0368nobodyさん
2010/12/01(水) 01:40:06ID:???ていうか最初に答え出てるのに引っ張るなよw
if (strlen($num) <= 3)
return $num;
} else {
return round($num, -3);
}
0369nobodyさん
2010/12/01(水) 10:44:50ID:KEK0dLq10370nobodyさん
2010/12/01(水) 10:59:50ID:???0371nobodyさん
2010/12/01(水) 11:16:50ID:B1SR7o7P(uオプションを使えばUTF-8なら使える…らしい)
mb_ereg_replaceを使えって色々なところに書いてあるんですが
色々試してみたんですが、preg_replaceでも普通にマルチバイトで
置換ができてしまいます。
UTF-8/EUC-JP/SJIS全て試し、漢字・半角カタカナなどもやりましたが
正常に処理されました。
PHPの環境によるんでしょうか?Windows+XAMPPのPHPです。
0372nobodyさん
2010/12/01(水) 12:01:46ID:???0373nobodyさん
2010/12/01(水) 12:54:07ID:???0374nobodyさん
2010/12/01(水) 12:57:12ID:???0375nobodyさん
2010/12/01(水) 13:18:36ID:???mb_internal_encoding
mb_regex_encoding
あたりがきちんと設定されていれば、pregでいいんじゃないの?
不具合起きたことないんだけど。
というか、ereg系はすでに非推奨になってるので、こっち使うほうが問題あると思う。
0376nobodyさん
2010/12/01(水) 14:52:40ID:???0377nobodyさん
2010/12/01(水) 15:10:40ID:???mb_ereg系はとくに記載がありませんでした。うーん。
0378nobodyさん
2010/12/01(水) 15:11:39ID:???mb_internal_encodingの設定ってmb系の関数で元の文字コードを指定しなかったときのデフォルトなだけだよね?
0379nobodyさん
2010/12/01(水) 15:12:23ID:???mb系じゃなきゃ、文字のエンコードなんかしったことじゃないから
SJISなら、漢字のつもりでもxx5Cって文字の後ろを\としてしまうとか、 ある漢字の中に 5Bがあって [ と勘違いするとか、
EUCの( [a1ca] が 押分[b2a1caac]って文字列内に見つかるとか。
0380nobodyさん
2010/12/01(水) 15:43:06ID:???0381nobodyさん
2010/12/01(水) 15:55:54ID:???mb_eregはバイナリセーフだから使ってよし
mb_languageって何にでも効くおまじないじゃないよ、そんなソースみたら笑っちゃうかも
0382nobodyさん
2010/12/01(水) 16:10:48ID:???間違って覚えてる人とか勘違いしてる人は少しくらいいるかもね。
0383nobodyさん
2010/12/01(水) 16:36:11ID:???文字化けすることを確認しました。
ありがとうございます。
0384nobodyさん
2010/12/01(水) 16:51:58ID:???Twitterのような感じのものです。他にはニコニコ生放送のタグや商品広告みたいな感じです。
ページをリロードしていないのに、内容が更新されていきます。
あれはどうやっているのでしょうか。
更新内容はDBに保存するとして、リロードしてないのにページの一部を更新する方法がわかりません。
0385nobodyさん
2010/12/01(水) 16:59:02ID:???0387nobodyさん
2010/12/01(水) 17:21:59ID:???0390nobodyさん
2010/12/01(水) 17:49:40ID:???おまえが書いて間違ってるかどうかチェックしてもらう側だろうがよ
0391nobodyさん
2010/12/01(水) 18:01:55ID:???一般人のインフラで多用するようなもんじゃないよ
リアルタイムにこだわるとリクエスト数が激しいから
すぐ管理者に目をつけられる
0392nobodyさん
2010/12/01(水) 18:02:04ID:???0394nobodyさん
2010/12/01(水) 19:47:55ID:???そのような筋は聞いたことがありません。
このスレのルールを承知しているのですか?
>>1をよく読みなおして私に質問があるならIDを出してからにしてください。
0395nobodyさん
2010/12/01(水) 19:50:48ID:???0397nobodyさん
2010/12/01(水) 23:40:58ID:u6fu+xrh200番を返すようになっています。これって正しくは500番のレスポンスコードを
返すのが正しい動作だと思い変更したいと思っています。
ただphp.iniの設定項目等で変えられないかと見てみたのですがそのような項目がちょっと
見つけられませんでした。
PHPのバージョンは5.1くらいだったと思います。
もし、何かご存知の方がいましたら教えてもらえると助かります。
0398nobodyさん
2010/12/01(水) 23:59:00ID:???動作的には200であってるんだが
0399nobodyさん
2010/12/02(木) 00:06:04ID:???サーバがリクエストの処理に失敗した。
0400nobodyさん
2010/12/02(木) 00:14:22ID:???headerで送出するのがいいんじゃないだろうか
http://www.php.net/manual/ja/function.trigger-error.php
http://www.php.net/manual/ja/function.set-error-handler.php
http://www.php.net/manual/ja/function.header.php
0401nobodyさん
2010/12/02(木) 00:21:12ID:???<?php
echo $a;
if (error_get_last()) {
header("Status: 500 Internal Server Error");
die();
}
あとはエラードキュメント用意する
0402401
2010/12/02(木) 00:26:59ID:???スルーして
0403nobodyさん
2010/12/02(木) 00:37:13ID:???例えばPHPからJavascriptを吐き出す時、エラーのページが200で返って来ると
ブラウザがエラーメッセージをjsファイルだと思い込んで実行して
Unexpected token '<'とかなんとか。
#500やら40xなら普通は実行されない。
ただそれは開発中の話であってHTTPステータス細工する暇あったらFatalError無くすし、
運用後に発生するかも知れない未知のエラーをログに残したいならphpのエラーログがあるし
そこまで必要性は感じなかったね
0404nobodyさん
2010/12/02(木) 00:53:52ID:i7zddhjb一日中調べていてこの事に触れている記事などが余りなくて
私が気にし過ぎなだけで、PHP的には正しい動作なのかなとも考えていました。
本来、エラー系は開発時に潰しておかないといけないのはその通りなのですが
開発時に私がいなかったもので一通りログから調べ直してみたいと思った次第です。
エラーログも切り分ければ良いのですが、エラーログの出力先がApaheと共通に
なっているので単純にResponseコードで判断できないかなと考えていました。
その設定を変えろよ、言われればおっしゃる通りですが、、、
なんとなく200番返しちゃうとエラーページも検索エンジンがインデックスしちゃうよなー
とかも考えたりするので何か解決策が無いかなとか考えています。
書いていただけた事を読み直して対応を考えたいと思います。ありがとうございます。
0405nobodyさん
2010/12/02(木) 00:57:01ID:???日付つけてなんかするシステムだとバグで時限式爆弾みたいなことはあるかもしれないが
なんかどこまでシステムを信頼していいのか不安になってきた
0406nobodyさん
2010/12/02(木) 01:11:44ID:i7zddhjbPHPのバージョンアップに伴って確認し切れない所でエラーが発生したり
とかは十分あり得るかなー、と。。。思います。
これは分かりやすい部分の例ですが。
それも本来、ちゃんと確認しろよって部分ですが諸般のIT事情により見れない時がありますので、、、
0407nobodyさん
2010/12/02(木) 01:39:12ID:???>一通りログから調べ直してみたい
そういう用途なら尚更PHPのエラーログを出す設定にした方がいいね
noticeもwarningも取れるし
>>405
単に負荷が高くなって開発時には想定してなかった場所でタイムアウトの類のエラーが出てきたとか
DBのコネクション数オーバーとか
データ保存領域のパーティションが一杯になったとか
DB作り直した時InnoDBのつもりがMyISAMでトランザクション効いてなかったりとか
md5がコンフリクトしたとかw
まあ「未知のバグ」と読み替えてもいいし
0408346
2010/12/02(木) 06:07:59ID:2FQwk5Ve> is_file, is_readable, file_exists等
いろいろ試したところ、同じサーバーにあるファイルだとそれでTRUEが確認できましたが、
外部サイトだとあってもなくてもFALSEを返してきます
外部のRSSのアクセス可能不可能の確認に使うにはなにかやり方があるのでしょうか?
教えていただけるとさいわいです
よろしくお願いします
0409nobodyさん
2010/12/02(木) 06:14:41ID:???get_headersとかでいいんじゃね
0410nobodyさん
2010/12/02(木) 06:17:51ID:2FQwk5Veありがとうございます
if (!preg_match('/Not Found/',$rssurl)){
で読みたいRSSの有無判定できるようになりました
感謝です
0411nobodyさん
2010/12/02(木) 06:18:48ID:???そのrssurlのとこにget_headersのデータはいってます
0412nobodyさん
2010/12/02(木) 06:20:42ID:???200だったらのほうがいいと思う
それだと503とかも通っちゃうしね
0413nobodyさん
2010/12/02(木) 06:29:44ID:2FQwk5Ve$head = get_headers($rss,1);
if (preg_match('/200|302/',$head[0])){
ありがとうございます
読みに行ったブログのrssは302を返してきたので、302も通るようにしました
レスポンスコードむずかしいです
0414nobodyさん
2010/12/02(木) 11:11:26ID:xyBKojGi使ったこと無いけどmysql_insert_id()みたいなものを。
0415nobodyさん
2010/12/02(木) 11:14:30ID:???0416nobodyさん
2010/12/02(木) 11:27:54ID:???0417nobodyさん
2010/12/02(木) 12:51:52ID:xyBKojGiできました。ありがとうございます。
DとO紛らわしいと思う。
0418nobodyさん
2010/12/02(木) 16:53:09ID:???携帯サイト用画像リサイズスクリプトImageresize4keitai
http://www.web2-labo.com/_imageresize4keitai090421.html
というものがあります。
画像のサイズを指定した小さいサイズでリサイズしてくれるとのことなのですが・・・
前のHPを作った前任者さんが使っていたのですが、使うメリットが分かりません。
<img="" width="70">でも同じではないのでしょうか?
教えていただけると助かります。
0419nobodyさん
2010/12/02(木) 16:58:28ID:???携帯のハードが耐えられるメモリ量ならimg-widthでも構わない。
強いてあげるなら携帯への転送量が減る分だけ表示が速くなるとかそんな感じかな。
0421418
2010/12/02(木) 17:17:51ID:???フォトショップなどで画像を最初から小さいサイズにしておけば、Imageresize4keitai のメリットはなくなりますか?
0422nobodyさん
2010/12/02(木) 17:20:30ID:???0423nobodyさん
2010/12/02(木) 17:29:31ID:???指定しなかったら携帯の横幅に合わせられる
昔ほぼ同じ物作ったわ
これキャッシュディレクトリあるけど、毎回生成し直すんじゃね?
0424nobodyさん
2010/12/02(木) 17:33:26ID:???そうだが思考がデザイナーだな
0426nobodyさん
2010/12/02(木) 20:41:55ID:gvFjnnhT【PHPのバージョン】5.3
【連携ソフトウェア】MySQL Samba
【質問内容】
sample.php
exec($command, $out, $return);
で別ファイル(mail.php)のsendmailを実行してます。
mail($to,$subject,$body);
という簡単なものです。
戻り値によってexec実行後の挙動を変えているのですが、sendmailからgmailのsmtpを使うことになり
pearのmailのモジュールを直接起動するように変更しました。
モジュールを直接起動するだけなので$outに何も残らずexec後の挙動が自動化できなくなりました。
$outに戻り値を返すにはどのようにしたらよいでしょうか?
0427nobodyさん
2010/12/02(木) 23:51:02ID:???0428426
2010/12/03(金) 09:25:48ID:d50vwSIOいまは
require_once("Mail.php");
$param = array(SMTPの設定);
$header = array(toとかsubject設定);
$smtp = Mail::factory( 'smtp', $param );
$smtp->send( $mailto, $header, $body );
という風にして送信してます。
これらにさらにオプションみたいなものがあるんでしょうか。
0429nobodyさん
2010/12/03(金) 10:29:21ID:Q3Oa/UUXSQLiteの型がINTEGERであっても、fetchで返ってくる値の型はstringでした。
MySQLのBOOLEAN型などであっても、fetchは常にString型で返してくるのでしょうか?
よろしくお願いします。
0430nobodyさん
2010/12/03(金) 15:30:10ID:???サーバサイドスクリプト言語「PHP」にサービス拒否(DoS)攻撃を受ける脆弱性が確認されたと「Japan Vulnerability Notes(JVN)」で発表した。
5.3.3 revision 305571以前のバージョンのgetSymbol関数には、整数オーバーフローの脆弱性が存在する。悪用されると、
遠隔の第三者からのDoS攻撃を受ける可能性がある。JVNでは、ベンダーが提供する情報をもとに最新版へアップデートするよう呼びかけている。
0431nobodyさん
2010/12/03(金) 15:34:18ID:???Windowsカーネルに権限昇格バグがあるのだけは知っている
0432nobodyさん
2010/12/03(金) 18:47:43ID:apCQGjmG外部ファイルをrequireやincludeするとき、コンストラクタの中で呼び出すのと
クラス宣言の外(冒頭)で呼び出すのはどう違うんでしょうか?
0433nobodyさん
2010/12/03(金) 18:57:01ID:jI96G3Kcその呼びたいプログラムはファイルに結果を出力する形になっています
/tmp/out.data
を一時出力ファイルにしようとしましたが
同時に副数人がアクセスすると/tmp/out.dataが前の人の結果を上書きしてしまいます
ファイル名をuuidなどで生成させて絶対重ならないようにするのが普通のやりかたなのでしょうか?
何かLinuxのパイプ関係でプロセスごとに一時ファイルを自動で分けるようなやり方はないのでしょうか
0434nobodyさん
2010/12/03(金) 19:17:07ID:???プログラムの流れの順番が違う
冒頭で呼び出すと最初に全ファイルの関数かぶりやら
ファイルの依存関係がチェックされるのに対して
コンストラクタ中で宣言するとインスタンス生成時にチェックされる
そのため関数かぶりやらで止まる可能性は少なからずあるし
ファイルの依存関係もそれまでチェックされない
>>433
tempnamを使ってみてはどう?
ttp://jp2.php.net/manual/ja/function.tempnam.php
0435nobodyさん
2010/12/04(土) 01:18:43ID:???htmlのフォームの属性で携帯のキャリアによっては
name属性かid属性か使い分けなくてはならなかったような気がしたのですが
どうでしたっけ…
0436nobodyさん
2010/12/04(土) 01:19:24ID:IEmBp40c0437nobodyさん
2010/12/04(土) 02:39:53ID:???http://hibari.2ch.net/test/read.cgi/hp/1291304974/
0438nobodyさん
2010/12/04(土) 07:40:58ID:???本人の身元を完全に特定できるようになりたいのですが、
そういう場合、どのようなところに就職すれば良いのでしょうか?
プロバイダーですか?
それとも、警察庁のサイバー犯罪対策なんちゃらとかいうところですか?
それとも、また別の機関?なのでしょうか?
やはり、警察系の組織が一番良いのですかね?
それとも、プロバイダーなんですかね?
個人的には、この2つのどちらかだと思っているのですが、
実際はどうなんでしょうか?
誰か教えてください。お願いします。
0439nobodyさん
2010/12/04(土) 07:49:53ID:???0440nobodyさん
2010/12/04(土) 08:43:24ID:???0441nobodyさん
2010/12/04(土) 08:45:19ID:???0442nobodyさん
2010/12/04(土) 09:28:29ID:???就職先は関係ありません。どこに就職しても無理です。他人のサイトでは無理です。
自分のサイトであれば、住所送ってもらって書面でログインパスワードなどを送るようにすれば
出来ますが、貴方が知りたいのは たとえば私が誰であるかというようなことでしょう?
どこかでは全部分かっているのだと思うのでしたら、ネットをやめるのおすすめです。
また、質問が板違いかと思われます。
0443nobodyさん
2010/12/04(土) 13:13:40ID:???0444nobodyさん
2010/12/04(土) 13:17:04ID:???0445nobodyさん
2010/12/04(土) 13:31:54ID:???0446nobodyさん
2010/12/04(土) 13:44:36ID:???0449438
2010/12/04(土) 15:13:28ID:???私のためにケンカするのはやめて
おちんちんびろーん
0450438
2010/12/04(土) 15:17:23ID:???もうすぐ死にますから許してくださーい♪
0451438
2010/12/04(土) 15:23:40ID:???0452438
2010/12/04(土) 15:24:29ID:???0453nobodyさん
2010/12/04(土) 23:05:39ID:???0455nobodyさん
2010/12/05(日) 01:22:21ID:Nvi5Q3Wb【PHPのバージョン】5.3
【連携ソフトウェア】Oracle
【質問内容】
ファイルダウンロード(大きいサイズ)でタイムアウトしてしまう対策ついて質問させて下さい。
set_time_limit(0);
でサーバー側のタイムアウトを長くする事は出来たのですが。
ブラウザ側のタイムアウトでプログラムの処理が切断されてしまいます。
echo str_pad('',256);
flush();
を使用しブラウザ側に定期的にパケットを送信する方法も試したのですが。
そうするとダウンロード処理のヘッダー
header('Content-Length: ' . filesize($filename));
header('Content-Disposition: attachment; filename='.basename($filename));
の前に空白文字が出力されてしまう為かダウンロードファイルの内容がブラウザに表示されてしまい。
ブラウザのダウンロードダイアログが出ません
ヘッダー前の空白文字を消す方法か
その他にブラウザ側に定期的にパケットを送信する方法ありましたら教えて頂けないでしょうか?
よろしくお願いいたします。
0456nobodyさん
2010/12/05(日) 01:23:59ID:???0457nobodyさん
2010/12/05(日) 01:25:33ID:D3Xz+Jzo真面目に答えると、エシュロンに就職するのが間違いないでしょう。
このスレの住人のようなレベルの低い人達に質問しても無理です。
0460nobodyさん
2010/12/05(日) 01:32:45ID:???単純なzipとかのファイルのダウンロードならダウンロードダイアログが出て
あとはブラウザが勝手にダウンロード終了までコネクトし続けるでしょ?
いまいちどういう状況なのかよくわからない
0461nobodyさん
2010/12/05(日) 01:33:49ID:???動的に大きいサイズのファイルを作るわけね。
で、ダウンロードが始まる前にタイムアウトするわけか。よくあるね。
ファイルの準備が完了するまでプログレスバーを出すか、
準備が完了してからダウンロードボタンを表示させるなど。
0462nobodyさん
2010/12/05(日) 01:38:28ID:???受信待ちになるから、パケットを送りつけたらダウンロードファイルの
一部(先頭)になってしまうよ。
0463nobodyさん
2010/12/05(日) 01:40:10ID:???ajaxで10秒置きにリクエストおくってサーバ側は準備できたらURLと準備OKのフラグを送出して
それができたら準備中って表示してるところをDOMでダウンロードリンクに書き換えするな
0464nobodyさん
2010/12/05(日) 01:41:31ID:???0465455
2010/12/05(日) 01:43:18ID:Nvi5Q3Wb>>461さんが言っている通りです
>>462
ダウンロードボタン常に出た状態で、押してからタイムアウトしない様にしたいのですが。
難しそうでしょうか・・・
0466455
2010/12/05(日) 01:46:18ID:Nvi5Q3Wbajaxは今の画面からして無理そうな気がします。。。
0467nobodyさん
2010/12/05(日) 01:46:46ID:???もし準備に1時間かかったら1時間タイムアウトしないの?
確かIEはタイムアウト短めなんだよな。
Javascriptのプログレスバーで少し時間稼ぎできた記憶もあるけど。
header()を定期的に(同じ内容を)何度も送ってみるのはどう?
試したことないけど。
0468被リンクサービスの決定版
2010/12/05(日) 02:58:32ID:07kW5KS8http://hibari.2ch.net/test/read.cgi/hp/1291304974/43
0470nobodyさん
2010/12/05(日) 10:19:28ID:8LoFcf3Sとりあえず学生向けのクラスを作ってその中で日記の機能を実現して、
教師向けクラスは学生向けクラスを継承することにしました
この時、DBテーブルの学生向け・教師向けの指定はどう切り替えたら良いんでしょうか?
ログイン時にユーザータイプをセッション化してifで切り替えるのでないやりかたありますか?
教師向けクラスのなかでどうにかして指定テーブルを上書きしたいんですがどうしたら良いですか?
0471nobodyさん
2010/12/05(日) 10:23:54ID:???枝分かれする分岐点での認証を全て突破していかないといけない
そういうレベルの話
最小のグループの中に属する接続先のみを特定する場合
最深部(接続先)の1歩手前(ようはプロバイダ)を掌握できれば可能
重要なのはプロバイダからの情報で接続先や契約者は特定できても
実際に接続している個人までの特定は不可能ということだ
ちなみに警察が逮捕できるのはプロバイダから情報を提供してもらってるから
提供された情報からわかるのは接続先と契約者でしかないので
個人まで特定するには最終的には自白か何か証拠がないといけない
プロバイダは契約者との間に守秘義務があるので警察の令状がない限り情報は提供できない
プロバイダに入社すればそこと契約してる人の情報を入手できる可能性がある
(ただし情報へのアクセスは権限がある人のみで権限があっても理由なきアクセスは不可能)
警察に入っても捜査の範囲内でしか知りうることができないしそもそも配属されるとは限らない
プロバイダのデータベースに不正アクセスできれば何か情報があるかもしれない程度
普通重要情報はネットワークから切り離すし
不正アクセスは犯罪行為であってリスクが高い
ようは諦めろ
中国共産党は国内のネットワークを全て支柱におさめてるので(共産党がプロバイダなようなもん)
国民の監視ができるだけで国から切り離せば個人を知ることはできない
CIAとかFBIとか海外の組織ならできそうなイメージはあるんだろうけど
ああいう機関もどこかしら情報提供がないと何もできない
0472nobodyさん
2010/12/05(日) 10:28:32ID:???それはDBの設計の話では?
教師が書いた日記か学生が書いた日記かがわかるテーブルを用意すればいい
記事ID ユーザ
100000 学生A
100001 教師A
0473nobodyさん
2010/12/05(日) 11:09:08ID:???なんかこの時点ですごい設計になってる気がする
0474nobodyさん
2010/12/05(日) 11:18:47ID:???0475デリカット
2010/12/05(日) 11:39:10ID:???0476nobodyさん
2010/12/05(日) 14:03:39ID:???0477nobodyさん
2010/12/05(日) 19:56:57ID:???教師クラスが学生クラスを継承するのはまあいいと思うけど、
テーブルが別になってるのが怪しいのでDB設計は見直した方が良いと思う
それはまあ置いておいて、if以外で実現するとなると、
学生クラスと教師クラスでgetDiaryTable()の戻り値を変えるとか
0479nobodyさん
2010/12/05(日) 20:08:42ID:???と書いてあるだけで「教師 is-a 学生」という設計になってるとは書いてないから。
そして単にアクセス権の領域を継承しているのだろうと簡単に想像できるから。
さらに本題と無関係だから。
0480nobodyさん
2010/12/05(日) 20:18:25ID:???http://ja.wikipedia.org/wiki/%E7%B6%99%E6%89%BF
>一般的に、BがAを継承する場合、B is a A. (BはAの一種である)という意味的な関係(Is-a関係)が成り立つ。
>従って、同じふるまいを持つからと言って、意味的に無関係なクラス間に継承関係を持たせるのは適切でない場合が多い。
0481nobodyさん
2010/12/05(日) 20:29:37ID:???0482nobodyさん
2010/12/05(日) 20:36:34ID:???まぁ本題に関係ないのは関係ないが・・・
0483nobodyさん
2010/12/05(日) 20:38:12ID:???class Teacher extends Studentとは言い切ってないだろ。
class SuperUser extends Userかもしれんだろ。
0484nobodyさん
2010/12/05(日) 20:40:12ID:???0485nobodyさん
2010/12/05(日) 20:52:05ID:Z6YIuGAA前提として現在動作しているWebアプリケーションに機能を追加して欲しい ということがあります。
ですが、現在動作しているWebアプリはJavaで組まれているのですが、設計書もマニュアルもなく、
当方Javaを深く勉強したことがないために、ソースを読み解けません。
要望としては機能さえ同じであれば、どんな言語でも問題ないということで、
PHPで構築し直そうと考えています。
そこで、Javaで組まれたWebアプリに機能を追加したいがために、
PHPで新しく構築し直すことの”もっともらしい理由”って何かありますか?
マジレスよろしくお願いします。
0486nobodyさん
2010/12/05(日) 20:54:54ID:???簡単だから、でいいんじゃない?
もしくは別に正直に自分がPHPしかできないからって言ってもいいし。(物は言い様だから上手く言い換えてね)
0487nobodyさん
2010/12/05(日) 20:55:32ID:???0488485
2010/12/05(日) 21:05:19ID:Z6YIuGAAJavaと比較して
PHPは
・開発が一般的に早いと言われている
・HTMLにタグを直接埋め込めるためにソースを理解しやすい。結果、保守が容易である(本当?)
・一般的にデータベースとの接続性が良いと言われている(開発しやすいと同義?)
・PHPはWebサーバから実行するときは、新しいプロセスを生成せずにスレッドとして実行されます。
そのため、Javaのシステムよりもメモリに負荷がかからず、軽い。(本当?)
でもこれだけでは、構築し直すメリットがあまりないでよね。
もっともらしい理由が欲しいです
0489nobodyさん
2010/12/05(日) 21:06:28ID:???0490nobodyさん
2010/12/05(日) 21:55:08ID:???0491被リンクサービスの決定版
2010/12/05(日) 21:56:44ID:07kW5KS8http://hibari.2ch.net/test/read.cgi/hp/1291304974/43
0492nobodyさん
2010/12/05(日) 21:56:52ID:???2,3,5,7,11,13,17…って感じ
0494nobodyさん
2010/12/05(日) 22:02:45ID:???はっきりJava知らないから、って言えばいいじゃねぇか。
そうやって屁理屈こねてボロ出すより正直に言ったほうが話が早いと思う。
でも求められてる追加機能が大したことなかったら再構築とか認められないよね。
0495nobodyさん
2010/12/05(日) 22:06:37ID:???これは結構大事な事
とはいえJavaOnlyには今はしないけどね
部分部分でJavaはよく使う
0496nobodyさん
2010/12/06(月) 00:47:42ID:???コミュニティーもJOJOに衰退していってる
逆にC#は活発になってる
0497nobodyさん
2010/12/06(月) 02:05:20ID:yucJCxgOそんなに似てるんですか?
自分C言語とかやらずにHTML→phpなので良く解らないのですが
もしかしてC言語やっておいたほうがいいのでしょうか
0498nobodyさん
2010/12/06(月) 02:09:31ID:???0499nobodyさん
2010/12/06(月) 02:19:04ID:???C言語にBASICのテイストを加えた感じじゃない?
0500nobodyさん
2010/12/06(月) 02:32:49ID:???だからといってCをやる必要性は少ない
その程度の知識しかないならもっとPHPをやった方が良い(PHPをしたいなら)
0501nobodyさん
2010/12/06(月) 02:35:55ID:yucJCxgOありがとうございます!
0502nobodyさん
2010/12/06(月) 04:30:41ID:+HasdjW9【PHPのバージョン】5.2.5
【連携ソフトウェア】MAMP (MySQL 5.0.41)
【質問内容】
データベースからメモリ使用量を抑えて結果を出力したい。
$result = mysql_unbuffered_query($query);
while ( $row = mysql_fetch_assoc($result) ) {
//$rowの内容を出力
}
mysql_queryの代わりに、
mysql_unbuffered_queryを使ってみたのだけど、
1回目の結果しか出力してくれません。
0503nobodyさん
2010/12/06(月) 05:02:19ID:???mysql_unbuffered_query -- MySQL に SQL クエリを送信するが、結果に対してのフェッチやバッファリングは行わない
0504nobodyさん
2010/12/06(月) 08:14:48ID:???0505nobodyさん
2010/12/06(月) 08:28:10ID:???0506nobodyさん
2010/12/06(月) 08:29:21ID:???0507nobodyさん
2010/12/06(月) 08:45:12ID:???・ドキュメント類の無いシステムの改修は請けられない
・PHPは作業員単価が安い
真っ当な理屈で行くならこの2つくらい。
前者はそのシステムが他社製だった場合に限る。
後者はJava使える人を雇ったor外注した場合のコストを仮に出して
「今作り直しておくと将来の機能追加の際の費用が下がるよ」という感じに。
0509nobodyさん
2010/12/06(月) 16:04:59ID:???0510nobodyさん
2010/12/06(月) 19:16:09ID:1oqepL+/>>00 にはマッチするけど >>00-00
には一切マッチしないパターンを作りたいんですが、うまくいきません。
[0-9]{1,3}[^-] と考えましたが、これだと
>>00 はいいんですが、
>>00-00 もハイフンの直前までマッチして置き換えられてしまいます。
0512nobodyさん
2010/12/06(月) 19:56:13ID:1oqepL+/>>00は数字の連続の意味です。
試してみたんですが、[\d]{1,3}(?!\d)だと >>00 だけでなく >>00-00
のハイフン前までもマッチしてしまいました。
>>00-00 には一切マッチさせたくないんですが。
0513nobodyさん
2010/12/06(月) 20:10:39ID:???0514512
2010/12/06(月) 20:27:31ID:1oqepL+/説明不足で済みません。
>>00-00 や >>00 は文字列に挟まれていることもありますし
一行内に複数出てくることもあります
0515nobodyさん
2010/12/06(月) 22:01:05ID:???0516nobodyさん
2010/12/06(月) 22:09:10ID:???0517PHP忍者 ◆vx6KgJyjvE
2010/12/06(月) 22:56:38ID:???http://hibari.2ch.net/test/read.cgi/tech/1268979408/
0518nobodyさん
2010/12/07(火) 01:05:58ID:jpXYBjAQこちらで質問させてください。
スレ違いなら申し訳ですが、AppleのiTunes Connectに
表示される自分のアカウントの sales and trendの値を
HTTP経由でRSSやXMLで取得する方法ってどなたかご存じないですか?
下記のサイトが、それらしいことやってそうですが、
ドメインやAPIキーが何を意味してるか良く分かりません。
http://snippie.net/snip/f835bd0d
アカウントとAppleIDを条件にREST等で取得するような
APIってないでしょうか。
0519nobodyさん
2010/12/07(火) 01:56:18ID:???無いからパースかけてるんだろ…
0520nobodyさん
2010/12/07(火) 02:02:54ID:???最近全然まともな質問もないし
と思ったらWebProgで一番勢いはある
ということは2chから人がいなくなったのかな
0521nobodyさん
2010/12/07(火) 02:05:20ID:???0522nobodyさん
2010/12/07(火) 02:08:17ID:???0523nobodyさん
2010/12/07(火) 02:21:15ID:???0524nobodyさん
2010/12/07(火) 02:30:28ID:???板名はWebProg板だがPHP板と呼ぶ人はそれなりに居る
0526nobodyさん
2010/12/07(火) 02:33:38ID:???俺も認識が違ったようだ
旧名がPHP板で再編されてWebプログラム板になった
だからPHP板と呼ぶ人もいる
ttp://teri.2ch.net/accuse/kako/988/988641092.html
0527nobodyさん
2010/12/07(火) 02:39:11ID:???0528nobodyさん
2010/12/07(火) 02:42:39ID:???仕方ないんじゃないかと・・・
0531nobodyさん
2010/12/07(火) 10:19:00ID:9UYYDQMRMySQLでビューを使っているのですが、ビューが遅いと聞き、
毎回PHPにてクエリを作成したものと、ビューを用いたもので速度実験してみました。
$sql_1 = "SELECT * FROM test1 LEFT JOIN text2 ON test1.id = test2.id";
$sql_2 = "SELECT * FROM test_view";
$loop = 10000;
// ビュー無し
$start1 = get_time();
for ($i = 0 ; $i < $loop ; $i++) {
$result = $db->query($sql_1);
}
echo get_time() - $start1 ."<br />\n";
// ビューあり
$start2 = get_time();
for ($i = 0 ; $i < $loop ; $i++) {
$result = $db->query($sql_2);
}
echo get_time() - $start2 ."<br />\n";
結果、
ビュー無:sec 6.97133803368
ビュー有:sec 6.43778681755
となったんですが、これは一度作成したビューをキャッシュで保持しているのでこうなったのでしょうか。
ちなみにmysqlは5.1.33です。
0532nobodyさん
2010/12/07(火) 12:04:31ID:???// ビューあり
実行順序を変えた結果も教えてください。
0534nobodyさん
2010/12/07(火) 13:31:31ID:KlJmKKf8date.timezone = Asia/Tokyoと設定してApacheを再起動しても上記の文章がでるんですが、
他に何か設定する必要があるんでしょうか?
Xamppでやってます。Php5.2です。
0535nobodyさん
2010/12/07(火) 13:43:49ID:???0536nobodyさん
2010/12/07(火) 14:09:38ID:KlJmKKf80537nobodyさん
2010/12/07(火) 14:15:20ID:???0538nobodyさん
2010/12/07(火) 14:35:24ID:???0539nobodyさん
2010/12/07(火) 14:56:28ID:???timezoneを自分で設定した記憶がない
初期設定で勝手にやってくれるはずだが
ちゃんと使う前に説明嫁
0541nobodyさん
2010/12/07(火) 16:15:13ID:???0542nobodyさん
2010/12/07(火) 16:17:11ID:???0543nobodyさん
2010/12/07(火) 16:30:04ID:???引きこもってて脳みそ溶けてるんだろ
0544nobodyさん
2010/12/07(火) 16:36:25ID:???0545512
2010/12/07(火) 18:54:38ID:vVw0jPrd上手くいきました!有難うございました
もっと勉強します
0546nobodyさん
2010/12/08(水) 01:30:59ID:BxjIm/1Jたとえば要素が50個くらいあるフォームだとしたら、
入力>確認>投稿 というプロセスのあいだの情報の引き回しはどうすべきでしょうか?
現在、PC版の管理画面ではセッションの中に$_POSTを全部放り込んで
最後の投稿画面にまで持ち回してますが、携帯だとそれは厳しいのかな?と悩んでいます。
そうだとしたら、どういうやり方をするのがセオリーですか?
0547nobodyさん
2010/12/08(水) 01:37:24ID:???若しくはhidden
0549nobodyさん
2010/12/08(水) 16:17:15ID:???学校行ってたの?
0550nobodyさん
2010/12/08(水) 20:13:54ID:???0551nobodyさん
2010/12/08(水) 21:07:00ID:???0553nobodyさん
2010/12/09(木) 04:20:52ID:???質問と疑問形を見分けられるようにスクリプトを改修することを勧告します。
なお、この勧告を3回発した後、なお当該自称が継続する場合は、強制力を
持った「改修指示」に自動的に更新されます。
0555nobodyさん
2010/12/09(木) 09:16:01ID:???0556nobodyさん
2010/12/09(木) 10:07:12ID:???育てたのは親だから自業自得か
0557nobodyさん
2010/12/09(木) 17:31:31ID:Q1lTwUUpどなたか解決方法を教えてもらえないでしょうか?
$title = mb_strimwidth($item, 0, 55, '…', 'UTF-8');
上記のように書いた場合でも、以下のように横幅が揃わないのです。。
1 スタ-バックスカード500円券が80%OFFの100円で(配送費用込み)掲…
2 「ココロに残る、自然派フランス料理を。」 仙川にある『Bistro…
こちらが元の文字列
1 スタ-バックスカード500円券が80%OFFの100円で(配送費用込み)掲載日時を11/25/-11/30の期間でツイッターでお知らせします!枚数限定早いもの勝ち【ヒント:21半頃か】
2 「ココロに残る、自然派フランス料理を。」 仙川にある『Bistro de Herb』の新鮮野菜や旬のシーフードをゆったり味わえる『フレンチ・フルコース』が、2,500円!
0558nobodyさん
2010/12/09(木) 17:35:27ID:???0559nobodyさん
2010/12/09(木) 17:54:34ID:Q1lTwUUpレスありがとうございます。
なるほど、そういうことだったのですか。
現実的によい解決方法があったら教えてもらえないでしょうか?
0560nobodyさん
2010/12/09(木) 18:03:42ID:???0561nobodyさん
2010/12/09(木) 18:42:47ID:???0562nobodyさん
2010/12/09(木) 19:35:48ID:B+6MlJyV等幅フォントで検索してみました!
しかし、元となる文字列はAPIから取得しているので、
すべてサーバサイドで変換して、横幅をそろえて、
最終的にそろったフォントをテキストメールで送信なんて芸当はできないっぽいですね。。
0564nobodyさん
2010/12/09(木) 21:24:01ID:B+6MlJyVなるほどー。
ちょっと諦めるしかなさげなのですね。
0565nobodyさん
2010/12/10(金) 01:34:55ID:AaQt1j6zこのサイトのFAQのように、
質問をクリックするとすぐ下に答えが表示されるPHPのページを作りたいのですが、
こういったページを作るためのフリー素材を配布しているサイトはありますか?
かなり調べましたが、このような形のFAQをPHPで作る方法が分かりません。
素人でも簡単にカスタマイズできるものを探しています。
くだらない質問ですがなにとぞよろしくお願いします。
0566nobodyさん
2010/12/10(金) 01:59:12ID:???0567nobodyさん
2010/12/10(金) 02:24:10ID:AaQt1j6zレスありがとうございます。
知識が全然ないもので。。
javascriptに関するサイトでここを見れば
馬鹿でも作れるといったサイトはありますか?
できれば教えていただきたいのです。
0568nobodyさん
2010/12/10(金) 02:32:18ID:???実装はJavaScriptで行われている
というか普通そういうのはJavaScript
まずは元となるテキストを用意する
<p id="q1">ウィッグの素材は?<div style="display:none">高級ファイバーを使用し、お洒落で自然なスタイルと立体的で綺麗な髪色を再現しています。</div></p>
あとはこの場所(p)がクリックされたときに中のdivのstyleをdisplayに変更するだけ
逆にdisplayだったときはnoneに戻すことで見えなくなる
JavaScriptのDOM操作を覚えれば簡単
0569nobodyさん
2010/12/10(金) 02:36:23ID:???<script>$("#faq p").click = function(){$("#faq span").toggle();}</script>
jquery使えばこんだけ
後はググれ
0570nobodyさん
2010/12/10(金) 02:42:04ID:???0571nobodyさん
2010/12/10(金) 03:27:32ID:???click=にするんじゃなくて
せめてclick(function(){}):
にすべき
まぁPHPスレでJavaScriptの質問っていうのは
完全にすれちだから誘導すべきなんだけどね
とりあえず>>565はこっちへ移動する事をおすすめする
Webサイト制作初心者用質問スレ part222
ttp://hibari.2ch.net/test/read.cgi/hp/1291304974/
0573nobodyさん
2010/12/10(金) 03:56:53ID:???http://hibari.2ch.net/test/read.cgi/hp/1289130738/
0574nobodyさん
2010/12/10(金) 04:04:53ID:???JSを書いてみたりしてる訳でもないしね
0575565=567
2010/12/10(金) 04:54:02ID:AaQt1j6zこの板のみなさんが優しくて大変助かりました!
アドバイスのおかげでなんとかなりそうです!
0576nobodyさん
2010/12/10(金) 10:15:31ID:5NVSc+YHfopen(ファイルのパス)
file(ファイルのパス)
ってあるんですけど、このパスって絶対パスと相対パスどっちなんでしょうか?
そんでもって絶対パスと相対パスってどっちの方が良いかとかメリットデメリットあります?
0578nobodyさん
2010/12/10(金) 10:33:54ID:5NVSc+YHありがとうございます!
0579nobodyさん
2010/12/10(金) 10:43:42ID:???0580nobodyさん
2010/12/10(金) 10:53:37ID:???結局 dirname(__FILE__)使ったりする。
0581nobodyさん
2010/12/10(金) 12:03:19ID:FHNkWvc0strlen()関数はそのまま使ったら文字数のバイト数を表示するんですよね?
'あいうえお'と入れても10ではなく15バイトと表示されてしまうのですが
0582nobodyさん
2010/12/10(金) 12:05:37ID:oH6UvGx+・したい事
ページ遷移先で$_FILESを有効にしたい。
・問題点
<form action="./" method="POST" id="m-form" enctype="multipart/form-data">
の「enctype="multipart/form-data"」を付け足したのですが、
画面遷移すると文字化け(s-jisで作っていて、UTF-8で表示しているため)します。
その後、ウェブのメニュー画面より、表示->エンコード->s-jisと
したら、「ページの有効期限が切れています。」となります。
どのように解決すればよいかわかりません。
お教えください。よろしくお願いします。
0583581
2010/12/10(金) 12:09:03ID:FHNkWvc0どうすればよいのでしょうか?
0585nobodyさん
2010/12/10(金) 12:18:16ID:FHNkWvc0やはり一文字当たり3バイトになっていまいます・・・。
$contents = htmlspecialchars($_POST['name']);
if(mb_strlen($name) >= 50){
$name = 名前長すぎ;
}
とやってるんですが、全角じゃ16文字が限界で
0586nobodyさん
2010/12/10(金) 12:19:52ID:FHNkWvc0if(mb_strlen($name) >= 50){
$name = 名前長すぎ;
}
です・・・。連続投稿すみません・・・。
0587nobodyさん
2010/12/10(金) 12:23:57ID:???0588nobodyさん
2010/12/10(金) 12:25:10ID:???0590nobodyさん
2010/12/10(金) 12:47:17ID:???UTF-8なら全角=3byteで正解な気が
0591nobodyさん
2010/12/10(金) 12:57:44ID:???UTF-8になかなか統一されない一番の理由はそこにある
0592nobodyさん
2010/12/10(金) 13:00:25ID:???0593582
2010/12/10(金) 13:18:42ID:oH6UvGx+0594nobodyさん
2010/12/10(金) 13:41:15ID:???0595582
2010/12/10(金) 14:32:10ID:oH6UvGx+やってみます。
0597596
2010/12/10(金) 14:54:40ID:???0598nobodyさん
2010/12/10(金) 22:18:42ID:sfMMgbI80599nobodyさん
2010/12/10(金) 22:34:15ID:???0600nobodyさん
2010/12/11(土) 01:23:40ID:???0601nobodyさん
2010/12/11(土) 06:59:44ID:???0602nobodyさん
2010/12/11(土) 09:51:20ID:???0603nobodyさん
2010/12/11(土) 16:00:56ID:???0604nobodyさん
2010/12/11(土) 16:39:46ID:???再利用可能な部品だからいろんな人がお好きに使ってねーって公開してるの
いろんな部品かき集めて作ったら同じクラス名があってうまくインスタンス化できないの
誰が作った部品か書いてあればよかったのになぁと思うわけなの
まぁ普通は他人と衝突しないように作るがどうしても名前が長くなってしまいがち
別に悪くはないけど長くしたところで100%衝突回避できる保証はないからあったほうがいいという話
0605nobodyさん
2010/12/11(土) 17:09:07ID:kZNhymsR【PHPのバージョン】5
【連携ソフトウェア】
【質問内容】
会員登録ページを作りたいのですが、会員数は800人程度なのと
内輪のサークルみたいな感じで不特定の人を相手にする訳ではないのと
頻繁にアクセスされる事もないのでデータベースとかを使うのは
大げさ(自分が扱う自信がない)な感じがしています。
データベースを使わない会員登録&アクセス制限の無料サンプルってないでしょうか?
「会員登録 php」でググってるのですが、中々ヒットしなくて
0606nobodyさん
2010/12/11(土) 17:10:44ID:???0607nobodyさん
2010/12/11(土) 17:54:38ID:???テキストファイルベースでそういうの作る方が難しい
0608605
2010/12/11(土) 18:02:38ID:kZNhymsRDB使った方が良いですか。
先程からググってるんですが、なんかこれだってのが
見つからないんで、お勧めあったら教えて下さい。
今から、本屋行ってphpの本漁ってきます。
0609nobodyさん
2010/12/11(土) 18:03:31ID:???0610nobodyさん
2010/12/11(土) 18:07:09ID:???あとの管理も楽。
0611nobodyさん
2010/12/11(土) 18:09:13ID:???というわけでDBを使う気があるのならxoopsみたいなものをインストールしたほうが早いんでは?
0612nobodyさん
2010/12/11(土) 18:23:10ID:???ショッピングカートとか探して参考にしてみれば?
0614nobodyさん
2010/12/11(土) 18:31:33ID:6a9fgwGZ0615nobodyさん
2010/12/11(土) 18:52:14ID:???DBを使うことが大げさとは思わないけど、DBを避けて作ることも可
サンプル探す時は「会員登録」に拘るんじゃなくて
構成の似ているものを探せばすぐ流用できるのは出てくる。
0616nobodyさん
2010/12/11(土) 19:07:53ID:???単にDB使う前に二の足踏んでるだけの人に
なんでそんなこと薦めるんだよ
あとあとのこと考えれば明らかにDB使わないほうが
ややこしいっつーの
0617nobodyさん
2010/12/11(土) 19:18:05ID:???・仲間内
・管理者は一人
じゃあEXCELで十分。
0618nobodyさん
2010/12/11(土) 19:31:25ID:???0619nobodyさん
2010/12/11(土) 19:34:36ID:???0620nobodyさん
2010/12/11(土) 20:25:10ID:???0621nobodyさん
2010/12/11(土) 20:39:59ID:???0622nobodyさん
2010/12/11(土) 20:56:54ID:???アクセス制限とはまた別の話
0624nobodyさん
2010/12/11(土) 22:03:24ID:???使っても作れるし、使わなくても作れる、つまり別の物だろ。
0625nobodyさん
2010/12/11(土) 22:50:31ID:???↑これ形容詞なのかwww
0626nobodyさん
2010/12/11(土) 23:10:05ID:???0627nobodyさん
2010/12/11(土) 23:52:26ID:???0628nobodyさん
2010/12/12(日) 03:10:46ID:upsovo/5$text = <<EOL
この中でphpのif文などを使いたい
EOL;
のですが可能ですか?
0629nobodyさん
2010/12/12(日) 03:19:25ID:???ファイルの方が手っ取り早くね
アカウント作成
touch($user)
アカウント削除
unlink($user)
アカウント確認
file_get_contents($user)
パスワードはファイル内にでも書いとけってことで
0630nobodyさん
2010/12/12(日) 03:43:01ID:???あなたがやりたいのは
$text = "この中でphpのif文などを使いたい";
と同じこと。途中でif文を使いたいなら分割しましょう。
ちなみにヒアドキュメントは"<<<"です。
$text = <<<EOL
・・・
EOL;
if(〜){
$text .= <<<EOL
・・・
EOL;
}else{
$text .= <<<EOL
・・・
EOL;
}
0631nobodyさん
2010/12/12(日) 04:25:43ID:upsovo/5本当にありがとうございます
0632nobodyさん
2010/12/12(日) 14:41:37ID:p55fUIgB0633nobodyさん
2010/12/12(日) 14:51:35ID:N/dcrvR40634nobodyさん
2010/12/12(日) 14:52:48ID:???0635nobodyさん
2010/12/12(日) 14:53:47ID:???0636nobodyさん
2010/12/12(日) 16:34:39ID:???0637nobodyさん
2010/12/12(日) 16:38:08ID:oK+8zv6U0638nobodyさん
2010/12/12(日) 18:21:06ID:???while(1) {
if () {
return;
}
}
}
後ろに処理がなかったらbreakの代わりにreturn使ったりするな
ちなみに俺はループは無限ループにして
中で抜ける条件を書く異端者なので参考にしないほうがいい
0639nobodyさん
2010/12/12(日) 18:27:51ID:???まぁ参考にはしないほうがいいなw
0640nobodyさん
2010/12/12(日) 18:31:03ID:???商売なら別だけどね
0641nobodyさん
2010/12/12(日) 19:29:47ID:???改造の時に困るぞ。
0642nobodyさん
2010/12/12(日) 22:53:47ID:G6vvlQR5a.txt
1列目,2列目
ID,001
name,名前
(行列可変)
のような複数のデータファイルがあります。
これを複数同時に読み込みたいので下記の関数作ってみたけどうまくいきませんでした。
$dataに連想配列が返ってくるようにはどうしたらよいでしょうか?
$read_file = array("a.txt","b.txt");
function Read($read_file){
foreach($read_file as $key){
$str = @file_get_contents($key);
$array = explode("\r\n", $str);
foreach($array as $koumoku => $value){
if($value){
$item = explode(',', $value) ;
$data[$key][$item[0]] = $item[1];
echo $data[$key][$item[0]]."<BR>";
}}}
return $data;
}
var_dump($data);
------
0643nobodyさん
2010/12/12(日) 23:26:41ID:???あとfgetcsvを知っておくとともっと楽にできるかもしれない
0644nobodyさん
2010/12/12(日) 23:32:39ID:G6vvlQR5global $data
っての追加したらできました。
>>643
呼び出し部分はここのコピぺし忘れただけです;
fgetcsv調べてみます
ありがとうございます。
0645nobodyさん
2010/12/12(日) 23:53:05ID:???0646nobodyさん
2010/12/13(月) 00:06:22ID:???0647nobodyさん
2010/12/13(月) 07:58:36ID:???global 彼女の部屋
0648nobodyさん
2010/12/13(月) 08:59:07ID:???0649nobodyさん
2010/12/13(月) 10:42:41ID:???0650nobodyさん
2010/12/13(月) 11:15:55ID:???おや・・・知らない男の写真がたくさん出てきたぞ
0654nobodyさん
2010/12/13(月) 13:13:46ID:???実際には一度全てのパターンマッチを取得してからWHEREでキーの一致する部分を検索してたんだな
そりゃ思いはずだ
0655nobodyさん
2010/12/13(月) 17:57:30ID:???MySQL 総合 Part18
http://hibari.2ch.net/test/read.cgi/db/1276247839/l50
0656nobodyさん
2010/12/13(月) 19:51:50ID:3wG2VAx5PHP5.3.3
Apache2.2.17
この環境で拡張子htmlのファイルからテキストデータを拡張子phpのスクリプトに送信すると何故かダウンロードダイアログが出てしまいます
php→phpだと特に問題ないのですが何か設定するべき箇所はありますか?
0657nobodyさん
2010/12/13(月) 20:04:02ID:???あとはエスパーに任せたw
0658nobodyさん
2010/12/13(月) 20:31:58ID:X4P4A1O7> テキストデータを拡張子phpのスクリプトに送信する
この部分についての具体的な記載をお願いします。
>> テキストデータを送信する、拡張子phpのスクリプトに
どの様な方法で、どの様なテキストデータを送信しているかが判然としません。
0659nobodyさん
2010/12/13(月) 20:33:41ID:???>> 拡張子phpのスクリプトで受信する
考えがあると思いますが、どのようなテクストデータを
どの様に受信する考えでしょうか?
質問が漠然とし過ぎていて、回答が得難いと考えます。
0660nobodyさん
2010/12/13(月) 20:47:57ID:3wG2VAx5漠然としすぎましたね申し訳ないです
具体的なソースを書くと
A.html
<FORM method='post' action='B.php'>"
<input type='text' name='a'>"
<BR>"
<input type='submit' value='送信'>"
</FORM>"
このフォームで作ったテキストデータを
B.php
<?php
print $_POST["a"];
?>
このスクリプトにPOSTで送信して表示させたかったのですがAがhtmlだとダウンロードダイアログが開いてしまいます
A.htmlを
<?php
echo "<FORM method='post' action='uke.php'>";
echo "<input type='text' name='a'>";
echo "<BR>";
echo "<input type='submit' value='送信'>";
echo "</FORM>";
?>
の様にphpソースに書き換えるとB.phpに問題無く送信出来て表示も出来るのでapacheのhttpd.conf等に何か記述漏れがあるのかと思い質問させて頂きました
0661nobodyさん
2010/12/13(月) 21:00:56ID:???0662nobodyさん
2010/12/13(月) 21:05:18ID:???0663nobodyさん
2010/12/13(月) 22:09:59ID:3wG2VAx5原因はhtmlファイルにhttp://localhost/〜経由でアクセスしていたのではなくhtmlなのをいいことに直接ファイルをクリックしていたのが悪かったみたいです
0664nobodyさん
2010/12/13(月) 22:11:53ID:???0665nobodyさん
2010/12/13(月) 22:20:58ID:???自鯖でR15秒更新のチャートをGDで作っているんだけどたまに重いときがあるんだ。
理由がさっぱりわからない。だれか理由はわかりませんか?
0667nobodyさん
2010/12/13(月) 22:45:49ID:???1 SJISでファイル名を返す
2 URL EncodeしたUTF8文字列を返す
双方試したのですが、ファイル名に半角スペースを含む場合
1はアンダーバーに変更される
2は+のままになる
という症状になってしまいます。
スペースのままファイル名を付けるいい方法はないでしょうか?
0669nobodyさん
2010/12/13(月) 23:04:39ID:???0672nobodyさん
2010/12/14(火) 06:41:40ID:l3lG4ooAその際のエラーチェックやセキュリティはPHPで行うのと、JavaScriptで行うのどっちがいいのでしょうか?
自分的にはクライアント側でやったほうがサーバーの負荷が少なくて済むと思うのですが
サーバー側でやった方がセキュリティ方面で良かったりします?
0673nobodyさん
2010/12/14(火) 06:56:20ID:???JavaScriptで送信するようにしてもクライアントのみのチェックはやってはいけない
最終的に判断するのはサーバであるべき
クライアント側はあくまでも補佐であることを忘れてはならない
(送信→失敗→再送信→失敗→再送信・・・といったことを少なくするための)
0674nobodyさん
2010/12/14(火) 07:08:01ID:P37GDDtJ> エラーチェックやセキュリティ
何を基準にエラーやセキュリティと述べているかが判然としません。
0675nobodyさん
2010/12/14(火) 07:19:58ID:l3lG4ooAなるほど!ありがとうございます!
0676nobodyさん
2010/12/14(火) 07:23:12ID:???Javascriptだけのチェックじゃ>>673の言うとおり切ってりゃすぐ抜けられる
だけどJavaScriptでもチェックできるようにしたらサーバーへの負担も少なくなるしクライアントも楽
サーバーの補佐としてJavaScriptを入れておくことを薦める
0677nobodyさん
2010/12/14(火) 08:13:37ID:???0678nobodyさん
2010/12/14(火) 09:11:52ID:???mixiとか
0679nobodyさん
2010/12/14(火) 09:38:52ID:???データベースに照合してかぶってないか確認するような場合はそもそもJavaScriptじゃ無理だし
文字数やら型やら調べるだけなら負荷とか考える必要もない
0680nobodyさん
2010/12/14(火) 09:40:48ID:???セキュリティなど悪意のあるユーザ対策はサーバー側(PHP)
かな
0681nobodyさん
2010/12/14(火) 09:43:33ID:???入力間違いをJavaScriptを無効化されてすり抜けた場合間違ったまま登録できてしまう
0682nobodyさん
2010/12/14(火) 10:12:25ID:???サーバー側で処理をする上でのチェックは、使用者をサポートすることは考えません。
サーバー側での処理を考えてのチェックであり、チェックする目的が違っています。
0683nobodyさん
2010/12/14(火) 10:28:05ID:???サーバーでのチェックなんて時代遅れ。
全てJavascript+Ajaxでやるのが正解。
0684nobodyさん
2010/12/14(火) 10:30:06ID:???頭悪いの丸出しだぞ
Ajaxの定義をしっかり持ってこい
どちらにせよ、サーバーサイドで全て行い、クライアントにも使いやすいようにJavaScriptでもするのがいいんじゃないかな?
0685nobodyさん
2010/12/14(火) 10:44:43ID:???ひさびさに笑わせてもらった
0687nobodyさん
2010/12/14(火) 10:49:11ID:???Ajaxで十分。
0688nobodyさん
2010/12/14(火) 10:50:27ID:???0689nobodyさん
2010/12/14(火) 10:50:50ID:???0690nobodyさん
2010/12/14(火) 10:51:56ID:???file_get_contentsで内容までは読む必要はありません。
>>683
それは何処からどうみても間違い
0691nobodyさん
2010/12/14(火) 10:54:30ID:???しかし関数名とは裏腹にGETリクエストしてるって数スレ前で指摘されてたのが気になるところ
curlでheadリクエストしたほうがいいかも
0693nobodyさん
2010/12/14(火) 10:55:50ID:???0696nobodyさん
2010/12/14(火) 10:58:06ID:???0697nobodyさん
2010/12/14(火) 10:58:49ID:???0698nobodyさん
2010/12/14(火) 10:59:45ID:???0699nobodyさん
2010/12/14(火) 11:09:48ID:???誰も質問してねぇし。
おもいら揃いも揃ってクズだな。ここまでひどいとは思わなかったよ。
PHPなんかもう古いだろ。これからはAjaxらしいから勉強したほうがいいぞ。
0703nobodyさん
2010/12/14(火) 11:17:41ID:u6a6HqKY0705nobodyさん
2010/12/14(火) 11:18:19ID:???0706nobodyさん
2010/12/14(火) 11:19:10ID:???0707nobodyさん
2010/12/14(火) 11:20:16ID:???本当にいつもの脳がメルトダウンしてるやつだったか
こんな低レベルが煽りに駐留してるなんてもうPHPスレもだめかもわからんね
0708nobodyさん
2010/12/14(火) 11:24:34ID:???0709nobodyさん
2010/12/14(火) 11:30:37ID:u6a6HqKY入力された文字を保存するテキストファイルはANSIで保存
そんでそのテキストファイルを表示する時はまたUTF-8という感じにしたいのですが
ANSIで表示できないUTF-8の特殊文字(例:?)だけを?と変換して保存し
更にソレをUTF-8とかでブラウザーでちゃんと元の特殊文字で表示されるようにするにはどうしたらよいのでしょう?
0710nobodyさん
2010/12/14(火) 11:30:49ID:???0711nobodyさん
2010/12/14(火) 11:31:23ID:???ID???とかマジで油豚みたいなの擁護してるだけとしか思えん
0712nobodyさん
2010/12/14(火) 11:33:29ID:???0713nobodyさん
2010/12/14(火) 11:37:56ID:???> 入力するときはUTF-8
これはクライアント側で入力するときにUTF-8と言う意味ですか?
サーバー側で受け、PHPに渡されるときのコード体系がUTF-8と言う意味ですか?
> 入力された文字を保存するテキストファイルはANSIで保存
これはサーバー側でPHPにて、テキストファイルとして保存することを述べていますか?
> そんでそのテキストファイルを表示する時はまたUTF-8という感じにしたいのですが
「テキストファイルを表示する」とはPHPで表示するという意味ですか?
サーバー側でサーバーの端末に表示するんですか?
それとも入力に使用したクライアント側で表示することを意図していますか?
どこでPHPが関わってくるのか、クライアント側、サーバー側がどこで関わるのか、
それらを明確にすることで、あなたが意図する回答も得やすいと思います。
0716nobodyさん
2010/12/14(火) 11:44:49ID:u6a6HqKYすみません、説明不足でした
入力する時というのはクライアント側で、という意味です。そしてその文字列をPHPでサーバーに送ります
そしてサーバーにテキストファイルとして保存する時ANSIで、という事です
PHPでテキストファイルを読み込んで表示するという意味です
0717nobodyさん
2010/12/14(火) 11:45:52ID:???逆なんだよなぁココ
0718nobodyさん
2010/12/14(火) 11:45:59ID:???ANSIで保存というのはどういうことでしょうか。
実は別に変換して保存しなくてもいいのではないですか?
utf8そのまま表示すればいいんだし。
文字コード変換で、指定されたコードで変換できない文字を別の表現に変えて保存したりすることはありますが。
なんでそんな変換をしないといけないと思ったか書いてもらえるといいかも。
0719nobodyさん
2010/12/14(火) 11:49:59ID:???0720nobodyさん
2010/12/14(火) 11:50:34ID:???それでPHPで読むとき解凍すればいい
0721nobodyさん
2010/12/14(火) 11:51:12ID:u6a6HqKYUTF-8だと全角文字の容量が3バイトだったりして100MBの全角文字が150Mになったりするので
だけどUnicodeの特殊文字も使いたい、という訳です
そんで記号とか普通の文字はANSIでそのまま、Unicode特有の特殊文字は#8492とか変換してANSIのテキストファイルで保存したいな
という事です
0722nobodyさん
2010/12/14(火) 11:53:01ID:???池沼にとっては足りない脳みそを補うために必要なものだ
回答者が質問者に追加情報聞き出すために質問→質問はID出せ
質問者への回答→Ajax使え
煽りへの対抗→Ajax知らねえだけだろ自分でググレ
0723718
2010/12/14(火) 11:54:36ID:???まずANSIってのやめましょうよ。
>>720のエスパーに敬意を表して、ファイルごと圧縮すれば?
たとえば3バイト文字だけ選んで記号化しても3バイトで収まらないっすよ?
0724nobodyさん
2010/12/14(火) 11:59:34ID:???サーバーでの容量を気にしている時点でPHPうんぬんから視点を変えることをお勧めします。
サーバーの容量をPHPプログラミングで救済するよりはサーバーの増強を検討した方が良いと思います。
容量が大きなファイルを取り扱うのならば見合ったサーバー構成にすることが望ましいです。
0725nobodyさん
2010/12/14(火) 12:04:20ID:???2chのログってJISで保存してたと思うけど
unicodeがonになってる板はutf8とかでログ保存してんの?
0726nobodyさん
2010/12/14(火) 12:07:43ID:???0727nobodyさん
2010/12/14(火) 12:17:45ID:???別表記(たとえば数値実体参照)でって方法もあるけど。
mb_substitute_characterでlong指定とか。
0728nobodyさん
2010/12/14(火) 12:35:08ID:???2chみたいに
ログ→数値
ブラウザ→表示
でも入力する時コードで入力しないとダメだけど
0729nobodyさん
2010/12/14(火) 12:40:56ID:???>数値実体参照
>数値実体参照
0730nobodyさん
2010/12/14(火) 12:43:15ID:???ログも全部UTF-8でいいよJISなんて携帯が足引っ張ってるだけなんだし
0731nobodyさん
2010/12/14(火) 12:45:39ID:???0732nobodyさん
2010/12/14(火) 13:06:00ID:???どっちが数値でどっちが文字かわかんねぇが。
0733nobodyさん
2010/12/14(火) 13:16:48ID:???0734nobodyさん
2010/12/14(火) 13:17:19ID:???0735nobodyさん
2010/12/14(火) 13:19:27ID:???0736nobodyさん
2010/12/14(火) 13:22:06ID:???0737nobodyさん
2010/12/14(火) 13:36:45ID:???あ1で8バイトだ
0738nobodyさん
2010/12/14(火) 13:38:58ID:???0739nobodyさん
2010/12/14(火) 13:43:33ID:???0740nobodyさん
2010/12/14(火) 13:46:05ID:???時代はAjaxだろ
0741nobodyさん
2010/12/14(火) 13:47:59ID:???あいうえお→10バイト
あ1→3バイトじゃないの?
ちょっとまた容量増えるってどういうことだ、ANSIとJISの違いがわからない俺に説明してくれ
0742nobodyさん
2010/12/14(火) 13:49:04ID:???0743nobodyさん
2010/12/14(火) 13:51:03ID:???ごめん1バイト間違えたのでついでに解説
こっから漢字な:1B 24 42
あ:24 22
漢字ここまでな:1B 28 4A
1:31
で9バイトっす
0744nobodyさん
2010/12/14(火) 13:53:48ID:???<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
↑
テキストは自動的にANISで保存される
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
↑
テキストは自動的にUTF-8で保存される
っていう無知無知ギャルな認識してんだけどコレ合ってんの?
0745nobodyさん
2010/12/14(火) 13:55:25ID:???0746nobodyさん
2010/12/14(火) 13:56:39ID:???文字コードを指定すると、自動でそのタグ書いてくれる
アプリなら見たことあるけど、それを書くと自動で
文字コードを変更してくれるアプリは見たこと無い。
あるの?
0747nobodyさん
2010/12/14(火) 13:59:05ID:???それはブラウザで表示するテキストの文字コードじゃないか?
保存されている文字コードに合わせて、そのタグを書いてやるとブラウザがそれを参考に出力してくれる。
0749nobodyさん
2010/12/14(火) 14:01:17ID:???笑って良いがutf-8で行うとテキストが勝手にUTF-8で保存されてて
Shift_JISで行うとテキストが勝手にANSIで保存されてたっていう体験談でそう決めてた
まぁutf-8の場合unicode形式の文字送ったらテキストがUTF-8になって
Shift_JISでunicode形式の文字送ったらそのままANSIで数値実体参照変換されたんだろうって事だろうけど
0751nobodyさん
2010/12/14(火) 14:02:44ID:???0752nobodyさん
2010/12/14(火) 14:02:53ID:???0753nobodyさん
2010/12/14(火) 14:04:28ID:???雑談もどきを重ねるならば、このスレでやると喜ばれると思いました。
俺が初心者にPHPを伝授する
http://hibari.2ch.net/test/read.cgi/php/1167984858/l50
IDを晒して質問する初心者を、生温かく受け入れてみたい年頃なのです。
0755nobodyさん
2010/12/14(火) 14:06:49ID:???うっわ過疎ってんな
っていうか初心者質問スレしか専門板にぎわってないんだよな
PHPについて適度な雑談するときも質問スレになっちゃってるし
初心者に優しくしてるとソイツが段々力付けてここの住人になってくれてにぎわうとゆー
0756nobodyさん
2010/12/14(火) 14:08:57ID:???これで新規は質問スレにしか寄り付かないからな
0757nobodyさん
2010/12/14(火) 14:12:52ID:???<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
でも「unicodeが含まれててもANSIで保存するぜ俺のphpは!」なんて事できんの?
何か俺ID出して質問したほうがいい気がしてきた・・・。
0758nobodyさん
2010/12/14(火) 14:13:49ID:???0760nobodyさん
2010/12/14(火) 14:22:18ID:???0761nobodyさん
2010/12/14(火) 14:24:50ID:???0762nobodyさん
2010/12/14(火) 14:32:53ID:???そんでcharset=Shift_JIS"だとunicodeの文字を送るとサーバーは認識できないからANSIのテキストに変換されて保存される
charset=utf-8だとunicodeの文字を送るとサーバーは認識してテキストファイルにunicodeの文字でUTF8のテキストにそのまま保存される
ふぅ、まぁこんな所だ
んでUTF-8でunicode送ってもテキストファイルAはNSIのまま保存?
それは文字列の文字コード変換でも使えばいいんじゃねーの?
0763nobodyさん
2010/12/14(火) 14:33:34ID:???ほれ
<?php
mb_language("Japanese");
$a = "hoge.txt";
touch($a); //文字コードはOS依存(デスクトップで右クリ→ファイルを作成状態)
$s = mb_convert_encoding("あいうえお", "UTF-8", "auto");
file_put_contents($a, $s); //ここでUTF-8になる
0764nobodyさん
2010/12/14(火) 14:39:04ID:???mb_detect_encodingで誤検出大作したほうがいいかも
0765nobodyさん
2010/12/14(火) 14:45:10ID:???ウインドウズのメモ帳とかの話?
そしたら、そのまま保存すれば Shift_JISになります。
もちろん2バイト文字が入ってなければ ANSIコードで書かれたファイルと言ってもいいですけど。
ファイルの文字コードなんてないんだよ。なんの文字コードでかいてあるか、中身みないとわからないから
もしくは、読んでもわからないから文字化けするんだよ。
だから、このファイルはこの文字コードで書いたからなって指定するんだよ。
メモ帳で charset=utf-8 っていれて保存したのブラウザで見れば化けまっせ。
PHP関係ないな。
0767nobodyさん
2010/12/14(火) 15:08:07ID:???abcde あいうえお
ANIS 5 10
UTF-8 5 15
だけどサーバー上は関係ねーからな
例えばレスしてログ作ってもunicodeがそのまま保存されても変換されても同じ
0770nobodyさん
2010/12/14(火) 16:23:12ID:???0771nobodyさん
2010/12/14(火) 16:44:53ID:???0773nobodyさん
2010/12/14(火) 17:26:56ID:???ANSIって1バイトコードのことだったような気がするんだが
0775nobodyさん
2010/12/14(火) 17:37:00ID:???確認や!
0776nobodyさん
2010/12/14(火) 17:40:37ID:???0777nobodyさん
2010/12/14(火) 17:42:13ID:???0778nobodyさん
2010/12/14(火) 17:45:41ID:???0779nobodyさん
2010/12/14(火) 17:46:36ID:???変換されるって言ってるけど、何が変換してると思ってるんです?
メモ帳で漢字書きますよね? 1って打ったら31ってコードがはいるでしょ?
あって打ったら 82A0が入るわけでそれで終わり。 そのまま保存されるし、
そのファイル読み込んで表示しても何にも変わらない。PHPが処理しようがなにしようが。
ブラウザで表示させてもブラウザに渡されるのは 3182A0
これを 1あ って表示するかどうかはブラウザがこれはshift-jisだって教えてもらってた場合だけ。
0780nobodyさん
2010/12/14(火) 17:54:34ID:???その理屈でいうならwindowsは内部がunicodeであってメモ帳で保存するときに
指定した文字コードへ変換されるんだが
俺はメモ帳でもUTF-8で保存するけどな
0781nobodyさん
2010/12/14(火) 18:02:10ID:???0783nobodyさん
2010/12/14(火) 18:14:13ID:???>>780
内部がunicodeなら開く時に文字化けしています。
0784nobodyさん
2010/12/14(火) 18:23:49ID:???メモ帳でUTF-8で保存するとBOMでろくなことにならんけどな。
ANSIやっとわかったよ。
メモ帳で CP932で保存するのをANSIって選択させやがるのなwwww
0785nobodyさん
2010/12/14(火) 18:30:18ID:???0786nobodyさん
2010/12/14(火) 18:32:51ID:???0787nobodyさん
2010/12/14(火) 18:40:35ID:???内部ってファイル内部じゃなくてメモリの話ね
うさみみハリケーンで調べたけどメモリではUTF-16のLEで格納されてた
0788nobodyさん
2010/12/14(火) 18:44:38ID:???<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
でフォームからあ*1000を送ってテキストに保存させたら2KB
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
でフォームからあ*1000を送ってテキストに保存させたら3KBだった
0789nobodyさん
2010/12/14(火) 18:46:43ID:???わからんよw
0790nobodyさん
2010/12/14(火) 18:49:02ID:???少なくとも4人は全く別の話してるぞ!
0791nobodyさん
2010/12/14(火) 18:50:38ID:???できなきゃここでいろいろ知るのは無理だw
まともに答えてるの俺ともう一人しかいないけどな。
0792nobodyさん
2010/12/14(火) 18:51:19ID:???0793nobodyさん
2010/12/14(火) 18:54:07ID:???0794nobodyさん
2010/12/14(火) 19:03:41ID:???0795nobodyさん
2010/12/14(火) 19:07:16ID:???0796nobodyさん
2010/12/14(火) 19:09:31ID:???0797nobodyさん
2010/12/14(火) 19:12:13ID:???UTF-8は全角文字1個ごとに制御文字つけるからバイト数がかさむ
UTF-16は全部2バイトコードにしてあたまに制御文字つけるだけ
そのかわり1バイト文字も2バイトになる
全角文字ばかりならUTF-16で保存すればShift-JISとあまり変わらない
ただPHPだとUTF-16ってイマイチ扱いづらそうな印象なんだがどうなんだろうな
0799nobodyさん
2010/12/14(火) 19:25:46ID:???サーバからはレスポンスとしてXMLを送ってもらい(プレーンテキストなら何でもいいが)
そのXML(プレーンテキスト)を解釈して結果をJavaScript側で判断するってのが流れだ
サーバに問い合わせる内容が例えばユーザ名の重複チェックだった場合
PHPへリクエストを送りPHPからRDBMSへユーザの照会を行い
重複してるかしてないかの結果と何か便利な付加的な情報があれば加えて
それらRDBMSから取得した情報をXML(実際はry)として送出(レスポンス)する
このように動的にXMLなどのデータを作成して送る必要があるため
必ずサーバサイドの言語と連携する必要がある
俺ってやさしいね
0800nobodyさん
2010/12/14(火) 19:27:21ID:???0801nobodyさん
2010/12/14(火) 19:28:03ID:???0802nobodyさん
2010/12/14(火) 19:37:11ID:xhJxB9zDXAMPPを使ってローカルである程度の動きを実装したいと考えていますが
フォルダの階層を表示するときに
Linuxだと/、windowsだと\になります。当然ですが。
プログラム中でファイルをインクルードするときに
パスを記述するときにこの違いはどの様にして対応してますか?
DIRECTORY_SEPARATORをつかってパスを記載してますか?
PHPの設定ファイルとかで簡単にパスの区切り文字を
windowsでも/にする方法とかはありますか?
0803nobodyさん
2010/12/14(火) 19:38:21ID:???ごめんねUTF-8ちゃん
0804nobodyさん
2010/12/14(火) 19:41:35ID:???0805nobodyさん
2010/12/14(火) 19:43:26ID:???絶対パスに指定するとしても1箇所のみでそこは
DIRECTORY_SEPARATORを使って書く
0806nobodyさん
2010/12/14(火) 20:01:09ID:???なんでwindows版の開発環境使うんだろうか
0807nobodyさん
2010/12/14(火) 20:33:06ID:???仮想マシンにあるフォルダの共有機能使ってUbuntuで動かしてるわ
0809nobodyさん
2010/12/14(火) 20:42:54ID:???0810nobodyさん
2010/12/14(火) 20:43:58ID:???DIRECTORY_SEPARATOR 使ってるよ
ただインクルードについては、include_pathに入れちゃうからパス指定はしてない。
0811サーバー”管理”
2010/12/14(火) 20:46:08ID:???0812nobodyさん
2010/12/14(火) 20:49:58ID:???>>802さんは「Linuxで動くシステム」と言っているので
それならローカル環境も、極力本番に近いLinuxにしたらという事を
>>806-807さんは言っているのだと思います。
0813nobodyさん
2010/12/14(火) 20:53:37ID:???これを参考にして他の回答者はまともな文章を書きましょう
0814nobodyさん
2010/12/14(火) 20:58:13ID:???0815nobodyさん
2010/12/14(火) 21:13:35ID:???0816nobodyさん
2010/12/15(水) 01:02:35ID:???以下の命令を実行すると
$sql = " select log_id, name, mail_address from tokai_member ";
$sql.= " where log_id= '" . $_SESSION["log_id"] . "'";
$res = mysql_query( $sql );
$count = 0;
$info = mysql_fetch_array( $res ) ;
$info["log_id"] $info["name"] $info["mail_address"] にはデータが入るのですが
$sql = " select log_id, name, mail_address from tokai_member ";を
$sql = " select * from tokai_member "; に変えると $info["mail_address"] にだけ、
値が入らないのですが、何が間違えなのさっぱり分かりません。
データベースの方の設定で「*」の時は取得できない設定とかってあるのでしょうか。
環境はWinXp、xamppのmysqlを使っています。
よろしくお願いします。
0818nobodyさん
2010/12/15(水) 01:15:10ID:V9crItGv【OS名】WindowsXP
【PHPのバージョン】5
【連携ソフトウェア】MySQL
【質問内容】
mysqlスレに質問するべきかもしれないのですが、
以下の命令を実行すると
$sql = " select log_id, name, mail_address from tokai_member ";
$sql.= " where log_id= '" . $_SESSION["log_id"] . "'";
$res = mysql_query( $sql );
$count = 0;
$info = mysql_fetch_array( $res ) ;
$info["log_id"] $info["name"] $info["mail_address"] にはデータが入るのですが
$sql = " select log_id, name, mail_address from tokai_member ";を
$sql = " select * from tokai_member "; に変えると $info["mail_address"] にだけ、
値が入らないのですが、何が間違えなのさっぱり分かりません。
データベースの方の設定で「*」の時は取得できない設定とかってあるのでしょうか。
0820nobodyさん
2010/12/15(水) 04:11:52ID:???0821nobodyさん
2010/12/15(水) 07:48:29ID:???0822nobodyさん
2010/12/15(水) 08:47:47ID:24J/DfE6PHPで皆がMySQLとかに自分の情報を書き込むサイトを作ってるのですが
この場合、PHPはアクセス制限かけた所に保存して、書き込みフォームで引き出すという方がいいでしょうか?
それともそのまま書き込みフォームにphpを記入してもいいのでしょうか?
安全面から見るとどっちの方がいいんでしょう?
0823nobodyさん
2010/12/15(水) 09:07:07ID:???要するに、public下にスクリプトを置くか、
public下ではhtmlレベルでrequire_onceかなんかでphpを呼び出すかってことかな?
どっちも一緒
0824818
2010/12/15(水) 09:22:44ID:V9crItGvphpmyadminでの操作では、問題ありません。
phpmyadminのsql画面で同じsql文を実行すると、3項目出てきます。
mysql_fetch_assocというのは、知らなかったので
調べてやってみます。
0825nobodyさん
2010/12/15(水) 09:23:21ID:24J/DfE6すみません、publicって皆がアクセスできるところでしたっけ?
とりあえずCGIってcgi-binってフォルダがあってそこに入れる感じじゃないですか?そしてそのフォルダに属性でアクセス制限かけたり
だけどphpってHTMLにそのまま記入してますが大丈夫なんですか?っていう感じです、説明足りずスミマセン
自分はcgiみたいにアクセス制限かけた所に呼び出すphp保存して、phpでではrequire_onceやinclude_onceで呼び出した方が安全に思えるんですが
どっちも一緒なのですか
0826nobodyさん
2010/12/15(水) 09:26:37ID:???CGIが家で全裸露出するとしたら
PHPは透明人間になって駅前で全裸露出する感じ
0827nobodyさん
2010/12/15(水) 09:28:23ID:???連用して使う感じだからそんな安全重視とかって感じではない
だからこそphpはセキュリティをしっかりやらなければならない
0829nobodyさん
2010/12/15(水) 09:35:26ID:24J/DfE6解りやすいたとえありがとうございます!
0831nobodyさん
2010/12/15(水) 09:48:59ID:???リスクは一緒。
0832nobodyさん
2010/12/15(水) 09:53:44ID:???0833nobodyさん
2010/12/15(水) 10:00:38ID:???0834nobodyさん
2010/12/15(水) 10:18:05ID:V9crItGvレス、ありがとうございます。
mail_addressは1つしかありません。
phpmyadminでのsql実行や、「*」を使わずカラム指定した時は
正常に見えるので構造定義等は間違っていないと思いたいのですが。。。
他のカラムと違うのはmail_addressを主キーに指定しているくらいです。
0835nobodyさん
2010/12/15(水) 10:48:14ID:???0836nobodyさん
2010/12/15(水) 10:56:45ID:???フィールドを指定したときと*の場合で読む順序が変わってるだけかと。
確かめてみたらプライマリキーを指定したときはプライマリキーの順番、
*やプライマリキーを出力に指定してない場合はINSERTした順番のような感じだった。
なので、835に一票
0837nobodyさん
2010/12/15(水) 11:06:51ID:???警告でるし、そのときはNULLのはず。
DBでNULLならNULLだけど。
0838nobodyさん
2010/12/15(水) 11:13:25ID:V9crItGvレス、ありがとうございます。
>>それって単にSQLの最初の一行目のmail_addressが空なだけなんじゃねw
最初のレコードのmail_addressカラムにデータが入ってないと言うことでしょうか。
データ自体は入っています。(テスト中で3件しかないので)
836さんの言われてることは、mail_addressカラムに全部データが入っていれば
問題ないのですよね。
ただ、 >>プライマリキーを出力に指定してない場合 って言うのが、よく分かりません。
出力する、しないが指定できるのでしょうか?
ちょっと、ググって来ます。
0840nobodyさん
2010/12/15(水) 11:53:05ID:MdJi7P3P【PHPのバージョン】5.3
【連携ソフトウェア】Apache, MySQL
【質問内容】
超ローカルcatv接続なのに規制されました(泣
phpを使って規制解除をしてもらう方法を教えてください
0841nobodyさん
2010/12/15(水) 12:01:17ID:???0842nobodyさん
2010/12/15(水) 12:54:05ID:???$class = new {var $m_name = "value"};
>>838
あとは凡ミスしか考えられない
色々と弄り回しているんだろうからデータも再確認した方がいいかも
0844nobodyさん
2010/12/15(水) 13:12:58ID:???> $info["mail_address"] にだけ値が入らない
どのようにして、「値が入らない」ことを確認していますか?
実は値が入っていても、「入っていない」と誤って認識してしまうプログラミングをしている可能性はありませんか?
0845nobodyさん
2010/12/15(水) 13:20:44ID:???0846nobodyさん
2010/12/15(水) 13:26:38ID:???>>842
一応あるといっていいのか謎な物はある
$class = new stdClass();
$class->m_name = "value";
こんな感じでプロパティを追加してく
メソッドも一応関数使って追加できたはず
0847nobodyさん
2010/12/15(水) 14:55:36ID:V9crItGvレス、ありがとうございます。
print($info["mail_address"]); とやって確認しています。
他のデータは表示されます。
ここまで来ると凡ミスだと思います。
問題の行の「*」を各カラム指定に変えると、正しく取得できるので
他の行でミスをしてるとは考えづらいのですが、多分、ほんの些細なこと
で引っかかってると思います。
もう一度、しっかりプログラムをチェックしてみます。
0848nobodyさん
2010/12/15(水) 15:02:20ID:???プログラムの見直しなどを行って、それでも本当に値が入っていないと判断できたならば、
$info["mail_address"] がどんな状態になっているかを調べませんか?
そして、調べた結果をこのスレに書いてもらえますか?
私個人の経験ではありえない状況であるので、是非にとも、一つの知識として得ておきたいと思いました。
厚かましいお願いで申し訳ありませんが、宜しくお願いします。
0849nobodyさん
2010/12/15(水) 15:33:06ID:???0850nobodyさん
2010/12/15(水) 17:03:42ID:???可能ならDBのテーブル構造を示したほうが参考になるかも。
$info["mail_address"]だけが空というのは原因が想像できないので
フィールド名を変えてみたりして試したらどうですか。
"name"と"mail_address"のフィールド名を逆にしたらどうなりますか?
0851nobodyさん
2010/12/15(水) 18:21:14ID:???0854818
2010/12/15(水) 23:02:39ID:V9crItGv思いっ切り、思い込みによる凡ミスでした。
結論は、大文字小文字の違いによるものでした。
私が、大文字小文字の区別を他言語と混同していたのが原因です。
テーブルの構造の方では「mail_Address」、phpファイルの方では
$info["mail_address"]等「A」と「a」の違いでした。
var_dumpで確認したところ、カラム指定を「*」にすると、連想配列のインデックスは
テーブルの構造で定義された通りの大文字小文字の区別で設定され、
カラム指定の場合は、カラム指定で書いた大文字小文字に修正されて設定されていました。
構造定義では「mail_Address」、select命令で「*」を指定した場合、 $info["mail_Address"] と
なって、カラム指定で「mail_address」と書くと $Info["mail_address"]と設定されました。
なので、「*」でselect文を実行した場合に、print($info["mail_address"]とすると表示されないと
言う事みたいです。
皆さんから、そんなこと当たり前のことだと言われると思いますが、私の様な初心者には
嵌りやすいことかなと思い、長々と書かせてもらいました。
親身にレスを下さってありがとうございました。
0855nobodyさん
2010/12/16(木) 00:02:13ID:???それは知らなかったな。
まあ覚えておくべきはこのMySQLの仕様じゃなくてvar_dumpを使うだのといったバグの探し方だよ。
0856nobodyさん
2010/12/16(木) 01:56:04ID:???0857nobodyさん
2010/12/16(木) 02:31:19ID:???0858nobodyさん
2010/12/16(木) 03:18:28ID:swQxSHZwecho mb_get_info('illegal_chars'); // 1
$tmp = mb_convert_encoding('��', 'UTF-8', 'EUC-JP');
echo mb_get_info('illegal_chars'); // 2
と、mb_get_info('illegal_chars') の値が加算され続けてしまいます。
これを0に戻す方法はないでしょうか?
よろしくお願いします。
0859nobodyさん
2010/12/16(木) 06:02:45ID:???概念知ってるのに実装できないのは頭が足りないから
頭が足りないのは勉強するしかない
勉強しても補えないほどのIQの持ち主ならお気の毒だ
0860nobodyさん
2010/12/16(木) 06:03:25ID:???0862nobodyさん
2010/12/16(木) 09:11:05ID:???わからんがなさそう。
mb_convert_encodingを実行する直前と直後で値を比べて判断するしかないんじゃない
0863nobodyさん
2010/12/16(木) 13:02:54ID:???include_once(dirname(__FILE__).'/A.php');
include_once(dirname(__FILE__).'/B.php');
include_once(dirname(__FILE__).'/C.php');
?>
それぞれABCを実行したいのですがAとBだけでCが実行されません
どうしたら出来るようになりますか?
0864nobodyさん
2010/12/16(木) 13:05:13ID:???0865nobodyさん
2010/12/16(木) 13:08:11ID:???0866nobodyさん
2010/12/16(木) 13:15:27ID:???ちゃんと呼び出されているのか、include_onceの返り値を確認する。
warningが出てないか確認する。
include_onceじゃなくてincludeかrequireを使ってみる。
0867nobodyさん
2010/12/16(木) 13:27:41ID:???ないものはインクルードされない
0868nobodyさん
2010/12/16(木) 13:29:05ID:???0869nobodyさん
2010/12/16(木) 13:31:02ID:???0870nobodyさん
2010/12/16(木) 13:34:20ID:???0871nobodyさん
2010/12/16(木) 13:37:39ID:???0872nobodyさん
2010/12/16(木) 13:42:27ID:???0873nobodyさん
2010/12/16(木) 13:44:49ID:???0874nobodyさん
2010/12/16(木) 13:47:23ID:???0875nobodyさん
2010/12/16(木) 13:52:34ID:???たまには、NetBeansのことも……
0876nobodyさん
2010/12/16(木) 13:57:40ID:???0877nobodyさん
2010/12/16(木) 13:58:58ID:???それならまだrequireかrequire_once使えって言えよ・・・
<?php
error_reporting(E_ALL);
require_once(dirname(__FILE__).'/A.php');
require_once(dirname(__FILE__).'/B.php');
require_once(dirname(__FILE__).'/C.php');
これで実行してみろ
0878nobodyさん
2010/12/16(木) 14:00:16ID:???0879nobodyさん
2010/12/16(木) 14:21:47ID:???0880nobodyさん
2010/12/16(木) 14:31:14ID:???error_reporting(E_ALL);
ini_set("display_startup_errors","on");
require_once(dirname(__FILE__).'/A.php');
require_once(dirname(__FILE__).'/B.php');
require_once(dirname(__FILE__).'/C.php');
こっちの方が良いな
エラーがあっても続くのはincludeもinclude_onceも一緒
0881nobodyさん
2010/12/16(木) 15:09:41ID:???なんだから、includeの問題じゃないだろ。
Cがないか、スペルが間違っているか、全角半角が間違ってるか
要するに、そういうレベルの話だろ。
0882nobodyさん
2010/12/16(木) 15:20:20ID:???0883nobodyさん
2010/12/16(木) 15:41:22ID:???0884nobodyさん
2010/12/16(木) 15:42:20ID:???include_onceでも返り値を確認すれば済む話。
0885nobodyさん
2010/12/16(木) 15:43:30ID:???それならまだAjax使えって言えよ・・・
0886nobodyさん
2010/12/16(木) 15:50:15ID:???0888nobodyさん
2010/12/16(木) 16:10:51ID:???反応が鈍すぎます。
該当レスが書き込まれて30分以内にレスできない場合は無駄なリソース消費を
抑えるためにレスを控えるようスクリプトを改善して下さい。
0891nobodyさん
2010/12/16(木) 16:22:40ID:???全ID表示なら透明あぼーんで解決するのにね。
0892nobodyさん
2010/12/16(木) 16:24:13ID:???0893nobodyさん
2010/12/16(木) 16:27:13ID:???0894nobodyさん
2010/12/16(木) 16:30:20ID:???0895nobodyさん
2010/12/16(木) 16:41:59ID:???0896nobodyさん
2010/12/16(木) 19:31:31ID:WN9KAPbv【PHPのバージョン】5.31
【連携ソフトウェア】特になし
【質問内容】
Xamppから一式インストールして、PHPに挑戦中なのですが、
PDFファイルのダウンロード(或いはブラウザ上で表示)するページが作れません。
以下のサイトを参考に作成したのですが、PDFファイルが
全てテキストファイルとして表示(文字化け)されてしまいます。
IEだとContent-typeが無視される問題があると知り、
FireFoxでも試してみましたが、同じ結果でした。
考えられる原因は何があるでしょうか。よろしくお願いいたします。
参考サイト
ttp://code.nanigac.com/source/view/462
ttp://shoyu-ramen23.jugem.jp/?eid=64
0897nobodyさん
2010/12/16(木) 19:33:40ID:???0898nobodyさん
2010/12/16(木) 19:44:29ID:???ファイルがあるんなら、すなおにリンクして 右ボタンおして保存してねって逃げればどうよというのはおいといて、
header前になんか書き出してないかチェック。
駄目なら
header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="sample.pdf"');
だけでテスト
0900nobodyさん
2010/12/16(木) 19:56:58ID:???0901nobodyさん
2010/12/16(木) 20:08:04ID:???なるほど
状況が理解できました。
連想配列の索引、表の定義、SQLを絡めて、大変にためになる事例でした。
結果報告にお礼します。
ありがとうございました。
0902896
2010/12/16(木) 20:22:09ID:WN9KAPbvXAMPPですね。ありがとうございます。
>>898
とりあえず、それだけのPHPファイルを作成したらうまく動きました。
ありがとうございます。
ただ原因がいまいち分からないので、また暫く自分なりに
挑戦してみてダメだったらここで再び質問させて頂こうと思います。
0904nobodyさん
2010/12/17(金) 06:06:59ID:???0905nobodyさん
2010/12/17(金) 08:03:34ID:???0906nobodyさん
2010/12/17(金) 08:47:30ID:???0908nobodyさん
2010/12/17(金) 09:56:16ID:???0909nobodyさん
2010/12/17(金) 11:34:27ID:2FWeMtu8皆は、どの程度PHPがわに処理させる?
0910nobodyさん
2010/12/17(金) 11:38:13ID:???0911nobodyさん
2010/12/17(金) 11:40:42ID:???負荷分散を考慮するなら検討する必要がある
0912nobodyさん
2010/12/17(金) 11:56:18ID:???10万レコードぐらい用意してDBソートとPHPソートでベンチマーク測ってみなよ
0913nobodyさん
2010/12/17(金) 12:14:01ID:???けど基本的にDBで出来る事はDBでって感じだな・・・
0914nobodyさん
2010/12/17(金) 12:34:12ID:???少ないものは大差ないので好きな方で処理すれば良い。
一時期、DBに何でも放り込むなという議論があったけど
あれは結局どうなったのでしょうね?
0915nobodyさん
2010/12/17(金) 13:58:32ID:???DBに登録するのが吉。
0916nobodyさん
2010/12/17(金) 14:00:15ID:???0917nobodyさん
2010/12/17(金) 14:01:13ID:???0918nobodyさん
2010/12/17(金) 14:53:40ID:???皆さんの高い技術レヴェルのお話はいつも勉強になってます
僕もAJAXをマスターしてPHP余裕になります
0919nobodyさん
2010/12/17(金) 15:06:42ID:???0921nobodyさん
2010/12/17(金) 17:15:03ID:???0922nobodyさん
2010/12/17(金) 17:30:23ID:???0923nobodyさん
2010/12/17(金) 17:57:03ID:???<?php
echo "<h1 class="title">見出し</h1>";
?>
これでエラーが出るのはどうしてでしょうか…
かれこれ小一時間調べてるんですが…('A`)
0924nobodyさん
2010/12/17(金) 17:59:22ID:???0927nobodyさん
2010/12/17(金) 18:19:55ID:???<?php
echo "<h10 class="title">見出し</h10>";
?>
これでエラーが出るのはどうしてでしょうか…
かれこれ小十時間調べてるんですが…('A`)
0931nobodyさん
2010/12/17(金) 18:28:32ID:???理解したかしていないか書けよ
0932nobodyさん
2010/12/17(金) 18:37:57ID:???その前に ID 出して書けよ
その前に Ajax 厨は他スレに行けよ
0933nobodyさん
2010/12/17(金) 18:44:22ID:???0934nobodyさん
2010/12/17(金) 19:06:46ID:???> 次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
現在、934 ですから残りは46ですね。
そろそろ、煽り厨が静かになる頃でしょうか?
0935nobodyさん
2010/12/17(金) 19:44:35ID:j3isg1G8PDOもMDB2同様、内部でmysql_xxxとかpg_xxxとか使ってるで合ってる?
0936nobodyさん
2010/12/17(金) 20:26:05ID:???今解析してるコードが全て$_REQUESTなんだけど
0937nobodyさん
2010/12/17(金) 20:42:32ID:???0938nobodyさん
2010/12/17(金) 21:03:26ID:???>>936 ID が出ていないから質問じゃないですよね?
>>937 何事も「ほどほど」にね。
0939nobodyさん
2010/12/17(金) 21:52:28ID:???0940935
2010/12/17(金) 22:22:19ID:j3isg1G8PHPソースをVSに突っ込むとPCごと落ちるしスペック的に厳しい。
MySQLで調べてみると、
php-5.3.3/ext/pdo_mysql/mysql_driver.c
あたりでmysql_stmt_prepare(), mysql_close() とか使ってるけど、
それはPHP関数のmysql_*()じゃなく、
php-5.3.3/ext/mysqlnd/*
で定義されてる関数を使ってて、
ext/mysql/*
ext/mysqli/*
も同様。つまりPDOもPHP関数のmysql_*も同じ関数を参照してる。で正しいかな。
0942nobodyさん
2010/12/18(土) 00:31:33ID:???CにPDOのようなものが拡張APIがあったとしても
それで実装するようなことはしないんじゃないかな
0943nobodyさん
2010/12/18(土) 01:34:40ID:???COBOLにJAXAのようなものが拡張Jaxascriptがあったとしても
それで実装するようなことはしないんじゃないかな
0944nobodyさん
2010/12/18(土) 10:26:05ID:???不思議と静かになりましたね。
9時間も書き込みが無いなんて、このスレらしくないですね。
0945nobodyさん
2010/12/18(土) 11:21:20ID:GFOQOe1nhttp://www.hogehoge.com/-/index/p/answer_yes=1/
みたいなURLがあります。
この/-/っていうのは何をしてるんでしょうか?
具体的にこのケースで何をしてるかなんてわからないにしても、
たとえばどういう時にこういう処理をするのか知りたいです。
言語にもよるかも知れないですが、とりあえずPHPという前提で教えてください
よろしくお願いします
0948nobodyさん
2010/12/18(土) 11:33:30ID:???0951nobodyさん
2010/12/18(土) 11:43:32ID:???0952nobodyさん
2010/12/18(土) 11:44:50ID:???0953nobodyさん
2010/12/18(土) 11:50:09ID:???0954nobodyさん
2010/12/18(土) 11:57:51ID:rgAUSlhv【PHPのバージョン】5.2
【連携ソフトウェア】PostgreSQL8
【質問内容】
画面が10個とか有るシステムで、画面毎にセッション変数の名前がぶつからない様に
$_SESSION["AAA_BBBB_CCCCCCCC_DDDDDDDDD"]
とかいう名前で、1画面毎に50個位変数を作っていたのですが、
先日ふと「SESS_」をみて愕然としました。名前がいちいち書いてあったからです。
(名前を小さくしろと言うのは根本的な解決策で、それはそれでそうなのですが、)
思ったのは、上記名前を、
$_SESSION["AAA_BBBB"]["CCCCCCCC_DDDDDDDDD"]
の様にしたら、「SESS_」の中身が減るのでは、で、実際やったらそれなりに
減りました。(前半の名前は画面を表します。)
質問ですが、
1.配列の配列にして、なにか(隠れたとんでもない)問題がおきないでしょうか?
2.速度は、やはり後の書き方の方が遅いでしょうか?
なお、値は整数か、数字1文字か、漢字数十文字です。
よろしくお願いいたします。
0955nobodyさん
2010/12/18(土) 12:15:24ID:???セッション変数といっても特に特別なことはなくてvar_exportと同じような感じでファイルに書き込まれるだけだよ
0956nobodyさん
2010/12/18(土) 12:16:51ID:???0957nobodyさん
2010/12/18(土) 12:19:39ID:???> 先日ふと「SESS_」をみて愕然としました。名前がいちいち書いてあったからです。
> 「SESS_」の中身が減るのでは、で、実際やったらそれなりに減りました。
減らせることで何を得たかが判然としません。
> 1.配列の配列にして、なにか(隠れたとんでもない)問題がおきないでしょうか?
ここで問題は発生しないと答えを得たとして、後に問題が発生したらどうするのでしょうか?
> 2.速度は、やはり後の書き方の方が遅いでしょうか?
何をもって、「遅い」もしくは「早い」と判断するのでしょうか?
書かれている質問の文章では、質問の意図が読み取り難いです。
お手数ですが、もう少し文章を練ってから質問をしてもらえますか?
0960945
2010/12/18(土) 13:52:10ID:GFOQOe1n文字通り - ってディレクトリがあるってことですか?
素直にそう解釈して良いのかな?
0961nobodyさん
2010/12/18(土) 13:57:25ID:???ぶっちゃけ、作った人に聞かないとわからない
ディレクトリがあるのかmod_rewriteなのかこっちから調べる方法はない
0962nobodyさん
2010/12/18(土) 13:58:12ID:???0963945
2010/12/18(土) 14:58:06ID:GFOQOe1nまあそうですよね〜
でも時々/-/ってのをいろんなところでみるんで、
ああいうパスを使うもの凄く一般的なテクニックとか便利なプラグインがあるのかと思いました
んー、気になる
0964nobodyさん
2010/12/18(土) 15:01:05ID:???0965nobodyさん
2010/12/18(土) 15:04:37ID:???まぁ、恐らくはmod_rewriteで置換してるとは思うが
それか、独特のフレームワーク使ってるとか
ZendFW使ってる人はデフォルトで「http://hogehoge.com/controller名/action名/var(GET)/value/」
0966945
2010/12/18(土) 15:16:50ID:???自分もZendFW使ってるんですけど、あれの例だとコントローラ名やモジュール名を隠す為に
というか、-って名前のコントローラ名にしてるんですかね
あ、でもそれだとコントローラやモジュールの命名規則に反するような… わからんなぁ
初心者向けのPHPでアプリ開発みたいな本何冊も読んだけど「-」て使うの見たことないんで
何か高等テクニックなのかと… 気になる
mod_rewriteでコントローラ・モジュール名隠してるって考えるのが普通かなぁ
0967nobodyさん
2010/12/18(土) 15:19:34ID:???0968nobodyさん
2010/12/18(土) 15:21:49ID:???まだちょっと頭固いな
http://www.hogehoge.com/-/の場合はそのあとのindexをアクション名にする
http://www.hogehoge.com/test/などは通常のディレクトリで静的ページにする
とか分けたり、mod_rewriteによって様々な使い方ができる
0970nobodyさん
2010/12/18(土) 15:44:50ID:???0971nobodyさん
2010/12/18(土) 15:52:20ID:???3行でAjaxの処理も加えて議論されてることのどれでもいいから
自分で選んで説明してくれ
ただし1行80文字までな
0973nobodyさん
2010/12/18(土) 16:02:54ID:???横レスだがいいか?
http://jbpress.ismedia.jp/articles/-/5076
0974nobodyさん
2010/12/18(土) 16:14:11ID:???http://jbpress.ismedia.jp/articles/5076
0975^
2010/12/18(土) 17:47:32ID:???0977nobodyさん
2010/12/18(土) 17:55:12ID:???>>1 を読んでください。
IDを出さない質問には安易に応えないように。Ajax厨が湧いて出てくるからね。
0978^
2010/12/18(土) 18:00:13ID:???0979nobodyさん
2010/12/18(土) 19:04:46ID:???北朝鮮が攻撃してきてもPHPが守ってくれます。
普天間基地問題もPHPが対応してくれます。
>>980
>>1
> 次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
0980nobodyさん
2010/12/18(土) 19:37:11ID:???次スレもこんなんだったら優良回答者様が一人居なくなると思え
0982nobodyさん
2010/12/18(土) 20:11:09ID:???http://hibari.2ch.net/test/read.cgi/php/1292670453/
AjaxとかJAXAとか続けるアホウは↓へ移動
http://hibari.2ch.net/test/read.cgi/php/1289117484/
0983nobodyさん
2010/12/18(土) 22:07:23ID:???<?php
function zeikomi($nedan) {←
$nedan = $nedan * 1.05;
return $nedan;
}←
←印の{}は関数だから使うってことなんでしょうか?
PHP初心者のサイトを見てて、いきなり{}が出てきたので
よく理解できなかったので…
是非教えてください
0984nobodyさん
2010/12/18(土) 22:14:40ID:???> 先日ふと「SESS_」をみて愕然としました。名前がいちいち書いてあったからです。
の意味がわからないんだけど。
session id のことだとして、画面毎に session id を変えてるのか?
0985nobodyさん
2010/12/18(土) 22:16:25ID:xdLeb3mAID出すの忘れました
0987nobodyさん
2010/12/18(土) 22:23:18ID:???{}を使うのは関数だけでなくif文、for文など沢山のシーンで使われます。
http://www.php.net/manual/ja/control-structures.if.php
そのた、文字列内で変数を展開する際にも使われます。
公式マニュアルにざっと目を通すといいでしょう。
http://www.php.net/manual/ja/index.php
0988nobodyさん
2010/12/18(土) 22:30:46ID:xdLeb3mAレスありがとうございます。
変数だけではなく、if文やfor文でも使うんですね。
まだ理解しきれてないですが、目を通して理解していこうと思います
ありがとうございました。
0989983
2010/12/18(土) 22:40:43ID:xdLeb3mA本を買おうと思ってたんですが
>>1を読むと
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
市販の書籍は嘘って書いてますが、なぜ嘘なのでしょうか?
市販の書籍は買わない方がいいですか?
0990nobodyさん
2010/12/18(土) 22:48:23ID:???結構スキルが無い人が書いていてconfigを分かってなかったり、セキュリティが不十分だったり
バージョンアップで挙動が変わったりするから
あくまで参考程度に留めておいて自分でマニュアル読んで確認したほうが良いよということ。
そのほうが勉強にもなるしね。
0991983
2010/12/18(土) 22:51:43ID:xdLeb3mAなるほど
そういう事なんですね
では、本を頼らず、自分で調べたり確認したりしようと思います
ありがとうございました。
0992nobodyさん
2010/12/18(土) 23:13:27ID:3yLhGk6x(*は1〜$numまで)
for($loop=1;$loop<=$num;$loop++){
$next = ${'abc[interval'.$loop.']'};
var_dump($next);
}
としても、ループはしますが$nextはnullのままです
print "${abc[interval.$loop]}";
とすると、ちゃんと表示されるのですが、
計算式でこれを書くと文法エラーになります。
どのように書くのが適切でしょうか。
0993nobodyさん
2010/12/18(土) 23:31:45ID:???0995nobodyさん
2010/12/19(日) 15:50:41ID:tGqZvcRh以下のように2回トライしています。
$url = 'http://www.groupon.jp/api-v2/?type=area';
$items = @file_get_contents($url);
if(empty($item)) {
$item = @file_get_contents($url);
}
失敗するのはサーバ側の問題なのでしょうがないのでしょうか?
また、上のやり方がまずい方法であれば、指摘してもらえるとありがたいです。
0996nobodyさん
2010/12/19(日) 15:52:23ID:???0998nobodyさん
2010/12/19(日) 15:57:22ID:???0999nobodyさん
2010/12/19(日) 16:00:33ID:tGqZvcRh失敗は単純にURLから情報を取得できないといった形だと思います。
タイムアウトの設定という方法があるんですね。
その方向で調べてみます。
ありがとうございます。
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。