【PHP】くだらねぇ質問はここに書き込みやがれpart9
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/09/03(土) 11:53:32ID:7OO4C5e5ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
【PHP】くだらねぇ質問はここに書き込みやがれpart7
http://pc8.2ch.net/test/read.cgi/php/1121100429/
【PHP】くだらねぇ質問はここに書き込みやがれpart8
http://pc8.2ch.net/test/read.cgi/php/1123431535/
0167nobodyさん
2005/09/06(火) 02:16:56ID:???UA取得して、IEで閲覧時にはIE用のスタイルシート。
といった感じに、スタイルシートをブラウザごとで使い分けるために
PHPを使用しようと考えているのですが、
そういうことはPHPでできそうでしょうか?
0168nobodyさん
2005/09/06(火) 02:21:35ID:???DBに登録するときにエラーチェックしてる?
漏れ、最近べつに必要ねぇんじゃねーか?
と思い始めた。
$result = $db->query($sql);
if (MDB::isError($result)) {
die ($result->getMessage());
}
0170167
2005/09/06(火) 02:35:48ID:???レスどうもありがとうございます。
回避する方法も開発されているのですかー。
それは知りませんでした。
少し回避する方法を探してみてだめそうならPHPでやってみたいと思います。
0171nobodyさん
2005/09/06(火) 02:37:32ID:???サーバサイドでやるなら、HTML内に各ブラウザ用のCSSを埋め込むか、
各ブラウザ用のCSSを予め用意しといて、外部CSSを読み込ませる部分の記述を動的に変えるとか。
あと、サーバサイドでやらんでも、クライアントサイドで各UAのバグ・実装不足などを突付いて
CSSの特定の部分を特定の部分だけ読めないように記述するCSSハックという手法もある。
>>168
sql投げたら勝手にquery送ってdieまでやってくれるメソッドを実装しちゃえば気にしなくて済む。
0172167
2005/09/06(火) 02:42:23ID:???レスどうもありがとうございます。
クライアントサイドでやるならJSかと思ってたのですが、
CSSハックというやり方もあるんですね。
聞いたことがない言葉なので早速調べてみたいと思います。
0174151
2005/09/06(火) 11:29:55ID:???皆様のおかげでinputのテキストのデータを反映させることが出来るようになりました。
しかし同じ方法で画像データを反映させると画像のある場所が文字データとなって反映されてしまうのですが・・・
ちゃんと画像データとして反映させる方法があったら教えて下さい。
0175nobodyさん
2005/09/06(火) 11:45:39ID:???0176101
2005/09/06(火) 12:10:17ID:???ふつうにfopenでftpすればできますた。便利だなぁ。
0177nobodyさん
2005/09/06(火) 12:14:15ID:???アップしておいて確認画面でtemp内の画像を表示、登録時には
tempディレクトリから正式なディレクトリへ移動っていう方法をつかってたんだけど、
>>162のレス読んで画像ファイル自体をセッションファイルへ入れちゃうって
方法があるのを知って目から鱗なんだけど、実際にセッションファイルへ
バイナリファイルを入れるのはバイナリを一度文字列に変えなくちゃ駄目だよね?
serialize()かなんかを使うのかな?
0178nobodyさん
2005/09/06(火) 12:35:36ID:3UvZ8ZqBって機能を追加するのって、現実的ですか?
プログラムは素人なんですが、どのくらいの値段なんでしょうか?
0179nobodyさん
2005/09/06(火) 12:45:37ID:???読み込んでテーブルタグ化するだけなら簡単。
これだけだと2〜3万かな。
1万でもやる奴がいそうだが。
ブログに追加という部分が厄介で、多分可能だろうが
使っているブログシステムが何か分からないことには確答しかねる。
0180178
2005/09/06(火) 13:02:06ID:???ブログはblognです。データベースが使えないので。
0181nobodyさん
2005/09/06(火) 13:16:00ID:???blogの記事投稿画面でアップロードした画像を挿入するのと同じような感じで
csvファイルをアップロードして、記事投稿のフォームにテーブル化したcsvを挿入、ということ?
0182nobodyさん
2005/09/06(火) 13:24:16ID:5K+uGMJDhttp://cefa.sakura.ne.jp/archives/2005/05/311555.php
設置した鯖は自宅鯖で、Windowsですがgo-pear.batを実行して
Pearのインストールは成功してると思います。
上記ページのとおり設置し、test.php内に
<?php include("http://www.mydomain.com/rssv.php?u=http://manabekawori.cocolog-nifty.com/blog/index.rdf"); ?>
を埋め込み、test.phpをブラウザで開くと
Warning: main(http://www.mydomain.com/rssv.php?u=http://manabekawori.cocolog-nifty.com/blog/index.rdf): failed to open stream: HTTP request failed! HTTP/1.0 400 Bad Request in d:\apache\users\aaa\home\test.php on line 15
Warning: main(): Failed opening 'http://www.mydomain.comrssv.php?u=http://manabekawori.cocolog-nifty.com/blog/index.rdf' for inclusion (include_path='.;D:\php\pear') in d:\apache\users\aaa\home\test.php on line 15
というエラーが出ます。
http://www.mydomain.com/rssv.php?u=http://manabekawori.cocolog-nifty.com/blog/index.rdf を直接ブラウザで叩いたり、
test.php内を
<iframe src="http://www.mydomain.com/rssv.php?u=http://manabekawori.cocolog-nifty.com/blog/index.rdf&n=3" width="360" height="500" scrolling="no" marginheight="0" marginwidth="0" vspace="0" hspace="0" frameborder="0"></iframe>
などとした場合にはちゃんとRSSを読み込んで表示するのです。
includeできない原因として何が考えられますでしょうか?
0183nobodyさん
2005/09/06(火) 13:27:28ID:???会員サイトで、「パスワードを忘れた方はこちら」というのがあります。
よくあるのは、
登録時のメールアドレスを入力して
・パスワードが直接メルアドに届く
・パスワード再設定用のURLが届く
サイト上で秘密の質問に答えるとその場でパスワード表示
などがあると思います。
セキュリティの面と、作成の手間を考え、どの方法が手っ取り早いかアドバイスお願いします。
メールアドレス宛にパスワード送るのならめっちゃ簡単だけど、それじゃセキュリティが甘いだろうし。
パスワード再設定用のURLが届く方法というのも具体的にどういう手法を使っているのか分からない。
助けてください。
0185nobodyさん
2005/09/06(火) 13:45:44ID:???どっちもまずい
・メールアドレス(場合によって+ID)を入力->パスワード送信
他人がなりすまして送信しまくりなスパムが簡単に出来る。
共用メールアドレスなんて可能性もなきにしもあらず。
・リマインダでパスワード表示
偶然にでも画面見ちゃった第三者が、ユーザがパスワード変更するためにアクセス出来るし、
同じパスワードを複数サイトで使いまわす人がいるってのもあるし、テキストとして表示しちゃうのはまずい。
メールアドレスな方法だと、ワンタイムな変更用urlを発行してメールを送るとか。
システム側では、DBなりに変更用urlに使うランダム文字列とユーザID、発行日時(もしくは有効期限)を格納。
リマインダな方法だと、パスワードをそのまま表示でなくて、パスワード変更用のフォームを表示するとか。
0186nobodyさん
2005/09/06(火) 13:45:50ID:???メールで直接パスワードが届くのはどう思いますか?
俺個人としては「別にいいんじゃね?」って感じなんだけど、
神経質な友人は「漏洩したらどうすんの!」って言ってます。
ユーザー名は記述しないし、最初に登録したアドレスに送るわけだし、
仮にメールがバレタとしても特に問題はないような気はするんだけど。
0187185
2005/09/06(火) 13:47:23ID:???×第三者が、ユーザがパスワード変更するためにアクセス出来るし、
○第三者が、ユーザがパスワード変更する前にアクセス出来るし、
0188nobodyさん
2005/09/06(火) 13:49:51ID:???>メールアドレスな方法だと、ワンタイムな変更用urlを発行してメールを送るとか。
>システム側では、DBなりに変更用urlに使うランダム文字列とユーザID、発行日時(もしくは有効期限)を格納。
>リマインダな方法だと、パスワードをそのまま表示でなくて、パスワード変更用のフォームを表示するとか。
あー、この返かなり参考になります。
ランダム文字列を発行してユーザー情報に格納、
その文字列をフォームに入力する(もしくはURLクリックする)ことによって
パスワード変更のフォームが登場。
こんな感じでよいでしょうか。
0189nobodyさん
2005/09/06(火) 13:51:56ID:???パスワードをそのままサーバ側で記憶しているのは、セキュリティ(というかプライバシー)上望ましくない。
であるから、1、3番目は、無い。
0190nobodyさん
2005/09/06(火) 13:54:28ID:???urlencodeしてください
<?php
// test.php
$rssv = 'http://www.mydomain.com/rssv.php';
$rdf = urlencode('http://manabekawori.cocolog-nifty.com/blog/index.rdf');
include "$rssv?u=$rdf&n=3;
?>
0192nobodyさん
2005/09/06(火) 13:57:15ID:???10秒くらい関数から帰ってこない
コマンドラインでsendmailを使っても遅いわけじゃないから
なにかPHP側でやってるのか
0193190
2005/09/06(火) 13:58:10ID:???0194nobodyさん
2005/09/06(火) 13:58:33ID:???まぁ、それにしたってメールが暗号化云々というのは根本的にアレだし、ログの問題もログ消して、パスワードとっとと変更しちゃえばいい話なんだけど。
サイトで扱う情報の重要性、機密性とかサイトの規模考えつつ、適当なとこで妥協すればいいと思う。
>>188
それでもいいし、メール送信する時に
http://www.hoge.gov/password_change.php?code=変更用ワンタイムコード
みたいなurlを本文に入れてあげれば、ユーザが入力する手間もなくなる。
んで、ワンタイムコードは変更用フォームにアクセスした時点か、フォームからサブミット掛かった段階で無効にする。
有効期限を発行から数時間くらいに設定して、フォームアクセス時にワンタイムコードを無効にすれば
セキュリティ的にも割とまともな物が出来るんじゃないかなぁ。
0195nobodyさん
2005/09/06(火) 14:04:45ID:???サイトで扱う個人情報はメアドくらいなものなのですが、
個人情報保護法がなんだかんだとうるさいご時世なので、
ある程度はしっかりとしないとと思った次第です。
194さんの方法を参考にあれこれと試行錯誤してみたいと思います!
0196182
2005/09/06(火) 15:57:21ID:5K+uGMJDサンクスです。
>>190にダブルクォートを入れて試ししましたが、
Warning: main(http://www.mydomain.com/rssv.php?u=http%3A%2F%2Fmanabekawori.cocolog-nifty.com%2Fblog%2Findex.rdf&n=3): failed to open stream: HTTP request failed! HTTP/1.0 400 Bad Request in d:\apache\users\aaa\home\test.php on line 15
Warning: main(): Failed opening 'http://www.mydomain.comrssv.php?u=http%3A%2F%2Fmanabekawori.cocolog-nifty.com%2Fblog%2Findex.rdf&n=3' for inclusion (include_path='.;D:\php\pear') in d:\apache\users\aaa\home\test.php on line 15
と、エラーメッセージのURLがエンコードされただけとなりました。
ネタ元でもあるブログサイトで動いてるphpを使って
<?php include("http://www.kotono8.com/rss/rssv.php?u=http://manabekawori.cocolog-nifty.com/blog/index.rdf"); ?>
とすると上手く表示されるので、こちらの鯖の設定などがまずいのか悩んでます。
0198nobodyさん
2005/09/06(火) 16:35:25ID:???0200nobodyさん
2005/09/06(火) 16:47:53ID:???0201nobodyさん
2005/09/06(火) 16:49:51ID:???解読というか復元?
つまり、「93c92ee0505ea7c5ee8f6d92dc21114f」このハッシュから
元の文字列が何か分かりますか?と言うことでつ。
分かるとすれば、そう言う関数があるのか、
もしくはどのような方法を使ってどのくらいの時間がかかるのか知りたいのです。
0202nobodyさん
2005/09/06(火) 16:53:30ID:???こんなのがあった
http://www.vector.co.jp/soft/unix/util/se365582.html
0203nobodyさん
2005/09/06(火) 16:58:01ID:???すげぇなぁ…。んー、セキュリティ的に良いと思ったんだけどな…。
0204nobodyさん
2005/09/06(火) 17:01:12ID:???まず無理だろう
0205nobodyさん
2005/09/06(火) 17:02:35ID:???たとえば、
名前:年収:勤務地
aaaa:600:埼玉
bbbb:700:東京
cccc:550:千葉
dddd:500:神奈川
eeee:800:北海道
というデータを、年収を「600万以上」で検索しても
550万のデータも「条件90%合致」ということで表示したいのです。
検索条件に100%合致しなくても、ある程度は表示(100%から順にソートして表示)したいんですが、
どういう仕組みでそれを実現すればいいか思い浮かびません。
いい方法ありましたらご教授願います。
0206nobodyさん
2005/09/06(火) 17:08:12ID:???年収だけなら、540万円以上のデータを抽出して
600万円未満に90%合致フラグを立てれば良いだけ。
それ以外のデータは一致度の基準を立ててくれないと何ともいえない。
0208nobodyさん
2005/09/06(火) 17:12:00ID:???でいいんじゃないの?
合致度を出したければSELECTで (年収 / 条件) AS 合致度 って感じで出して表示すればいいかと。
100%以上は等しく100%と表示したければ、合致度 > 1 の場合は等しく 100 としてphp側で扱えばいい。
つか完全にSQLの話だわな
0209nobodyさん
2005/09/06(火) 17:14:33ID:???レスどうもです。
実は年収だけじゃなくて、勤務地も東京を指定しても
埼玉、神奈川といった近辺も合致させたいんです。
基準としては、年収-50万で合致率からマイナス10%、
近県ならマイナス10%といった減算方式で、80%までなら
抽出したい、といった具合です。
勤務地に関しては、名称ではなく数値で格納してあるので
埼玉:10
東京:11
神奈川:12
千葉:13
北海道:50
検索値の前後±1の地域をマイナス10%で抽出する、といった感じです。
どうやって抽出すべきか、どうやってソートしたらいいか全く見当がつきません。
よろしくお願いします。
0210nobodyさん
2005/09/06(火) 17:18:15ID:???なるほど、合致率もSQLで取得するんですね。
年収オンリーでの考え方は把握しました。どうもです。
条件が複合したときがさらに厄介です。
ヒント(っつか答え)はいただいたので、自分でも考えてみます。
0211nobodyさん
2005/09/06(火) 17:20:37ID:???ここで聞く話じゃないよ。板違い。
MySQL 総合 Part5
ttp://pc8.2ch.net/test/read.cgi/db/1121561160/
こっち。
0213nobodyさん
2005/09/06(火) 17:54:54ID:???0214nobodyさん
2005/09/06(火) 18:29:58ID:???0215nobodyさん
2005/09/06(火) 19:40:48ID:???0216nobodyさん
2005/09/06(火) 20:34:33ID:???ブルートフォースって四文字限定なら8^4でたった4096回試行するだけだよ?
そもそもどんなアルゴリズムでも4文字のハッシュが破られないなんてありえねぇよ。
でもまぁ、君のそのよりよいセキュリティを求める姿勢はすばらしい。
ぜひ強固なシステムを作ってください。
0217nobodyさん
2005/09/06(火) 20:36:51ID:???でも4文字なら破れるのはいっしょ。
0218nobodyさん
2005/09/06(火) 20:40:43ID:vNTyf3ur開発環境で悩んでて今使ってる
windows XP home にapache,php等をインストールするのがいいのか
fedoraあたりのディストリをインストールしたlinuxPCのがいいのか
置き場所の問題もさることながらlinuxPC予定機がAMD550MHzなんでつ
windowsは2.8GHzなんでちと迷ってます
開発は主にwindowsでやって、まとまってきたのをレン鯖にうpするのがいいのか
開発からlinuxのがいいのか
ご意見お待ちしてます。
0219nobodyさん
2005/09/06(火) 20:51:31ID:???それほど困ったことは無い。
メール関係だけは本鯖使ってテストするけど。
両方環境用意できるならLinux鯖の方が良いんでない?
0220nobodyさん
2005/09/06(火) 21:22:55ID:oQLGoVGc0221nobodyさん
2005/09/06(火) 21:25:28ID:???Linux環境作れるんならlinux環境の方が良いんでは?
レンサバだと制限があるから、同じ設定にしたりも出来るだろうし。
よほどシビアなもの作るんで無ければ、取りあえずWinで作っても
十分大丈夫だろうけど
0222nobodyさん
2005/09/06(火) 21:27:59ID:???「探す」つーのと「作りたい」つーのは相容れない気がするが、
ネタを探しているのなら、web制作板かwebprog板の
作ってくれスレや探してますスレあたりをウロウロしてれば見つかるかと。
0223nobodyさん
2005/09/06(火) 21:45:13ID:???情報thx
ちなみにどの位の物を作ってるのかちょっと知りたいです
>>221
linux環境は作り難い、が正確なところでして
winで作ってレン鯖にうpで問題ないならそれに越した事がないのが現状でして
0224nobodyさん
2005/09/06(火) 21:51:55ID:???そうっすよねぇ。作りたいものを探すのは難しい・・・
>>223
レンサバ借りてるんなら、レンサバにアップして動作確認するのは
駄目なんですか?
俺はいつもそうやってます。
0225nobodyさん
2005/09/06(火) 21:58:46ID:???レンサバでも専用ならいいけど、共用なら何かあった時に他の人の迷惑になる可能性も
あるんでローカルでできる動作確認はなるべくローカルでやったほうがいいよ。
どんなアプリを書くかは知らないけど、レンサバと同じOSが用意できるのなら、
それに越したことはないと思うけど。
0226219
2005/09/06(火) 22:07:57ID:???どの位のものって規模とかのことかな?
小さな企業サイトのCMSやオンラインショップとかがメインかな。
大抵そういうところは月額1万以下の共用レンサバって感じだし、
出来ることも限られるのであんまり環境を変えることなくWinで開発できる。
この規模だと複数人で開発することもないし、自分の環境だけで
完結できるってのも大きいかもしれない。
0227nobodyさん
2005/09/06(火) 22:14:31ID:???教えてください m(_ _)m
0228nobodyさん
2005/09/06(火) 22:19:22ID:???鯖構築経験がなくて、とっとと開発したいなら素直にWinでいい気がする。
スペック的には鯖にする予定のマシンがAMD(K6-3?)550MHzって話だけど、それだけあれば十分かと。
(ファイルゴリゴリ動かしたりするなら、逆にWin機より早いくらいかもしれない)
Win機の方が、鯖に上げて…って部分がなくなるから、開発は楽。
(リモートからでも、ローカルにあるような感じ編集出来る開発環境はあるけども)
鯖の勉強もしたいなら、Win機で開発しながら暇見て鯖構築していけばいい。
0230nobodyさん
2005/09/06(火) 22:48:14ID:???参考程度に、私は WindowsXP + XAMPP + PHPEclipse って環境で勉強中
手元にLinux鯖もあるけど経験が浅くて躓く事が多いから、馴れてるWin環境を選んだ。
>>228で出てるけど、自分が使い慣れてる環境で始めるのが余計な事を考えなくて済んで良いと思う。
0231nobodyさん
2005/09/06(火) 23:39:36ID:???このとき、それらを全部取り出すと無駄だし負荷も高いので、
データのアタマの一部分だけ(たとえば3KBだけ)を全レコード抜き出したいのですが、
どういうSQLを発行すればいいのでしょうか・・・。
いろいろリファレンス見ましたが、抜き出すデータサイズを指定できるSQL命令は
無いようでした。PHPにもそういう関数はありませんよね・・・??
0232nobodyさん
2005/09/06(火) 23:59:08ID:???マルチバイトが含まれているときっちりサイズは合わないが
SELECT SUBSTRING(カラム名, 1, 3072)
ではダメ?
0233nobodyさん
2005/09/07(水) 00:07:14ID:???あるので配列($word)にしたいと思っています。
この場合、ereg($word,$strings)で動作するのでしょうか?
試しているのですが動いてくれません。foreach文か何かで片っ端から
やるしか無い?
0234nobodyさん
2005/09/07(水) 00:20:16ID:???ありがとうございます!
SUBSTRINGというのは初めて知りました。
サイズは厳密に合わなくてもいいのですが、
今回のtextフィールドには日本語の文章が格納されていまして、
その場合だとどこか(最後の一文字?)で文字化けが発生するのでしょうか、、、
0235nobodyさん
2005/09/07(水) 00:32:25ID:???>検索したい対象語が多くあるので配列($word)
この日本語だと「検索を実行する対象の文字列」が複数あるように読めるのに
>ereg($word,$strings)
これを見ると、「検索条件」が複数が複数あるように読めるんだけど、どっちだ?
つか、phpマニュアルくらい読もうや
http://php.s3.to/man/function.ereg.html
bool ereg ( string pattern, string string, array [regs] )
どっちにしろ、stringってなってるから配列は無理な事はわかるだろ。
んで、検索条件が複数という事であれば、正規表現にはorに該当する表現がある。
(abc|zyx)
0236nobodyさん
2005/09/07(水) 00:51:54ID:???「検索条件」が複数あります。分かり難くてすいません。
csvのデータファイルから条件に合致する項目を抜き出すプログラムを
書いているんですが、その条件が頻繁に変わる可能性があるので、
できれば外部ファイルに、
$word = array('abc','def',・・・)といった形で持っていたかったんです。
>マニュアル
以後気を付けます。
0237nobodyさん
2005/09/07(水) 01:03:36ID:???0238nobodyさん
2005/09/07(水) 01:13:03ID:???0239nobodyさん
2005/09/07(水) 02:11:16ID:???嘘つきJava厨が発生したので貼っておきますね。
0240nobodyさん
2005/09/07(水) 02:48:42ID:???0241nobodyさん
2005/09/07(水) 02:59:28ID:???言葉は悪いけどその通りな部分も多少なり。
でも、言及してるASP厨、PHP厨とやらにオブジェクト指向を理解してない人が多いのは確かだろうけど
理解してないことが致命的になるような言語でもないしなぁ、別にいいじゃんって気も。
というか、WebProg上がりじゃないマ板の人間がそんなすげぇかって言うと
似たようなのがゴロゴロしてるような気がするけど(自分はマ板住人でWebProgも覗きに来る)。
0242nobodyさん
2005/09/07(水) 03:10:16ID:???0243nobodyさん
2005/09/07(水) 03:17:33ID:???もうWebサービスなんてやれないじゃないか!って思ってるのは漏れだけ?
100%のセキュリティなんて存在しないし、限りなくそれに近づけようとすれば莫大なコストがかかる。
それで何か情報が漏れでもしたら運営者が叩かれる。
あー、やってらんねぇ。
せっかくの革新チャンスなのに、つまらない世の中になってきたもんだ。
0244nobodyさん
2005/09/07(水) 03:24:12ID:???というか、個人情報保護法で困るようなセキュリティポリシだとそれはそれで不味い気が。
0245nobodyさん
2005/09/07(水) 03:50:55ID:???>個人情報保護法で困るようなセキュリティポリシだとそれはそれで不味い
そういうことを言ってるのではなくて。
どんな立派なポリシーを持とうが、どんなに気をつけてようが、被害に遭うときは遭う。
そうなったときの、運営者(開発者)が負わなければならない責任が大きすぎるのが問題。
それだけのリスクに見合うだけのコストを料金に上乗せできればいいが、そうもいかない。
そもそも、世間的に高セキュリティが簡単に構築できるもんだと思われてるんのが難点。
悪意ある犯罪者のせいで個人情報漏洩でもしたら、「セキュリティ対策をしてないほうが悪い」と
いうのが当たり前のような風潮になってるのが恐ろしい。
0246nobodyさん
2005/09/07(水) 07:02:55ID:???なにがあったか知らんが茶でも飲め。
0247nobodyさん
2005/09/07(水) 07:44:52ID:???画像ファイルのある位置が文字ファイルで表示されるだけで画像を表示させることが出来ません。
例えばCドライブにある『Sunset.jpg』というファイルを送信しようとしても
確認画面では『C:\Sunset.jpg』と文章で表示されるだけで画像が表示されません。
画像をうまく送信できるようにするにはどうしたらよいのでしょうか。
<!-- 送信画面 db_form.php -->
<FORM enctype="./image" name="pl_info" action="./db_pre.php" method="post">
<INPUT TYPE="hidden" NAME="_template_confirm" VALUE="./db_pre.php">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
<input type="file" id="upfile" name="upfile">
<INPUT type="button" name="SUBMITBUTTON" value="確認画面へ" onClick="NEXT()"><
</FORM>
<!-- 確認画面 db_pre.php -->
<?=$_POST['upfile']?>
<form name="pl_info" action="./db_insert.php" method="post">
<INPUT TYPE="hidden" NAME="_template_confirm" VALUE="./db_insert.php">
<INPUT type="submit" name="INSERT_DB" value="登録する" onClick="next()">
</form>
0248nobodyさん
2005/09/07(水) 07:54:25ID:???どこからそんな無茶苦茶なソース(HTML、PHP共に)を
引っ張ってきたのか知らないけど、
phpのマニュアルを読んでごらん。
ttp://www.php.net/manual/ja/features.file-upload.php
0249nobodyさん
2005/09/07(水) 09:50:03ID:npPFuG98FORMからの変数受け渡しについて、
#test1.php
<form action="test2.php" method="POST">
<input type="text" name="Test" size="10">
<input type="submit" value="送信">
</form>
#test2.php
<? print "Test ==> " . $Test; ?> →何も表示されない
<? print "Test ==> " . $_POST['Test']; ?> →入力された値が表示される
test2.php内で、上の$Testのように書けばOKとどこかで見たのですが、
下の$_POST['Test']としないとダメっぽいのはなぜでしょう。
勝手に上がPHP3X、下がPHP4以降用、とか考えているのですが。(今の環境は5.0.4
さらに、この$_POSTを使うとして、checkboxから1つまたは複数の値が渡される場合は、
普通に配列使って受け渡しできます?
$_POST['chk[$i]'] とかでループ、表示するのかなぁと。
初歩的なことですが、どなたかお願いします。
0250nobodyさん
2005/09/07(水) 10:18:46ID:???変数の受け取り
<? print "Test ==> " . $Test; ?> → PHP4.1以前の書式
<? print "Test ==> " . $_POST['Test']; ?> → PHP4.2以降の書式
4.2以降でも、php.iniのregister_globalsをOnに設定すれば使用可能だけど、セキュリティ面を
考慮して下記のように変更されたので、特別な理由がなければ下の書式を使用すべし。
要素の配列
HTML側はname属性に [] を付ける
<input type='checkbox' name='chk[]' value='1'>
<input type='checkbox' name='chk[]' value='2'>
PHP側は下記のような形式で受け取る
for ($i = 0; $i < count($_POST['chk']); $i++)
echo $_POST['chk'][$i]
[$i]は直接の値(0や1)でも良い。
こんなのでいい?
0251nobodyさん
2005/09/07(水) 10:30:18ID:???確認画面で
<?php var_dump($_FILES); ?>
または
<?php print_r($_FILES); ?>
をやってみな。
ついでに$_POSTもやってみたほうがよいかも。
あと、送信画面のフォームタグを
<FORM enctype="multipart/form-data" (ry
に直す。
0252249
2005/09/07(水) 10:41:32ID:npPFuG98うわぁ、完璧っす。(TдT) アリガトウ
for ($i = 0; $i < count($_POST['chk']); $i++)
echo $_POST['chk'][$i]
これで配列MAXまでループ・表示すね。
がんばります〜
0254nobodyさん
2005/09/07(水) 11:06:48ID:???Apache : 1.3.33
の環境でエラーが出ます
if(hoge){
//変数代入処理がちょこっと
header("Location:http://hoge.hoge");
break; <-何故かココでエラー
}
原因は何が考えられますか?
ヒント下さい
0255254
2005/09/07(水) 11:12:08ID:pxwqcsImFatal error: Cannot break/continue 1 level in /hoge〜
ようは駄目なのか・・・
0256nobodyさん
2005/09/07(水) 11:20:16ID:???breakで何をしたいんだ?breakってforループとかswitchの中で使うんだが。。。
単にそこで処理を抜けたいのならexitだと思う。
0257nobodyさん
2005/09/07(水) 11:36:30ID:wV2Se0T2Apache: 1.3.31
OS: Win XP
の環境で、変数つきでincludeできません。
#test.php
<?php
print $_GET['name'];
?>
#test2.php
<a href="test10.php?name=aaa">アンカーから呼び出し</a>
<?php include("test10.php?name=aaa"); ?>
とすると、アンカーから呼び出すとaaaがprintされるのですが
includeすると
Warning: main(test10.php?name=aaa): failed to open stream: No such file or directory in c:\apache\users\xxx\home\test2.php on line 10
とエラーが出ます。
原因としてなにを疑えばいいのでしょうか?
0259nobodyさん
2005/09/07(水) 11:53:42ID:???includeはそのように使用するものではありません
無理矢理やるとすると、以下のようになります
#test.php
<?php
print $name;
?>
#test2.php
<?php
$name = $_GET['name'];
include("test.php");
?>
>原因としてなにを疑えばいいのでしょうか?
includeに対する貴殿の知識不足が原因です
0260nobodyさん
2005/09/07(水) 11:57:26ID:???コンテンツが50で今後増え続けるので、更新の為にもフレームチックな格好をとりたいのですが
ttp://www.hakusi.com/up/src/up3497.jpg
こんな感じで呼び出すにはどういう風にすれば良いでしょうか。
phpにすれば良いと言われたのですが、そんな高等な技術を持ち合わせていないのでお願いします。
0263260
2005/09/07(水) 12:21:31ID:???鯖がせっかくSSI、PHPに対応しているので出来ればやってみたいんですが、触った事が無いので・・・
0264nobodyさん
2005/09/07(水) 12:34:23ID:???JavaScript使うならDreamWeaver使ったほうが楽じゃね?
ブラウザによってまだ挙動がことなることもあり
コードが煩雑になりやすいから
PHPなどのサーバサイド言語つかったほうが楽と言えば楽だけど。
0265nobodyさん
2005/09/07(水) 12:34:59ID:???俺もPHPに触ったこと何て無いぞ。
>>257
include てのは外部ファイルを読み込み時に使うモンだ。
■ このスレッドは過去ログ倉庫に格納されています