【PHP】下らねぇ質問はここに書き込みやがれ 40
■ このスレッドは過去ログ倉庫に格納されています
00011様
2007/02/22(木) 22:37:41ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 39
http://pc10.2ch.net/test/read.cgi/php/1171280039/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ http://pc10.2ch.net/php/subback.html
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで http://pc10.2ch.net/db/subback.html
0083nobodyさん
2007/02/23(金) 22:38:47ID:???あ〜、なるほどね。サンクス。そういう意味か…
大手の企業サイトでも、結構パスワード再送機能で、再度同じパスワードが
送られてくるケースが多いけど、それは逆にそれらを全然考慮していないってことなのかな?
0084nobodyさん
2007/02/23(金) 22:46:59ID:???実装に関してはユーザから見えないでしょ
勘違いしてると思うからこれを
ttp://php.benscom.com/manual/ja/function.crypt.php
0085nobodyさん
2007/02/23(金) 23:24:13ID:???実装が見える見えないは関係ないだろうが。
パスワード再送が可能ということは、パスワードをハッシュ化してないか、
またが可逆暗号で保存しているということであり、
これは万が一のときに非常に危険である。
普通、サイトごとにパスワードを全部変えているという人は少ない。
だから、ほぼ絶対に復号できない方法、すなわちランダムSalt付きでのハッシュ化がベスト。
0086nobodyさん
2007/02/23(金) 23:28:35ID:???ランダムの生成して送っといて変更してもらうっていう手とってるな
0087nobodyさん
2007/02/23(金) 23:48:58ID:???0089nobodyさん
2007/02/24(土) 00:04:43ID:???前にその話題を出したものなんですが
>ランダムSalt付きのハッシュ
これの使い方が良くわかりません。
これは、それぞれのユーザーのパスワードを暗号化するときに、
それぞれ別の文字を与えるということであってますか?
で、その与えた文字はどこに保存すればいいのでしょうか?
DBクラックされたらその文字もわかってしまうと思うのですが
別のところに保存しておくということが必要なんですか?
0090nobodyさん
2007/02/24(土) 00:07:31ID:???0091nobodyさん
2007/02/24(土) 00:24:00ID:SolPpwuf0092nobodyさん
2007/02/24(土) 00:26:56ID:???0093nobodyさん
2007/02/24(土) 00:54:17ID:???0096nobodyさん
2007/02/24(土) 01:35:00ID:???実用さとか追求せずに適当な感じで
0097nobodyさん
2007/02/24(土) 01:37:42ID:???0098nobodyさん
2007/02/24(土) 01:43:49ID:i51GRfpkこれらのテーブルのフィールド名とか型とかを一括して取り出して表示したいんですけど、
なんか便利な関数かライブラリってありますでしょうか?
イメージとしては、配列の中身を整形出力するvar_dump()みたいな感じで、
テーブルの構造を整形出力して確かめたいんです。
今のところphpMyAdminを使って一つ一つのテーブルを手動で開いてカラム名とか確認してるので面倒で・・・
0099nobodyさん
2007/02/24(土) 01:51:21ID:???0100nobodyさん
2007/02/24(土) 01:55:20ID:TWO55K1R例
$sitei = 'C';
$str = 'ABCDEFG';
指定したCまでの文字 ABC と出力したい
0101nobodyさん
2007/02/24(土) 02:07:07ID:???0102nobodyさん
2007/02/24(土) 02:07:39ID:???0103nobodyさん
2007/02/24(土) 02:19:09ID:/9A/DTQNもちろん、そんなことをすれば、穴だらけになります。
そこで、FCKEditorから受け取った値を正規表現を使って変換することを考えました。
例:
<p>→[p]
<strong>→[strong]
<table width="200" cellspacing="1" cellpadding="1" border="1">
→
[table---200---1---1---1]
tableタグも正規表現を使えば、上手く表現できそうな感じです。
その後でhtmlspcialcharsすれば、セキュリティ的にも問題ないと思います。
表示するときは、正規表現を使って逆に変換します。
質問は、上記のような事をやっている方・プロジェクトは無いですか?
便利なので、誰かやってそうな気がしますが。
0104nobodyさん
2007/02/24(土) 04:12:21ID:XQwWa3rhhtmlspecialchars() のように手軽にできるものありますか?
今は str_replace を使って個別に置換してるんですけど
$str = str_replace("/", "/", $str);
0105nobodyさん
2007/02/24(土) 04:35:34ID:???ファイル名に使えない文字なんて、
ファイルシステムで変わるし、自分で関数作っちゃうのが早いんじゃないかな。
>今は str_replace を使って個別に置換してるんですけど
個別というと1個ずつおきかえてるのかな?
str_replaceはしらないけど、
preg_replaceなら配列に入れて全部いっぺんに置き換えれるよ。
0107nobodyさん
2007/02/24(土) 05:53:52ID:???ファイル名に2バイトなんて普通だろ。
1バイトしか使えないような馬鹿なOSがあるのかw
2バイト文字に神経質すぎだろ、オマエ
0108104
2007/02/24(土) 06:02:24ID:XQwWa3rh対象の文字って結構たくさんあるんですかねぇ
preg_replace や strtr を使ってやってみます
先人が便利な関数作ってくれていないかなぁと
>>106
日本語ファイル名を扱うのでとりあえず
2バイト有りでやってみてます
0110nobodyさん
2007/02/24(土) 06:35:27ID:???0112nobodyさん
2007/02/24(土) 07:17:27ID:???ほっとけよ
0113nobodyさん
2007/02/24(土) 07:54:50ID:xkGH8kMq>>97
utnつけてるHTMLを読み込まれるだけで良いのでしょうか?
アクセスしたら自動的にログインされた状態にしたいのです
0114nobodyさん
2007/02/24(土) 10:51:52ID:???utnはDoCoMoのFOMAしか対応していない。 ユーザーが「端末情報を送信しますか?」とでるので、いいえと選択したら送信されず、自動ログインはできない。
HTTP_X_UP_SUBNOはauで、携帯本体で「端末情報送信する」に設定してる人のみ。
softbankは知らない。
0115nobodyさん
2007/02/24(土) 11:25:55ID:SolPpwuf0116nobodyさん
2007/02/24(土) 11:39:47ID:???0117nobodyさん
2007/02/24(土) 11:48:08ID:???0118115
2007/02/24(土) 11:52:04ID:???0119117
2007/02/24(土) 11:56:52ID:???0120nobodyさん
2007/02/24(土) 12:26:34ID:???0123nobodyさん
2007/02/24(土) 13:25:28ID:???HTMLタグ書くようにPHPコード書けば動くと思ってるのかもしれんぞw
0124nobodyさん
2007/02/24(土) 13:34:14ID:???php5って変数から変数への代入って参照渡しじゃなかったっけ?
それともオブジェクトのみの話?
$a = 100;
echo $a."<br>";
$b = $a;
echo $b."<br>";
$a = 'a';
echo $a."<br>";
echo $b."<br>";
100
100
a
100
0128nobodyさん
2007/02/24(土) 14:21:28ID:???のたうちまわった挙げ句カウンタができた。
多分ツッコミどころ満載というか、オブジェクト指向になりきれてないような気が。
誰かネ申な人アドバイスください。
ttp://sakuratan.ddo.jp/uploader/source/date33554.zip
わかんねーよお武家うtk指向。
0130nobodyさん
2007/02/24(土) 14:41:23ID:???あとyes/noの文字列じゃなくてtrue/falseや1/0使ったら?
$flagの意味もわからんけど
0131128
2007/02/24(土) 14:48:41ID:???>>130
抽象度。ってなにy=ー( ゚д゚)・∵.
同一IPでも日付が変わってればカウントしたいので、
とりあえず$flagたててます。
うあ、住人がたでも「?」なコーディングしてるらしい('A`)
0132nobodyさん
2007/02/24(土) 15:17:35ID:???Counterというクラス名なのに、カウンター固有のロジックはほとんどクラス外にあるし。
staticなfunctionをまとめてるだけだから、クラスのインスタンスを作る意味ゼロだし。
0133nobodyさん
2007/02/24(土) 15:19:15ID:???0134nobodyさん
2007/02/24(土) 15:21:16ID:???カウンタだから、必要なメソッドはカウントアップと
各データ取得だけでよいよ後は隠して
インターフェイスこんな感じで
class Counter
{
var $_logdir = '';
var $_options = '';
function Counter($logdir = './log/', $options = array()) {}
function setLogDirectory() {}
function setOptions() {}
function countUp() {}
function getCountTotal() {}
function getCountToday() {}
function getCountYesterday {}
function getLastAccess() {}
function _write() {}
function _read() {}
}
0135nobodyさん
2007/02/24(土) 15:21:56ID:???見てて気持ち悪い。
0136nobodyさん
2007/02/24(土) 15:26:03ID:???>んなわけねーだろボケが
ttp://f3.aaa.livedoor.jp/~matukazu/php5/php5_hensu.php
ttp://blog.so-net.ne.jp/nakagami/2005-11-10
0137128
2007/02/24(土) 15:46:46ID:???やっぱ全然オブジェクト指向になりきれてないすか…。
ベタ書きとそう変わらないorz
>>134
ありがとです。
とりあえずその示してくれた型に入れて作り直してみます。
>>135
きっとよくわかってないことの裏返しですorz
やっぱりわかったようでわかってなかったようで…。
ググって、ちょっとしたら作り直します。
0138nobodyさん
2007/02/24(土) 15:47:31ID:???124で変数から変数への代入は値渡し?参照渡し?
125でそんなわけない
126でPHP4は値渡しだよ、PHP5は参照渡しだよ
127でんなわけねーだろボケ
136で意味不明なリンク
やっぱりボケだったようで
0139nobodyさん
2007/02/24(土) 15:49:33ID:???あのね、わかってないんだったらコード書く前に基礎を学んだほうがいいと思うよ
言われたことそのまま取り入れても、なぜそうするのかが分かってないだろ?
そもそも「〜〜」すればオブジェクト指向になるってもんじゃないし。
0140nobodyさん
2007/02/24(土) 15:57:31ID:26WGt2h1それともDBの中に入れちゃっても大丈夫かな
保存ディレクトリまでのパスとかURLとか
皆さんどうしてますか?
TABLE1
商品カテゴリ URL パス ページimg (略
事務用品 ttp://ry /usr/html/jimu /user/html/img/jimu
パソコン用品 ttp://ry /usr/html/paso /user/html/img/jimu
TABLE2
商品名 商品カテゴリ
机 事務用品
モニタ パソコン
棚 事務用品
鉛筆 事務用品
結果セットテーブル
商品名 URL パス ページimg (略
机 ttp://jimu/ry /usr/html/jimu /user/html/img/jimu
モニタ tttp://paso/ry /usr/html/paso /user/html/img/paso
棚 ttp://jimu/ry /usr/html/jimu /user/html/img/jimu
鉛筆 ttp://jimu/ry /usr/html/jimu /user/html/img/jimu
結果セットを foreachで 表示やら各種処理です。
アドバイスお願いします。
0141nobodyさん
2007/02/24(土) 16:04:08ID:???0143nobodyさん
2007/02/24(土) 16:15:52ID:???素人が質問して、
素人が答えるスレ
わかってるか?
0144nobodyさん
2007/02/24(土) 17:08:56ID:???0146nobodyさん
2007/02/24(土) 18:04:12ID:C5SeaRxM変更したいのですがchmod()、ftp_chmod()以外でも可能でしょうか?
環境はwinのPHP5です
0147nobodyさん
2007/02/24(土) 18:10:30ID:???Windowsにパーミッションはありません。 ので、変更は出来ません。 さらにchmod,ftp_chmod以外ではパーミッションの変更はできません。
0149nobodyさん
2007/02/24(土) 18:26:14ID:???http://php.benscom.com/manual/ja/function.chmod.php
注意: この関数は Windows 環境にはまだ実装されていません。
0150nobodyさん
2007/02/24(土) 18:37:48ID:wnb8mZxAこのページにあるようなアクセス推移をグラフするスクリプトがほしいんですが、
公開されてるところはないでしょうか?ライブラリなどがわかれば知りたいです。
スクリプトは英語でもOKです。
0151nobodyさん
2007/02/24(土) 18:55:25ID:???の判断ってどのようにすればいいでしょうか。
0153nobodyさん
2007/02/24(土) 19:23:32ID:???0156nobodyさん
2007/02/24(土) 20:31:35ID:YJBwbPsK2、その後、ログインする機能をつけたいと思っています
1でフォームを通じてデータベースに登録するところまではできました
2ではどうしたらいいのでしょうか
ログインするページで、データベースから登録された全てのIDパスを読んで、フォームに入れられた情報が合致するかどうかをチェックしているのでしょうか?
0157nobodyさん
2007/02/24(土) 20:34:15ID:???0158nobodyさん
2007/02/24(土) 20:34:18ID:???where id=入力されたid
and pass=入力されたpass
0159nobodyさん
2007/02/24(土) 20:44:34ID:YJBwbPsKすばやい解答ありがとうございます!
プログラムど素人で、phpは勉強し始めて一ヶ月でわからないことだらけですが、
すごく面白いですね
ここのスレの人たちも親切ですし、すごくやる気がでてきます
本当にありがとうございました
0160nobodyさん
2007/02/24(土) 20:46:43ID:YJBwbPsKすばやい解答ありがとうございます!
プログラムど素人で、phpは勉強し始めて一ヶ月でわからないことだらけですが、
すごく面白いですね
ここのスレの人たちも親切ですし、すごくやる気がでてきます
本当にありがとうございました
0161nobodyさん
2007/02/24(土) 20:55:06ID:???0164162 ◆4M/QOnfmpY
2007/02/24(土) 21:53:21ID:???どうなってんのよおぃ……
0165nobodyさん
2007/02/24(土) 23:05:59ID:???かける?
0166nobodyさん
2007/02/24(土) 23:16:39ID:???かける?
0167nobodyさん
2007/02/25(日) 01:05:09ID:gfMJR4ridbから取り出すプログラムを組みたいのですが
エラーが出てしまうのでよろしくお願いします。
16:$con=mysql_connect("localhost","y","p","test1");
17:$query="select*from db;";
18:$res=mysql_query($con,$query);
19:
20:while ($row=mysql_fetch_array($res)){
21:print('<tr><td>'.$row["id"].'</td><td>'.$row['db'].'</td><tr>');
22:}
23:mysql_free_result($res);
24:mysql_close($con);
エラー内容
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\Program Files line 18
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Program Files line 20
Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\Program Files line 23
取りあえず以上なんですがよろしくお願いします。
0168nobodyさん
2007/02/25(日) 01:15:25ID:/w8sKU8xAuthについて質問です。
MySQLにパスワードと名前を入れておいて、そこを読み取って認証するという
単純な認証を試しに作ってみたのですが、どうも巧く行きません。
具体的には、どのような入力をしても、以下の「MyAuth.php」のswitch($status)でdefaultが選ばれてしまうので、困っています。
どなたか、アドバイスをください。
以下のURL先がソースコードです。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29230
0169nobodyさん
2007/02/25(日) 01:17:44ID:???まずDBに接続出来ていない。
mysql_connect("localhost","y","p","test1")
の条件で本当に接続できるか確認。
出来ているなら、mysql_connectのマニュアル読んでさらに確認。
0170nobodyさん
2007/02/25(日) 01:22:57ID:???(PHP 4, PHP 5)
mysql_query ? MySQL クエリを送信する
説明
resource mysql_query ( string query [, resource link_identifier] )
0171nobodyさん
2007/02/25(日) 01:24:26ID:???がおかしいだけだな。
$query="select * from db";
にして味噌
0174nobodyさん
2007/02/25(日) 01:32:16ID:???0175168
2007/02/25(日) 01:33:36ID:???どのようにその原因を探せば良いのかが分からないのです。
0176nobodyさん
2007/02/25(日) 01:39:09ID:???0177168
2007/02/25(日) 01:45:18ID:???$statusをたどるという事の意味がよくわからないです。
Auth.phpのコードを読むという事でしょうか?
0178nobodyさん
2007/02/25(日) 01:50:06ID:???"loginFunction"ってのはログイン画面だけを書く場所じゃないの?
その後に認証されてるかどうかをチェックしていくようだが
http://www.phpbook.jp/pear/pear_auth/index.html
0180nobodyさん
2007/02/25(日) 01:53:06ID:???ログインごときでハマるぐらいなら使わないほうがよっぽど早いと思うが。
0181178
2007/02/25(日) 01:58:53ID:???statusに何も入らないって事はセッションが確立できてないとか?
とりあえずさっきのURLの奴を最初から順に追ってくべきだと思うが
0182168
2007/02/25(日) 02:15:30ID:???先ほどのURLの文書は参考にさせていただきます。
今のところ、MySQLを動作させていない状態でも挙動が一緒なので、
きっと、データベース周りがおかしいのだと思います。
しかし、PEAR::DBを使ったデータベース接続は問題が無いので、
なかなか、問題点の予想がつきません。
>>179
http://pear.php.net/manual/ja/package.authentication.auth.php
は、一通り目を通したつもりなのですが、原因が分かりませんでした。
再読してみます。
>>180
便利だと聞いて、使ったら痛い目に遭ってます(三日ほど
勉強と思って、使ってみているつもりです。
■ このスレッドは過去ログ倉庫に格納されています