私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ【PHP】下らねぇ質問はID出して書き込みやがれ 123
php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
echo date("Y年m月d日", strtotime("2012-10-25"));
>>848
print vsprintf("%04d年%02d月%02d日" ,sscanf("2012-08-21","%d-%d-%d") );
print vsprintf("%04d年%02d月%02d日" ,sscanf("2012-08-21","%d-%d-%d") );
>>854
速度は正規表現の方が劇的に速い
速度は正規表現の方が劇的に速い
>2012年08年21日
年月日じゃなくて年年日にしたいそうだぞ
年月日じゃなくて年年日にしたいそうだぞ
一般的なデータベースにはバイナリ文字列は入れられないのが普通。
エスケープ、エンコードして入れるのが安全。
エスケープ、エンコードして入れるのが安全。
mysql_real_escape_string (PHP 4 >= 4.3.0, PHP 5)
SQL 文中で用いる文字列の特殊文字をエスケープする
代替策について
この拡張モジュールを使うことはおすすめできません。 MySQLi あるいは PDO_MySQL を使うべきです。
詳細な情報は MySQL: API の選択 や それに関連する FAQ を参照ください。
http://phpspot.net/php/man/php/function.mysql-real-escape-string.html
SQL 文中で用いる文字列の特殊文字をエスケープする
代替策について
この拡張モジュールを使うことはおすすめできません。 MySQLi あるいは PDO_MySQL を使うべきです。
詳細な情報は MySQL: API の選択 や それに関連する FAQ を参照ください。
http://phpspot.net/php/man/php/function.mysql-real-escape-string.html
怪しい入力を残しておくとこうなる可能性。
SQLインジェクション - Wikipedia
SQLインジェクションとは、アプリケーションのセキュリティ上の不備を意図的に利用し、
アプリケーションが想定しないSQL文を実行させることにより、データベースシステムを不正に操作する攻撃方法のこと。
また、その攻撃を可能とする脆弱性のこと。
実例
2005年5月に発生した、価格.comのWebサイト改竄 クラブツーリズム事件の犯人は価格.comへの不正アクセスも行っていた。
2005年8月に判明した、静岡新聞社アットエスの個人情報漏洩 - クラブツーリズム事件と同一犯
2005年11月に発生した、ワコールオンラインショップのクレジットカード情報を含む個人情報漏洩
2005年11月に発生した、キッズオンラインのアカウント情報漏洩
2006年1月に判明した、スカイソフトのクレジットカード情報を含む個人情報漏洩 スカイソフトは閉店へと追い込まれた。
2007年7月に判明した、@SOLAショップのクレジットカード情報を含む個人情報漏洩
2008年3月に発生した、トレンドマイクロ、@nifty、クリエイティブメディアのWebサイト改竄
2008年3月に発生した、サウンドハウスのクレジットカード情報を含む個人情報漏洩
2008年4月に発生した、カービューのWebサイト改竄
2008年5月に発生した、アイドラッグストアー、アイビューティーストアーのクレジットカード情報を含む個人情報漏洩
2008年5月に発生した、富士山マガジンサービスのWebサイト改竄
2008年6月に発生した、アイリスプラザのクレジットカード情報漏洩
2008年7月に判明した、ナチュラムのクレジットカード情報を含む個人情報漏洩
2008年7月に発生した、米国向けプレイステーションのWebサイト改竄
2008年7月に発生した、独立行政法人石油天然ガス・金属鉱物資源機構のWebサイト改竄
2008年10月に発生した、ゴルフダイジェスト・オンラインのWebサイト改竄
2010年1月に発生した、モンベルのクレジットカード情報漏洩
2010年7月に発生した、コーエーテクモホールディングスのGAMECITY会員の個人情報漏洩
2011年4月から発生している、ソニーのプレイステーションネットワークの個人情報漏洩に始まる、ソニーグループの個人情報漏洩。
SQLインジェクション - Wikipedia
SQLインジェクションとは、アプリケーションのセキュリティ上の不備を意図的に利用し、
アプリケーションが想定しないSQL文を実行させることにより、データベースシステムを不正に操作する攻撃方法のこと。
また、その攻撃を可能とする脆弱性のこと。
実例
2005年5月に発生した、価格.comのWebサイト改竄 クラブツーリズム事件の犯人は価格.comへの不正アクセスも行っていた。
2005年8月に判明した、静岡新聞社アットエスの個人情報漏洩 - クラブツーリズム事件と同一犯
2005年11月に発生した、ワコールオンラインショップのクレジットカード情報を含む個人情報漏洩
2005年11月に発生した、キッズオンラインのアカウント情報漏洩
2006年1月に判明した、スカイソフトのクレジットカード情報を含む個人情報漏洩 スカイソフトは閉店へと追い込まれた。
2007年7月に判明した、@SOLAショップのクレジットカード情報を含む個人情報漏洩
2008年3月に発生した、トレンドマイクロ、@nifty、クリエイティブメディアのWebサイト改竄
2008年3月に発生した、サウンドハウスのクレジットカード情報を含む個人情報漏洩
2008年4月に発生した、カービューのWebサイト改竄
2008年5月に発生した、アイドラッグストアー、アイビューティーストアーのクレジットカード情報を含む個人情報漏洩
2008年5月に発生した、富士山マガジンサービスのWebサイト改竄
2008年6月に発生した、アイリスプラザのクレジットカード情報漏洩
2008年7月に判明した、ナチュラムのクレジットカード情報を含む個人情報漏洩
2008年7月に発生した、米国向けプレイステーションのWebサイト改竄
2008年7月に発生した、独立行政法人石油天然ガス・金属鉱物資源機構のWebサイト改竄
2008年10月に発生した、ゴルフダイジェスト・オンラインのWebサイト改竄
2010年1月に発生した、モンベルのクレジットカード情報漏洩
2010年7月に発生した、コーエーテクモホールディングスのGAMECITY会員の個人情報漏洩
2011年4月から発生している、ソニーのプレイステーションネットワークの個人情報漏洩に始まる、ソニーグループの個人情報漏洩。
>>863
安全な文字列へ変換してもダメなのか。そしたらわからん。
安全な文字列へ変換してもダメなのか。そしたらわからん。
とりあえずbase64でエンコードしてみてダメか確認してみては?
base64関数は使いこなされていてバグは考えられず、確実に安全な文字列になる。
base64関数は使いこなされていてバグは考えられず、確実に安全な文字列になる。
まー、多分そういうことじゃないと思うよ。
まず、
echo 'インサート失敗'.mysq_error(); にしてみ。
まず、
echo 'インサート失敗'.mysq_error(); にしてみ。
え、何?
お前ら全角チルダと波ダッシュのよくある問題パターンでしょ・・・
見当はずれの書き込み多すぎワロタ
お前ら全角チルダと波ダッシュのよくある問題パターンでしょ・・・
見当はずれの書き込み多すぎワロタ
>>869
あれはいつもの人でしょ?
あれはいつもの人でしょ?
>>869
データベースには正しくエンコードしたら、jpgでもzipでも入れられるが。
任意のバイナリデータでは波ダッシュも全角チルダも含む可能性があるが、そんな問題に出会ったことがない。
挿入以外の文字コード変換でエラーになってるのでは?
データベースには正しくエンコードしたら、jpgでもzipでも入れられるが。
任意のバイナリデータでは波ダッシュも全角チルダも含む可能性があるが、そんな問題に出会ったことがない。
挿入以外の文字コード変換でエラーになってるのでは?
>>876
いまだにこういうレベルの低いノウハウがサイトに山盛り残ってるんだよな。
間違った対処法で誤魔化したりしてるから、一向に正しい知識がつかない上に、トラブルの元でしかない。
Incorrect string value のエラーを返してるのは mysql側 で \xEF\xBD\x9E が受け取れないって言ってる、
そのうえ、UTF8の他の字ならいいんだろ? DBの設定違い以外に無いじゃないか。
DBの設定をどうやって確認して、どうなってたのか見せてみ。
いまだにこういうレベルの低いノウハウがサイトに山盛り残ってるんだよな。
間違った対処法で誤魔化したりしてるから、一向に正しい知識がつかない上に、トラブルの元でしかない。
Incorrect string value のエラーを返してるのは mysql側 で \xEF\xBD\x9E が受け取れないって言ってる、
そのうえ、UTF8の他の字ならいいんだろ? DBの設定違い以外に無いじゃないか。
DBの設定をどうやって確認して、どうなってたのか見せてみ。
文字コードの設定やデータベース仕様に左右されるのは面倒。
base64_encode(gzdeflate($bindata, 1))か
base64_encode(gzcompress($bindata, 1))
でテキストにして挿入しとけ。
データベース固有のエスケープ(エンコード)関数と比べ、サイズも速度も良い場合が多い。
base64_encode(gzdeflate($bindata, 1))か
base64_encode(gzcompress($bindata, 1))
でテキストにして挿入しとけ。
データベース固有のエスケープ(エンコード)関数と比べ、サイズも速度も良い場合が多い。
gzdeflateとgzcompressを計測してみた。圧縮率に差はでなく速度でgzdeflateが有利ぽい。
<?php
define('repeat', 1000);
$urls=array(
'http://www.youtube.com/', 'http://www.yahoo.co.jp/', 'http://www.amazon.com/', 'http://jp.msn.com/',
'',
'',
'');
$fncs = array('gzdeflate','gzcompress');
$tmp = array('time'=>0, 'size'=>0);
$cnt=array('gzdeflate'=>$tmp,'gzcompress'=>$tmp);
foreach($urls as $url) {
echo "downloading...$url\n";
$data = file_get_contents($url);
foreach($fncs as $fnc) {
echo "measuring in progress...$fnc\n";
timer();
for($n=0;$n<repeat;$n++) $cnt[$fnc]['size']+=strlen($fnc($data, 1));
$cnt[$fnc]['time']+=timer(); }
print_r($cnt); }
function timer() {
static $flg=0,$start=0;
if(!$flg) { $flg=1; $start = microtime(true); return; }
$t0=microtime(true); $t1=$t0-$start; $start=$t0;
return $t1; }
<?php
define('repeat', 1000);
$urls=array(
'http://www.youtube.com/', 'http://www.yahoo.co.jp/', 'http://www.amazon.com/', 'http://jp.msn.com/',
'',
'',
'');
$fncs = array('gzdeflate','gzcompress');
$tmp = array('time'=>0, 'size'=>0);
$cnt=array('gzdeflate'=>$tmp,'gzcompress'=>$tmp);
foreach($urls as $url) {
echo "downloading...$url\n";
$data = file_get_contents($url);
foreach($fncs as $fnc) {
echo "measuring in progress...$fnc\n";
timer();
for($n=0;$n<repeat;$n++) $cnt[$fnc]['size']+=strlen($fnc($data, 1));
$cnt[$fnc]['time']+=timer(); }
print_r($cnt); }
function timer() {
static $flg=0,$start=0;
if(!$flg) { $flg=1; $start = microtime(true); return; }
$t0=microtime(true); $t1=$t0-$start; $start=$t0;
return $t1; }
質問させてください。
PHPでMySQLのデータを処理するにあたってですが、
一回のselectクエリで最大何件くらいのデータを取得するのがプログラム的に妥当ですか?
例えば5万件のデータがあるテーブルなら、100件とか1000件とかをLIMIT句で順々に取得した方が安全ですか?
PHPでMySQLのデータを処理するにあたってですが、
一回のselectクエリで最大何件くらいのデータを取得するのがプログラム的に妥当ですか?
例えば5万件のデータがあるテーブルなら、100件とか1000件とかをLIMIT句で順々に取得した方が安全ですか?
>>880
これさ、後でデータを人間が探す時に苦労しねぇ?
これさ、後でデータを人間が探す時に苦労しねぇ?
質問ではないのですが、
5.3から導入されたネームスペースって
バックスラッシュ区切りですけど、
Perlみたいにコロン2つにできなかったんでしょうか?
何か構文的に問題があるんでしょうか?
5.3から導入されたネームスペースって
バックスラッシュ区切りですけど、
Perlみたいにコロン2つにできなかったんでしょうか?
何か構文的に問題があるんでしょうか?
>>889
それと同じ記号ではいけない理由は?
それと同じ記号ではいけない理由は?
x.xxから導入されたネームスペースって
コロン2つ区切りですけど、
xxxxみたいにバックスラッシュにできなかったんでしょうか?
何か構文的に問題があるんでしょうか?
という質問に変わるだけだw
コロン2つ区切りですけど、
xxxxみたいにバックスラッシュにできなかったんでしょうか?
何か構文的に問題があるんでしょうか?
という質問に変わるだけだw
メインの実行ファイルからクラスを読み込んでインスタンス作成した後、そのインスタンス中で別のクラスが必要になる時にはどのように呼ぶのが適切なのでしょうか?
1. requireはメインに戻ってする? ローダークラスなど作ってその中でrequire?
2. newはインスタンス内でする? メインでnewしてインスタンスに渡す?
こういった孫オブジェクト的なものの扱いがよくわかりません。どうかご教授ください。
1. requireはメインに戻ってする? ローダークラスなど作ってその中でrequire?
2. newはインスタンス内でする? メインでnewしてインスタンスに渡す?
こういった孫オブジェクト的なものの扱いがよくわかりません。どうかご教授ください。
>>1もスレタイすらも読まないのは何故なのでしょうか。どうかご教授ください。
>>888
お前みたいな荒らしをあぶりだすためですはい
お前みたいな荒らしをあぶりだすためですはい
スクレイピングを行う場合、
外部ライブラリを使わずに地道にHTMLコード解析して文字列操作で
今取得していますが、こういったスクレイピング方法はやはり邪道なのでしょうか?
外部ライブラリを使わずに地道にHTMLコード解析して文字列操作で
今取得していますが、こういったスクレイピング方法はやはり邪道なのでしょうか?
>>896
邪道も何もそこらにあるライブラリより優れてるものなら自分で作ればいい
有名なHTMLパーサでも一部のHTML解釈できなかったりするしね
それ以下のものしか使えないなら外部ライブラリに頼ってもいい、その程度
邪道も何もそこらにあるライブラリより優れてるものなら自分で作ればいい
有名なHTMLパーサでも一部のHTML解釈できなかったりするしね
それ以下のものしか使えないなら外部ライブラリに頼ってもいい、その程度
厳密に解析してDOMツリーまで作るか、
速度重視で正規表現で狙うか、
作ったものを再利用するか、
対象HTMLの構造はコロコロ変わるか、
とかいろいろある
速度重視で正規表現で狙うか、
作ったものを再利用するか、
対象HTMLの構造はコロコロ変わるか、
とかいろいろある
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- 【PHP】下らねぇ質問はID出して書き込みやがれ 125 (1001) - [98%] - 2013/2/4 13:30
- 【PHP】下らねぇ質問はID出して書き込みやがれ 126 (1001) - [98%] - 2013/3/19 13:15
- 【PHP】下らねぇ質問はID出して書き込みやがれ 127 (1001) - [98%] - 2013/5/26 14:01
- 【PHP】下らねぇ質問はID出して書き込みやがれ 128 (1001) - [98%] - 2013/8/4 14:01
- 【PHP】下らねぇ質問はID出して書き込みやがれ 129 (1001) - [98%] - 2013/9/18 1:45
- 【PHP】下らねぇ質問はID出して書き込みやがれ 103 (1001) - [98%] - 2011/2/14 19:50
- 【PHP】下らねぇ質問はID出して書き込みやがれ 124 (1001) - [98%] - 2013/1/10 6:30
- 【PHP】下らねぇ質問はID出して書き込みやがれ 113 (1001) - [98%] - 2012/1/1 1:00
- 【PHP】下らねぇ質問はID出して書き込みやがれ 121 (1001) - [98%] - 2012/8/14 7:45
- 【PHP】下らねぇ質問はID出して書き込みやがれ 120 (1001) - [98%] - 2012/7/25 6:45
- 【PHP】下らねぇ質問はID出して書き込みやがれ 133 (1001) - [98%] - 2014/7/8 16:30
- 【PHP】下らねぇ質問はID出して書き込みやがれ 135 (984) - [96%] - 2014/8/7 1:00
- 【PHP】下らねぇ質問はID出して書き込みやがれ 119 (1001) - [96%] - 2012/6/21 11:46
- 【PHP】下らねぇ質問はID出して書き込みやがれ 138 (991) - [96%] - 2015/1/6 8:00
- 【PHP】下らねぇ質問はID出して書き込みやがれ 137 (995) - [96%] - 2023/1/30 18:45
- 【PHP】下らねぇ質問はID出して書き込みやがれ 132 (1000) - [96%] - 2014/6/18 20:58
- 【PHP】下らねぇ質問はID出して書き込みやがれ 136 (936) - [96%] - 2014/9/18 12:45
トップメニューへ / →のくす牧場書庫について