【PHP】下らねぇ質問はここに書き込みやがれ 55
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/09/29(土) 18:35:56ID:YlkpEUW6PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 54
http://pc11.2ch.net/test/read.cgi/php/1189309377/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0604nobodyさん
2007/10/07(日) 21:32:35ID:Dz4kk+z7コードなら自力で書けるのですが
たとえばregister_globalsの動作を問題として出したときに
抜けてる知識がないかマニュアルページを見に行きますよね?
そうしたときに自分が知らなかった情報を引用していいのかってことです
ex)問題:register_globalsがONの時に気をつけるべき点を答えなさい
自分の知らなかったことを選択肢として追加→使用する前に変数を初期化すべきである
0605nobodyさん
2007/10/07(日) 21:42:52ID:???0606nobodyさん
2007/10/07(日) 22:00:26ID:???だからさ、その引用の良し悪しの判断できる唯一はPHP Groupじゃないの?
聞くところが無いって…そこに問い合わせるしかないんじゃないの
webmasterが適切かどうかわからんけど
0608nobodyさん
2007/10/07(日) 23:35:54ID:Dz4kk+z7とりあえず先ほどメールだしてみました
返信が来ましたらここにまた結果を報告しようと思います
どうもお騒がせしました 皆様ありがとうございます
0609nobodyさん
2007/10/07(日) 23:51:21ID:???考えています。
この時、条件にあうデータが1件のみであればそのまま結果を返し、
複数存在する場合には別窓に一覧を表示して選んでもらったものを
戻り値として返すような処理をしたいのです。
1件のみの場合の処理の見当はつくものの、複数ある場合の選択結果を
どうやって受け取ればいいのかがわかりません。
どういった方法がありますでしょうか?
0610nobodyさん
2007/10/07(日) 23:58:16ID:???> 複数存在する場合には別窓に一覧を表示
検索結果によって別窓を出すか出さないか切り替えるってのは
JavaScript使わないと無理なんじゃないかな…
0612nobodyさん
2007/10/08(月) 00:11:37ID:???複数のうち1件選択してもらうだけだから
inputを配列にする必要はないんじゃね?
検索キーをキー+ユニークIDの組み合わせで受け取るか
キー+n件目という組み合わせで受け取ればいいと思う。
0614nobodyさん
2007/10/08(月) 00:18:02ID:???0615nobodyさん
2007/10/08(月) 00:24:52ID:???>>別窓に一覧を表示して選んでもらったものを戻り値として返すような処理
ここが今一判らないんだがWikipediaみたいな検索結果にしたいという事かな?
「PHP」で検索だとPHP言語、PHP研究所、PHSの旧名称…という曖昧さ回避のためのページ(=一覧)が表示、
「PHP: Hypertext Preprocessor」で検索すると(結果が1件しかないから)PHP言語のページに飛ぶ、みたいな。
ヨドバシやAmazonだと結果が1件でもリスト表示と同じにしてるからそっちの方が簡単と思うけどそれだとヤなのね?
0616609
2007/10/08(月) 01:01:20ID:nnv6gR3zさっそくありがとうございます。
確かに内容が漠然としてました・・・
形としては、入力フォームに入力されたコードを翻訳した結果を
返す形のものなのですが、1つのコードに複数の内容が割り当て
られているものがある場合には、選択窓で選択してもらえるように、
という感じになります。
フォームは固定でボタンが押されたら処理、という感じになるので
Wikipediaのように窓の内容自体の置き換えは難しいかな、と思います。
参照する場所が1箇所だけならJavascriptを限定で埋め込んでも
いいのかも知れませんが、別の項目に対する同様の処理を1つの関数で
まとめられないかと思いまして。
たしかに別窓を出して、という時点でJavascriptの方になってきそう
なのでPHPの話題じゃ無いかもしれません。
流れとしては、
onclickで更新のJavascript呼び出し
0617nobodyさん
2007/10/08(月) 01:05:22ID:???0618609
2007/10/08(月) 01:05:37ID:nnv6gR3z流れとしては、
onclickで更新のJavascript呼び出し
scriptから値を添えて検索用phpの呼び出し
検索用php内で、検索対象に応じて検索処理関数呼び出し
検索処理関数内でDB検索と検索結果を返す (←この処理)
その結果を親フォームのJavascriptで表示
という流れです。
0619nobodyさん
2007/10/08(月) 01:08:14ID:???んで何を答えろというのだろう。
関係ない話多すぎ。はしょれよ。
0620609
2007/10/08(月) 01:19:36ID:nnv6gR3zスレ違いのようですので、もう一度調べなおします。
ありがとうございました。
0621nobodyさん
2007/10/08(月) 01:38:19ID:???ポップアップ禁止+勝手に別窓開かせないアドオン入れてるから最近全然見かけない
(というか気付かないだけかもだが)
0622nobodyさん
2007/10/08(月) 01:40:32ID:???0624nobodyさん
2007/10/08(月) 01:48:04ID:???ポップアップ禁止でもユーザのクリックで1枚だけ開く分には普通に開けるし。
まぁでも、検索結果の候補出すのに別窓ってのはものすごくうざいと思う。
0625nobodyさん
2007/10/08(月) 01:50:21ID:???とりあえず複数候補から再検索の処理と別窓は話を分けろ。
前者は全然難しくないが後者が入った途端にアクロバットな処理になる。
0626nobodyさん
2007/10/08(月) 01:53:52ID:???0627nobodyさん
2007/10/08(月) 01:59:11ID:???a) ユーザが入力した検索結果が1つならmainフレームにその内容を表示、
b) 検索結果が複数ならsideフレームにその一覧を表示する。
c) 複数時はユーザがsideの一覧から1つをクリックするとその内容がmainに表示される(もち再検索)、
って事じゃないの?
それで>>609がしたいのはaとbのフレーム振り分け処理関数?
オレ、トンチンカン?
0628nobodyさん
2007/10/08(月) 02:07:08ID:???0629nobodyさん
2007/10/08(月) 02:14:53ID:???フレームか別窓かの違いはあるけど概ねそんな感じなのでは。
どっちにしろ検索結果で出力先を切り替えなんてPHPの仕事じゃないけど。
0630nobodyさん
2007/10/08(月) 02:25:14ID:???いやいや、そんな感じの処理でいいんでしょ。
で、質問者はどんな方法がありますかと問いを投げてるが
単刀直入にやり方わかんねえから教えれ、と。
要の部分を考えなきゃなんねえのに放棄して丸投げかよ、と。
0631nobodyさん
2007/10/08(月) 02:38:17ID:???ウィルスチェックしてないPCの方が丸裸にされる
可能性高いと思う
たいていの場合、Internetからの
アクセスはルータが阻止してくれるから、ローカルネット上で
サーバ立ち上げるだけなら、さして問題ではない
(グローバルネットからローカルネット上のサーバを
見えるようにするには、ルータの設定を変更しなければならない)
不安だったら、Etherの線抜いとけ←これ最強
0632nobodyさん
2007/10/08(月) 03:51:34ID:???ルーター使ってるかどうかも怪しいもんだ。
PCにモデム直のADSLやFTTHなユーザも少なくないぞ。
> 不安だったら、Etherの線抜いとけ←これ最強
この意見は正しい。
0633nobodyさん
2007/10/08(月) 03:53:08ID:???609的にはパラメータの受け渡し方法を聞きたいみたいなんだが
そもそも別窓の仕組みをどうやって実現するのか示してないから
こっちも回答のしようがないんだよな。
簡単な質問を餌に、難しい質問までいっぺんに聞こうとしてるように見える。
0634nobodyさん
2007/10/08(月) 03:55:52ID:???0635nobodyさん
2007/10/08(月) 04:06:27ID:???そこに一覧表示のURL渡す(再検索になるけど)か、JSのソースに一覧情報埋めてそれを別窓に出力させるとか?
素人考えですが。
0636nobodyさん
2007/10/08(月) 04:08:07ID:???0639nobodyさん
2007/10/08(月) 05:50:32ID:???0642nobodyさん
2007/10/08(月) 06:27:28ID:???ttp://www.google.com/search?num=100&lr=lang_ja&ie=Shift_JIS&q=JavaScript%20CrossLiblaries
> JavaScript CrossLiblaries に一致するページは見つかりませんでした。
0643nobodyさん
2007/10/08(月) 11:01:06ID:Cu10uF3bワロタwwww
0644nobodyさん
2007/10/08(月) 11:45:58ID:???次は何を覚えようかなー
0645nobodyさん
2007/10/08(月) 11:48:17ID:???0646nobodyさん
2007/10/08(月) 12:05:17ID:???0647nobodyさん
2007/10/08(月) 12:26:59ID:???http://pukapuka.sakura.ne.jp/cgi-bin/upload/puka/img-box/1191813670818.jpg
0648nobodyさん
2007/10/08(月) 12:32:44ID:???0650nobodyさん
2007/10/08(月) 12:42:53ID:???0651nobodyさん
2007/10/08(月) 12:47:56ID:???{;;;;;;ゝ T辷iフ i f'辷jァ !i;;;;;
ヾ;;;ハ ノ .::!lリ;;r゙ PHPを一通り修得しアプリも組めるようになって飽きた
`Z;i 〈.,_..,. ノ;;;;;;;;>
,;ぇハ、 、_,.ー-、_',. ,f゙: Y;;f そんなふうに考えていた時期が
〜''戈ヽ `二´ r'´:::. `! 俺にもありました
0652nobodyさん
2007/10/08(月) 13:42:25ID:9TeQf+fQ出席管理を行うスクリプトを書いていて、複数の同一型フォーム(name="id[]")から出席者IDをPOSTで送っています。
その際、与えられたIDの情報をSQLから取得し、登録されていないIDが与えられている場合警告を出そうと考えています。
このとき、フォームに入力された順に内容を表示する必要があります。
ここで、質問なのですが、SQLから返ってくる出席者の情報 (ID, 名前, 等) の配列を持った配列 (結果的に2次元配列になります) を、 $_POST["id"][] の順でソートし、登録されていないIDを割り出そうとしています。
調べたところ、 usort で自作の関数を与えれば多次元配列のソートを行うことができるようですが、ソート対象内の比較しかできないようです。
そうではなく、外部の変数(出席者の情報)の並び方を尺度にソートするにはどのようにすればよいですか?
また、代替案がありましたらお教えください。
よろしくお願いします。
0653nobodyさん
2007/10/08(月) 14:03:35ID:MwfYaHDM0654nobodyさん
2007/10/08(月) 14:11:49ID:???http://jp2.php.net/function.array-multisort
0656nobodyさん
2007/10/08(月) 14:32:28ID:???出席管理っつうぐらいだから学校関係者か?
未登録IDを検出するんなら select id from テーブル名 where id = 入力id;
この問い合わせで済む
やろうとしているのは何? select * from テーブル名; で登録者のデータ全件
引っ張ってきて、フォームから入力されたIDの配列と比較して未登録IDを導く
ようなそういうこと?
俺バカだから理解できねえよ
0657nobodyさん
2007/10/08(月) 14:50:40ID:???8行目だけで十分じゃないか
0658nobodyさん
2007/10/08(月) 15:07:07ID:???$_POST["id"]配列を使ったループで表示処理をすればいいんじゃないの?
$result にSQL結果のIDリストが入ってるとして
foreach($_POST["id"] as $id) {
if(in_array($id, $result)) {
echo "あった";
} else {
echo "なかった";
}
}
みたいな。
$resultまでソートする必要なかろう。
0659nobodyさん
2007/10/08(月) 15:17:08ID:???>その際、与えられたIDの情報をSQLから取得し、登録されていないIDが与えられている場合警告を出そうと考えています。
>このとき、フォームに入力された順に内容を表示する必要があります。
この部分は自分なりに作ってるのか?
丸投げで代替案とか聞いてんじゃねえぞ
0660nobodyさん
2007/10/08(月) 15:17:16ID:???言ったらよろしw
0661nobodyさん
2007/10/08(月) 15:27:23ID:???俺だったら入力IDの数だけSQL叩いたりしないで
id in (xxxx,xxxxx,xxxxx....)
で一発で引いちゃうな。その方が速い。
0662652
2007/10/08(月) 15:30:03ID:9TeQf+fQみなさんありがとうございます。
文章が読みづらく、皆さんにご迷惑をお掛けして申し訳ないです。
>>656 さん
学校関係者ではありません。
目的は、SELECT id FROM テーブル名 WHERE ID='フォームからの入力 1' OR ID='フォームからの入力2' ......
でフォームから入力されたIDを持つ登録者のデータだけを抜き、
フォームから入力された配列と比較して未登録IDを導くことです。
>>658,660 さん
言われてみて、確かにその通りだと猛省しました。
ソートせずに$_POSTから間引けばよかったのですねorz
SQLからのレスポンスをいかにハンドルするかで頭がいっぱいでしたorz
>>659 さん
他の部分は機能する状態で未登録IDの処理だけ放置していました。
皆さんご多忙の中ありがとうございました。
0663nobodyさん
2007/10/08(月) 16:35:27ID:???0664nobodyさん
2007/10/08(月) 21:37:08ID:???0665nobodyさん
2007/10/08(月) 21:42:03ID:???0666nobodyさん
2007/10/08(月) 22:01:53ID:aQD+Fx51シンプルなサンプルってねーかしら?
0667nobodyさん
2007/10/08(月) 22:35:22ID:???0669nobodyさん
2007/10/08(月) 22:54:48ID:aQD+Fx51JavascriptでXMLRPCを叩く
シンプルなサンプルが載ってるサイトのURLを
いくつかくださらねーかしら?
0670nobodyさん
2007/10/08(月) 22:55:27ID:???0672nobodyさん
2007/10/09(火) 00:25:17ID:7LOIBqtZこないだここで質問させていただいたPHPマニュアルの著作の件に関して
返信が来ましたので抜粋します
feel free to use the examples in the manual in any way you like.
The only ethical concerns is when you reprint an entire manual chapter
with slight changes without giving credit to php.net.
とのことです
どうもありがとうございました
0673nobodyさん
2007/10/09(火) 03:01:48ID:???0674nobodyさん
2007/10/09(火) 03:09:34ID:???0675nobodyさん
2007/10/09(火) 08:57:39ID:???0676nobodyさん
2007/10/09(火) 09:04:15ID:???ま、使い物になるかは別だが
0677nobodyさん
2007/10/09(火) 09:13:08ID:1fe4dxvasystem関数以外の関数を使って呼び出すことはできますか?
ある有名なレンタルサーバーを使っているのですが、
ソースが外部に流出していまして、困っています。
レンタルサーバーなのでsystem関数も使えません。
宜しくお願いします。
0678nobodyさん
2007/10/09(火) 09:15:21ID:???自分でPECLモジュール作っちゃうのが1つの手だが
レン鯖だとPECLの組み込みもできないんじゃなかろうか。
0679nobodyさん
2007/10/09(火) 10:30:01ID:???0680nobodyさん
2007/10/09(火) 10:55:51ID:???ドキュメントルート下に置いてるのがhttpd経由で漏れてるのか、
ドキュメントルートより↑に置いてるのが共有ユーザに漏れてるのか?
で対処方法は色々じゃね?
てかそのレンサバにゴラァしなよ。
0681nobodyさん
2007/10/09(火) 14:18:50ID:Horj9f1y$title = $item[title];
echo "$title\n";
の実行結果
title title title title
を
タイトル一覧:title title title title
のように表示させたいのですが
echo "$title\n";
や
echo "タイトル一覧:\n";
echo "$title\n";
だと
タイトル一覧:$title タイトル一覧:$title タイトル一覧:$title タイトル一覧:$title
になっちゃいますよね
おねがいします
0682nobodyさん
2007/10/09(火) 14:20:26ID:Horj9f1yecho "タイトル一覧:$title\n";
や
echo "タイトル一覧:\n";
echo "$title\n";
だと
0684nobodyさん
2007/10/09(火) 14:49:14ID:Horj9f1yヒントありがとうございます。
実際は取得してるのが$titleだけじゃないので出来そうで出来ないです
ちょっとGOOGLEで検索してきます
0685nobodyさん
2007/10/09(火) 15:16:10ID:???POSTでフォームを送信した後、ブラウザの戻るボタンで戻ると、
[ 警告:ページの有効期限切れ ]
と、表示されますが、これを表示させずにページを表示させる方法はありませんか?
この場合、リロードするとページが表示されますが、
状態としては、警告を出さすにリロードさせる方法になると思います。
0686nobodyさん
2007/10/09(火) 15:44:36ID:???foreachの前にタイトル一覧という文字列をechoで表示すればいい話のような…。
そんなに複雑な処理でもしてるのかな。
0688nobodyさん
2007/10/09(火) 16:50:04ID:???こっちのほうがよっぽど問題あるんじゃね
もっとしっかり設計汁!
0690nobodyさん
2007/10/09(火) 18:32:28ID:2B20Voue1)イベントの管理ツールを作ろうと思っています。(登録システム)
2)各イベントへの参加者数は不定で、1人の時も10人の時もあります。
3)参加者はそれぞれIDが振られており、それを参照することで詳細情報を確認できます
※IDのないユーザもいる その場合はユーザ固有のURLを別に登録できるようにしたい
上記のような条件の場合、どういうプログラムを組めばいいでしょう?
参加者数が上限が決まってたら、DB的に
sankasha_1〜sankasha_10 sankashaURL_1〜sankashaURL_10 とフィールドを物理的に
用意すればいいのかと思いましたが、そうではないのでPHPのプログラム側で
工夫しなければならないと思います。が、思いつきません。
どうしたらいいんでしょう? アイディアもらえたら嬉しいです。お願いします。
0691nobodyさん
2007/10/09(火) 18:41:37ID:???参加者のテーブル
運用テーブル
として
運用に登録する際IDがない人の場合は登録する際にURL+参加者FKを0に
って感じにするかな
0692nobodyさん
2007/10/09(火) 18:49:21ID:???sankasyaフィールドに配列を文字列にして特攻
0693nobodyさん
2007/10/09(火) 19:38:19ID:???0694nobodyさん
2007/10/09(火) 20:07:07ID:???もう破綻は決まったな
0695nobodyさん
2007/10/09(火) 20:08:35ID:???0696nobodyさん
2007/10/09(火) 20:28:16ID:???0697nobodyさん
2007/10/09(火) 20:29:07ID:???改善したいと思うならRDB勉強すればいい
0699nobodyさん
2007/10/09(火) 20:55:16ID:???0700nobodyさん
2007/10/09(火) 20:56:42ID:???0701690
2007/10/09(火) 20:58:29ID:???今まで住所録くらいしか作ったことないので、皆さんのアドバイス見てると
こりゃ大変だなと改めて感じています。
一つ思ったんですが、�@基本情報(開催日・開催地など「固定のもの」) と
�A参加者情報(数が定まらないもの) を同じテーブルに入れると一気に難度が上がるんですね
なので、複数のテーブルに分けることにしました。
ご意見で言うと、>>691さんのやり方だと思うんですが、そのアドバイスの中である
「運用テーブル」というのが意味がわかりません。どういう役割のものでしょうか?
自分の中では�@と�Aの二種類しか存在しないようなイメージだったので。。
話がPHPの話題からだいぶズレているとは思いますが、申し訳ないですが
教えてください。「(>>691)運用に登録する際IDがない人の場合は登録する際にURL+参加者FK」の
「参加者FK」とは何かもわからないのでお願いします。ほんとにすみません
0704nobodyさん
2007/10/09(火) 21:14:33ID:???仕事大切にしろ。
■ このスレッドは過去ログ倉庫に格納されています