【PHP】下らねぇ質問はここに書き込みやがれ 44
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/04/12(木) 16:54:47ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 43
http://pc11.2ch.net/test/read.cgi/php/1175368910/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0176nobodyさん
2007/04/15(日) 22:37:03ID:y9EClMBIhttp://からではなくE:〜での記述で実行できました。
ですが、URLでの指定ではダメなのでしょうか・・・?
0179nobodyさん
2007/04/15(日) 22:44:10ID:y9EClMBI0181nobodyさん
2007/04/15(日) 22:51:53ID:???0182nobodyさん
2007/04/15(日) 22:53:16ID:???PHPAPI php_stream_wrapper
if (wrapper && wrapper->is_url && !PG(allow_url_fopen)) {
if (options & REPORT_ERRORS)
php_error_docref(NULL TSRMLS_CC, E_WARNING, "URL file-access is disabled in the server configuration");
return NULL;
}
要は、渡しているパラメータ(wrapper)やPHPそのものの設定(allow_url_fopen)によるってこった。
0183nobodyさん
2007/04/15(日) 23:08:44ID:???0184nobodyさん
2007/04/15(日) 23:12:58ID:???<form method=post action=hogehoge>
<input type=hidden name=hoge value=hoge>
<input type=submit value=go>
</form>
このpostで送信されるデータを連続投票したい場合どうしたらいいでしょうか?
知識の向上として知っておきたいのですが
一応これを実行してpostで送信すると投票先のスクリプトに移動して
再度戻ってまたgoをクリックしないと連続投票できませんよね?
これを1回実行するだけで100回POSTのデータを送信することは可能でしょうか?
0186184
2007/04/15(日) 23:17:46ID:P44SZArS>>185
じゃ、よろしく
0187nobodyさん
2007/04/15(日) 23:19:46ID:???0188nobodyさん
2007/04/15(日) 23:20:22ID:???どこに向けて打つのかしらないが対策されてるから無駄
0189184
2007/04/15(日) 23:21:24ID:P44SZArS0190nobodyさん
2007/04/15(日) 23:22:57ID:???0191nobodyさん
2007/04/15(日) 23:25:17ID:???0192184
2007/04/15(日) 23:26:26ID:P44SZArS100%言われると思ったけど、知識として知ってるほうが対策もできるので知りたいだけだから。
100%言われると思ったから書いたはずなんだけどな…
まあそれはいいとして、どうやってforで回すのか知りたい。
わざわざID出したので、よろしく。
0193nobodyさん
2007/04/15(日) 23:30:02ID:???処理;
}
0194nobodyさん
2007/04/15(日) 23:31:22ID:???0195nobodyさん
2007/04/15(日) 23:37:35ID:???例外クラスの getTrace() のようなものです
スコープ内で処理に使用する変数を、$var[] とった配列にまとめておき、
print_r すれば良いだけかも知れませんが、あれば教えてください
0196184
2007/04/15(日) 23:38:44ID:P44SZArSもう1度言いますよ?
その”処理”の部分を聞いてます
さあ説明よろしくwww
0197nobodyさん
2007/04/15(日) 23:42:39ID:???サーバーサイドは1回の送信につき1回のリクエストだから
100回送信すればいいと思う
ここまで言えばわかるだろ
0198184
2007/04/15(日) 23:47:09ID:???わからないならわかりませんって言えw
このカスどもが
0199184
2007/04/15(日) 23:48:10ID:???↑
こいつテラワロスwww
0201nobodyさん
2007/04/15(日) 23:59:33ID:???0205nobodyさん
2007/04/16(月) 02:55:10ID:???0206nobodyさん
2007/04/16(月) 03:31:41ID:???0207nobodyさん
2007/04/16(月) 11:36:16ID:???0209nobodyさん
2007/04/16(月) 12:29:42ID:???0210虚弱PHP
2007/04/16(月) 12:52:01ID:???0211nobodyさん
2007/04/16(月) 13:01:04ID:???0212nobodyさん
2007/04/16(月) 13:57:58ID:???DB板で聞くのが正解かもしれませんが、お願いしますm(_ _)m
0213nobodyさん
2007/04/16(月) 14:10:41ID:???複数のテーブルに書きに行くのならtransactionをかけたほうがいいかもしれない。
0214nobodyさん
2007/04/16(月) 16:35:09ID:???セキュリティ面とか、新しいプログラム使いまわせるとかではなく
単一のphp内において、もっと身近な部分で言うと…。
0217nobodyさん
2007/04/16(月) 16:53:27ID:???片方では、httpsプロトコルで、echo $_SERVER['HTTPS']; とやると、onと表示されて、
SSLが有効なのがわかるのですが、
もう片方は、ブラウザに鍵マークはつくものの何も返って来ません。
$_SERVER['HTTPS']の説明をみると、
「スクリプトが HTTPS プロトコルを通じて実行されている場合に 空でない値が設定されます。 」
とあるので、正常に機能していないということでしょうか?
それともサーバ側の設定で、何も返さないようにしているとかそういうことでしょうか?
0218217
2007/04/16(月) 16:54:21ID:N9diKUei0219nobodyさん
2007/04/16(月) 16:56:33ID:???WEBサーバーがSSLをサポートしていると言う事と
PHPがSSLをサポートしていると言う事じゃ全く持って話が違う。
後者はWEBではサポートしているけどPHPじゃサポートしてないんでしょ
0220nobodyさん
2007/04/16(月) 17:03:07ID:???0221217
2007/04/16(月) 17:03:26ID:N9diKUeiなるほど。そういうことですか。
ではサーバのPHPをかえてもらわないとダメになるわけですね。
MySQL+PHPを使ったログイン機能があるサイトを作ろうと思っているのですが、
そのログインページ(PHPでできた)でSSLをつかいたいと思ったのですが、
PHPでSSLをサポートしなくても、Webでサポートしていれば、
入力された情報はちゃんと暗号化してくれるのでしょうか?
0222nobodyさん
2007/04/16(月) 17:24:09ID:???当たり前だけどしてくれるよ
PHPでSSLを使うって事はプログラムで内部でhttpsなURLに対して
リクエストを送る事が可能になったりするってことだ。
0223nobodyさん
2007/04/16(月) 17:25:38ID:dwzdMgji「Windowu Binaries」の「PHP 5.2.1 zip package」をクリックすると
タイムアウトしてしまいます。
みなさんのところからはダウンロードできますか?
0224nobodyさん
2007/04/16(月) 17:27:23ID:???時間帯ずらしてダウンロードをためしてみたらいいよ
0225217
2007/04/16(月) 17:28:07ID:N9diKUeiひとつ勉強になりました。これで一安心です。
早速プログラムを組みたいと思います。
どうもありがとうございました。
0226nobodyさん
2007/04/16(月) 17:51:24ID:???なんだかクラスを使った場合と使わない場合がうまく想像できないのです
0227nobodyさん
2007/04/16(月) 18:00:38ID:???0229nobodyさん
2007/04/16(月) 18:21:04ID:???0230nobodyさん
2007/04/16(月) 18:26:19ID:???0231nobodyさん
2007/04/16(月) 18:29:11ID:???0232nobodyさん
2007/04/16(月) 18:35:08ID:???日本語に関しては
0233nobodyさん
2007/04/16(月) 18:40:47ID:???0234nobodyさん
2007/04/16(月) 19:10:27ID:???0236nobodyさん
2007/04/16(月) 19:51:10ID:???別のサーバからFTPでアップされたjpg画像を
上書き保存されない様にmv、cpとfopenはパーミッションの問題でエラーになりました。
そこで、上記コマンド実行前にchmodを入れてみましたがやはりパーミッションの問題が…。
file_get_contentsはPHPのバージョンの問題で使えませんでした。
要は、常に上書き保存されていってしまう画像をリネームして保存しておきたいのですが
上記以外の手法でパーミッションに捕われないような手法はありますでしょうか?
0237236
2007/04/16(月) 19:57:10ID:???0238236
2007/04/16(月) 20:29:36ID:Fo/N831Cちょw誰だよwww
解決してネーよw
sageってメル欄だとID出ないんね。
メル欄空でもsagaるんかな?
0240nobodyさん
2007/04/16(月) 20:53:17ID:???それじゃ無理だろうね。FTPの方でパーミッションのread許可の対応するしかない。
FTPのユーザもあなたなら、簡単だけど。
0242nobodyさん
2007/04/16(月) 21:45:30ID:???0243nobodyさん
2007/04/16(月) 21:55:35ID:ozAmxKpX0245nobodyさん
2007/04/16(月) 22:43:26ID:???東MAX最近みないね、
0246nobodyさん
2007/04/17(火) 01:52:56ID:wSkpW1Usfunction mobile_agent(){
$agent = $_SERVER['HTTP_USER_AGENT'];
switch ($agent){
case preg_match("/DoCoMo/", $agent):
$agent = "docomo";
break;
case preg_match("/Vodafone/", $agent) || preg_match("/SoftBank/", $agent):
$agent = "softbank";
break;
case preg_match("/KDDI/", $agent):
$agent = "au";
break;
case preg_match("/DDIPOCKET/", $agent) || preg_match("/WILLCOM/", $agent):
$agent = "willcom";
break;
default:
$agent = FALSE;
}
return $agent;
}
auでアクセスすると返り値が「docomo」になります。
switch内でのpreg_matchはダメなのでしょうか?
0247nobodyさん
2007/04/17(火) 02:07:43ID:???0249nobodyさん
2007/04/17(火) 03:26:53ID:???0250nobodyさん
2007/04/17(火) 05:38:28ID:???0251nobodyさん
2007/04/17(火) 06:42:52ID:???専用のスレがあるよ
エンコード文字列だけのスレ
http://pc11.2ch.net/test/read.cgi/php/1065258181/
0252nobodyさん
2007/04/17(火) 08:52:36ID:???preg_matchの返り値って知ってる? 0か1がかえってくる。
ということは
case 0:
$agent = "docomo";
break;
とかやってくることになる。
switch使うんじゃなくてelseif使うのが良いと思われる。
0254nobodyさん
2007/04/17(火) 11:24:13ID:cz59188Tヒアドキュメント内でSIDを付加する方法はありますでしょうか?
0255254
2007/04/17(火) 11:28:14ID:???0256nobodyさん
2007/04/17(火) 11:40:27ID:???0257nobodyさん
2007/04/17(火) 11:46:09ID:cz59188T( ^ω^)お?
気を取り直して、
ヒアドキュメントでHTML部分を出力するのではなく、
<?php ?>と処理後に直接HTMLを書き、↓のように埋め込むか、
<a href="nextpage.php?<?php echo strip_tags(SID)?>">リンク</a>
もしくは、.htaccessが利用できるなら↓がスマートなんでしょうか。
php_flag session.use_trans_sid On
他にはどのような方法がありますでしょうか?御教示ありましたら宜しくお願いします。
0258nobodyさん
2007/04/17(火) 12:16:24ID:wSkpW1Usいや、位置情報取得のフォームを出力するんで、
携帯のブラウザによっても変化するからUAじゃないとダメっす
0259nobodyさん
2007/04/17(火) 12:33:54ID:IrxiH2Fq公開すると言うのが一般的だと思うのですが、
やっぱりデザインとPHPの分岐・分類って限界がありますよね?
Smartyとか使ってもやっぱり、デザイン用のHTMLにソースを埋め込むわけで。
かといってガチガチのプログラムにすると、後からデザイン面を
修正する時にしずらいし。(CSSを使っても限界あるし)
自分は各パーツをclass分けしてて、「登録内容一覧」とか表示する時は
classを使って必要情報を抽出し、whileで出力してます。
くだ質ですが、作りながら思ったので質問してみました。
0260虚弱PHP
2007/04/17(火) 13:05:48ID:???パーツ毎にきちんとテンプレートを分割するだけでも、
デザインとロジックはかなり分離できるよ。
> デザイン用のHTMLにソースを埋め込むわけで。
これは、人によってかなり差が出るところだね。
> デザイン用のHTMLにPHPのコードを埋め込んで
と似たような状態になるなら、
テンプレートエンジンを有効に使えてないと思う。
0261259
2007/04/17(火) 13:08:37ID:???テンプレートは分けてますよ。ただ、例えばSmartyの場合でも
<table>
{foreach item=list from=$list}
<tr>
<td>{$list.name}</td>
<td>{$list.date};</td>
{/foreach}
</tr>
</table>
みたいに専用のコードがテンプレートファイルにはいるので、
結局分離出来ていないような気がするんです。
Smartyを知らない人は、SmartyのコードもPHPのコードも変わらないだろうし。
0262nobodyさん
2007/04/17(火) 13:21:28ID:???それはない
0264nobodyさん
2007/04/17(火) 13:27:25ID:???それを突き詰めちゃうと完全なHTMLにするしかなくて
完全にHTMLのままでそれをパースして
コードに置き換えてくれるテンプレートエンジンもあるにはあるけど
結局それだとどこがコードに置き換わるのか
一目ではわかりづらくてそれはそれでやりづらいと個人的には思うよ
最小限のループと出力に留めるのが実際の落としどころだと思う
0265259
2007/04/17(火) 13:29:42ID:???結構知らない人多いと思いますが・・。
>>264
そうですね。自分も基本的には、パーツ毎に分けてて
includeして読み込んでいるのですが、最近それすら良いのかどうか
よくわからなくなってきました。分離するという意味で。
ただ、おっしゃるようにやっぱり限界はありますよね。
どの程度分離するか考えながらコーティングします。
アドバイスありがとうございました。
0266nobodyさん
2007/04/17(火) 13:41:55ID:???PHPで書かれたテンプレートエンジンって屋上屋を架すみたいな印象はあるね。
0267nobodyさん
2007/04/17(火) 14:06:31ID:ZbMg7dcR別にCRONが使えるサーバを契約しました。
CRONで、任意のスクリプトを任意の時間で実行することができるのは知っていて実際アクセス解析などのログ格納などに
使っているのですが、CRONから起動される(シェルスクリプトから起動される)PHPファイルの書き方で、あるページのURLをクリックしたときと同等の効果を期待することができる
スクリプトの書き方はどのようにすればよろしいでしょうか?
今やっていることは、
CRON起動→シェルスクリプトの実行→PHPファイルの実行
という流れです。
そこで、最後のPHPファイルに
<META HTTP-EQUIV="refresh" content="0;URL=http://www.example.com/test.php?param1=0¶m2=1¶m3=1¶m4=0">
という記述をしています。
流れの最後のPHPファイルや、http://www.example.com/test.php?param1=0¶m2=1¶m3=1¶m4=0
に直接ブラウザからアクセスすると、きちんと起動してくれてるのですが
CRONからの起動はうまくいっていない模様です。
0268nobodyさん
2007/04/17(火) 14:09:35ID:ZbMg7dcRhttp://www.example.com/test.php?param1=0¶m2=1¶m3=1¶m4=0 の部分は
http://www.example.com/test.php?param1=0&param2=1&param3=1&param4=0 です。
よろしくお願いします。
0269虚弱PHP
2007/04/17(火) 14:14:07ID:???> 結局分離出来ていないような気がするんです。
そういうのは「分離できてる」って表現するのが一般的だと思う。
原理主義に陥らないのが一番。
使ったことないから分からないけど、
デザイナが良く使ってるDreamweaverって
Smarty対応してるんじゃなかったっけ?
>>265
↓こんな考え方もあるみたいね。
http://kaede.to/%7Ecanada/doc/mvc2-framework
0271nobodyさん
2007/04/17(火) 15:34:18ID:???ラッパー関数でも作らないとダメ?
0272nobodyさん
2007/04/17(火) 15:47:30ID:???そら<meta>タグを出力しても動かないだろう
出力された<meta>タグを解釈して、動かすのはクライアント側の機能なんだから
PHPの設定にもよるけど、これでいけるだろう
別にreadfileでなくてもいいけど
readfile("http://www.example.com/test.php?param1=0¶m2=1¶m3=1");
0274nobodyさん
2007/04/17(火) 19:16:53ID:teAF4U4F$temp = array('a','b','c');
echo $temp[2]; // OK
echo array('a','b','c')[2]; // NG
3行目のNGですが、1行で出力するにはどうすればいいでしょうか?
■ このスレッドは過去ログ倉庫に格納されています