09/10/18 11:43:34
>>197の言ってることが理解できてたやつもいるようだが(?)
どういうことをしたくて彼が何を言いたかったのか誰か説明してくれない?
鉄道のルート検索(Yahoo路線情報のことだろうか?)にも
彼の言う成長型プログラムが使われていて
新しい駅の追加や他社と提携して相互乗り入れなんかで起きる路線図変更など
何かと人手で修正する必要が出てくるデーターを一切使わずに
それらの事象をどうやってか知らないが成長型プログラムが把握すると
(Googleを引き合いに出してるので検索ボットでも使って
どこかのWebサイトに新しい駅ができたとか書いてたらそれを分析して把握する?)
まぁ仮に↑のような構想を抱いてるとしたらかなりいい加減なシステムになるとは思うが
彼はどのようなシステムを構築したかったのだろうか?
233:nobodyさん
09/10/18 12:02:50
覚えたての言葉を言いたかっただけなんだからいじめるな
234:nobodyさん
09/10/18 12:20:54
自然言語解析と路線バスのデータ拾いを同列に考えてる時点で発想は
ユニークだと思う。
不可能ではないかもしれないけど、そんなのを組むぐらいなら全バス会社
の時刻表ページをパースするのを組む方がまだ先の見える話になるわw
235:nobodyさん
09/10/18 12:37:18
>>232
オレの想像だが、路線自体をプログラムが無から創造する、と言うことかと。
236:nobodyさん
09/10/18 12:51:15
基本データを持たせないで巡回BOTでデータ自動構築ってのはなぁ
上野>秋葉原>メガロポリス中央駅>東京 とか訳の解らん事になりそうな気がする
集めたデータの正否を判断させるのには別な構築も必要だし
全てを自動化ってことならある意味人工知能っぽい気がする
237:nobodyさん
09/10/18 13:44:35
いい加減スレチだろ
238:nobodyさん
09/10/18 17:37:26
プログラム手法に関することだしスレチとまではいえないだろ
239:nobodyさん
09/10/18 17:42:55
質問に回答するスレなのに、
質問者が質問してないからスレチ。
回答しようもないからスレチ。
240:nobodyさん
09/10/18 17:44:37 TSx9ncb0
socket_create関数使おうとすると
Call to undefined function socket_create()とエラー出る
ini書き換えればいいのか?どの部分?
241:nobodyさん
09/10/18 18:08:59
>>240
windowsなら
URLリンク(jp2.php.net)
のUser Contributed Notesに書いてあるよ
windows以外は再コンパイルかな?
242:nobodyさん
09/10/18 18:58:57
>>238
それが断定的にPHPと関係する話でもないからスレチ
243:nobodyさん
09/10/18 19:21:17
>>197
>phpなどを使って
そんなのProlog+グラフ理論でやれよ
そして激しくスレ違い
244:nobodyさん
09/10/18 20:04:59 93bN8Xvf
よろしくお願いします。
echo round($avg,1);
数値の出力をしたいと思い、round関数を使用しています。
これだと、確かに、小数点が一桁に丸まるのですが、
たとえば、値が、(10.0)の時、(10)の様に、
小数点第一位の 0 が消えてしまいます。
0 も表示するには、どうしたら良いでしょうか?
245:nobodyさん
09/10/18 20:23:10
printf 使ったら?
246:nobodyさん
09/10/18 20:35:12
printf("%.1f",round($avg,1);
247:nobodyさん
09/10/18 20:48:52 93bN8Xvf
>>245 >>246
ありがとうございます!
出来ました。
公式マニュアルの round関数を見てもわからなかったので、
とても助かりました。ありがとう!
248:nobodyさん
09/10/18 21:01:10
もっと簡単に考えればいいんじゃないか。
バス(鉄道)をキーにweb検索すれば→バス会社のページに行き当たる。
バス会社のページから時刻表、路線、バス停車場間の距離を緯度経度情報として割り出し、
それを元に、路線データベースを作る。あとは、鉄道の路線検索みたいなことをすればいい。
あと、空路みたいな三次元なら可能とか言っていた奴がいるが、
高度情報まで入ると、計算が複雑で収束しないと思うが。
249:nobodyさん
09/10/18 21:11:29
じゃあやってみろよ。
簡単だなんて考えるのは、実際に組む事を考えてない奴だけだ。
250:nobodyさん
09/10/18 21:42:08
そもそも路線バスって会社間で乗り継ぎでどこまでもいけるのか?
251:nobodyさん
09/10/18 21:48:06
Yah○oの路線検索叩いて返ってきたHTML解析すればいいな
252:nobodyさん
09/10/18 21:49:49
>>250
東京からなら、鹿児島まで行けるよ。
金が無かったころ、夜行で博多まで行って、そこから昼間乗り継いで鹿児島まで行った。
鹿児島に着くころには夕方になっていたっけ。
253:nobodyさん
09/10/18 22:09:44
作るのが簡単じゃなくてもっと頭をやわらかくしろって言いたかったんだろ
254:nobodyさん
09/10/18 22:34:21
空路ならネガティブリストになるから楽だろ。
255:nobodyさん
09/10/18 23:05:30
>>254
こういう仕様を理解出来ていない奴は、プログラムがいくら出来ても駄目。
指示されたものと全く違うものを作っておきながら、自己満足しているタイプだから。
そして、人には理解できないほど自分の技術力は高いと一匹狼を気取るバカ。
256:nobodyさん
09/10/19 00:24:09
バカが絶対回答の出ないシステムをでっち上げて、回答を考えてくる人をマッチポンプで燃やしまくるという伝説の釣堀はこちらですか
257:nobodyさん
09/10/19 00:27:23
ええそうですがおたくは?
258:nobodyさん
09/10/19 03:27:55
>>255
その君の理解してる仕様とやらを是非。
259:nobodyさん
09/10/19 06:29:20
>>212がなんか面白いこといってるが
どっかのアルゴリズムスレや数学板なんかで
このスレの話題を見てもらうとどういう反応返ってくるだろうな
260:nobodyさん
09/10/19 07:03:52
「ペチパーはWebProg板から出てくんな」
261:nobodyさん
09/10/19 07:35:43 z1FY4P6e
php初心者です。
クラスを__autoloadファンクションで自動ロードしたい場合、
set_error_handlerは使えませんか?
__autoloadファンクションを呼び出す前にset_error_handlerでClassNotFoundが捕捉されてしまっています。
現在error_reportingにはE_ALLを設定しています。
262:nobodyさん
09/10/19 07:42:44 sPnvr2hs
phpで動的にエラードキュメントページを生成してる場合に
ErrorDocument 401
にはローカルのパスじゃないとだめみたいで、
リモートの401ページが指定できないのですが、
例えば、
Error Document 401 http://○○.com/401.php
みたいな感じでやりたかったのですが
[notice] cannot use a full URL in a 401 ErrorDocument directive --- ignoring!
となってしまいます。
どう対処すればよいのでしょうかよろしくおねがいします
263:nobodyさん
09/10/19 08:21:52
ErrorDocument 401 /401.php
264:nobodyさん
09/10/19 12:49:12
>>261
エラーハンドラから__autoloadを呼び出せば?
265:nobodyさん
09/10/19 15:14:54 oO1BiORv
会員制のシステムを作っておりまして、
登録とともに、メールアドレスも同時に発行したいと考えています。
phpからメールアドレスを作る簡単な方法を教えて頂けませんか?
メールサーバーはsendmailです。
どうぞ宜しくお願いします。
266:nobodyさん
09/10/19 15:24:30
>>265
echo md5($_POST['user_input_value')."@"."localhost";
267:nobodyさん
09/10/19 16:09:44
簡単なのはローカルアカウント作ってそれをそのままメールアドレスで使う、だろうな。
sendmailと一言書くだけの君にはそれ以上のものを説明するのは難儀だ・・
268:nobodyさん
09/10/19 16:17:33 BtEfrA+m
以下の二次元配列があります
$ary[0][0]="a";$ary[0][1]="b";
$ary[1][0]="c";$ary[1][1]="d";
print_rの結果
Array(
[0] = > Array(
[0] => a
[1] => b
)
Array(
[1] = > Array(
[0] => c
[1] => d
)
これの一次元が0の配列を全て削除したいのですが
unset($ary[0]);とやっても一次元は消えるのですが二次元のほうは消えませんでした
求める結果
Array(
[1] = > Array(
[0] => c
[1] => d
)
一次元の[0]の配列(aとbが含まれている[0])を一気に全部消す方法はございませんか?
269:nobodyさん
09/10/19 16:30:07
>>268
試しに書いてみたんだが…
<?php
$ary[0][0]="a";$ary[0][1]="b";
$ary[1][0]="c";$ary[1][1]="d";
var_dump($ary);
unset($ary[0]);
var_dump($ary);
?>
array(2)
{
[0]=> array(2) { [0]=> string(1) "a" [1]=> string(1) "b" }
[1]=> array(2) { [0]=> string(1) "c" [1]=> string(1) "d" }
}
array(1)
{
[1]=> array(2) { [0]=> string(1) "c" [1]=> string(1) "d" }
}
と消えているっぽいんだが…
270:268
09/10/19 16:34:33
当方の環境はwindows vistaでPHP5.2.10でコンソールで動作させました
どうしても2次が消えません
$ary[0][0]="a";$ary[0][1]="b";
$ary[1][0]="c";$ary[1][1]="d";
unset($ary[0]);
でprint_rの結果はこうなります
Array(
[0] => a
[1] => b
)
Array(
[1] = > Array(
[0] => c
[1] => d
)
271:268
09/10/19 16:37:24
すいません消えたり消えなかったりしました
何か環境がおかしくなってるみたいなので一旦解決済みにします
272:nobodyさん
09/10/19 17:46:49
上でprint_r($ary[0])やってるのに気づいたんでしょ
273:nobodyさん
09/10/19 21:02:39 Vr0Rkez/
【OS名】CentOS5.3
【PHPのバージョン】php-5.2.10
【連携ソフトウェア】ImageMagick(2.2.1 )/Grapicmagick(1.0.1-b1)
【質問内容】
宜しくお願いします。
現在サーバに収納している画像ファイルの一覧プレビューを行うスクリプトを記述しているのですが、マルチページTIFFでハマってしまいまし。
シングルページTIFFであれば上記のImagick/Gmagickで問題なくプレビュー表示出来るのですがマルチページの場合は表示に何があります。
・ImageMagick:最後のページの表示。
・GraphicMagick:表示されない。
画像をファイル出力すればシングルページになるのですが、出力せずに取り込んだ状態で「echo $image」($imageがインスタンス)でヘッダー情報を付与してIMGタグにて直接出力したいのです。
知りたい事は下記のことです。
マルチページのページ数の取得。
任意のページの出力。
出来ればGrapicsMagickで処理を行いたい。
Webサイトを巡回してもマルチページTIFFについてはConvertコマンドでのファイル切り出しのみでPHPで使用する場合の記述はありません。
ご存知の方がいらっしゃいましたらご教示の程宜しくお願いします。
274:nobodyさん
09/10/20 04:26:38 dt9+CcDD
myphpadominで50Mぐらいのファイルをアップロードしたいのですができません
大きいファイルをDBに入れるにはどうすればいいでしょうか
ご教授ください
275:nobodyさん
09/10/20 05:52:10
>>274
php.iniの設定
276:nobodyさん
09/10/20 09:18:38
>>274
upload_max_filesizeだけではなくmemory_limitも変えないとこけるからね
念のため
277:nobodyさん
09/10/20 09:28:48 hamOlnHD
Cookieについての質問です。
ドメインがa.comのサーバで、ドメイン名を「x.com」と指定して書きこんだCookieは、
ドメインx.comのサーバで読めるのでしょうか。
よろしくお願いします。
278:nobodyさん
09/10/20 09:44:05
また同じようなのが....
クロスサイトってキーでググれ。
こんな時代にセキュリティを全然判ってない。
まーかわいそうだからヒントやるよ。GETかPOSTで渡しとけ。
279:nobodyさん
09/10/20 09:45:34
>>278
また上から目線か
なんでか理由を書かなけりゃわからんだろバカ
280:nobodyさん
09/10/20 09:56:58
>>277=>>279
281:nobodyさん
09/10/20 10:01:25
>>278>>280
282:nobodyさん
09/10/20 10:01:42
>>277
そんなことできるのかと思ってやってみたら一応ヘッダは送られるのな
ブラウザは無視しているような挙動だったが
283:nobodyさん
09/10/20 10:43:20
そりゃ送るだろうな
サーバ側から送信するように書くのは自由だけどあくまでもブラウザ側でチェックしないといけないことだし
284:大至急
09/10/20 11:33:00 JKmaOzfS
他のサイトでも取得したクッキーを全て読めるような
プログラムを教えて下さい。
今日の夕方までに必要なので、遅くても15時までにはご解答をお願いします。
285:nobodyさん
09/10/20 11:38:01
>>284
そんなことできません
286:nobodyさん
09/10/20 11:55:46
>>284
直前にある>>277-283の流れを見ていたらわかるだろう?
と思ったが、別サイトでも同じドメインならパスを'/'とかにすれば可能
287:277
09/10/20 11:57:10 hamOlnHD
レスありがとうございます
288:nobodyさん
09/10/20 12:03:37
>>284
クラッキングしたいんですよね、わかりますよ
289:大至急
09/10/20 12:15:24 JKmaOzfS
>>286
いえ、別のドメインでもできるようなスクリプトを望んでいます。
>>288
クラッキングではありません。
訪問者がどのようなサイトを訪れているかを分析して、
その訪問者にあったメッセージを表示するプログラムを作りたいだけです。
あと、3時間しかありません。申し訳ありませんが、最優先でお願いします。
290:nobodyさん
09/10/20 12:29:25
>>289
13時までに上げるから待て
291:大至急
09/10/20 12:36:01 JKmaOzfS
>>290
ありがとうございます。
期待しています。
292:nobodyさん
09/10/20 12:36:58 3y8nZV0m
メール解析にはPEARのMail_Mimeがスタンダードなんでしょうか?
それかFWのソレ。
他にオススメの方法があったら教えて下さい。
293:nobodyさん
09/10/20 12:44:53
>>289
プライバシー覗く池沼かよきめえな
294:nobodyさん
09/10/20 12:58:51
>>289
もしクッキーが読めちゃうなら「どのようなサイトを訪れているか」ではなくて
別サイトの「どんな情報を持っているか」を見てるのでは?
強引な手法で履歴を取得する方法はあるけど、クッキーは無理
できたらセキュリティ的にまずいだろう
295:大至急
09/10/20 13:35:52 JKmaOzfS
ちょー役に立たねぇー奴らw
できないできない、じゃなくて、できる代替案を考えろ馬鹿。
296:nobodyさん
09/10/20 13:39:47
>>284
15時だな、わかった!
297:nobodyさん
09/10/20 13:55:48
15時から考えるわ
298:nobodyさん
09/10/20 13:58:05
まぁ、あせる事も無いからなぁ ゆっくりと代替案でも考えようぜ
299:nobodyさん
09/10/20 14:04:49
なんだいつもの池沼か
300:nobodyさん
09/10/20 14:08:09
>>279
こんなやつ(大至急)のために下手に出なければいけない理由は?
っていうかみんなわかってんだけどいわないだけ > ちょー役に立たねぇー奴らw
勝手に死んどけ
301:nobodyさん
09/10/20 14:11:57
>>289
cookieじゃないが、 こういうのでどうだ。
URLリンク(it.nikkei.co.jp)
302:大至急
09/10/20 14:39:10 JKmaOzfS
>>301
ありがとうございます。これでいいです。
クライアントに代替案を出せって言われて困っていたので、
これコピって送ります。助かりました。
追伸
結局、>>301の方以外は、冷やかしでこのスレに常駐している集まりなんですね。
本当に、砂漠の中にある金塊を見つけるがごとしです。
303:nobodyさん
09/10/20 14:42:30
>>302
>>294で強引な手法で履歴は取れるといったはずだが?
てか、マジで>>301採用するのかよ
304:nobodyさん
09/10/20 14:46:41
釣りだろ
そうでないなら頭が悪すぎる
クライアントにあきれられるのがおちw
305:nobodyさん
09/10/20 14:53:21
>>303-304
ID:JKmaOzfS があの手法で良いと言っているんだから良いんじゃね?
砂漠の中で見つけた金塊が本物かどうかも確認しないで持ち帰るのは
本人の勝手だし
306:nobodyさん
09/10/20 15:21:13
まぁクビだな
307:nobodyさん
09/10/20 15:27:30
あとは同じ様な質問が来たとしてもスルーしようぜ
308:nobodyさん
09/10/20 15:31:05
やさしい人多いな。俺は一番ひどい回答した301だが。
309:nobodyさん
09/10/20 15:47:05
うんこ
310:nobodyさん
09/10/20 17:14:32
わろた。
あまりブラック会社に悪いこと教えちゃダメよん
311:nobodyさん
09/10/20 17:27:36
>>301
これは、ひどい。不正アクセス禁止法違反で、
警察に通報した。
312:nobodyさん
09/10/20 17:34:11
不正指令電磁的記録作成等の罪じゃなくて?
313:nobodyさん
09/10/20 18:06:27
訪問済みリンクの色が変わってるのを
javascriptで取得してるだけだよ。
314:nobodyさん
09/10/20 18:29:31
javaオフにしてればいいね
315:nobodyさん
09/10/20 18:40:44
だがFlashでも同じ事が出来ちゃんだよなそれが
316:nobodyさん
09/10/20 18:53:20
CSSでもできるな
317:nobodyさん
09/10/20 19:53:10 DJDnqjY2
フォームの連続投稿規制って、Cookieとセッションと
DBにワンタイムコード記録する方法以外で何か無いですかね?
携帯でも対応させたいので、手軽な方法無いか探しているのですが
ググっても見つからないし、他に思い浮かばなくて・・・
318:nobodyさん
09/10/20 20:32:20 mUSPneVM
str_replaceとstrtrの違いってなんですか?
319:nobodyさん
09/10/20 21:01:13
str_replaceは置換機能がありますがstrstrにはありません。
320:nobodyさん
09/10/20 21:04:52 QCSnncKX
【OS名】WindowsXP
【PHPのバージョン】php5.29
【質問内容】Net/SmartIRCを利用してBOTを作っているのですが、トークにどうやったら反応するのかがわかりません。
BOTにトークで話しかけたら反応を返す、またはチャンネルで発言した言葉に反応してトークで返す、
のどちらかをしたいのですが、どうやったら良いでしょうか?
ちなみに、後者の方はこちら側からトーク画面を開いておいたらトーク内で発言を返すことはできましたが、
あらかじめトークの画面を開いていない場合はトークを返せませんでした。
321:nobodyさん
09/10/20 21:05:39
>>319
え
322:nobodyさん
09/10/20 21:06:22
>>301
その数千個のリンク、どっかにテキストで落ちてないかな?
323:nobodyさん
09/10/20 21:12:53
ひろみちゅが可視化してなかったっけ?
324:322
09/10/20 21:21:56
>>323
さんきゅ。
ad4u ひろみちゅで検索したら、1/5ほどのせた、っていうページがあった。
URLリンク(blog.myrss.jp)
325:nobodyさん
09/10/20 21:54:58
ファイルって少ないほうがいいの?
個人向けと法人向けが2つあった場合登録ページを分けるべき?
またその場合は、フォルダを分けたほうが良い?
326:nobodyさん
09/10/20 22:36:22
つスレタイ
327:nobodyさん
09/10/20 22:55:57
メールフォーム作るときにphpとpearlどちら使った方がいいですか?
328:nobodyさん
09/10/20 22:59:20
つスレタイ
329:nobodyさん
09/10/20 22:59:43
俺なら迷わずにpearl
330:nobodyさん
09/10/20 23:04:49
>>327
ひまわりがいいよ
331:nobodyさん
09/10/20 23:08:55
ちゃんと教えろよ
スクリプト厨って馬鹿にされるぞ
332:nobodyさん
09/10/20 23:24:14
じゃPythonで。
333:nobodyさん
09/10/20 23:34:41
漢は黙ってsh
334:nobodyさん
09/10/20 23:39:17
メールフォームでそ?
htmlのみで。
335:nobodyさん
09/10/20 23:58:42
phpはいないのか・・・
まだpearlの方がメインで多く使われてるみたいだ
336:nobodyさん
09/10/21 00:16:56
<p>xxx@xxx.com</P>
これでいいだろ
337:nobodyさん
09/10/21 01:55:04
新言語ペアールスレと聞いて
338:nobodyさん
09/10/21 01:56:21
pearlを知らないヤツがいると聞いて
339:nobodyさん
09/10/21 02:28:02
新言語ピアールスレと聞いて
340:nobodyさん
09/10/21 06:28:54 JoENl7DB
phpとあまり関係ない話題で恐れ入りますが、
ご協力頂きたく投稿させて頂きました。
風見鶏の日本医師会について抗議をしませか?
人が一番苦しい時に助けてあげるのが、
医師ではないでしょうか?
今まで仲良くやってきておきながら、
苦境に立たされたら縁を切る。こんなことがあっていいのでしょうか?
日本人の義理人情はどうなってしまったのか。全く納得できません。
URLリンク(www.yomiuri.co.jp)
来春に予定されている日本医師会長選への立候補を表明している県医師会の原中勝征会長は
「民主党と仲良くしたいと言っても、参院選で組織内候補を自民党から推すのであれば誰も信用しない」と、
自民党との決別を求める姿勢を強調、「このままいったら日本医師会がだめになるのは確か。
できるだけ早くマニフェストを書いて理解を深めたい」と話した。
341:nobodyさん
09/10/21 08:09:33 N99G4kgz
カレンダーつくるよ
ところで祝日とかのリストってどこかに落ちてませんか?
342:nobodyさん
09/10/21 08:44:50
>>341
URLリンク(jo1upk.blogdns.net)
春分/秋分の日は閣議決定なので、変わる可能性が無いとは言えない。
343:nobodyさん
09/10/21 08:48:02 JoENl7DB
>>342
民主党の連中が決定する閣議なんて信用しちゃ駄目だよ。
やっぱり、自民党が一番よくわかっている。
344:nobodyさん
09/10/21 09:40:12 N99G4kgz
ありがとうございます
早速カレンダー作りします
345:nobodyさん
09/10/21 09:51:45
各国・州の祝日も対応しないとな
346:nobodyさん
09/10/21 10:24:27
>>342
いいねこういうの。
俺もいつか自作したのこんな感じで公開したいな。
347:nobodyさん
09/10/21 10:38:23 JoENl7DB
【速報】
日本郵政に、新社長に元大蔵次官の斎藤次郎氏が内定した。
348:nobodyさん
09/10/21 10:45:36 mqyZqK+c
windows vista使ってます
php5.3を使うときスレッドセーフとノンスレッドーセフのどっちを使ったほうがいいでしょうか?
違いがわかりません
349:nobodyさん
09/10/21 10:57:25
>>348
運用じゃなくて開発用に使うんだよね?
もし開発用ならスレッドセーフにしておけばOK
350:nobodyさん
09/10/21 10:59:34 mqyZqK+c
>>348
ありがとうございますスレッドセーフをインストールします
補足
調べてみたらwindowsでapacheを使うならスレッドセーフを使ったほうがいいみたいでした
IISを使う場合はVC9のほうを、そうでないならVC6のを使うそうでした
linuxでは非スレッドセーフでもOKみたいでした
351:nobodyさん
09/10/21 11:34:01 JoENl7DB
お前らは技術を売って飯を食っている分際で、
それを人に頼っている時点で、自身の存在意義がないだろう。
自助努力で解決できるのが真の技術者だ。
最近、こういう基本的な姿勢を理解していない奴が多すぎる。
352:nobodyさん
09/10/21 11:36:09
無視され続けて遂に発狂したかw
353:nobodyさん
09/10/21 11:36:21
NG指定と
354:nobodyさん
09/10/21 11:36:34
日曜大工ですが何か?
355:nobodyさん
09/10/21 11:39:46
ワロタ
356:nobodyさん
09/10/21 11:41:24
昼間から2chに書き込んでるようなやつが技術者ねえ・・
357:nobodyさん
09/10/21 12:19:47
ネットで時間や場所を気にする男の人って・・・
358:nobodyさん
09/10/21 13:17:25 2lSXu71G
⇒みたいな文字を&#8658; (0x21d2) のようなHTMLで使う表記にしたいんですがうまくいきません。
文字列をUTF-8に変換してbinhexとかurlencodeを通しても
受け取るのは14845842(0xE28792)のような違う数値になってしまいます。
これはどうしたらいいのでしょうか。
359:nobodyさん
09/10/21 13:19:59 GvFW1IVN
pearパッケージを全て一括ダウンロードして使いたいのですが
コマンドでどのように書くのでしょうか?
360:nobodyさん
09/10/21 13:32:48
>>358
0xE・・・で始まるものはだいたいUTF-8
0xE28792は⇒のUTF-8での文字コード
361:nobodyさん
09/10/21 13:38:24 2lSXu71G
>>360
それはわかるんですが、8658 (0x21d2)を取得するにはどうしたらいいんでしょうか。
362:nobodyさん
09/10/21 14:05:04
>>361
echo bin2hex(mb_convert_encoding("⇒","Unicode","UTF-8"));
363:nobodyさん
09/10/21 14:06:40
bin2hex(mb_convert_encoding("⇒","Unicode","UTF-8"));
bin2hex(mb_convert_encoding("⇒","Unicode","UTF-8"));
bin2hex(mb_convert_encoding("⇒","Unicode","UTF-8"));
364:nobodyさん
09/10/21 14:12:24
>>361
8658 (0x21d2)はどの文字コードなのかを考えりゃわかるだろ
365:nobodyさん
09/10/21 14:49:04
> bin2hex(mb_convert_encoding("⇒","Unicode","UTF-8"));
> bin2hex(mb_convert_encoding("⇒","Unicode","UTF-8"));
> bin2hex(mb_convert_encoding("⇒","Unicode","UTF-8"));
366:nobodyさん
09/10/21 14:56:22
まとめ
function charRefer($str, $to = "Unicode", $from = "UTF-8") {
return "?x".bin2hex(mb_convert_encoding($str, $to, $from)).";";
}
367:nobodyさん
09/10/21 14:57:55
?→&#
368:nobodyさん
09/10/21 15:02:23
引数$strってのはおかしいな$charだな
369:nobodyさん
09/10/21 15:07:02
>>359
URLリンク(pear.php.net)
これ使えばよかったんじゃなかったっけか
370:nobodyさん
09/10/21 15:55:18 vwO/c7IH
世の中には薬を打ってる池沼どもがいるけど
そういうやつに絡まれたら刺されそうな気がするな
おまえらならこういう池沼に遭遇してこういう場面になったらどうするか教えてください
371:nobodyさん
09/10/21 16:59:33
ここレベル低くね?
372:nobodyさん
09/10/21 17:11:17
もしかしてUTF-8とUnicodの違いがわかってない人だったのかな
373:nobodyさん
09/10/21 17:11:36
うん、お前の頭並にレベル低いよ。
374:nobodyさん
09/10/21 17:30:18
煽るだけのカスよりは動くものだすやつのほうがよほどマシ
375:nobodyさん
09/10/21 17:30:34
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
> UTF-8とUnicodの違い
376:nobodyさん
09/10/21 17:31:43
こんなところで、あたかも東大の教授にでもなったかのように、
上から目線で回答する人間がウザ過ぎる。殴ってやりたい。
377:nobodyさん
09/10/21 17:34:34
>>376
東大の教授にでもなったかのようにって、どういう意味?
378:nobodyさん
09/10/21 17:34:38
見なければいいだけ
379:nobodyさん
09/10/21 17:41:05
ろくに知りもしない癖に煽るやつって何なんだ。
ここで偉そうに聞いてちゃんと答えてもらえなかったやつの逆恨みか。
380:nobodyさん
09/10/21 17:41:12
ちなみに、俺は中学校の時はクラスナンバーワンの成績で、
将来は東大に行って官僚になるんじゃないか、なんて言われていたっけ。
ちょっとwebの知識があるだけで、上から目線はやめろよ。
381:nobodyさん
09/10/21 17:50:48
もしかしてUnicodeとUTF-8が同じものだと思ってるのかな
382:370
09/10/21 18:00:05 +bbQosq3
誰かよろしくおねがいします
383:nobodyさん
09/10/21 18:14:14
どうやら可変ID使いが荒らしてるようだな
今朝シカトされたのがそんなに悔しかったのか?
かわいそうなやつめ
384:nobodyさん
09/10/21 18:14:52
ガキ臭い
385:nobodyさん
09/10/21 19:25:07 q1u7DFmE
SQLiteを使って見ようと思い簡単なプログラムを組んでテストしてみましたが1つの命令しか実行されていないようです
たとえばこのように入力するとテーブルが作られるだけで項目が追加されません
CREATE TABLE files(
id INTEGER NOT NULL PRIMARY KEY,
test1 TEXT
);
INSERT INTO up_file VALUES (NULL, 'test');
INSERT INTO up_file VALUES (NULL, 'test');
どのようにしたらいいのでしょうか
386:nobodyさん
09/10/21 19:25:11 q1u7DFmE
ソースです
<form action="<?php echo basename(__FILE__); ?>" method="post">
<textarea rows="10" cols="60" name="req"></textarea><br />
<input type="submit" />
</form>
<?php
if(isset($_POST['req'])){
if($db = new SQLiteDatabase('sqlite.db', 0666, $sqliteerror)){
if($result = $db->arrayQuery($_POST['req'])){
$echo = "";
$echo .="<table>";
foreach($result as $array){
$echo .= "<tr>";
foreach($array as $key => $value){
$echo .= "<td>(".$key.")".$value."</td>";
}
$echo .= "</tr>";
}
$echo .="</table>";
echo $echo;
}
echo "<br /><pre>".$_POST['req']."</pre>";
}else{
var_dump($sqliteerror);
}
}
?>
387:nobodyさん
09/10/21 19:27:32
複数行の挿入に対応してないんじゃないの?
388:nobodyさん
09/10/21 19:28:14
>>385
なんで"not NULL"指定のカラムに、NULLを入れようとしてるの?
389:nobodyさん
09/10/21 19:29:20 q1u7DFmE
>>388
SQLiteはPRIMARY KEYな項目にNULLを入れるとAUTOINCREMENTされるのです
390:nobodyさん
09/10/21 19:33:03
table名が違うのでは?
391:nobodyさん
09/10/21 19:36:32 q1u7DFmE
>>387
どうやらそんな感じのようです。
>>390
編集ミスです;
392:nobodyさん
09/10/21 19:40:51
トランザクション?
393:nobodyさん
09/10/21 20:52:14
>>375
JIS規格とShift-JISくらい違う。
394:nobodyさん
09/10/21 21:04:47
>>389
> SQLiteはPRIMARY KEYな項目にNULLを入れるとAUTOINCREMENTされるのです
明示するのが正攻法、
id INTEGER PRIMARY KEY AUTOINCREMENT
395:nobodyさん
09/10/21 21:11:57 q1u7DFmE
>>394
Warning: SQLiteDatabase::arrayQuery() [sqlitedatabase.arrayquery]: near "AUTOINCREMENT": syntax error in /home/httpd/***/public_html/***.php on line 25
396:nobodyさん
09/10/21 21:12:13
NULLじゃなくて、10とか20とか入れてもダメなのかな?
397:nobodyさん
09/10/21 21:14:58
SQLite2使ってる?
398:nobodyさん
09/10/21 21:19:09
>>396
直に指定でもできました
>>397
2.8.17です
399:nobodyさん
09/10/21 21:30:45
arrayQueryはひとつのSQLに対し配列を返すんだよーん
400:nobodyさん
09/10/21 21:35:18 q1u7DFmE
まじで
401:nobodyさん
09/10/21 21:35:28
てかエラー内容調べればいいじゃん、せっかく関数あるんだし。
402:nobodyさん
09/10/21 22:42:45
ログイン画面で/loginでアクセスするサイトが多いと思うんだけど
一般的にファイル名は何かな?index.php?
403:nobodyさん
09/10/21 22:50:10
mod_rewriteとかで書き換えてるんじゃない?
実態は index.php?mode=login とかまあ別に何でもいいと思うが
404:nobodyさん
09/10/21 22:59:53
>>403
へえそんなのあるんだ。ありがと
405:nobodyさん
09/10/21 23:57:48 VcPQwNyu
PHP関係の書籍でセキュリティ関係について詳しく書いてる書籍ってありませんか?
えすきゅーえるいんじぇくしょんとかせっしょんはいじゃっくとかぼーとすきゃんとか
ハッキング対策全般が分かりやすく書いてる本でおすすめがあったらお願いします。
406:nobodyさん
09/10/22 00:12:40
オライリーのPHPセキュリティとか
407:nobodyさん
09/10/22 00:13:59
つか、その程度ならネット見れば済むだろー
408:nobodyさん
09/10/22 03:53:32
ひろみちゅのサイトとか、PHP嫌いのPerl使いのサイトとか見ればたくさんあるよね
409:nobodyさん
09/10/22 04:35:57
天下のIPA様もセキュリティーのためにPHPは使わないとか言ってるしな
脆弱性が多いとかZend信用されてなさすぎだろ
410:nobodyさん
09/10/22 07:44:40
>>408
高木さんはPHPが嫌いと言うより質の低い解説本が溢れてることをよく思ってない感じがする
411:nobodyさん
09/10/22 09:45:10
>>405
本じゃないけど、大垣たんの連載全部読めば?
連載:なぜPHPアプリにセキュリティホールが多いのか?|gihyo.jp … 技術評論社
URLリンク(gihyo.jp)
412:nobodyさん
09/10/22 10:02:24
>>411
やあ大垣君、宣伝ごくろうだな
てめえのksサイトには興味ねえんだks
今日は質問してやるからここのスレのksどもはすぐ調べて来い
軽量のフレームワークの名前とHello worldの出し方を教えろやks
しらねえなら今から調べて来い
12時に飯食うからそれまでにとっととggってこいや
時間がねえからさっさとしろよksども
413:nobodyさん
09/10/22 10:03:37
>>412
>>1
414:nobodyさん
09/10/22 10:09:25 qCOOWV7S
>>413俺に指図するな池沼
今日は質問してやるからここのスレのksどもはすぐ調べて来い
軽量のフレームワークの名前とHello worldの出し方を教えろやks
しらねえなら今から調べて来い
12時に飯食うからそれまでにとっととggってこいや
時間がねえからさっさとしろよksども
415:nobodyさん
09/10/22 10:11:32
触るなよ
416:nobodyさん
09/10/22 10:11:38
>>414
Hello world
やだ恥ずかしい
417:nobodyさん
09/10/22 10:34:31
842 名前:nobodyさん[] 投稿日:2009/10/22(木) 10:01:02 ID:h4MlR9Sn
俺様が手本見せてやるから見てろ
おい、ここのスレ見てるMのカス共、そこの池沼お前だ
軽量のフレームワークの名前とHello worldの出し方を教えろやks
しらねえなら今から調べて来い
12時に飯食うからそれまでにとっととggってこいや
時間がねえからさっさとしろよksども
同じ板で大暴れですな
今日も可変ID使いは元気です
418:nobodyさん
09/10/22 10:49:29
まぁまぁ、そうカッカしないで、自分のおならの臭いを嗅いでエクスタシー感じようよ。
419:nobodyさん
09/10/22 10:59:49
>>414
ちいたん
php -r "echo 'Hello world';"
420:nobodyさん
09/10/22 11:03:31
誰も削除依頼だして無いって事は、みんなたいして害が無いと思ってるって事だろ。
421:nobodyさん
09/10/22 11:09:25
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
422:nobodyさん
09/10/22 11:16:41
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
421 名前:nobodyさん[sage] 投稿日:2009/10/22(木) 11:09:25 ID:???
削除依頼出すよりも、不正アクセス禁止法違反で刑事告訴するような案件じゃないか?
423:nobodyさん
09/10/22 11:17:01 GGgiWLj/
>>362,366
それです、ありがとうございました。
そういえば10進にするのにbin2decはないんですね。hexdec通せばいいだけですが。
>>367
半角で書くと<みたいに出てしまうのが問題かと思って全角に
>>372,381
はい、UnicodeとUTF-8、UTF-16などを勘違いしてました。申し訳ない。
頭カッチカチになっててUnicodeにすることに頭がいきませんでした。
424:nobodyさん
09/10/22 11:21:55
>>422
ついに発狂したな。
自分が逮捕されるかもしれないと知って、
顔面蒼白状態かwww
425:nobodyさん
09/10/22 11:29:35
と、劣等生が申しております
426:nobodyさん
09/10/22 11:33:17
いちいちネタ提供しなくていいよ
427:nobodyさん
09/10/22 11:36:42
荒らしにいちいち相手してるのも自覚のない荒らしだ。
どっちもいらん。
428:nobodyさん
09/10/22 11:39:43
自覚ないやつをいちいち相手してるやつも自覚ない荒らしだ
おまえもいらん
429:nobodyさん
09/10/22 12:38:24
ったく、脳がemptyな奴がおおいな
430:nobodyさん
09/10/22 12:44:18
この板に生息するキチガイ
正規表現くん
OCNくん
チンピラくん
431:nobodyさん
09/10/22 13:02:36
脳内がarray過ぎてアレなんだよ
432:nobodyさん
09/10/22 13:16:34
チンピラくんはともかくOCNくんはこのスレではまだ名乗り出てないだろ
ていうかこのスレであっちの話題持ってくるな
またバカが暴れる
433:nobodyさん
09/10/22 13:25:07
うるせーハゲ
434:nobodyさん
09/10/22 13:26:19
ハゲっていうならちゃんとhageろよ
435:nobodyさん
09/10/22 13:39:10 NNeAiTXH
windows 上でPHP5.3を使用してます
PHP5.3でデフォルトで使用できるようになったfinfo_buffer関数を試してみたいのですが
マニュアルに書いてあった下記のサンプルコードを試してもエラーになりました
<?php
$finfo = new finfo(FILEINFO_MIME);
echo $finfo->buffer($_POST["script"]) . "\n";
?>
エラー:PHP Fatal error: Class 'finfo' not found
どうやったらfinfo_bufferは使えるのでしょうか?
436:nobodyさん
09/10/22 13:51:39
finfo でググったら php finfo の例が出てきたのでそれクリックして一番上がこれ
URLリンク(blog.fortelab.net)
437:nobodyさん
09/10/22 13:55:06
>>435
本当に有効にしてるの?php.iniみなおしてみ
438:nobodyさん
09/10/22 14:00:09
>>435
xamppliteにはdllがなかったからxamppから持ってきたら動いたよ
439:435
09/10/22 14:05:29
php.iniでphp_fileinfo.dllを読み込ませてなかったのが原因みたいでした
440:nobodyさん
09/10/22 14:07:06
まぁそんなオチだろうとはおもった
441:nobodyさん
09/10/22 14:09:13
finfo_bufferって関数なのになんでマニュアルでは$finfo->bufferみたいにしかできないんだろう
442:nobodyさん
09/10/22 14:18:18
finfoクラスのbufferメソッドっていう意味でかいたんじゃね
クラス名も小文字で色々違和感があるクラスだな
443:nobodyさん
09/10/22 14:18:20 BC6gKUnK
<?php
$finfo = new finfo(FILEINFO_MIME);
echo $finfo->buffer($_POST["script"]) . "\n";
?>
のようなクラス?での書き方コードではなく関数としてfinfo_buffer(パラメータ)形式でのサンプルってありませんか?
444:nobodyさん
09/10/22 14:25:32
と質問してみたものの思って自分で書けました
fileinfo関数って関数だけどクラスとしても使えるってことなんですね
$file = file_get_contents("d:/test.php");
$fp =finfo_open();
$fb = finfo_buffer($fp,$file,FILEINFO_NONE);
print_r($fb);
445:nobodyさん
09/10/22 14:26:19
あぁそういうことか
関数でありクラスメソッドであるみたいな
PHP使いは随分変なことするな・・・
finfo入ってないし動作するかわからないけどマニュアル見るかぎりだと
$finfo = finfo_open(FILEINFO_MIME);
echo finfo_buffer($finfo, $_POST['script']) . "\n";
かな?
446:nobodyさん
09/10/22 14:28:43 BC6gKUnK
公式の投稿コードには何もなかったんで投稿したいんですが
↓のスパムフィルターの意味がわかりません
Answer to this simple question (SPAM challenge):
nine minus one?
447:nobodyさん
09/10/22 14:30:18
無名関数のこと?5.3からだよね。
448:nobodyさん
09/10/22 14:30:34 BC6gKUnK
urlこれです
URLリンク(www.php.net)
449:nobodyさん
09/10/22 14:32:23
>>446
英語もわからないのに投稿するのか?w
9-1はなんですか?ってきいてるだけやんw
450:nobodyさん
09/10/22 14:36:07 BC6gKUnK
英語で答え書いて先進めたけどなんかこんな文章がでて投稿できなかったorz
Your IP is listed in one of the spammers lists we use, which aren't controlled by us. More information is available at URLリンク(www.dnsbl.info)
451:nobodyさん
09/10/22 14:40:23
同じIP網使ってるやつがスパマーに踏み台にされてるか日本からのIPは弾いてるかってとこだろう
452:nobodyさん
09/10/22 14:44:21 BC6gKUnK
せっかくfinfo_bufferでphp公式サイトデビューかと思ったのにスパムフィルターにやられたぜ
誰かに手柄上げますので投稿できる方は>>444を投稿してください
改変しようが自由です
453:nobodyさん
09/10/22 15:33:39
User Contributed Notesに載せるほどのことか?
454:nobodyさん
09/10/22 15:42:45
トンチンカンなことを書いて恥かかなくてよかったねw
455:nobodyさん
09/10/22 15:45:07
どんどんやってくれ。
456:nobodyさん
09/10/22 15:51:02
奥さんが浮気していますよ。
457:nobodyさん
09/10/22 15:54:54
お母さんが泣いてるぞ
458:nobodyさん
09/10/22 16:00:52
ID:BC6gKUnKは関数と無名関数とクラスの違いから勉強しなおせ
459:nobodyさん
09/10/22 16:04:25
>>458
なんで?
460:nobodyさん
09/10/22 16:05:12
関数の話してるのに何で無名関数とクラスの違いがでるのか謎
461:nobodyさん
09/10/22 16:17:47
>>460
なんで?
462:nobodyさん
09/10/22 16:18:52
finfo_bufferと無名関数が激しく関係ない件
463:nobodyさん
09/10/22 16:21:03
あさっての方向の書き込みしてるの一人だろw
464:nobodyさん
09/10/22 17:03:57 2Qgc9o0R
s始めまして。ファイルサイズについて質問させてください。
phpで携帯サイトのフォームを作っていて、ファイルサイズが20kbです。実際表示されると8kbで、
携帯サイトのファイルサイズ上限を10kbと考えていますが、問題はないのでしょうか。
phpファイル(20kb)がサーバーで処理を行う→クライアントのブラウザに表示される(8kb)
なのでOK?
465:nobodyさん
09/10/22 17:05:49
PHPのセキュリティーについて、他の言語と比べて致命的なものとは何でしょうか?
・php.iniで余計な情報が出力されることがデフォルトの設定になっている。
・コンパイルのプロセスがないため、実行時にエラーになる場合がある。
・実装によって、クラスのプライベート・パブリックの別がなくなる。
・Apacheの特定のバージョンと組み合わせた場合に、原因不明のダウンが起こる。
・型が曖昧で、非宣言でも使えるがための論理バグが生じる。
私の認識は、これくらいですが、これらは言語の責任というよりも、
その実装責任者の技量によるところが大であること考えています。
466:nobodyさん
09/10/22 17:10:20
>>464
PHPファイルのサイズを見てどうするよ
出力するサイズを見ないと
>>465
・実装によって、クラスのプライベート・パブリックの別がなくなる
こんなことあるの?
467:nobodyさん
09/10/22 18:37:25
フレームワーク使って人居ます?
468:nobodyさん
09/10/22 18:39:52
>>466
意識するのは出力されるファイルサイズでよろしいのですね。
ご返答ありがとうございました。
469:nobodyさん
09/10/22 19:15:06
>>465
一番は、セキュリティに対しての意識が低い、間違ってる本やサイトがいっぱい出てることによる弊害じゃないかな。
470:nobodyさん
09/10/22 20:17:05
>>465
2番目と5番目はインタプリタの特徴だろ
471:nobodyさん
09/10/22 20:21:04
>>465
4番は、どのバージョンとどのバージョン?
472:nobodyさん
09/10/22 20:35:14
>>467
>>1
473:nobodyさん
09/10/22 20:41:20
>>473
>1
474:nobodyさん
09/10/22 20:44:23
PHP初心者に薦めたい本…PHPの絵本、ノンプログラマ、C++の初心者向け
って書きたくなるくらい、PHP初心者向けって信頼されてないよぁw
書籍作って販売するって、やる気さえあれば簡単に出来るものなの?
475:nobodyさん
09/10/22 20:44:55
うん
476:nobodyさん
09/10/22 20:46:57
>>474
だいたいWebでPHP初心者講座みたいの開いてにぎわってきて出版社の目にとまると
この内容に手を加えて本を出してみないか?みたいにアプローチが来る
477:nobodyさん
09/10/22 20:54:49
最近はどうだか知らないけど、
初心者向けPHP本が出る → セッションを使ってない/使い方がおかしい、サニタイズが(ry
あたりのツッコミを入れられまくるのが一種のお約束だったぐらいに酷かった気がする。
そろそろ1冊ぐらい、無難なのがあるんだろう。いやきっとあるはず。
478:nobodyさん
09/10/22 21:18:09
言いだしっぺの法則というのを皆さんご存知か?
479:nobodyさん
09/10/22 21:23:41
本ってスカウト制が多いのか。なるほどねぇ。
じゃあ、私のサイトにスカウトが来たらロリコンの為のPHP教本とか作れるのか
480:nobodyさん
09/10/22 21:37:53
一冊だけphpじゃない技術系の本を書いたことあるけど、
原稿料が安いし、使い捨てって感じ。
本を出したという実績が欲しい人にはいいけど、
金儲けのために本を作る人はいないと思う。このご時世。
481:nobodyさん
09/10/22 22:03:03
dbに問い合わせする関数ってどうかいてる?
俺はこんな感じだけど
function select_xxxx(&$result, $condition)
{
$result = 結果;
return TRUE;
}
482:nobodyさん
09/10/22 22:03:31
本が難しければ日経あたりの特集記事でもいいだろう。
日経風に、「間違いだらけのサニタイズ」「セッション管理に失敗しない10の方法」
「フレームワーク最前線」とかタイトル並べれば通る気がする。
483:nobodyさん
09/10/22 22:04:43
なんで結果セットを参照にしてんの?
484:nobodyさん
09/10/22 22:12:50
>>481
はっきり言ってお前はセンスがない。
コンビニのアルバイトがお似合い。
485:nobodyさん
09/10/22 22:16:02
せめてクラス化しろよー
486:nobodyさん
09/10/22 22:29:11
ちょっと良い格好したいならDBアクセス部分だけクラス化。
手抜きするなら普通に必要なところでクエリ作って投げる。ていうか関数化する意味あるのかそれ。
487:nobodyさん
09/10/22 22:31:40
今時DBなんてpearを使うのが王道だろ
車輪の再開発だな
488:nobodyさん
09/10/22 22:32:34
クラス化するか、PDOを素のまま使う。
クラス化するとログが取りやすくなって便利。デコレータ・パターンとかでロガーを簡単に仕込める。
489:nobodyさん
09/10/22 22:36:33
DBMSをころころ換える可能性がないなら普通にPDO
490:nobodyさん
09/10/22 22:45:55
DBアクセスのところは一つのクラスにまとめるけど、
SQLは、ビジネスクラスの中で書いているけど、普通?
SQL毎にクラス作っていたら、膨大なクラス数になるよね?
491:nobodyさん
09/10/22 22:47:53
????
492:nobodyさん
09/10/22 22:49:30
どんなクラスを作ったんだよw
493:nobodyさん
09/10/22 22:50:38
>>490
その設計古すぎというか、駄目。
SQL文は外だしのファイルにして、一個所にまとめないと、
あっちこっちSQL文だらけになってメンテナンスに困るだろう?
494:nobodyさん
09/10/22 22:52:44
>>490
SQLとビジネスロジックがごちゃごちゃして分かりにくい。
普通はSQLは、外部ファイル化して、それをデータベースのアクセスクラスが読み込むのが標準的な設計だと思うが。
495:nobodyさん
09/10/22 22:53:40
sqlをクラスの中に書くのかよww
496:nobodyさん
09/10/22 22:59:03
で、どうやるのがスタンダード?
SQL文一個につき1関数じゃダメなの?
497:nobodyさん
09/10/22 23:00:38
とりえあずスレタイと>>1を読もうよ
498:nobodyさん
09/10/22 23:04:06
>>497
正直すみません。
設計スレみたいなのないかな?
499:nobodyさん
09/10/22 23:04:41
いい加減にしてくれないか
500:nobodyさん
09/10/22 23:05:10
何のために引数が存在してると思ってるんだ・・・・・・・
501:nobodyさん
09/10/22 23:21:24 tJpAUHQM
ソフトバンク携帯でアクセスしたときに
(以前は表示できていたのですが)見れなくなってました。
情報量が多かったのでPHPファイル内をわずかなテキストだけにしました。
が、それすら表示できませんでした。パソコンでは問題なく見れます。
エラーは下記です。
エラーが発生しました。レスポンスが不正です。WJ40164E
どうすればよいのでしょう?
502:nobodyさん
09/10/22 23:27:58
エスパーさん出番ですよ~!
503:nobodyさん
09/10/22 23:36:41
>>501
まず、 googleで ソフトバンク レスポンスが不正です で検索しようよ。
504:nobodyさん
09/10/22 23:37:22
>>501
WJ40164E でググレカス
505:nobodyさん
09/10/22 23:39:11
>>502-504
しねks
506:nobodyさん
09/10/22 23:46:57
>>505
検索した?答えあると思うけどな。
507:nobodyさん
09/10/22 23:47:36
>>505
質問者じゃないだろ?
あと、諭すような口調をやめてくれ
508:nobodyさん
09/10/22 23:48:20
fscanfがおかしいです!
509:nobodyさん
09/10/22 23:49:42
>>508
君の頭の方がもっとおかしいです!!
510:nobodyさん
09/10/23 00:02:06 X9i7QbIU
>>503
>>504
もちろんそれは検索済みです。。。
ほんの数件しか検索されなく、解決策もありませんでした。
511:nobodyさん
09/10/23 00:21:33 tmLg3YdR
上でちょこっと言ってる、SQL文とロジックを分けるのサンプルってありませんか?
検索フォームのためのSQL文をきれいにソースと分けたいなぁと思っているのですけど
512:nobodyさん
09/10/23 00:37:44 tmLg3YdR
>>510
hallow worldやphpinfoが表示出来ないというレベルで尚且つ、レンタルサーバの場合は
サーバ側で少し設定が変更されたかと思う。
firefoxやIEでHTTPヘッダーの情報が見れるアドオンとかあるし、
その情報を見れば少しは怪しいところが見えてくるかもしれない
513:nobodyさん
09/10/23 00:56:06
>511
1. SQLだけ記述したファイルを用意する
2. そのファイルをfile_get_contentsで読み込み、文字列変数にセットする
3. SQL文字列をライブラリに渡してやり、実行する。
さらに一歩進めるなら、
実行して得られた結果セットを配列に入れて返してやる
514:nobodyさん
09/10/23 00:57:43
>>513
パラメタ付の場合は?
515:nobodyさん
09/10/23 01:15:01
ァ ∧_∧ ァ,、
,、'` ( ´∀`) ,、'`
'` ( ⊃ ⊂) '`
516:nobodyさん
09/10/23 01:23:42
>>513
> 2. そのファイルをfile_get_contentsで読み込み、文字列変数にセットする
そうじゃないだろ。どういう設計思想なんだよ。パフォーマンス無視?
517:nobodyさん
09/10/23 01:25:07
パフォーマンスや保守性はアクセス数が増えたときに考えればいいんじゃないのか?
518:nobodyさん
09/10/23 01:31:29
>>517
ある程度先の運用面を考えて実装するが良き設計者。
それにその設計方法じゃ、すぐに天井が来る。
519:nobodyさん
09/10/23 01:32:35
>>498
最近では関数はあんまり使わないと思うよー。
一番単純なのは
class DB{
function geAAA(){
}
function geBBB(){
}
}
みたいな感じじゃないかなぁ。
SQL外だしっていうのも、実はあんまりメリットないと思う。
520:nobodyさん
09/10/23 01:34:58
SQLを動かすクラスと、それを運用するクラスと分けるべきだな
521:nobodyさん
09/10/23 01:38:30 U1ZTI1ef
スレ違いかもしれないのですが、該当のスレが見つからなかった為、こちらで質問をさせてください。
現在、PHPとMySQLを組み合わせたウェブサイトを作っています。
MySQLのデータベースには2つのテーブル(テーブルA、テーブルB)があり、PHPからこの2つのテーブルを参照し、以下の様に表示させたいと考えています。
data_id (参照A)
info (参照A)
date(参照A)
sonota(参照A)
koshin_joho(参照B) // テーブルBもdata_idを持っていて、テーブルAのdata_idとマッチする時のみ、ウェブにkoshin_johoを表示
現在、phpファイルからテーブルAの方はループを使ってそれぞれのカラムを参照し、表示する事ができているのですが、
テーブルAのためにループを使っているためか、テーブルBを参照する事ができません。
どのようにすればループを使ってMySQLに登録されているデータを一度にウェブ表示させている状態で、
テーブルAとテーブルBをループ内で同時に表示する事ができるのでしょうか?
長文失礼致しました。
522:nobodyさん
09/10/23 01:38:50
>>520
結局よく分からないけど、
(1) SQL文はクラスに直書き?外だし?
(2) いずれにしても、SQL文が1000個あったら、1000クラス(ファイル)作るの?じゃないなら、グループ化の基準は?
(3) WHERE文の要素が可変の時は?
俺は、MVCでいうところのModelに全て直書き。だから、ソースのあちらこちらにSQL文が書かれている。
523:521
09/10/23 01:39:25 U1ZTI1ef
テンプレを忘れていました。
【OS名】CentOS 5.3
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
524:nobodyさん
09/10/23 01:44:05
あー。。>>519のDBクラスはたとえが良くないなー。
BBSクラスにしよう。
BBSクラスはBBSに関する全ての情報・操作を引き受ける人。
他人はデータ取得・保存はできるだけ単純にできるようにってだけ。
だから、
取得する条件・対象ごとにメソッド分けるのとパラメタで指定するのと
一概にどっちがいいとはいえない。
525:nobodyさん
09/10/23 01:44:26
>>521
koshin_johoも一緒に取得すればいいんじゃないの?
マッチしない場合は取得できないわけだし
526:nobodyさん
09/10/23 01:46:19
>>521
えーっと、、リレーションって知ってる?
527:nobodyさん
09/10/23 01:47:10
>>524
前半は、いいとして、
> 取得する条件・対象ごとにメソッド分けるのとパラメタで指定するのと
> 一概にどっちがいいとはいえない。
それは、クラスを使いながら、考え方が全然オブジェクト指向じゃない。
528:nobodyさん
09/10/23 01:48:25
>>522
1.SQLの機能をラップしたクラス
2. 1のクラスを使って機能を実現するクラス
という感じで分けてる、SQLは2へ直書き。
おそらくそれ以上ラップしたり、粒度を増やしても使うことは無いからということで。
529:521
09/10/23 01:49:08 U1ZTI1ef
現在書いているPHPのコードはこのような感じです。
$sql1 = "SELECT x FROM tableA";
$sql2 = "SELECT x FROM tableB";
$tablea = mysql_query($sql1);
$tableb = mysql_query($sql2);
while($row = mysql_fetch_array($tablea)){
echo $row['data_id'] ;
echo $row['info'] ;
echo $row['date'] ;
echo $row['sonota'] ;
}
while ($row2 = mysql_fetch_array($tableb)){
if ($row2['data_id'] eq $row['data_id']){
echo $row2['koshin_joho'];
}
}
530:nobodyさん
09/10/23 01:52:48
>>529
SELECT * FROM tableA NATURAL JOIN tableB
531:nobodyさん
09/10/23 01:53:32 U1ZTI1ef
>>525,526
ありがとうございます。
こういう事でしょうか?
$sql = "SELECT x FROM tableA, tableB where tableA.data_id = tableB.data_id";
$table = mysql_query($sql);
while($row = mysql_fetch_array($table)){
echo $row['data_id'] ;
echo $row['info'] ;
echo $row['date'] ;
echo $row['sonota'] ;
echo $row['koshin_joho'];
}
532:nobodyさん
09/10/23 01:56:08
>>527
スレッド名一覧をとる
getAll()
ID指定してスレッドとる
getById()
なんて分けるのは割りとあると思うけどなー
返ってくるモノが違うってとき。
533:nobodyさん
09/10/23 01:57:50 U1ZTI1ef
>>530
それだとkojin_johoが書かれているテーブルの内容しか表示されません。
534:nobodyさん
09/10/23 02:04:16
>>533
そこまで分かってるなら普通に結合も分かれよw ネタかよw
535:nobodyさん
09/10/23 02:09:54
>>533
外部結合でググろう
SELECT * FROM tableA LEFT JOIN tableB ON tableA.data_id = tableB.data_id;
536:nobodyさん
09/10/23 02:12:01
つTECHSCORE
537:nobodyさん
09/10/23 02:25:34 U1ZTI1ef
>>534
最近MySQLをはじめたものですいません。
>>535
完璧です。ありがとうございました。
538:nobodyさん
09/10/23 05:47:37 QLP+l4hN
URLリンク(php5.seesaa.net)
このサイト使ってphpを始めたのですが、POSTとGETを同時に使う重要性が分からないです。
Formタグの action の項目にGETをあらかじめ入力しているだけなので、ブラウザでのユーザの操作で変化しないです。
確かに同時に使っていますが、メリットが分からないです。むしろ、ユーザに書き換えられる危険性の方が高い気がします。
またhidden についても同様で、わざわざ入門のページにある割に、使い道が分からないです。
POSTとGETを同時に使う意味はありますか?
539:nobodyさん
09/10/23 06:08:57
重要なんて書いてある?
ケースバイケースで両方使う場合もあると書いているんだろう
俺もいろいろ書いてきたがGETとPOSTを併用したのは1度だけある
どういうケースで使ったのかはちょっと思い出せないが併用したことは覚えている
必要になれば使えばいいだけの話だからそんな深く考えなくていいよ
一生使わないかもしれないし頻繁に使うかもしれないし
結局その人が何作ってるか・どういう風に組んでいるかによる
hiddenはたとえば何かのアカウントを取得するときを想定するとわかりやすい
アカウント取得には
登録のために個人情報を入力する(Input)→
登録確認(個人情報確認)画面に進み登録するか確認する(Confirm)→
登録完了
というプロセスをとる場合が多いわけだが
Input画面で入力した情報をConfirm画面で出力するためには
Confirm画面にどうにかしてInput画面で入力したものを受け渡さないといけない
そういうときに使うのがhidden
ようするに前のページの情報をページ遷移(移動)後でも使うために使う(情報を持ちまわすのに使う)
540:nobodyさん
09/10/23 07:28:00
すみません。PHPってウェブサーバー上でしか実行できませんか。
例えばコマンドプロンプトからバッチファイルはexeみたいに
実行できないでしょうか?
541:nobodyさん
09/10/23 07:35:54
>>539
なるほど 隠す用途じゃなくて見えなくさせているだけってことか。
入力された変数をhiddenのところにprinfするなら、確かに次も値を使えそうです。
2chにブラウザで書き込んだ時に出る「書きこみ&クッキー確認」の画面でもhiddenを見つけられました。
ありがとうございました。
542:nobodyさん
09/10/23 08:45:41 pXxGvaT3
>>482
「PHPの」初心者ですが、
「セッション管理に失敗しない10の方法」を教えて頂けませんでしょうか。
543:nobodyさん
09/10/23 09:13:04
PEARって全部使えないと思うのは俺だけですか?
544:nobodyさん
09/10/23 09:27:52
>>543
先日まで触ったこともなかったけどSMTP_AUTHを使う必要があってMailを使ったよ
545:nobodyさん
09/10/23 10:39:30
>>540
普通にできます
546:nobodyさん
09/10/23 11:43:28
>>545
できました。
547:nobodyさん
09/10/23 21:49:42
安藤さんがOSS受賞したね
548:nobodyさん
09/10/23 22:02:21
だれや?
キャスターか?
549:nobodyさん
09/10/24 00:11:00
>>513
これギャグだろ?
550:nobodyさん
09/10/24 00:40:41 BvPjRTUm
new SQLiteDatabaseで作られたコンストラクタで
データベースをcloseするにはどうしたらいいですか?
551:nobodyさん
09/10/24 00:51:30
$db->close();
552:nobodyさん
09/10/24 00:54:41 BvPjRTUm
Fatal error: Call to undefined method SQLiteDatabase::close()
553:nobodyさん
09/10/24 04:14:41
そのクラスに閉じるメソッドが使われていなくて
コンストラクトでオープンするようになっている場合
デスクトラクト時にそのクラス側で勝手に終了してくれてると考えるきでは?
554:nobodyさん
09/10/24 04:18:45
なんか日本語が変だった・・・
そのクラスに閉じるメソッドが定義されていなくて
コンストラクターでオープンするようになっている場合
デスクトラクターで勝手に閉じてくれていると考えるべきでは?
実際にそのクラスの中身はみてないしどういうのもしらないが
555:nobodyさん
09/10/24 04:28:53
何言ってんの?
556:nobodyさん
09/10/24 04:43:06
分からないなら無理してレスしなくていいよ
教えてほしいならどこがどうわからないのかID出して質問してね
557:nobodyさん
09/10/24 05:22:59
>>555
554で言ったとおりどういうクラスかもしらないし中身もしらないけど(というよりSQLite使ったことない)
class SQLiteDatabase {
private DB接続ポインタ;
function __construct(接続情報) {
$this->DB接続ポインタ = sqliteオープン(接続情報);;
}
function query($sql) {
return 結果を配列で返す($sql);
}
function __destruct() {
sqliteクローズ($this->DB接続ポインタ);
//$this->DB接続ポインタ = null;
}
}
$obj = new SQLiteDatabase(接続情報);
$res = $obj->query("SELECT * FROM hoge WHERE 1");
foreach ($res as $row) {
echo $row."<br>";
}
//ここでデストラクターが呼ばれて勝手に終了する
たぶんこんな構造になってるんじゃないかと(間違ってるかもしれないけど)
SQLite自体明示的に終了させる必要がないDBかもしれないしその辺の事情は知らない
558:nobodyさん
09/10/24 05:24:18
下らんコード書く暇あったら確認しろよ
559:nobodyさん
09/10/24 05:28:37
>>558
そんなクラス見つからなかったんだけどなぁ
探し方が悪かったんだろうか
よかったらリンクはってちょうだい
560:nobodyさん
09/10/24 07:37:49
そしてリンクをはらない>>558であった
561:nobodyさん
09/10/24 08:20:12
>//ここでデストラクターが呼ばれて勝手に終了する
$objがスコープ内にいるのにデストラクタが呼ばれちゃまずいだろ。
562:nobodyさん
09/10/24 08:25:17
>>561
<?php
class Hoge {
function Hoge() {
echo "construct<br>\n";
}
function a() {
return array("a", "b", "c");
}
function __destruct() {
echo "destruct<br>\n";
}
}
$obj = new Hoge;
foreach ($obj->a() as $value) {
echo $value."<br>\n";
}
?>
563:nobodyさん
09/10/24 08:44:46
ほんとこのスレ初心者ばっかだなw
564:nobodyさん
09/10/24 09:21:19
URLリンク(www.php.net)
しかし相変わらずだな。
565:nobodyさん
09/10/24 09:29:15
URLリンク(www.php.net)
これ見方がわからないんだけど
SQLiteDatabase
SQLiteResult
SQLiteUnbuffered
に定義されてる各メソッドはそのクラスのみで使えて
目次のとこに書かれてるのは共通に使えるメソッド?
なんか無名関数のせいでマニュアルの見方がむずくなってきてる気がする・・・
566:nobodyさん
09/10/24 09:34:01
マルチパラダイムだから仕方ないがこれはひどい
明確に分ければいいのに
567:nobodyさん
09/10/24 09:49:09 o7jv7fS8
PHP、PEAR、Smartyはだいたい理解できました
しかし、実際HTMLなどのクライアントサイド側との連携がいまいち良く分かりません
本やちょっとしたPHP解説のサイトなどはメソッドとかプロパティなどの説明で終わっているもので
フォームなどの基本的な事は何処にでも書いてあるので分かるのですが、実践的なPHPとクライアントサイドとの連携したコードなど
書いてある書籍など自分の県では見つけられませんでした
実際にサイトを作る為のクライアント+サーバサイドを連携させたサンプルコードの載っているサイトや書籍は何かないでしょうか?
宜しくお願い致します
568:nobodyさん
09/10/24 09:50:26
Ajaxのことだろ
Ajaxスレいってください
569:nobodyさん
09/10/24 09:55:04
jquery
570:nobodyさん
09/10/24 10:02:54 o7jv7fS8
えっ?
Ajaxですか?
Ajaxの事ではなく、例えばテンプレートとか実際に実装して作ったサンプルとかです
説明不足だったようです、すみません
例えば、Webデザインブックなどはいくらでも出ていますが、それらはただHTMLとCSSで実装しています
まぁたまにJavaScriptなどもありますが
自分は、人がサイトにアップロードした画像をサイトに情報つきで載せてレイアウトも崩れないようにしたいとか
(つまり$_FILESの概念はわかるけれどそれを実際クライアント側のコードにどのようにテンプレート内に実装・レイアウトしていくか)、
PEARによるログイン認証を行った後でそのログインしたユーザーのみが動的コンテンツを利用するためにはどのようにすればいいのか、
とかまぁ書けば色々と長くなりそうですが、そういう事です
自分側がただ作ったサイトを公開するだけではなく、ユーザーの参加できるようなサイトの作り方を、簡単でもいいので解説しているサイトや書籍が知りたいのです
571:nobodyさん
09/10/24 10:05:27
>>557
おいおいwあんまり>>555をいじめんなよw
そんなの見せても>>555にはチンプンカンプンなんだぜwwwwwwww
今頃顔真っ赤にしてるだろうけど二度と出てこないよww
572:nobodyさん
09/10/24 11:35:30
>>571
そういうのは、実際に必要になった時に調べたり考えたりしてもいいと思う。
PHPで家計簿でも何でもいいんで作ってみれば、分かってくるんじゃないかな。
気力があるなら、人が作成したPHPのプログラムを落としてHTML部分がどうなってるか探してみるのが言いかと
573:nobodyさん
09/10/24 11:39:51
そりゃクライアント+サーバサイドの連携っていったら
JavaScriptとPHPの連携っていってるようなものだからAjaxって答えが返ってくるのも無理もない
MixiやYoutubeのようなSNSサービスをやりたいってことね
セッションとか勉強するといいよ
574:nobodyさん
09/10/24 11:55:49
>>562
閉じタグとファイル終端は、直接関係無い。
タグ閉じただけじゃスコープ閉じないんだぜ。
575:nobodyさん
09/10/24 11:58:58
日本語でおk
576:nobodyさん
09/10/24 12:00:54
でてこいよ>>555wwwwwwwwwwwwwwwGOGOGOwwwwwwwwwwwwwwwwww
577:nobodyさん
09/10/24 12:01:27 o7jv7fS8
>>572
レスアンカーは自分(>>570)にですよね?
そうだと思って返答させて下さい
>人が作成したPHPのプログラムを落としてHTML部分がどうなってるか探してみる
こういうのはWebサイトで検索して、人が書いたサンプルコードを集めて学習しろという事なのでしょうか?
それとも、自分は知らない(というかコードを読み取られると危険なのでそもそも出来ないのではと思うのですが)、ソース読み取りソフトとかあるのでしょうか?
例えばWebサイトであればIEのソース機能やFireFoxのFireBugのようなHTMLのコードを表示出来る様なソフトの事です
>>573
あぁ、すみませんでした
自分の表現がおかしかったようです
HTML+CSSにPHP(テンプレートやライブラリ含む)を組み込んで実装する、実際に運営する為の雛形コードを学習したかったのです
578:nobodyさん
09/10/24 12:05:25
>>570
単にフォームからのリクエストを処理するPHPのコード、ってんなら、
PHPの本で2~3章かけて解説してるんじゃね?
あとは自分の作りたいものに似てるの探して、コード読むべし。
579:nobodyさん
09/10/24 12:05:29
>HTML+CSSにPHP(テンプレートやライブラリ含む)を組み込んで実装する、
>実際に運営する為の雛形コードを学習したかったのです
フレームワークのview部分とか見てみるといいかもしれない
580:nobodyさん
09/10/24 12:10:51
>>574
aaa<br>
<?php
>>562のコード
?>
bbb<br>
でbbb<br>より後にdestructが現れるってことか?
どっちみちDBクローズならそれでもいいだろ
581:555
09/10/24 12:11:40
すいませんでした
無知を晒してしまいました
ごめんなさい
582:nobodyさん
09/10/24 12:22:14
ちなみにスコープ閉じるってどうやるの?
objにnullいれるだけ?
583:nobodyさん
09/10/24 12:59:43
>>580
その下にまた<?phpが出てくるとか、include/requireされてるとか。
>>582
$objはスコープから外れてないけど、インスタンスは
ガベージコレクションで回収されるから、そのときに
デストラクタが起動されるんだと思う。
PHPで明示的なスコープって言ったら関数かな。
ローカル(グローバルでない)変数のスコープは関数内でしょ。
584:nobodyさん
09/10/24 13:03:20
>>281
いやだからそれは俺が振られた理由になってねえよ
なんで会社の休憩時間にイタリアフルコース頼まないといけないんだよ
585:nobodyさん
09/10/24 13:16:46
フラれたのか、ま、元気だせ、応援してるから。
586:nobodyさん
09/10/24 13:56:20
要らないもんはunsetしちゃおうぜ
587:552
09/10/24 14:16:10 BvPjRTUm
結局クラスを自作して対応しました。
class sqlite{
var $_result = array();
var $_pointer = null;
var $_message = null;
function connect($dbfile){
return $this->_pointer = sqlite_open($dbfile,0666,$this->_message);
}
function close(){
sqlite_close($this->_pointer);
}
function exec($que){
return sqlite_exec($this->_pointer,$que,$this->_message);
}
function array_query($que){
return sqlite_array_query($this->_pointer,$que,$this->_message);
}
function get_escape($str){
return sqlite_escape_string($str);
}
function get_result(){
return $this->_result;
}
function get_pointer(){
return $this->$_pointer;
}
function get_message(){
return $this->$_message;
}
}
588:nobodyさん
09/10/24 14:37:03
>>587
オブジェクト指向スタイル用意されてる意味ねーw
589:nobodyさん
09/10/24 14:57:50
fscanfがおかしいです
590:nobodyさん
09/10/24 18:28:54
なるほどね、凸者さんの判断次第ってことか。
あと、ヤンデレこえぇwww
591:nobodyさん
09/10/24 18:29:35
誤爆
592:nobodyさん
09/10/24 19:04:29
どうしてもnewで作ってclose()したいんだ、という強い意志が感じられます。
若いっていいね。
593:nobodyさん
09/10/24 19:35:19
>どうしてもnewで作ってclose()したいんだ、という強い意志が感じられます。
はずかしいから黙ってて
594:nobodyさん
09/10/24 20:43:07
newで作ったらdeleteを使いたくなるよね。
で、ダミー関数であるdeleteが登録されてるせいで、
delete($classA)とか書いてもしばらく気がつけない
595:nobodyさん
09/10/24 20:45:44
え?
596:nobodyさん
09/10/24 20:47:28
え?
597:nobodyさん
09/10/24 21:14:45
これ何のスレだっけ
598:nobodyさん
09/10/24 21:21:53
質問じゃない時はsageで書きやがれスレ
599:nobodyさん
09/10/24 22:35:42 aM0DiAaq
【OS名】Windows xp
【PHPのバージョン】php5.2.10
【連携ソフトウェア】mysql
【質問内容】
心理テストのようなサイトを作ろうとしています。
何人がその答えを選んだかの集計と、
それとは別に選んだ答えがどのような性格をあらわすのかを表示できるようにしたいです。
チェックボタンを選んだ状態で「あなたはこんな人」のようなラジオボタンで
そのページに遷移させたいです。
どのようにしたらいいのでしょうか?
アバウトな質問でごめんなさい。
600:nobodyさん
09/10/24 22:39:54
>>599
で、何ができないの?PHP?本買え
601:nobodyさん
09/10/24 22:39:57
>>599
そのまんまじゃね?何が問題なんだ?
602:nobodyさん
09/10/24 22:40:40
全部作らせる気かww
最近の若者は安易だなぁ
603:nobodyさん
09/10/24 22:45:01 aM0DiAaq
くだらなすぎてごめんなさい・・・
604:nobodyさん
09/10/24 22:45:53
くだらないというか何が(どこが)できないのかが分からんのだよ
605:nobodyさん
09/10/24 22:50:44 aM0DiAaq
アンケートのページで「投票」を押したらその選んだ結果によって違うページに飛ばしたいです。
例えば赤を選んだら赤色を好きな人の性格について書いてあるページで、
青を選んだら青色が好きな人の性格について書いてあるページです。
アバウトすぎてごめんなさい。
606:nobodyさん
09/10/24 22:51:31 aM0DiAaq
今こんな感じで書いているところです。。
<html>
<head><title>心理テスト</title></head>
<body>
<h1>メンタル編</h1>
<p>あなたがいつか天国へ旅立つとしたら、何色の石をお守りにしたいですか?
<?php
// スクリプト名取得
$script = basename(__FILE__);
// メンバー名配列
$member = array("", "赤いルビー", "ピンクのローズクォーツ", "ゴールド",
"イエロートパーズ", "緑のヒスイ", "青のラピスラズリ", "紫水晶", "白の水晶");
// 投票がある場合
if ($_POST['COLOR'] > 0) {
// 投票者番号
$no = $_POST['COLOR'];
// MySQLに接続
$db = mysql_connect("localhost", "root", "root");
// DB選択
mysql_select_db("graduation", $db);
// insert文実行
mysql_query("insert into ninki values(null, {$no},
now())", $db);
// DB切断
mysql_close($db);
}
?>
607:nobodyさん
09/10/24 22:52:32 aM0DiAaq
<p><font color="red"><?= $msg ?></font></p>
<form method="POST" action="<?= $script ?>">
<p><input type="radio" name="COLOR" value="1">赤いルビー</p>
<p><input type="radio" name="COLOR" value="2">ピンクのローズクォーツ</p>
<p><input type="radio" name="COLOR" value="3">ゴールド</p>
<p><input type="radio" name="COLOR" value="4">イエロートパーズ</p>
<p><input type="radio" name="COLOR" value="5">緑のヒスイ</p>
<p><input type="radio" name="COLOR" value="6">青のラピスラズリ</p>
<p><input type="radio" name="COLOR" value="7">紫水晶</p>
<p><input type="radio" name="COLOR" value="8">白の水晶</p>
<p><input type="submit" value="投票"></p>
</body></html>
こんな感じです。
ごめんなさい。
608:nobodyさん
09/10/24 22:56:06
>>607
switch($COLOR){
case 1
処理&リダイレクト1
break;
case 2
処理&リダイレクト2
break;
case 3
処理&リダイレクト3
break;
.....
}
あとaction="<?php echo $script ?>"はまずくね?
それだったらaction=""で空でいいと思うよ
609:nobodyさん
09/10/24 22:58:11
case 1:
ね":"を忘れずに
610:nobodyさん
09/10/24 23:01:10 aM0DiAaq
>>608
>>609
やってみます
情けない質問に答えてもらってありがとうございます
611:nobodyさん
09/10/24 23:05:20
情けない質問wwww
612:nobodyさん
09/10/24 23:24:44 TvoLhocc
switch内のbreak;のインデントってたまに悩むけどどうしてますか?
俺はcaseからインデントつけて位置に書いてるけど
そうすると最後でインデントが2つ一気になくなってしまう違和感がある
>>608みたいに書くとcase処理内な感じがしない違和感
613:nobodyさん
09/10/24 23:34:28
>>612
その書き込みエスケープされただけだお
case $a:
break;
が多いけどおれも結構曖昧だ
614:nobodyさん
09/10/24 23:35:29
逆だ
case $a:
break;
615:nobodyさん
09/10/24 23:41:58
switch ($a) {
case 0:
do_something();
break;
case 1:
do_something();
break;
default:
do_something();
break;
}
どの言語の解説でもたいていこうなってるしこれがスタンダードじゃないかね
616:nobodyさん
09/10/24 23:42:52
下らねぇ回答はID出さないでここに書き込みやがれ 90
617:nobodyさん
09/10/25 00:28:25
次スレの季節か
618:nobodyさん
09/10/25 00:56:35
switch文で気になったのでメモ
switch('a'){
case 'a'; //末尾が ;
}
と
switch('a'){
case 'a': //末尾が :
}
は等価
619:nobodyさん
09/10/25 05:29:05 TWuysydg
$test = " 1c 2c 3c!";
$search = "/([^0-9])([0-9])c([^0-9])/";
$replace = "$1c$2$3";
echo preg_replace($search, $replace, $test);
これで、期待する出力は
c1 c2 c3!
実際の出力は
c1 2c c3!
質問は、
・なぜこのような動作になるのでしょうか?
・どうすれば解決できるでしょうか?
後、欲しいアイデアとして
・"1c 2c 3c"のように、先頭にスペースを入れなくても"c1 c2 c3"に変える正規表現を教えてほしい
(ただし"11c"のような形の場合は変化させないでほしい)
620:nobodyさん
09/10/25 05:53:15
explodeで配列にわけて
substrで文字を抜き出したのを結合すえばええ
621:nobodyさん
09/10/25 10:22:02
認定回答者採用試験は今日までですので頑張って回答してください
622:nobodyさん
09/10/25 11:14:26
>>619
$test = "1c 2c 3c!";
$search = "/([^| ][0-9]{1})c/";
$replace = "c$1";
623:nobodyさん
09/10/25 13:01:49
トリもIDも出さずに試験官気取りとな?
624:nobodyさん
09/10/25 13:03:49
>>623
お前鬱病だろ
625:nobodyさん
09/10/25 21:45:40
phpでシングルトンって意味あるの?
リクエスト終わったらメモリ開放されるんでしょ?
626:nobodyさん
09/10/25 22:19:54
2行目は正解。
1リクエストの中だけでも必要なときはあるさ。
627:nobodyさん
09/10/25 22:38:37 Ltpwqrvc
mod_rewriteを使ってクリックカウントをとりたいのですが
以下のようにするとcount.phpにリダイレクトできるのですが、
count.phpからLocationで飛ばすとループしているのか404NotFoundになってしまいます。
どうすれば正常にできますか?
例:www.example.com/img/abc01.jpg をクリックしてcount.phpを介してカウント
www.example.com/img/abc01.jpgのまま表示する
//サーバー側
RewriteEngine on
RewriteRule ^/img/abc([0-9]+).(*)$ /img/count.php?id=$1&extension=$2
//count.php側
header("Location: URLリンク(www.example.com)");
628:nobodyさん
09/10/25 22:42:08
readfile使えばいいと思うよ
629:627
09/10/25 22:54:09 Ltpwqrvc
>>628
やってみましたがだめでした・・・。
630:nobodyさん
09/10/25 23:07:22
count.phpがabc01.jpgを出力するんだぜ。
631:nobodyさん
09/10/25 23:15:10
リライトログ見てみたら?吐いてなかったら吐かせて
632:627
09/10/26 00:20:09 8+sjsIrs
>>630-631
アドバイスありがとうございます。
何とか解決できたみたいです。
/img/を物理ディレクトリ、URL表示部分を新規に/img2/として(抽象ディレクトリ)
リライトしたらできるようになりました。
633:627
09/10/26 00:33:00 8+sjsIrs
>>628
readfileも必要だったみたいです。
ありがとうございました。
634:nobodyさん
09/10/26 05:27:50
質問させてください。
<html>
<body>
<?php include("./hoge.php");?>
</body>
</html>
で閲覧に問題はないのですが、
ソースを見ると
<html>
<body>
<html><body></body></html>
</body>
</html>
と2度使われ重複している状態です。
hoge.phpには<html><body></body></html>などの記述はしておりません。
問題の箇所等ご指摘願います。
635:nobodyさん
09/10/26 05:31:55
hoge.phpの中身書くのがいやなら簡略化したもの書いてくれないと
それだけではなんともいえない
636:nobodyさん
09/10/26 05:40:09
>>635
ありがとうございます。
hoge.phpの中身はモバイル版AdSenseコードのみです。
637:nobodyさん
09/10/26 05:48:48 n4efgg6U
質問です。MagpieRSSを使っています。
日付順に取得記事をソートしたいのですが、うまくいきません。
アドバイスお願いします。
$rssurl = array ();
$rssurl[] = "URLリンク(mainichi.pheedo.jp)";
$rssurl[] = "URLリンク(rss.asahi.com)";
foreach ($rssurl as $pre) {
$url = $pre;
$rss = fetch_rss($url);
$title = $rss->channel['title'];
$title = mb_convert_encoding($title, "shift_jis", "auto");
$url = $rss->channel['link'];
$rss->items = array_slice($rss->items, 0, 1);
foreach ($rss->items as $item ) {
$day = date('n/j',strtotime(substr($item['dc']['date'],0,10)));
$time = date('H:i',strtotime(substr($item['dc']['date'],11,8)));
$date = "$day $time";
$rdf = $item[link];
$article = $item[title];
$article = mb_convert_encoding($article, "shift_jis", "auto");
$linkstr = "$date $rdf $article $url $title<br>\n";
$rssarray["{$date}"] = $linkstr;
krsort($rssarray);
echo "$linkstr";
638:nobodyさん
09/10/26 05:52:16
>>637
$linkstrは全て想定通りになってるの?
639:nobodyさん
09/10/26 05:55:31 n4efgg6U
>>638
はい、順序以外は期待通りの実行結果です。
640:nobodyさん
09/10/26 06:00:30
じゃkrsortの問題ですね
どんな$linkstrを入れるとどのようなソート結果になるか例を出してもらえますか?
ちなみに第二引数にソートフラグを指定して挙動を変えることができる
URLリンク(www.php.net)
今回の場合は全て文字列だから関係ないかもしれないけど
641:nobodyさん
09/10/26 06:09:43 n4efgg6U
RSSの取得を下のようにしたとして
$rssurl[] = "URLリンク(mainichi.pheedo.jp)";
$rssurl[] = "URLリンク(mainichi.jp)";
$rssurl[] = "URLリンク(mainichi.jp)";
$rssurl[] = "URLリンク(mainichi.jp)";
10/26 05:00 ■URL ■人事:法務省(26日) ■URL ■毎日jp-ニュース速報(総合)
10/25 21:00 ■URL ■注目アニメ紹介:「空中 ■URL ■毎日jp-まんたんウェブ
10/25 22:14 ■URL ■the GazettE ■URL ■毎日jp-エンタメ
10/25 23:10 ■URL ■横浜:巨人・尾花コーチ ■URL ■毎日jp-スポーツ
(長いので削ってます)
このような結果が出ます。
日付でソートをかけているつもりですが、まったくされていません。
$rssurl配列の上から順に表示されています。
642:nobodyさん
09/10/26 06:10:21
>>636
echoで文字列を出力してるのか?
それともただアドセンス部分のHTMLだけ書いてるのか?
試してみたがhtml bodyタグが加わることはない
サーバかPHPの設定かもしれないがどの設定項目かはわからんわ
PHP使えるレン鯖が2つ以上あるなら両方で試してみ
ローカルに環境作るのが一番いいけど
643:nobodyさん
09/10/26 06:11:55
>日付でソートをかけているつもり
使う関数まちがってるんじゃね?
krsortって逆順ソートだよ
644:nobodyさん
09/10/26 06:15:55
日付だから逆順であってんでねーの?
645:nobodyさん
09/10/26 06:17:41
いやいや
ただ単にキーを逆順にするソートってこと
ユーザー定義のソートをしたいのならusort()とかじゃないと
646:nobodyさん
09/10/26 06:18:06 n4efgg6U
$rssurl[] = "URLリンク(mainichi.jp)"; //まんたんウェブ
$rssurl[] = "URLリンク(mainichi.jp)"; //エンタメ
$rssurl[] = "URLリンク(mainichi.pheedo.jp)"; //ニュース速報(総合)
$rssurl[] = "URLリンク(mainichi.jp)"; //スポーツ
10/25 21:00 ■URL ■注目アニメ紹 ■URL ■毎日jp-まんたんウェブ
10/25 22:14 ■URL ■the GazettE ■URL ■毎日jp-エンタメ
10/26 05:00 ■URL ■人事:法務省( ■URL ■毎日jp-ニュース速報(総合)
10/25 23:10 ■URL ■横浜:巨人・尾 ■URL ■毎日jp-スポーツ
例がわかりにくかったので書き直しました。
647:645
09/10/26 06:19:49
あ、ごめん。
よくよんでなかったw
>日付でソートをかけているつもりですが、まったくされていません。
ってかいてたからてっきり
データ見る限りだとkrsortでよさそうだね
648:645
09/10/26 06:20:38
とか書いた瞬間にデータの日付ルールが変わった件
649:nobodyさん
09/10/26 06:22:04 n4efgg6U
usortにしたらエラーがでました。
Warning: Wrong parameter count for usort() in C:\WWW\php.php on line 30
>>648
26日が真上だと日付でソートされているように見えたので…
配列順に表示されるだけでソート機能が働いていないというのが今回の悩みです。。。
650:nobodyさん
09/10/26 06:25:26
>usortにしたらエラーがでました。
マニュアルみようぜ
URLリンク(www.php.net)
krsort($rssarray);を
usort($rssarray);にかえただけじゃだめ
第2引数入れないと
651:nobodyさん
09/10/26 06:26:20
それぞれどんな$linkstrなの?
652:nobodyさん
09/10/26 06:34:30 n4efgg6U
>>650
すいません、ありがとうございます。
試している最中ですが、cmpの設定に少し時間がかかりそうなので結果が遅れます。
>>651
$day 記事の更新日
$time 記事の更新時間
$date 上記二つを合わせた文字列
$rdf 記事のURL
$article 記事のタイトル
$url 配信元のURL
$title 配信元のタイトル
です。
653:nobodyさん
09/10/26 06:41:45
>>652
ごめん、krsortに$linkstr関係なかったね
$array = array('10/25 21:00'=>1,'10/25 22:14'=>2,'10/26 05:00'=>3,'10/25 23:10'=>4);
var_dump($array);
krsort($array);
var_dump($array);
array(4) {
["10/25 21:00"]=>
int(1)
["10/25 22:14"]=>
int(2)
["10/26 05:00"]=>
int(3)
["10/25 23:10"]=>
int(4)
}
array(4) {
["10/26 05:00"]=>
int(3)
["10/25 23:10"]=>
int(4)
["10/25 22:14"]=>
int(2)
["10/25 21:00"]=>
int(1)
}
こちらで試してみたら想定どおりにソートされてる気がするけども
654:nobodyさん
09/10/26 06:43:43
usortの$aの部分を日付をunixタイムに変えたものいれればそのまま使えるんじゃね
$a部分を連想配列にしてキーを$rssarrayのキーと一致させておけば簡単
比較は値のunixタイムにしたものを比較する感じで
マニュアルの例そのまま使うならrsort()にしたほうがいいと注意書きに書いてるから
まずはusortで形をつくってからパフォーマンスのためにrsortで書き直してみては?
655:645
09/10/26 06:48:17
なんか話をややこしくしてすまんかった
krsortの使い方を勘違いしてたようだ
>>653でよさそう
656:nobodyさん
09/10/26 06:50:28
オマエラ馬鹿じゃね?
$rssarrayをソートかけてんのに$linkstr表示してっからだろ
657:nobodyさん
09/10/26 06:50:51
>>637
krsort($rssarray);
echo "$linkstr";
froeachの終わりがどこかわからんけど、echo結果を見ているなら$rss->itemsの順番に表示されてるんじゃ?
$rssarrayに入れたいものを全部入れてからkrsortしてprint_r($rssarray)で確認してみたらどうかな
658:nobodyさん
09/10/26 06:56:25 n4efgg6U
>>653
phpは昨日触ったばかりなのでじっくり参考にさせて頂きます。
>>654>>655
助言を求めたのは私なのでハマりから抜け出すためのしっかり参考にさせて頂きます。
>>656>>657
やっと原因が究明出来ました。
表示がまだ思い通りにいかないので試行錯誤してみます。
659:nobodyさん
09/10/26 07:00:40 n4efgg6U
foreachを閉じた後
krsort($rssarray);
for(reset($rssarray); $i=i($rssarray); next($rssarray)){
echo "$rssarray[$i]";
$count++;
if($count == 4){
break;
}
}
これでしっかりと表示出来ました。
原因はkrsort($rssarray);をforeachの中に入れていたことと
$linkstrを表示していたことです。
皆様ありがとうございました!
660:nobodyさん
09/10/26 07:01:41
echo "$linkstr";
の行は単にデバッグのためループの中で出力を確認しているだけで
当然そのあとにテーブルか何かで一覧を表示して、正しくソートされてないと言ってるもんだと思ってた。
$linkstrはkrsortどころか$rssarrayとも関係ない。foreachの順で表示されるだけじゃん。
661:nobodyさん
09/10/26 07:07:28
終わった後に言っても仕方ねぇだろ無能。
オマエラ馬鹿すぎ。
662:nobodyさん
09/10/26 07:23:29
煽るのすきだね
リアルでどういうやつなのかぜひ見てみたいわ
663:nobodyさん
09/10/26 07:36:34
>>662
的外れな回答する奴よりはマトモだよ
664:nobodyさん
09/10/26 10:20:50
それはない
665:nobodyさん
09/10/26 10:41:51
クッキーにパスワード保存するのはあれだよね。次回から自動でログインとかどうすればいいんだろう
666:nobodyさん
09/10/26 10:50:47
>>665
>>!
667:nobodyさん
09/10/26 10:58:01
>>665
何かユニークIDを発行してそれを保存
668:nobodyさん
09/10/26 11:15:48
>>665
なにか問題でも?
669:nobodyさん
09/10/26 11:27:59
他人の端末のクッキーコピって来たら、
俺が自動ログインで、そいつの振りして利用できる?
670:nobodyさん
09/10/26 11:33:33
できるよ
671:nobodyさん
09/10/26 11:34:10
そもそも他人に簡単に起動を許す、または誰でも簡単に利用できるようなPCのセキュリティに問題アリ
672:nobodyさん
09/10/26 11:44:57
パスワードだけは暗号化すれば良さそうだね
673:nobodyさん
09/10/26 11:49:41
暗号化が簡単ならね
674:nobodyさん
09/10/26 11:54:38
クッキーなんか暗号化必要ないんじゃない?
>>673
暗号化なんて簡単じゃん
675:nobodyさん
09/10/26 11:57:30
簡単ならおk
676:nobodyさん
09/10/26 12:18:54
そもそもクッキーコピーできるような状況なら、そのPCで他人がブラウザ使ってもログイン可能って
ことだしなあ。
677:nobodyさん
09/10/26 12:30:15
そもそも自動ログインなんて許すのは金の絡まないサイトとか
個人情報があまり意味ないサイトとかだよね。
ひまわり動画とか
678:nobodyさん
09/10/26 16:44:56
>>677
そういう問題か? 糞だな^^;
679:nobodyさん
09/10/26 17:53:40 +hgb+ZZq
一応>>1にMySQL等は別スレとありますが、php+MySQLに対してのスレがなかったので、此方で宜しかったでしょうか?
スレチでしたら誘導お願いします。
Sample.phpへ、buttonを配置し、JavaScriptでメソッドを定義。
function A1(){
if(confirm('ごまだれですか?')){
<?php
mysql_query("begin");
mysql_query("update `gomagoma` set `syurui` = 'くろごま' where `syurui` = 'alpha'") or die(mysql_error());
mysql_query("commit");
mysql_query("begin");
mysql_query("update `gomagoma` set `syurui` = 'しろごま' where `syurui` = 'beta'") or die(mysql_error());
mysql_query("commit");
mysql_query("begin");
mysql_query("update `gomagoma` set `syurui` = 'ごまふあざらあし' where `syurui` = 'hex'") or die(mysql_error());
mysql_query("commit");
?>
window.alert('内容を変更しました。')
}
}
としていますが、DBを覗いてみたところ、アップデートされていませんでした。
ですが、MysqlErrorは返ってきておらず、そのままJavaScriptで記述したalertが実行されます。
原因を現在当たっていますが、何か思い当たる点がありましたらご指摘お願いします。
680:nobodyさん
09/10/26 18:00:11
>>678
677じゃないけど、そんなもんだと思うぞ
大して重要でもないのに何を気にする事あるんだ?
そんなに気になるなら自動ログインなんてしなきゃいいだけじゃないか
681:nobodyさん
09/10/26 18:08:17
>>679
サーバサイドとクライアントサイドがごっちゃになってないか?
「function A1()」ってのはjavascript側で定義している関数だろ?
その中のphp(mysql_query)は、button押下に関係無くそのページロードしたら実行されるぞ?
ブラウザのソース見てみなよ。
682:nobodyさん
09/10/26 18:09:49
>>679
そのHOSTからmysqlで同じSQLを手で入れるとどうなるよ
トランザクションの使い方も間違ってる
683:nobodyさん
09/10/26 18:17:35
>>679
PHPの中身はともかくとしても、
PHP部が実行されて、DBが書き換えられるなどした後、
出力などがなければ<?php から ?>までが無くなったテキストが、
ヘッダなどがついてブラウザに渡され、それからjavascriptが動くので、
ブラウザがうけとるのは
function A1(){
if(confirm('ごまだれですか?')){
}
}
になります。