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

【PHP】下らねぇ質問はここに書き込みやがれ 59

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/11/16(金) 18:09:05ID:kurqBmt1
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 58
http://pc11.2ch.net/test/read.cgi/php/1194084457/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0052nobodyさん2007/11/17(土) 12:47:01ID:???
シェルスクリプトなんて使わん
0053nobodyさん2007/11/17(土) 12:49:55ID:???
>>51
Ruby儲ワロス
0054nobodyさん2007/11/17(土) 12:50:06ID:???
>>51
シェルスクリプトの場合Perlが比較的おおいんじゃないかと
RubyよりはPythonのほうがいいですよ
0055nobodyさん2007/11/17(土) 13:00:43ID:q8xDPAKo
PHPはオーバロードを使えないのでしょうか?
それとも書き方が悪いのでしょうか?
もしできないのなら、どうにかして実現するような方法はありませんでしょうか?

class OverloadTest {
  private $var;
  function ConstructTest() {
    $this->var = null;
  }
  function ConstructTest($_var) {
    $this->var = $_var;
  }
  function getVar() {
    return $this->var;
  }
}
$obj = new OverloadTest();
var_dump($obj->getVar());
0056552007/11/17(土) 13:02:15ID:q8xDPAKo
あ、すみません

ConstructTest()をOverloadTest()か__construct()に置き換えて下さい。
0057前9452007/11/17(土) 13:30:40ID:???
>>45
ありがとうございます。
でも自分の頭じゃUTF8のコードを算出できそうにないなorz

>エスケープしなくともそのまま書き込んでいい。
>$arr = array('�@' => '(1)', ...);
macなどwindows以外で表示されるものも弾きたいので
�@ではなくUCSコードを使いたいのです。

そのような関数があればいいのですが・・・
むしろ変換だけならPHP以外でやればいいのか・・・スレ違いになってきた・・・
もしご存知の方いましたら教えてください。
0058nobodyさん2007/11/17(土) 14:06:49ID:???
>>55
function __construct($_var = null){
 $this->var = $_var;
}

このくらいならシンプルに書けるけど
オーバーロードに関してはPHPは不便
0059nobodyさん2007/11/17(土) 15:02:55ID:???
一般的にクラス内の関数とかシンプルにすべきなんでしょうか。
今はクラス内に徹底的に分岐処理なども全てつめこんで、
クラス使用する際に、
関数並べるだけ、みたいな感じにしてますが、
なんか間違ってるような。
0060nobodyさん2007/11/17(土) 15:26:48ID:???
>>59
意味わからないでつかってるならクラス使う必要ないし、無理して使わなくていい。
PHPはJavaと違ってオブジェクトにする必要ないんだから。
0061nobodyさん2007/11/17(土) 15:30:41ID:???
$var = 'abc';
$this->($varの値)
を実行したい場合、
つまりこの場合は
$this->abc を実行したい場合、
どのように記述すればよいでしょうか?

$this->$var ではあぼーんでした
0062nobodyさん2007/11/17(土) 15:43:13ID:???
あなたたちのPHP暦を教えてください
0063nobodyさん2007/11/17(土) 15:47:55ID:???
>>61
$this->var

>>62
それを聞いてお前の中で何か変わるのか?ID非表示のスレで
0064nobodyさん2007/11/17(土) 16:26:58ID:???
1万年と2000年前から使っています
0065nobodyさん2007/11/17(土) 16:36:09ID:???
>>59
別に間違ってはないと思う。
下手にクラス使うよりそっちの方がいい。
OOPしたいなら、Javaとかやりなよ。
0066nobodyさん2007/11/17(土) 16:43:18ID:???
必要があるからするんじゃなくてしたいからするってどういう状況なんだろう
0067nobodyさん2007/11/17(土) 17:09:24ID:???
>>63
頭の固いクズは味噌汁のんでやわらかくしてこいw
0068nobodyさん2007/11/17(土) 17:40:05ID:???
クラス使ったら多分楽になるんだろうなとは思うけど、何をクラスにするかで悩むので
普通に関数化して誤魔化してます。
0069nobodyさん2007/11/17(土) 18:08:04ID:???
楽にはならんよ。手続きのほうが断然楽。
よく言われ手続き型は再利用性がなかったり保守性がなかったりというのも、
無理にクラスを使ったところで余計にそういう傾向になるだけだし、
OOPについて理解のないひとが無理にクラスを使ってもろくなことがない。

別に無理して使わなくていいんだよ。PHPってそういう言語だし。
0070nobodyさん2007/11/17(土) 18:36:54ID:???
WHOISの結果を表示するphpの書き方を教えてください。
0071612007/11/17(土) 18:43:46ID:???
$this 使ったから誤解された希ガス

たとえば、create delete update
という3つのメンバ関数もってるclassクラスなら
$function = "create"
$class->($functionの値)、
つまり$class->create() を実行したいのです。
0072nobodyさん2007/11/17(土) 18:51:48ID:???
>>70
ここに問い合わせクエリーをPOSTして、その結果を取得すればいい
http://whois.jprs.jp/
0073nobodyさん2007/11/17(土) 18:58:27ID:???
>>70
Unix環境今いれてないから試してないが、
execとかsystem関数でwhoisしたらなんか返ってくる?
0074452007/11/17(土) 19:03:27ID:???
>>57
手抜きで良かったら。

$ucs2be = pack('n*', 0x2460);
$utf8 = mb_convert_encoding($ucs2be, 'UTF-8', 'UCS-2BE');
echo '文字列: ' . $utf8 . PHP_EOL;
echo '文字列リテラル: "\\x' . implode('\\x', str_split(bin2hex($utf8), 2)) . '"';

>>71
class Example {
  public function call($method) { $this->$method(); }
  public function create() { echo __METHOD__ . ' called.'; }
  public function update() { echo __METHOD__ . ' called.'; }
  public function delete() { echo __METHOD__ . ' called.'; }
}
$example = new Example();
$example->call('create');
0075nobodyさん2007/11/17(土) 19:43:43ID:???
すいませんデリヘルの店長ですが、姫たちの出勤表のプログラム作ってもらえませんか?

予算は20万です。

0076nobodyさん2007/11/17(土) 19:51:40ID:???
メアド出して。んで詳細を送って。
0077nobodyさん2007/11/17(土) 19:56:04ID:???
前スレのやつは確か店長じゃなかったけどな
0078nobodyさん2007/11/17(土) 19:57:36ID:???
>>75
デリ姫は時間にだらしないから一人一人電話入れた方がいいぞ
0079nobodyさん2007/11/17(土) 20:06:17ID:???
マルチじゃね?しかも安すぎるわ。最低三百万だな
0080nobodyさん2007/11/17(土) 20:21:57ID:???
>>75
手渡しできるならやります。
0081nobodyさん2007/11/17(土) 20:56:53ID:???
>>75

トップの娘と100回無料でまんちょさせてくれたらやります。
0082nobodyさん2007/11/17(土) 21:38:13ID:???
>>75
俺が作ったる。メアド欄のメアドにメールよろ
0083nobodyさん2007/11/17(土) 21:42:44ID:???
ここをなんのスレだと思ってるんだか
0084nobodyさん2007/11/17(土) 21:52:01ID:???
>>83
貧乏プログラマの巣窟です。
0085nobodyさん2007/11/17(土) 21:56:46ID:ZVacPykJ
mysql に対してinsert文飛ばしてるんだけど、データが追加されません。
php中のサーバやパスワードの指定を確認してもちゃんとつながってます。
どういう原因が考えられるでしょうか?  普通の
insert into testtable (a,b,c,d,e…) values('$a','$b','$c','$e',…); って書式で、
コレをコマンドラインや phpMyadmin のSQLにコピペして打ち込んだら
ちゃんと反映される状況です…
0086nobodyさん2007/11/17(土) 21:57:51ID:???
mysql_error()で確認してみれ
0087nobodyさん2007/11/17(土) 22:10:10ID:???
>>86
どうもです それ、試してみます
phpのmysql文を delete from saloon_kihon where sId=100 っていうデリート文に
直したらこっちは動作しました サーバやパスワードの設定は変えてないのに、、
0088nobodyさん2007/11/17(土) 22:14:26ID:???
なんでinsert文がdelete文に置き換わるんだw
0089nobodyさん2007/11/17(土) 22:16:31ID:JYfUue/9
>>84
ま、少しでも流れを戻すためにw
>>75みたいに「大したコトしないけどやっぱDBはほすぃよねー」って時、何選ぶ?
コレ読んで「ああ、そーいえばSQLiteなんてモノがあったっけ」と思い出して少し調べてみたのだが、最近のディストリじゃ--without-sqliteでコンパイルしてるのな。
--with-pdo-sqliteとぶつかるからってコトでこーしてるらしいのだが、PDOってどうよ?

以下余談。
フーゾク屋さんのWebを見てると、面白いまでに画一化してるのがなんとも楽しい。
フリーのフーゾク店Webツールとか作ったら面白いかもしれんな、イロイロと黒いイミも込みでw
0090nobodyさん2007/11/17(土) 22:20:38ID:???
phpってソースからコンパイルして使うものじゃないのか?
0091nobodyさん2007/11/17(土) 22:20:40ID:???
mysqlとpdo使ってるよ。良いよ。
0092nobodyさん2007/11/17(土) 22:23:31ID:???
>>89
MySQLが使えるなら規模問わずMySQL。
SQLiteなんてDBがインストールされてないような特殊な環境じゃないと使わない。
Oracleが使えるならOracle使うし、使えるDB使うのが基本だろ。

>フリーのフーゾク店Webツール
こんなの作ったら圧力かけてくるよ
0093nobodyさん2007/11/17(土) 22:42:29ID:TDJjbBfG
>>92
フリーのふー族店Webツール

姫のデータを入れるツールをつくり、地図の図を入れるツールを作り
コース・オプション・料金を入れるツールを作り、DBもろともインストーラで
インスコするようにすればおk。

以外に簡単総社ね?
0094nobodyさん2007/11/17(土) 22:43:28ID:???
勤怠管理とWeb予約を紐付けたCMSぐらいなら、有り物組み合わせたら簡単にできそうだ
0095nobodyさん2007/11/17(土) 22:46:50ID:TDJjbBfG
ってか、まじで簡単そうだな。。

よくよく考えてみれば顧客の注文も似たような部分がたくさんあるから
それを作ればいいような。。車輪の再開発がだいぶ短縮できる。

VB使えりゃパッケージ開発できそうな気がしてきた。。
0096392007/11/17(土) 23:01:04ID:8mjUgZP5
誰か解りませんか?
0097892007/11/17(土) 23:03:49ID:???
>>90
正論だが>>75にソレを言っても始まるまいw

>>91
ふむ、ちょっとイジってみるか>PDO

>>92
正論だが(以下tbs
「MySQLが使えるレンタルサーバと契約してIDとpassもらって……」って言い出した時点で「アンタやって」って○投げするに決まってるやんw
これはフーゾクに限らず、中小企業のエラいさんなんてみんなそんなモン。

>>フリーのフーゾク店Webツール
>こんなの作ったら圧力かけてくるよ
だから楽しいのだろうw

>>93
地図ツールは単体ならフリーのである。
コース・オプションあたりはビミョウだな。これはWeb屋に任せた方がいいかもしれん
DBコミのインストーラはECコマースツールあたりのソースを見れば出来るだろうが、その手間を省きたいのでSQLiteを持ち出したのだよ。

>>94
そそ。嬢がケータイで勤怠を登録できるように出来れば意外と評判イイかもしれん

>>95
いや、本当にパッケージにするならPC本体コミで売りつけるべきだろうw
ただし、流石にソコまでやるとスジの人が怖いな


……ていうか、おまいらPDOの話題書き込んでください。
何でコッチにばっかり食いついてくるよw
0098nobodyさん2007/11/17(土) 23:28:16ID:???
姫プロジェクト誕生の瞬間を見た
0099nobodyさん2007/11/17(土) 23:57:43ID:???
じゃあそろそろ要求定義に入ろうか
0100892007/11/18(日) 00:03:15ID:???
流れを戻したくて必死にPDOの話題を書き込んでみるw
PDO、とりあえずWEB+DB Vol.30見てサクっと動かしてみた。
そんなに難しくはなさそうだがリファレンスは必須だな。
手元の青マンモス本では流石に古すぎる。なんかいい本シラネ?

ちなみに若干の注意点。Webやプラグラミング本、青マンモス本とかの古い資料だと、定数をPDO_・・・(例:PDO_ATTR_CASEとかPDO_CASE_LOWER)と書いてあるけど、これは今はクラス「PDO」の中に隠蔽されてる。
PDO::ATTR_CASEとかPDO::CASE_LOWERと書かないと動かない。
あと、SQLiteでは自動コミットをOffに出来んらしい。
ちなみに環境はCentOS5上での5.1.6
0101nobodyさん2007/11/18(日) 00:03:35ID:???
おまえらほんと893すきだね
0102nobodyさん2007/11/18(日) 00:26:22ID:???
ヤクザマネーください
0103nobodyさん2007/11/18(日) 00:40:50ID:???
>>88
いやー、すみません
まったくphpからのSQLコマンドを受け付けないような状況なのかと思って、とりあえずdelete文を
試してみました。 こっちはちゃんと動作するんですよね。
>>86さんの言うとおり、mysql_error()試したんですが、エラーが出ないようです
どうなってるんだ・・・
01041032007/11/18(日) 00:52:02ID:???
自己解決しました テーブル名を定数で表現してたんですが、
それをそのままダブルクォーテーションに突っ込んでました  レスくれた人ありがとう
0105nobodyさん2007/11/18(日) 01:36:39ID:???
>>39
お茶でも飲んでおちつけよ
0106nobodyさん2007/11/18(日) 05:50:42ID:hVWGJ0jC
PHP5のconfigureオプションについて知りたいのですが
http://php.benscom.com/manual/ja/configure.php
ここを見るとPHP4のしかないです
PHP5のはどこにありますか?
0107nobodyさん2007/11/18(日) 06:26:56ID:???
これがゆとり世代というものか
0108セックスレス夫婦2007/11/18(日) 06:27:55ID:???
>>106
うちの金庫に厳重に保管してあります。あしからず。

0109nobodyさん2007/11/18(日) 06:34:19ID:???
分からない人は無理して答えなくていいです
分かる人だけお答え下さい
0110nobodyさん2007/11/18(日) 06:36:27ID:???
  ヽ(`Д´)ノ   ボ
   .ヽ`Д´)   ッ
   (ヽ`Д).  キ
   (  ヽ`)   ア
   (   ヽ   ゲ
  ヽ(   )ノ.  ス
   .ヽ   )  ペ
   (ヽ  )   シ
   (Д´ヽ) .  ャ
   (`Д´ヽ  ル
  ヽ(`Д´)ノ   ト
   .ヽ`Д´)   ル
   (ヽ`Д).  ネ
   (  ヽ`)   l
   (   ヽ   ド
  ヽ(   )ノ.  サ
   .ヽ   )  イ
   (ヽ  )   ク
   (Д´ヽ) .  ロ
   (`Д´ヽ  ン
  ヽ(`Д´)ノ   ! !
0111nobodyさん2007/11/18(日) 08:15:34ID:???
長い
2行にまとめろ
0112nobodyさん2007/11/18(日) 09:02:45ID:???
40代無職の人は質問者の邪魔してばかりですね・・・
困ったものです
0113nobodyさん2007/11/18(日) 09:21:53ID:???
  ヽ(`Д´)ノ   ボ   .ヽ`Д´)   ッ   (ヽ`Д).  キ   (  ヽ`)   ア   (   ヽ   ゲ  ヽ(   )ノ.  ス   .ヽ   )  ペ   (ヽ  )   シ   (Д´ヽ) .  ャ   (`Д´ヽ  ル
  ヽ(`Д´)ノ   ト   .ヽ`Д´)   ル   (ヽ`Д).  ネ   (  ヽ`)   l   (   ヽ   ド  ヽ(   )ノ.  サ   .ヽ   )  イ   (ヽ  )   ク   (Д´ヽ) .  ロ   (`Д´ヽ  ン  ヽ(`Д´)ノ   ! !
0114nobodyさん2007/11/18(日) 09:24:13ID:???
40代自重しろ
0115nobodyさん2007/11/18(日) 12:16:56ID:???
phpのglobって再帰的に取得できたりしないの?
glob("mydir/" . "**/Test*.php")
ってやったら1階層下のしか取れてない。
rubyのglobは再帰的に下までとったはずだが。
0116nobodyさん2007/11/18(日) 12:43:26ID:KAZWW8eo
>>114 いや。俺もよくわかる。このまま、40代になったら、こんな事にしか
楽しみを見出せない40代になってそうだ。

  ヽ(`Д´)ノ   ボ
   .ヽ`Д´)   ッ
   (ヽ`Д).  キ
   (  ヽ`)   ア
   (   ヽ   ゲ
  ヽ(   )ノ.  ス
   .ヽ   )  ペ
   (ヽ  )   シ
   (Д´ヽ) .  ャ
   (`Д´ヽ  ル
  ヽ(`Д´)ノ   ト
   .ヽ`Д´)   ル
   (ヽ`Д).  ネ
   (  ヽ`)   l
   (   ヽ   ド
  ヽ(   )ノ.  サ
   .ヽ   )  イ
   (ヽ  )   ク
   (Д´ヽ) .  ロ
   (`Д´ヽ  ン
  ヽ(`Д´)ノ   ! !
0117nobodyさん2007/11/18(日) 12:53:34ID:KAZWW8eo
派遣に登録にいくたび、ソースもってくんだけど、
俺は学歴ないから(高卒)、ソースで採ってもらうようなものなんだ。

昨日、色々考えをめぐらせたんだけど、ありきたりのじゃ面白くないから
上で書いてあった風俗Webツール作ってもっていこうかな。。

姫の自己紹介とか出勤とか全部自由に登録できる高機能な奴。でも、女性社員の受けは悪いだろうなあ。
0118nobodyさん2007/11/18(日) 12:57:55ID:???
そして販売した先の893社長にちょっとしたバグを付け込まれて、
理不尽な言いがかりを付けられて一生ただ働きさせられるのですねw
人生まともに過ごしたいなら893や部落、在日朝鮮人には関わらない方がいいぞw
0119nobodyさん2007/11/18(日) 13:21:54ID:???
高機能っつってもなぁ。やってる事は単純だし。
0120nobodyさん2007/11/18(日) 13:40:46ID:???
妄想で高機能にしても使えないシステムができるだけ。
0121nobodyさん2007/11/18(日) 13:43:21ID:0/SvFAMM
質問です。

以下のディレクトリ構造

root -+- hoge01 --- hoge02
+- hoge03 -+- hoge04
+- hoge05

で、root に設置した「change.php」に用いて、全ての下位ディレクトリの
パーミッションを一気に変更したいと思っています。
そこで「change.php]に、

while(false !== ($dirName = readdir(ディレクトリハンドル))) {
chmod($dirName , 0***)
}

と書くと、「hoge01」と「hoge03」のパーミッションは期待通りに変更されるのですが、
「hoge02」と「hoge04」、「hoge05」のパーミッションは変更されません。
複数階層以降の下位ディレクトリ全てのパーミッションを
一括変更する方法はありますでしょうか?
よろしくご教示ください。

PHPバージョン: 4.4.7
0122nobodyさん2007/11/18(日) 13:47:06ID:???
宿題臭いなw
0123nobodyさん2007/11/18(日) 13:56:33ID:???
system()でchmod -Rしとけ
0124nobodyさん2007/11/18(日) 14:05:46ID:???
>>69
そんなものなのかな。
似たような関数が複数できてしまった場合、クラスに入れていった方が共通部の直しとかきっと
楽なんだろうとか妄想してしまうんだが。

もちろんOOP解っていない自分が無理に使う気はないけど、AJAXだのJSONだのが流行っている
のをみるとOOPできないと幅が狭くなっていく気はしてるorz
01251212007/11/18(日) 14:55:53ID:0/SvFAMM
>>123
レスありがとうございます。
頂いたアドバイスを元に試行錯誤しているのですが、
どうにもうまくできませんでした。

while(false !== ($dirName = readdir(ディレクトリハンドル))) {
system("chmod -R *** {$dirName}");
}

と書いたのですが、パーミッションは期待通りに変更できずにいます。
お手数ですが、再度詳しくご教示のほどお願いいたします。
0126nobodyさん2007/11/18(日) 15:02:51ID:???
>>124
プログラムが助長になるようなら使えばいいし、そうでなければあえて使う必要もねーな。
視野を広げたければOOPを勉強すりゃいいだろ。
0127nobodyさん2007/11/18(日) 15:31:55ID:???
OOPやらデザインパターン勉強しても、使いどころが分かってない奴多いね。
ここをクラスにできないかな?って試行錯誤するのはいいことだけど、
無理に使おうとしなくても、沢山経験積んでいけばおのずと使いどころが見えてくるよ。
0128nobodyさん2007/11/18(日) 16:20:00ID:???
>>127
読むだけ無駄なレスはいらないよ
0129nobodyさん2007/11/18(日) 16:54:46ID:???
引数の型にstringやintってつかえないんだっけ?
function hoge(string x)
とか。文字列渡してもstring型じゃねぇって。
0130nobodyさん2007/11/18(日) 16:56:54ID:???
タイプヒントは、object型やarray型 (PHP5.1以降) でのみ使用できます。
int および stringのような 通常の型でのタイプヒンティングはサポートされません。
0131nobodyさん2007/11/18(日) 16:58:34ID:???
>>128
読むだけ無駄なレスはいらないよ
01321292007/11/18(日) 17:22:08ID:???
>>130
サンクス。クラスである型じゃないと駄目って事かな。
自分で定義したクラスは引数指定できるようだし。
string,intはコメントにかいとけってことですね。
0133nobodyさん2007/11/18(日) 17:53:11ID:9XGZcI1l
ファイルが存在するか調べるのはfile_existsですが、
URLが存在するか調べる場合は何を使えばいいのでしょうか?
fopen, file_get_contentsなどさまざまな方法がなくはないんですが、
これだと存在しないときにWarningが出るので、
存在しない場合にfalseを返すような関数ないですか?

function url_exists($url) {
if ($fp = fopen($url, "r")) {
fclose($fp);
return true;
} else {
return false;
}
}

としても当然のごとくWarningが出るので・・・
@で制御するのもいいのですが、@を使わないで出来る方法があったら教えてください。
0134nobodyさん2007/11/18(日) 17:56:12ID:???
>>133
file_existsのユーザノートにわんさか書かれてるよ
01351332007/11/18(日) 18:01:37ID:9XGZcI1l
>>134
ユーザーノートとは見落としていました。
curlなんて初めて聞いた関数なので思いもつかなかったです。
早速勉強してきたいと思います。
どうもありがとうございました。
0136nobodyさん2007/11/18(日) 18:03:13ID:???
"をPOSTすると勝手に
"(半角)にされてしまうのですが、
何が原因でしょうか?
0137nobodyさん2007/11/18(日) 18:10:54ID:???
鯖缶
0138nobodyさん2007/11/18(日) 19:43:04ID:???
ダブルクォート何かをPOSTしなきゃいい
0139nobodyさん2007/11/18(日) 21:38:28ID:???
PHPを使ってるかどうか分からないんだけど、
eBayで出品者と連絡取ろうと思ってeBayのメッセージ機能でメッセージ送ったら、
「'」が「?」に化けちゃう。それも毎回。
●例 「I can't」→「I can?t」

これって何で??
もちろん文字入力時はIMEをOFFにして半角モードにしてるんだけど・・・。
0140nobodyさん2007/11/18(日) 21:40:05ID:???
SQLインジェクション対策だとは思うんだが、本当に全角の「?」なんだろうな?
01411392007/11/18(日) 21:51:00ID:???
あ、ごめん。
「?」じゃなくて「'」の半角ね(^^;

「'」は「?」の実体参照だったのかぁ。
それにしてもなんで「'」が「'」(の半角ね)になっちゃうんだろうか。


>SQLインジェクション対策
ええ?? それはDBに入れるときにやればいいんであって、
HTMLに表示するときにエスケープしても意味ないっしょ。

それとも投稿された生データじゃなくて、エスケープ済みのデータをDBに保存してるんだろうか?
だとしたらeBay終わってるな。
0142nobodyさん2007/11/18(日) 23:07:25ID:7wolHM+i
function categoryName($category_id){
$sql = "select * from category where category_id='$category_id' ";
$res = mysql_query($sql,$conn);
$row = mysql_fetch_array($res);
return $row;
}
$sql = "select * from bbs";
$res = mysql_query($sql,$conn);
while($bbs = mysql_fetch_array($res)){
$category = categoryName($bbs["category_id"]);
echo $category["name"];
}
※DB接続部分は省いています

として、カテゴリ用のテーブルにアクセスして
IDが一致すれば、その読み方を取得して一覧に表示しています。

関数内でDBに接続するコードを書いているので、bbsテーブルの登録数によって
何度もDB接続→データ取得を繰り返しているわけですが、
こういう書き方というのはデータ件数が増えた時に、負荷がかかるのでしょうか?
もしそうなら、別のやり方を教えて下さい。
0143nobodyさん2007/11/18(日) 23:27:18ID:???
<?php
function hoge() {
print('test');
}
?>

↑上のファイルを読み込む
<?php
include_once('aaa.php');
hoge();
?>

ってのと、静的メソッドの違いがわかりません。

<?php
public static function hoge() {
print('test');
}
?>

↓こうやった場合、上記のパターンとどう違うの?

<?php
include_once('aaa.php');
Hoge::hoge();
?>

どっちのやり方が普通なのでしょうか?
0144nobodyさん2007/11/18(日) 23:38:16ID:???
  ( ⌒ )
   l | /
  〆⌒ヽ
⊂(#‘д‘)<誰が禿げやねん!!
 /   ノ∪
 し―-J |l| |   
     @ノハ@ -=3 ペシッ!!
0145nobodyさん2007/11/19(月) 00:12:16ID:???
>>143
とりあえず動くか試してから出してくれ。そしてちゃんと>>1を読んでくれ。

関数にpublic,static修飾子は使えない。
クラスを使う気がないのなら上の書き方が正解。

静的メソッド(クラスメソッド)とついになるのはインスタンスメソッドでクラスの話。
メソッドはクラス内での関数のようなもので、オブジェクトの振る舞いを決めるもの。
一般的な関数とは似て非なるもの。
0146nobodyさん2007/11/19(月) 00:32:35ID:???
>>142
SELECT * FROM bbs LEFT JOIN category USING(category_id)
01471422007/11/19(月) 01:48:45ID:???
>>146
すみません、言葉足らずでした。。

複数JOINして、アクセスが重くなっているので、
表示面は>>142のようにして分けようと思っています。
その際に、何度もクエリが送信してもいいのか?と思いまして。
0148nobodyさん2007/11/19(月) 02:57:57ID:???
>>139
>●例 「I can't」→「I can?t」

俺もeBayで実験してみたら再現した(Firefox2.0.0.9)。
なんだろうね?これ。

検索ボックスから入力した場合には「'」も文字化けしないで表示されるな。
0149nobodyさん2007/11/19(月) 03:03:24ID:???
>>147
純粋な興味心から聞くんだけど、
表結合したときと、示してくれたような個別クエリ発行するときと、実行時間にはどれくらい差あるの?
0150nobodyさん2007/11/19(月) 03:24:03ID:???
>>149
しらねえよバカ
0151nobodyさん2007/11/19(月) 03:35:34ID:IR8ctjgO
(ルータなどの)グローバルIPアドレスを外部とは一切通信せずに取得する方法ってないですか?
■ このスレッドは過去ログ倉庫に格納されています