トップページphp
1001コメント330KB

【PHP】下らねぇ質問はここに書き込みやがれ 65

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2008/02/24(日) 21:03:17ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
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カテゴリ)の各スレで
0451nobodyさん2008/03/06(木) 09:24:06ID:???
拡張子はphpにしてる?
まさかphpがインストールされてないとかそういうわけじゃないよね?
0452nobodyさん2008/03/06(木) 09:29:06ID:???
まずapacheとかのHTTPサーバを組み込んだ?
いくらPHPはHTMLに似ているからと言って
IEだけじゃPHPは動かないぞ。

0453nobodyさん2008/03/06(木) 10:13:06ID:???

xamppでapache php mySQLとかはダウンロードして インストールして
起動させてるんで ブラウザからlocalhostのページもみれるんでたぶん
動いてるとおもうんですけど・・・。拡張子もphpにしてみたけど、だめです。
0454nobodyさん2008/03/06(木) 10:21:27ID:???
拡張子phpにしてもブラウザからみれば アドレス側の名前の最後php.txt
になってるみたいなんですが、これ原因ですかね?
0455nobodyさん2008/03/06(木) 10:24:26ID:???
>>454
ひどいオチだな。拡張子表示するようにしなよ。
メモ帳系のソフトは登録されていない拡張子だと後ろに.txtをつけることがある。
保存するときにファイルの種類をすべてのファイルにしてからphpとうつか、
txtで保存したあと拡張子を変えるかでいける。
0456nobodyさん2008/03/06(木) 10:42:16ID:???
452さん
453さん
455さん ありがとうございました。拡張子の付け替えうまくいきました。
前進したようです。
でもこんどは読み込むとブラウザの画面が真っ白なページになってしまいまし
た。orz
0457nobodyさん2008/03/06(木) 15:23:36ID:???
もういいよ
0458nobodyさん2008/03/06(木) 16:26:01ID:???
ありがとうございました。もうすこし自分で調べてきます。
0459nobodyさん2008/03/06(木) 17:07:58ID:???
拡張子表示すら知らない人がやるんだから、PHPの裾野の広さは色んな意味で恐ろしいほど広いよな・・。
0460nobodyさん2008/03/06(木) 17:14:18ID:???
そんなヤツらが毎年入社してくるんだよ。何とかしてくれ。。
0461nobodyさん2008/03/06(木) 17:14:34ID:???
いやどちらかと言えば俺はそのほうがいいと思うよ。技術は使われるものじゃなくて使うもの
0462nobodyさん2008/03/06(木) 17:23:34ID:???
拡張子のことを知らない人は、論理的な思考が出来ないということでもないから、気にする事でもない。
0463nobodyさん2008/03/06(木) 18:31:19ID:???
>>456
PHPスクリプト自体、htdocsに入れてるか?
0464nobodyさん2008/03/06(木) 18:44:43ID:???
携帯電話からメールがきた際、返信メールを返すシステムを構築しているのですがドコモからきたメールを返してくれません。

状況としてはこんな感じです。
ドコモのメールアドレス(ユーザアカウント部分)にドットが含まれている(auのアドレスには含まれていない。)
mail関数で返信している。
メールアドレスは正常に取得できている。(送信前にtoをvar_dumpしてみました)

お願いします。
0465nobodyさん2008/03/06(木) 18:45:48ID:???
その手の質問はphpばかりやっているから。
もう少し、言語に依存しないプログラムの基本的な理論や
プログラムの設計理論について学ぶべきだよ。

基礎ができていないプログラマーは、
いつも行き当たりばったりで、
自己解決がいつまで経っても出来ないからね。
0466nobodyさん2008/03/06(木) 18:48:13ID:???
>>464
どのように返しているの?
cronかメ鯖か
0467nobodyさん2008/03/06(木) 18:51:51ID:???
>>464
>>7
0468nobodyさん2008/03/06(木) 18:53:56ID:???
>>464さん
耳が痛いです。。。
そろそろ基礎から学ぶべきだとは思ってます。

>>466さん
メ鯖で返してます。
メールが来たらforwardして
ログみるとPHP側にはわたっているデータは残ってるんでmail関数が怪しいと思ってます。
0469nobodyさん2008/03/06(木) 18:55:19ID:???
>>467さん

なんどもすみません。

環境
OS:Fedora Core5
Mail:postfix
php5
です。
04704642008/03/06(木) 19:11:43ID:???
自己解決しました。。。。
受信拒否解除してなかっただけでした。

すみません_| ̄|○ il||li
0471nobodyさん2008/03/06(木) 19:14:56ID:???
どうせそんな事だろうと思ったよ
0472nobodyさん2008/03/06(木) 19:21:02ID:???
>>471
何も答えない癖に、何言っていんのこの馬鹿?

開発会議で全然発言しなかったくせに、
開発途中で設計に変更の必要がでると、
「やっぱり、その設計はまずかっただろう」
とか誇らしげに言っているF次長と一緒。

まったくウザイ。どうしてこんな奴が次長の椅子に座っているの?
どうなっても知らんよ。
0473nobodyさん2008/03/06(木) 19:50:21ID:???
それをF次長に直接言えるようになるといいね。
0474nobodyさん2008/03/06(木) 20:08:40ID:???
>>468
「そろそろ基礎から学ぶ」という発言に違和感を覚えないようなら相当やばいと思う。
今すぐ行動すべき。でないと手遅れになる。
0475nobodyさん2008/03/06(木) 20:15:14ID:???
基礎もわからず応用から入れる人って
ある意味羨ましい
0476nobodyさん2008/03/06(木) 22:17:38ID:???
ここでいう基礎が不明確だな。SICP終わったくらいか
0477nobodyさん2008/03/06(木) 22:30:00ID:???
基礎と言えば「BASIC」
0478nobodyさん2008/03/06(木) 22:45:26ID:???
まずは機械語の理解からだろ
0479nobodyさん2008/03/06(木) 22:55:55ID:???
今更mov ax,0とかld a,0なんてできんわぁ
0480nobodyさん2008/03/06(木) 23:14:26ID:???
で、お前らはnoticeエラーもきちんと処理してんのか?
0481nobodyさん2008/03/06(木) 23:21:40ID:???
>>480
またお前か。下らんことばっかきいてんじゃねえよ。
0482nobodyさん2008/03/07(金) 00:27:41ID:???
普通は処理する
0483nobodyさん2008/03/07(金) 01:05:07ID:???
逆に、そんなにnoticeって出る??
どういうとこで出るんだろ。
0484nobodyさん2008/03/07(金) 01:18:39ID:???
きっちり書いてればでないよ
一番多そうな例としては
<?php
$hoge = $_GET['hoge'];

こんな風にいきなり書く場合が多いんじゃないかな
0485nobodyさん2008/03/07(金) 01:53:29ID:???
FW使えばok
0486nobodyさん2008/03/07(金) 02:37:32ID:???
すみません初心者質問なのですが

こういうのはecho "<a href=\"$url\">$title<a>;

こうした方がいいのでしょうか?
echo "<a href=\"$url\">".$title."<a>";
0487nobodyさん2008/03/07(金) 02:50:08ID:???
何故$titleだけ
0488nobodyさん2008/03/07(金) 02:58:35ID:dvnvybav
phpでF5キーを押すのと同じ働きをするコマンドはありませんか?

つまりページを再取得するという意味。
0489nobodyさん2008/03/07(金) 04:07:02ID:slLJ/4/b
if ($_SERVER["REQUEST_METHOD"] == "POST") {
foreach($_POST as $k => $v){
// 「magic_quotes_gpc = On」のときはエスケープ解除
if (get_magic_quotes_gpc()) {
$v = stripslashes($v);
}
$v = htmlspecialchars($v);
$$k = $v;
}
}
これの意味がわかりません。
なんでこれでデータをゲットできるの?
0490nobodyさん2008/03/07(金) 04:48:49ID:???
可変変数のことを言ってるのか?どこの意味が分からないのか書かないと人に伝わるわけない
0491nobodyさん2008/03/07(金) 05:13:05ID:???
>>488
コマンドって・・・
PHPは入力などを受け取ってサーバ側で処理をしてブラウザに結果を返すというだけのもの。
現実的なのはPHPでmetaタグのrefreshコード(HTMLの)を出力するとか。
F5と同じ働きをするわけではないが、結果をリアルタイムに取得して表示することが可能なAjaxという技法を使うか。
チャットとかでリアルタイムに表示したいようなものを作るならAjaxが定番。
ページ遷移が行われるmeta refreshによる自動更新はかえって迷惑なのでやめたほうがいい。
0492nobodyさん 2008/03/07(金) 06:48:34ID:9kEaF3pZ
PHP初心者です。テキストからドットを取り除く関数はあるのでしょうか。
例)1.2.3.4.5
  ↓
  12345
よろしくお願いいたします。
0493nobodyさん2008/03/07(金) 06:58:38ID:???
>>492
正規表現による置き換え
preg_replaceあたり
04944922008/03/07(金) 07:05:14ID:???
>>493
早速のレスありがとうございました。
0495nobodyさん2008/03/07(金) 07:06:26ID:???
str_replaceで十分なんじゃないかw
04964922008/03/07(金) 08:20:19ID:???
>>495
レスありがとうございました。
実際はいくつかの文字変化が必要でしたので次のようにしてみました。
みなさんありがとうございました。

$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
自分でphpの関数を作ってみようと思うのですが、
作る方法を解説したサイトはありますか?

C++の基礎がやっと分かる程度ですが、
Smartyのpluginのような感じで簡単に追加できるならやってみたいと思います。
0498nobodyさん2008/03/07(金) 14:47:17ID:???
ユーザ定義関数はfunctionで作る
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:???
>>499
アクセス集中時で繋がらないときのメッセージ
通常時間をおけば解消する

っていうかスレ違いだしそんくらいググレ
0501nobodyさん2008/03/07(金) 15:47:29ID:???
>>499
つ http://academy6.2ch.net/english/
0502nobodyさん2008/03/07(金) 15:50:14ID:9kEaF3pZ
PHP初心者です。本日symfonyなるものを知りました。いきなりですが
なんて読むのでしょう。シンフォニーだとスペルがちがいますし。
またPHPのフレームワークにもいくつかあるようですが、主流というのは
あるのでしょうか。よろしくお願いいたします。
0503nobodyさん2008/03/07(金) 16:05:26ID:???
>>500
昨夜更新したときに、何か不具合が発生したのかと思いました。
心より、感謝します。
0504nobodyさん2008/03/07(金) 16:08:41ID:???
>>502
そんなん言ったらPerlだってスペル違うし。
0505nobodyさん2008/03/07(金) 16:14:58ID:???
>>499
橋本さんの所の人なんですか?

公人の場合、こういう場所に書くとき、
色んな事に気をつけたほうがいいと思いますけどね。


余計なお世話ですけど
0506nobodyさん2008/03/07(金) 16:35:51ID:???
更新ってF5のことだろ
政治家のサイトの更新するようなやつがそんな質問するわけないw
0507nobodyさん2008/03/07(金) 16:40:13ID:???
その通りです。互角を招いて申し訳ありません。
0508nobodyさん2008/03/07(金) 16:46:35ID:???
>>507
そうだと思いました。では、この話題はこれでおしまい。
0509nobodyさん2008/03/07(金) 16:51:40ID:???
>>502
Symphonyだと音楽のほうがぱっと思い浮かぶから
Symfonyは単語として存在しない=PHPのフレームワークをさす固有名詞になれる
この名前がそういう理由でつけられたかはわからないが
そういう理由で単語にないものをつけるのはよくあること
商標登録(だっけか?)とかそういうのするときにも使えるしな

日本ではCakePHP Symfonyが特に人気
PHPのフレームワークはソースごとサーバにアップロードすれば動くものなので
人気かどうかを考えるより自分にあったものを使えばよろしい

個人的には和訳ドキュメント量が豊富なのを使うようにしてるけど
0510nobodyさん2008/03/07(金) 17:07:00ID:???
くだらねぇ事だけど、symfonyの先頭は小文字にしような。
0511nobodyさん2008/03/07(金) 17:12:20ID:???
510 :nobodyさん:2008/03/07(金) 17:07:00 ID:???
くだらねぇ事だけど、symfonyの先頭は小文字にしような。
05125022008/03/07(金) 17:13:51ID:???
皆さんレスありがとうございます。

>日本ではCakePHP Symfonyが特に人気
CakePHPも調べてみます。ありがとうございます。
0513nobodyさん2008/03/07(金) 18:39:08ID:ysjWWEjV
mp3について質問です。

header("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
>>513
あ、MP3読み込んでるのにmpegをheaderで指定しているからか。
ありがとうございました。
0516nobodyさん2008/03/07(金) 18:57:31ID:???
関係ないかもしれんが、ばらして結合するぐらいなら、 file_get_contents 使えば?
0517nobodyさん2008/03/07(金) 18:59:10ID:???
むしろ readfile か。
http://jp2.php.net/manual/ja/function.readfile.php
0518nobodyさん2008/03/07(金) 19:05:38ID:???
あると思ってたがやっぱりこんな関数あったんですね。
ありがとうございました。
0519nobodyさん2008/03/07(金) 19:15:56ID:???
欲しいと思う関数がある、それがphp。

こんな偉大な言語はない。
但し、PGになるハズが無かったPGを存在たらしめた副作用も意識しなければいけない。
0520nobodyさん2008/03/07(金) 19:28:21ID:???
緩い関数はあんまり使いたくない。バグの元。
0521nobodyさん2008/03/07(金) 19:29:16ID:???
>>520
例えば?
0522nobodyさん2008/03/07(金) 19:30:03ID:???
理由は分からんがContent-Lengthが必要のようだ。
↓を追加したら最初のコードで問題無く聴けたよ。
header("Content-Length: ".filesize('hoge.mp3'));

しかしまあ>>513のコードはなんか気味悪いな。
改行しないfile関数があってもよさそうだね・・。
0523nobodyさん2008/03/07(金) 19:30:53ID:???
みんな大好きsprintf
0524nobodyさん2008/03/07(金) 20:41:02ID:ysjWWEjV
>>522
ナヌ、そんなに気味悪いのか
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:d1NS98q0
すいません質問です
PHPで書いたスクリプトを定時に作動させたいのですが、
それってシェルスクリプトというのを書けばいいのでしょうか
それ以外に簡単な方法はないでしょうか

ちなみに扱える言語はPHPだけです
0526nobodyさん2008/03/07(金) 22:24:49ID:???
cron使えばいいんじゃね?
0527nobodyさん2008/03/07(金) 22:26:54ID:l69x+LwZ
>>526
UNIX厨は市ね。
0528nobodyさん2008/03/07(金) 22:28:38ID:???
>>526
私が借りてるサーバーはcronも使えるようです
cronも全くわからないのでやり方調べてきます
ありがとうございました
0529nobodyさん2008/03/07(金) 22:32:04ID:???
テンプレにあるじゃん。はげ
0530nobodyさん2008/03/07(金) 22:50:05ID:???
>>529
こいつ最低。通報した。
0531nobodyさん2008/03/07(金) 22:54:58ID:???
また、2chから逮捕者か
0532nobodyさん2008/03/07(金) 23:33:33ID:???
>>527
情報弱者乙
http://www.kalab.com/freeware/cron/cron.htm
0533489です2008/03/08(土) 00:16:04ID:hakb0/u4
if ($_SERVER["REQUEST_METHOD"] == "POST") {
foreach($_POST as $k => $v){
// 「magic_quotes_gpc = On」のときはエスケープ解除
if (get_magic_quotes_gpc()) {
$v = stripslashes($v);
}
$v = htmlspecialchars($v);
$$k = $v;
}
これでたとえば、html上のフォームのデータ
がすべて受け渡しができる意味がわからないのですが
教えてください。

0534nobodyさん2008/03/08(土) 00:25:36ID:???
>>533
スーパーグローバル変数$_POSTにpostで送られてきたキーと値が格納されるから
0535489です2008/03/08(土) 00:38:44ID:hakb0/u4
ありがとうございます。
magic_quotes_gpc = Onのときはエスケープ解除って
どういう意味?
0536nobodyさん2008/03/08(土) 01:41:07ID:???
magic_quotes_gpc でぐぐればわかるカナ?
0537nobodyさん2008/03/08(土) 02:17:31ID:l7Ped3Na
ファイルアップロードする時に、
参照ボタンを押してダイアログからファイルを選択し開くボタンを押すと
同時にサーバに送る方法はありませんか?
0538nobodyさん2008/03/08(土) 02:35:34ID:???
>>537
javascript
0539nobodyさん2008/03/08(土) 02:36:56ID:???
どっちみち不可能。諦めろ。
0540nobodyさん2008/03/08(土) 02:41:08ID:l7Ped3Na
あれ?出来ないのか。
どっかで見た気がしたんだけどな。
0541nobodyさん2008/03/08(土) 02:52:35ID:???
>>537
PHPだけじゃできないが可能でしょ。
問題は自分で使うならいいが、公開する場合そんなハタ迷惑な実装はやめていただきたいものだな。
0542nobodyさん2008/03/08(土) 03:01:01ID:???
ブラウザにもよると思うが、セキュリティのためかなんかで<input type=file>周りはガチガチに固められてるハズ。
前に>>537と似た内容の要求仕様があったんで、そっくりに作ったFLASHで勘弁してもらったことがある。
0543nobodyさん2008/03/08(土) 03:09:07ID:???
ちょっとしたヤバイファイルホイホイになって面白そうだ
0544nobodyさん2008/03/08(土) 04:44:40ID:???
出来ないのはvalueを設定する事ができないだけ
参照は出来た筈なので
値が変わればpostしてやるjavascriptを動かせば良い

gmailとかでファイル添付しようとしたら自動でアップされるので
それを参考にすると良いんじゃない(JS側だけ)
0545nobodyさん2008/03/08(土) 11:59:45ID:GVJUSgTC
質問します。

xamppをインストールして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:???
xamppやめる
0547nobodyさん2008/03/08(土) 14:29:42ID:l7Ped3Na
>>541-544
ご意見どうも。やらねばならない事情がある。

>>544
gmailでやってるのか。参考にしてみます。thx
0548nobodyさん2008/03/08(土) 14:35:55ID:???
とりあえず、このコードは IE7/Firefox2/Opera9/Safari3 で動作した。

<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で簡単なアクセス解析らしきものを作っています。

アクセス解析.phpを、サイトのトップに<iframe>で表示させて情報を取得させています。
しかしこれだとそのサイトのトップのリファラーしか得られません。
トップにアクセスした時点のリファラーって取得できないのでしょうか?
0551nobodyさん2008/03/08(土) 14:44:32ID:???
>>549
クリックしたらグーグルのクローラーが来ます!ってプログラムで売り出してください。
■ このスレッドは過去ログ倉庫に格納されています