【PHP】下らねぇ質問はID出して書き込みやがれ 101
■ このスレッドは過去ログ倉庫に格納されています
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等)・フレームワークは各該当スレへ
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に保存するとして、リロードしてないのにページの一部を更新する方法がわかりません。
■ このスレッドは過去ログ倉庫に格納されています