【PHP】下らねぇ質問はここに書き込みやがれ 65
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/02/24(日) 21:03:17ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 64
http://pc11.2ch.net/test/read.cgi/php/1202536271/
◆質問する時の注意
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0491nobodyさん
2008/03/07(金) 05:13:05ID:???コマンドって・・・
PHPは入力などを受け取ってサーバ側で処理をしてブラウザに結果を返すというだけのもの。
現実的なのはPHPでmetaタグのrefreshコード(HTMLの)を出力するとか。
F5と同じ働きをするわけではないが、結果をリアルタイムに取得して表示することが可能なAjaxという技法を使うか。
チャットとかでリアルタイムに表示したいようなものを作るならAjaxが定番。
ページ遷移が行われるmeta refreshによる自動更新はかえって迷惑なのでやめたほうがいい。
0492nobodyさん
2008/03/07(金) 06:48:34ID:9kEaF3pZ例)1.2.3.4.5
↓
12345
よろしくお願いいたします。
0495nobodyさん
2008/03/07(金) 07:06:26ID:???0496492
2008/03/07(金) 08:20:19ID:???レスありがとうございました。
実際はいくつかの文字変化が必要でしたので次のようにしてみました。
みなさんありがとうございました。
$moji0 = "1.2,3.4,5 6 7" ;
$moji1 = array ("/\./" , "/,/" , "/./" , "/,/", "/ /", "/ /") ;
$moji2 = array ("", "", "", "", "", "") ;
echo preg_replace ($moji1, $moji2, $moji0) ;
0497nobodyさん
2008/03/07(金) 14:31:43ID:l69x+LwZ作る方法を解説したサイトはありますか?
C++の基礎がやっと分かる程度ですが、
Smartyのpluginのような感じで簡単に追加できるならやってみたいと思います。
0498nobodyさん
2008/03/07(金) 14:47:17ID:???function 関数名(仮引数)
例えばaとbを足したものを返す関数は
function sum($a, $b) {
return $a + $b;
}
型ありの言語だと
int sum(int a, int b) {
return a + b;
}
とかになるのかな
http://www.php.net/manual/ja/language.functions.php
0499nobodyさん
2008/03/07(金) 15:38:41ID:???解読願います。
Service Temporarily Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
--------------------------------------------------------------------------------
Apache/1.3.34 Server at www.hashimoto-toru.com Port 80
0500nobodyさん
2008/03/07(金) 15:45:32ID:???アクセス集中時で繋がらないときのメッセージ
通常時間をおけば解消する
っていうかスレ違いだしそんくらいググレ
0501nobodyさん
2008/03/07(金) 15:47:29ID:???つ http://academy6.2ch.net/english/
0502nobodyさん
2008/03/07(金) 15:50:14ID:9kEaF3pZなんて読むのでしょう。シンフォニーだとスペルがちがいますし。
またPHPのフレームワークにもいくつかあるようですが、主流というのは
あるのでしょうか。よろしくお願いいたします。
0505nobodyさん
2008/03/07(金) 16:14:58ID:???橋本さんの所の人なんですか?
公人の場合、こういう場所に書くとき、
色んな事に気をつけたほうがいいと思いますけどね。
余計なお世話ですけど
0506nobodyさん
2008/03/07(金) 16:35:51ID:???政治家のサイトの更新するようなやつがそんな質問するわけないw
0507nobodyさん
2008/03/07(金) 16:40:13ID:???0509nobodyさん
2008/03/07(金) 16:51:40ID:???Symphonyだと音楽のほうがぱっと思い浮かぶから
Symfonyは単語として存在しない=PHPのフレームワークをさす固有名詞になれる
この名前がそういう理由でつけられたかはわからないが
そういう理由で単語にないものをつけるのはよくあること
商標登録(だっけか?)とかそういうのするときにも使えるしな
日本ではCakePHP Symfonyが特に人気
PHPのフレームワークはソースごとサーバにアップロードすれば動くものなので
人気かどうかを考えるより自分にあったものを使えばよろしい
個人的には和訳ドキュメント量が豊富なのを使うようにしてるけど
0510nobodyさん
2008/03/07(金) 17:07:00ID:???0511nobodyさん
2008/03/07(金) 17:12:20ID:???くだらねぇ事だけど、symfonyの先頭は小文字にしような。
0512502
2008/03/07(金) 17:13:51ID:???>日本ではCakePHP Symfonyが特に人気
CakePHPも調べてみます。ありがとうございます。
0513nobodyさん
2008/03/07(金) 18:39:08ID:ysjWWEjVheader("Content-Type: audio/mpeg");
$hoge = file('hoge.mp3');
$data = "";
foreach($hoge as $hogehoge) {
$data .= $hogehoge;
}
echo $hoge;
これで
「http://www.hogehoge.com/hoge.php?hoge=hoge1.mp3」
こんなことできるかなーって思ったんだが
最初の3秒ぐらいしか再生されず。
何故?
0514nobodyさん
2008/03/07(金) 18:42:20ID:ysjWWEjV最後は
echo $data です。
0515nobodyさん
2008/03/07(金) 18:52:44ID:ysjWWEjVあ、MP3読み込んでるのにmpegをheaderで指定しているからか。
ありがとうございました。
0516nobodyさん
2008/03/07(金) 18:57:31ID:???0517nobodyさん
2008/03/07(金) 18:59:10ID:???http://jp2.php.net/manual/ja/function.readfile.php
0518nobodyさん
2008/03/07(金) 19:05:38ID:???ありがとうございました。
0519nobodyさん
2008/03/07(金) 19:15:56ID:???こんな偉大な言語はない。
但し、PGになるハズが無かったPGを存在たらしめた副作用も意識しなければいけない。
0520nobodyさん
2008/03/07(金) 19:28:21ID:???0522nobodyさん
2008/03/07(金) 19:30:03ID:???↓を追加したら最初のコードで問題無く聴けたよ。
header("Content-Length: ".filesize('hoge.mp3'));
しかしまあ>>513のコードはなんか気味悪いな。
改行しないfile関数があってもよさそうだね・・。
0523nobodyさん
2008/03/07(金) 19:30:53ID:???0524nobodyさん
2008/03/07(金) 20:41:02ID:ysjWWEjVナヌ、そんなに気味悪いのか
http://nyx.pu1.net/function/filesystem/file.html
この辺参考にしたんですがね。
>>522
http://www.phppro.jp/news/75
ここにある「Warning: filesize(): stat failed for dummyfile in ... 」
このエラーが出ました。
どうやら容量が大きいらしく使えませんでした。
とりあえずやりたいことはできたので解決です。
ありがとうございます。
0525nobodyさん
2008/03/07(金) 22:11:52ID:d1NS98q0PHPで書いたスクリプトを定時に作動させたいのですが、
それってシェルスクリプトというのを書けばいいのでしょうか
それ以外に簡単な方法はないでしょうか
ちなみに扱える言語はPHPだけです
0526nobodyさん
2008/03/07(金) 22:24:49ID:???0527nobodyさん
2008/03/07(金) 22:26:54ID:l69x+LwZUNIX厨は市ね。
0528nobodyさん
2008/03/07(金) 22:28:38ID:???私が借りてるサーバーはcronも使えるようです
cronも全くわからないのでやり方調べてきます
ありがとうございました
0529nobodyさん
2008/03/07(金) 22:32:04ID:???0531nobodyさん
2008/03/07(金) 22:54:58ID:???0532nobodyさん
2008/03/07(金) 23:33:33ID:???情報弱者乙
http://www.kalab.com/freeware/cron/cron.htm
0533489です
2008/03/08(土) 00:16:04ID:hakb0/u4foreach($_POST as $k => $v){
// 「magic_quotes_gpc = On」のときはエスケープ解除
if (get_magic_quotes_gpc()) {
$v = stripslashes($v);
}
$v = htmlspecialchars($v);
$$k = $v;
}
これでたとえば、html上のフォームのデータ
がすべて受け渡しができる意味がわからないのですが
教えてください。
0535489です
2008/03/08(土) 00:38:44ID:hakb0/u4magic_quotes_gpc = Onのときはエスケープ解除って
どういう意味?
0536nobodyさん
2008/03/08(土) 01:41:07ID:???0537nobodyさん
2008/03/08(土) 02:17:31ID:l7Ped3Na参照ボタンを押してダイアログからファイルを選択し開くボタンを押すと
同時にサーバに送る方法はありませんか?
0539nobodyさん
2008/03/08(土) 02:36:56ID:???0540nobodyさん
2008/03/08(土) 02:41:08ID:l7Ped3Naどっかで見た気がしたんだけどな。
0541nobodyさん
2008/03/08(土) 02:52:35ID:???PHPだけじゃできないが可能でしょ。
問題は自分で使うならいいが、公開する場合そんなハタ迷惑な実装はやめていただきたいものだな。
0542nobodyさん
2008/03/08(土) 03:01:01ID:???前に>>537と似た内容の要求仕様があったんで、そっくりに作ったFLASHで勘弁してもらったことがある。
0543nobodyさん
2008/03/08(土) 03:09:07ID:???0544nobodyさん
2008/03/08(土) 04:44:40ID:???参照は出来た筈なので
値が変わればpostしてやるjavascriptを動かせば良い
gmailとかでファイル添付しようとしたら自動でアップされるので
それを参考にすると良いんじゃない(JS側だけ)
0545nobodyさん
2008/03/08(土) 11:59:45ID:GVJUSgTCxamppをインストールしてphpmyadminにアクセスしようとしているのですが、
エラーが出てしまい、使えなくて困っています。
やったこと:
・http://www.apachefriends.org/jp/xampp-windows.html から xampp-win32-1.6.6a-installer.exe をダウンロード・インストール
・http://localhost/ にアクセスして「日本語」をクリック
・http://localhost/xampp/ の左の一覧から「phpMyAdmin」をクリック
→下記のようなエラーメッセージが表示される。
--- ここから
phpMyAdmin 2.11.4 へようこそ
MySQL サーバに接続しようとしましたが拒否されました。config.inc.php のホスト、ユーザ名、パスワードが MySQL サーバの管理者から与えられた情報と一致するか確認してください
エラー
MySQLのメッセージ:
接続できません: 設定が無効です
--- ここまで
・config.inc.phpを色々いじった
・$cfg['Servers'][$i]['user'] = 'root'; の root を root@localhost とか root@127.0.0.1 とか変えてみたり
・コマンドラインからmysqlに入って、rootのパスワードを空ではなく適当な文字列にしてみたり
(それに伴い、$cfg['Servers'][$i]['password'] = '';は変更しています)
→メッセージに変わりなし
xamppは、インストールするだけで、とくに設定変更なしでphpmyadminも使えたと記憶していたのですが。。。
スレ違いであれば誘導お願いします。
0546nobodyさん
2008/03/08(土) 12:02:46ID:???0547nobodyさん
2008/03/08(土) 14:29:42ID:l7Ped3Naご意見どうも。やらねばならない事情がある。
>>544
gmailでやってるのか。参考にしてみます。thx
0548nobodyさん
2008/03/08(土) 14:35:55ID:???<input type="file" onChange="alert('onChange')"/>
0549nobodyさん
2008/03/08(土) 14:41:15ID:???クリックしたら+1されるスクリプトをテストで組んでサーバーに上げて試してみたら
どうしても「+2」ずつとかされて「あれ?おかしいな?」と思っていたら、なぜかグーグルのクローラーに拾われてた。
俺がクリックした瞬間に来るから
おかげでクリックする度に「+1」だったり「+3」だったり明らかに挙動がおかしい・・・
とゆうかサーバーにファイルをあげてから10秒ぐらいでクローラーが巡回しにきたんだが、
一体何なんだ・・・・こえーな・・・
0550nobodyさん
2008/03/08(土) 14:43:01ID:i79H3oERアクセス解析.phpを、サイトのトップに<iframe>で表示させて情報を取得させています。
しかしこれだとそのサイトのトップのリファラーしか得られません。
トップにアクセスした時点のリファラーって取得できないのでしょうか?
0555nobodyさん
2008/03/08(土) 14:54:19ID:???http://hoge.net/index.php?mode=hoge
「↑のURLにアクセスしたら、ログのデータに+1する」っていう感じの10行程度のプログラムだぜ?
>>553
「+1」したPCのログに「66.249.70.232(グーグルのクローラー)」が残ってた。
無論自分だけしか知りえないサーバーで、どこからもリンクは貼られていない。
何回も何回もしつこくきやがる・・・・。何か気味悪い・・・
0556nobodyさん
2008/03/08(土) 14:54:33ID:???0559nobodyさん
2008/03/08(土) 15:05:02ID:???陰謀論というかちゃんとログが残るように作ってるから、そいつがアクセスしているのは事実なんだけどな。
まぁ、metaタグでクローラーの巡回を禁止にすれば済む話ではあるが、ただちょっと、
誰も知りえない隔離された場所に一人でいたつもりが、予想外の訪問者があってビビッタだけ
0560nobodyさん
2008/03/08(土) 15:22:11ID:???http://www.google.co.jp/support/webmasters/bin/answer.py?answer=33569&topic=8843
>Googlebot はどのくらいの頻度でウェブ ページにアクセスしますか。
>
>Googlebot は、平均して数秒に 1 回を超える頻度でサイトにアクセスすることはありません。
>ただし、ネットワークの遅延などにより、短期間の間にアクセス頻度がわずかに増えるように
>見える場合があります。
0561550
2008/03/08(土) 16:11:04ID:i79H3oERhttp://wiki.makotokw.com/index.php?Web%2FCGI%2F%A5%A2%A5%AF%A5%BB%A5%B9%B2%F2%C0%CF#k6cd7bc6
CGIの場合について書かれていて、PHPではどうすればいいかわかりません。
エッチな方、教えて下さい。
0562nobodyさん
2008/03/08(土) 16:19:52ID:???JSでhoge.phpに
JS側
if (document.referrer == parent.frames.location) {
refer = top.document.referrer;
} else { refer = document.referrer; }
refer = escape(refer);
document.write('<img src="hoge.php?referer=' + refer +'">');
php側
<?php
$ret = null;
if (isset($_GET['referer'])) {
$ref = $_GET['referer'];
}
ここらへんで$ref似格納してあるリファラの処理
// 以下画像出力
$img = "R0lGODlhAQABAIAAAP///////yH5BAAHAP8ALAAAAAABAAEAAAICRAEAOw==";
header("Content-Type: image/gif");
echo base64_decode($img);
0563nobodyさん
2008/03/08(土) 16:21:18ID:???0565550
2008/03/08(土) 16:46:44ID:i79H3oERエッチな人ありがとうございます!
親フレームのリファラ取得に成功しました!
0566nobodyさん
2008/03/08(土) 18:30:05ID:???どういった形にすれば実装が可能でしょうか?
例えば
--------------------------------------------
http://aaaaaaaaaa.aaaaaaaaa.aaaaaaa
http://bbbbbbbbbb.bbbbbbbbb.bbbbbbb
ああああああああああああああああああ
http://cccccccccc.ccccccccc.ccccccc
--------------------------------------------
という文字列が入力された場合、
$ary[0]に http://aaa.... を格納。
$ary[1]に http://bbb... を格納。
$ary[2]に http://ccc... を格納。
という具合です。
正規表現でのアプローチ以外は無理と判断してずっと頭を悩ませているのですが、
いくら考えても非常に難解で詰まってしまっています。
宜しくお願い致します。
0569nobodyさん
2008/03/08(土) 19:08:59ID:???0570nobodyさん
2008/03/08(土) 19:17:23ID:???preg_match_all('/^(http?|https)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)$/', $strInputDate, $aryURL);
こんな感じで実現できそうです。
多謝!
0572nobodyさん
2008/03/08(土) 22:29:38ID:???0573nobodyさん
2008/03/08(土) 22:39:30ID:???繰り返し処理 while文 はどうゆう時に使うんでしょうか?
0574nobodyさん
2008/03/08(土) 22:42:56ID:???0578nobodyさん
2008/03/09(日) 01:12:26ID:???変数に値の受け渡しが出来てなくて
フォームタグが一切効かないんですが(反応しない)
同じソースコードなのに環境によって変わるものなのでしょうか?
0579nobodyさん
2008/03/09(日) 01:34:54ID:bMNZC/Zo参考にさせて頂きます。
ありがとうございました。
※実は、スパムメール業者から1クリ詐欺のURLの掛かれたメールが届いたので
勉強中のPHPで何万回かアクセスをしてサーバに負荷をかけてやろうと思ってましたw
.NETのWindowsアプリから直接サーバをコールした方がてっとりばやいそうですね。
0580nobodyさん
2008/03/09(日) 01:45:09ID:???phpでhtml作成する関数ってあったでしょうか?
0582578
2008/03/09(日) 01:58:11ID:???<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC_JP">
<title>formtest</title>
</head>
<body>
<FORM ACTION="formtest.php" METHOD="POST" NAME="line">
名前<INPUT TYPE="TEXT" NAME="name" SIZE="15"><br>
コメント<br>
<TEXTAREA NAME="comment" rows="4" cols="60"></textarea><br>
<INPUT TYPE="SUBMIT" VALUE="submit">
<INPUT TYPE="HIDDEN" NAME="action" VALUE="regist">
</FORM>
<?php
if($action == "regist"){
if(($name != "") && ($comment != "")){
print "渡ったよ";
}
}
var_dump($_POST);
?>
</body>
</html>
var_dump($_POST);では値は渡っていますが$nameや$commentには渡っていません。
0583nobodyさん
2008/03/09(日) 02:02:25ID:???これかなぁ。
http://www.php.net/manual/ja/ini.core.php#ini.register-globals
0584nobodyさん
2008/03/09(日) 02:04:27ID:???0585nobodyさん
2008/03/09(日) 02:06:39ID:???0586nobodyさん
2008/03/09(日) 02:08:57ID:???一度onに切り替えてうまくいったらoffに戻して
そっちのやり方を調べてみます。
0587nobodyさん
2008/03/09(日) 02:11:49ID:???1文字 1バイトとかですか?
0588nobodyさん
2008/03/09(日) 02:17:00ID:???オススメはしないが
extract使えば入るよ
<?php
extract($_POST);
if($action == "regist"){
if(($name != "") && ($comment != "")){
print "渡ったよ";
}
}
0590nobodyさん
2008/03/09(日) 02:25:23ID:???>588
extractって初めて聞きました。
POSTの配列の値をnameやcommentに入れてるみたいですね。
これやったら動きました。ありがとうございます!
0591nobodyさん
2008/03/09(日) 02:34:11ID:O0qbW4Oe設定は phpinfo() で確認すべし。
■ このスレッドは過去ログ倉庫に格納されています