元スレ【PHP】ID出さんでも質問OKなスレ【初心者歓迎】2
php覧 / PC版 /みんなの評価 : ○
51 = :
phpで、すでに定義された関数を削除することはできるでしょうか。
やりたいことは、ライブラリやフレームワークが提供する関数を上書きしたいということです。
素直に再定義するとエラーになるので、関数をいったん削除できないかと思い、質問しました。
よろしくお願いします。
52 = :
そういう場合は普通継承させるんじゃないの?
53 = :
http://www.php.net/manual/ja/function.override-function.php
54 = :
まあ、役には立たないのだけどね。
55 = :
素直にクラス作って継承させちゃえよ
56 = :
データベースというのはPHPの参考書には必ず書かれていますが、厳密にはPHPの分野なのでしょうか?
それともSQLやデータベースの分野になるのでしょうか?
57 = :
釣りですね
58 = :
いや、初心者なんでマジで聞いたんですけど・・・
59 = :
データベースはデータベース
SQL,MYSQL,SQLLite,・・・
データベースと一口にいってもいろいろある
プログラミング言語と一口に言ってもいろいろあるのと同じ
分野と言うなら全部別
60 = :
ツナマヨというのはコンビにには必ず置かれていますが、厳密にはコンビニの分野なのでしょうか?
それともおにぎりやツナマヨの分野になるのでしょうか?
変だろ?
63 = :
略語ですらないらしいな。
64 = :
しーくうぇる
66 = :
すみません、queryメソッドと、prepare/excuteメソッドの使い分け&違いを教えていただけませんか?
どっちも同じような所で使われていて、本3冊を読んでみたりしたのですが分かりません
67 = :
>>66
query →基本 初心者はこれを使え
prepare/excute → 上級者用
SQLインジェクション対策でこれを使う
はじめのウチは無視してOK
68 = :
つうかなんで同じスレで聞かないの?
マルチと言うかは微妙だけどさ
69 = :
>>67
そうやって脆弱性のあるプログラムが量産されるわけだな
71 = :
selectには何で使わないの?
sqlインジェクションの危険は同様にあるぞ
72 = :
変なデータ入れられることはないが見られちゃまずいものを見られる危険性があるからな
73 = :
>>71
じゃぁもう全部にprepare/execute89を使えばいいの?
74 = :
>>72
> 変なデータ入れられることはない
いや、あるだろ。
75 = :
>>72
>変なデータ入れられることはないが
「;」をエスケープしなきゃupdateでもdrop tableでもし放題だよ
76 = :
>>73
使っときな
77 = :
DBを絡めたコードを書いたことない奴が多いスレだな
78 = :
初心者歓迎だから当然だな
79 = :
select文にどうやってupdateやdropを組み込むの?
80 = :
>>79
http://www.thinkit.co.jp/cert/tech/7/5/2.htm
このあたりが参考になる
81 = :
ん?SQLインジェクションへの対抗手段としてquoteってあるんだよね?
「'」を無効化できるから
で、それだとコードが冗長になるって言うんでprepare/executeメソッドを使うんだよね?
でもそれでも「;」をエスケープしなきゃ駄目だって事?
じゃぁ対策はどうすればいいの?
他にメソッドとかあるの?
83 = :
>>81
プリペアドステートメント使っていれば「;」も平気だよ。
SQLインジェクションへの対策はmysql_real_escape_stringなどを使う
これは\n\rや'";等をエスケープする。
プリペアドステートメントはそもそもインジェクション対策ではなく
クエリのパースの回数を減らしDB側の負担を軽く(リソース消費量を少なく)させるのが目的。
プレースホルダを使うのでインジェクション対策にも有効というだけ。
冗長だから使うというモノではない。
88 = :
php.iniのinclude_path= の設定で、
include_path=".;c:/php/includes;C:/php/Pear;"と参考書やネットを見て設定したのですが、
自分のc:/phpフォルダを見ると、includesというフォルダやファイルが見当たりません
コレで大丈夫なのでしょうか?
殆どがこのような設定になっていますが、皆さんのphpフォルダの中にはincludesというファイルやフォルダが入っているのでしょうか?
89 = :
>>87
syslog()なんてあったのか。
ならexecでloggerなんて呼ばないでsyslog()を使った方が良い。
ただ、syslog()は/etc/syslog.confに書かれたログにしか出力しないので注意
/etc/syslog.confの設定はスレ違いなので調べて。
で、そこまでやるならやっぱりlogrotateの方が良いと思うぞ
90 = :
PHPから別のMySQLサーバーへの接続ができません。原因は何でしょうか。
試したこと:
・「localhost」で自分のサーバーのMySQLに接続できる。
・「127.0.0.1」で自分のサーバーのMySQLに接続できない。
・別のサーバーのIPアドレスでそのMySQLに接続できない。
・別のサーバーのホストアドレスでそのMySQLに接続できない。
接続できないとき、mysql_connect、mysqli_connectともに、エラー2003、
「Can't connect to MySQL server on 'サーバー' (13)」のエラーが出ます。
また、mysqlコマンドで上記いずれも接続できることは確認しています。
なのでサーバーが起動していないとか、ポートが空いてない、
ユーザー権限・パスワードの設定ミスではありません。
宜しくお願いします。
93 = :
selinuxは無効にするのがデフォって教えてもらわなかったのか?w
94 :
質問させてください。
コンストラクタがいまいちどのタイミングで使うのか理解出来ない
のですが、誰か教えてください。
95 = :
>>94
使うも何も、オブジェクトを生成するときに呼び出されるメゾットだよ
主にオブジェクトの初期化を行うことが多い
96 = :
>>94
Hogeクラスがあるとする。
このクラスのオブジェクトを作成する場合、
$obj = new Hoge(引数);
と記述する。
このとき、function __construct(引数)が定義されてると、自動的に実行される。
どのタイミングで使うかを気にしているみたいだが、
コンストラクタを関数として直接呼ぶ必要は無い。
97 = 94 :
>>95
>>96
えと・・・クラスを書いた後、オブジェクトを関数の中に書かなくても
最初に実行されるメソッドって事でいいんですかね?
98 = :
>>97
日本語でおk
http://jp2.php.net/manual/ja/language.oop5.decon.php
99 = :
PHPってPEARやPDOとかを含めたリファレンスって無いんですか?
もういい加減ネット調べるのもめんどくさくなってきた・・・
本でバッと見た方が早いし
IT後進国の我が県で一番大きな本屋に売ってなかったんですけど、何かいい本ないですか?
アマゾンで買います
100 = :
http://jp.php.net/manual/ja/book.pdo.php
http://pear.php.net/manual/ja/package.database.db.php
みんなの評価 : ○
類似してるかもしれないスレッド
- 【PHP】ID出さなくても質問OKなスレ【初心者歓迎】 (836) - [86%] - 2009/8/18 21:04 ○
- 【PHP】ID出さなくても質問OKなスレ【初心者歓迎】 (1001) - [86%] - 2009/1/28 18:17
- 【PHP】下らねぇ質問はここに書き込みやがれ 69 (1001) - [33%] - 2008/6/25 23:33 ○
- 【PHP】下らねぇ質問はここに書き込みやがれ 70 (1001) - [33%] - 2008/7/19 3:52 ○
トップメニューへ / →のくす牧場書庫について