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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/04/12(木) 16:54:47ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
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カテゴリ)の各スレで
0619nobodyさん2007/04/22(日) 17:18:27ID:???
マニュアルはどこまで読みましたか?
0620nobodyさん2007/04/22(日) 17:26:45ID:???
>>618
そのフォーマットで、単に年齢出せればいいんだったら日付関数なんかも使わず
$str = '19860523';
$str2 = '20070422';//今日の日付にしたいならdate()あたりで求める
$year = substr($str2,0,4)-substr($str,0,4);
if(substr($str2,4,4)-substr($str,4,4) >0 ){
$year++;
}
echo $year;
でいいんじゃない?。マニュアルってほどじゃない。
グレゴリウス暦1127年3月2日生まれの人間が今生きてたら、何日何秒生きてることになるか
ということになると日付関数じゃ足りずに、オプションのカレンダー関数とかでやるしかないと思うけど。
0621nobodyさん2007/04/22(日) 18:10:17ID:???
つーか
substrもつかわず、単に$str2-$str1で終わるような気がする。
0622nobodyさん2007/04/22(日) 18:57:36ID:???
>>596
サイ本は結構楽しいけど
まだ3版だとしたら、ちと古いがな
0623nobodyさん2007/04/22(日) 20:59:08ID:bqPmYs5Q
PHP+PostgreSQLで今サイトを作っているんですが、
なぜか表示ができません。
DBの接続もOKでPHPinfoも出るのですが、
これ文字化けが原因で表示されないということって
ありますか?
0624nobodyさん2007/04/22(日) 21:04:15ID:???
結果の中身が空なんだろ
0625nobodyさん2007/04/22(日) 21:06:05ID:???
>>623
ソースを出せ

または全ての変数で var_dump するなりチェックしましょう
0626nobodyさん2007/04/22(日) 21:12:30ID:???
もしくはcharsetでUTF-8指定してないからとかな
0627nobodyさん2007/04/22(日) 21:48:44ID:bqPmYs5Q
<?
require('./include/init.php');
$name = $_POST{'name'};
$company = $_POST{'company'};
$tel = $_POST{'tel'};
$email = $_POST{'email'};
$address = $_POST{'address'};
?>
<html>
<head>
<meta http-equiv=content-type content="text/html;charset=x-euc-jp">
<title>・譯シ・カ。シナミマソ</title>
</head>
<body>
<b>・譯シ・カ。シナミマソ</b><br>
イシオュ、ホニ簣ニ、ヌホノ、ア、・ミナミマソ・ワ・ソ・、イ。、キ、ニイシ、オ、、。」<br>
0628nobodyさん2007/04/22(日) 21:49:16ID:???
EUCで投稿するなよ・・・
0629すいません。623です。上もソースです。2007/04/22(日) 21:49:25ID:bqPmYs5Q
<table border=1 cellpadding=4 cellspacing=0>
<form action="ktouroku3.php" method="post">
<input type=hidden name=name value='<?echo $name?>'>
<input type=hidden name=company value='<?echo $company?>'>
<input type=hidden name=tel value='<?echo $tel?>'>
<input type=hidden name=email value='<?echo $email?>'>
<input type=hidden name=address value='<?echo $address?>'>
<tr><td align=center nowrap>、ェフセチー</td>
<td><?echo $name?></td></tr>
<tr><td align=center nowrap>イシメフセ</td>
<td><?echo $company?></td></tr>
<tr><td align=center nowrap>」ヤ」ナ」フ</td>
<td><?echo $tel?></td></tr>
<tr><td align=center nowrap>」ナ。ン」ヘ」チ」ノ」フ</td>
<td><?echo $email?></td></tr>
<tr><td align=center nowrap>スサス・/td>
<td><?echo $address?></td></tr>
</table>
<input type=submit value='ナミマソ'>
</form>
</body>
</html>
ちなみにこのソースはPHP&PostgreSQLをそのままんま
コピーしたんですが...
0630nobodyさん2007/04/22(日) 21:49:49ID:???
EUC(笑)
0631nobodyさん2007/04/22(日) 21:50:23ID:???
<input type=submit value='ナミマソ'>

並マンコってどんなだよ
0632nobodyさん2007/04/22(日) 21:53:46ID:???
で、なにを論評しろと言うのだ?
0633nobodyさん2007/04/22(日) 21:54:31ID:???
必要なのは init.php の中身じゃね。
っていうかそのぐらいの判断が出来ないんなら、一からテキスト買って勉強したほうがいいよ。

いきなり難しい事を飛ばしてやっても無理。
0634nobodyさん2007/04/22(日) 21:57:51ID:bqPmYs5Q
<input type=submit value='ナミマソ'>
を直せばいいのかな?
PHP&PostgreSQLにはinit.phpはEUC-JPに設定を直しました。
データベースはUTF-8です。
この本のとおりにやったのですが...

                       
0635nobodyさん2007/04/22(日) 21:59:31ID:bqPmYs5Q
すいません。
文字コードをPHPはなににすればいいのでしょうか?
本見てやったのですが、
すいません。教えてください。
先ほどのカキコミは627です。
0636nobodyさん2007/04/22(日) 22:01:09ID:???
もう全部統一してEUCならEUC一式にしろよ
0637nobodyさん2007/04/22(日) 22:02:19ID:???
本を参考にしても環境に合わないとか色々あるけどなあ
とりあえずなんでEUCに拘ってるんだ
0638nobodyさん2007/04/22(日) 22:28:45ID:???
じゃあUTF8に統一っていったら・・・ループするのか?
0639nobodyさん2007/04/22(日) 22:36:26ID:bqPmYs5Q
EUCにしました。
文字のめちゃくちゃなところを直せば動くかな?
どうでしょうか?
後、誰も同じ本もっていないのかな?
もしかして俺だけ?
0640nobodyさん2007/04/22(日) 22:43:52ID:???
エスパーじゃねえんだから、本、本って言われてもわかんねぇっすよ
0641nobodyさん2007/04/22(日) 22:48:48ID:???
わかったけど
eo規制くらったから書き込めない
0642627です。2007/04/22(日) 23:03:33ID:bqPmYs5Q
誰か教えてください。
お願い致します。

0643nobodyさん2007/04/22(日) 23:26:07ID:???
とりあえず何でスクリプトソースに文字化けした文字書いてるの?
0644nobodyさん2007/04/22(日) 23:33:09ID:???
627に質問がなにひとつ書いてない件について
0645nobodyさん2007/04/22(日) 23:35:27ID:???
要するにID出しての、単なる荒らしってことで
0646nobodyさん2007/04/22(日) 23:45:04ID:iPHGhE3V
ライブラリを作りたいのですが、
class〜でクラスでライブラリを貯めていくのと、
function〜でユーザー関数をファイルにただ詰め込むのは
どちらが推奨でしょうか?
はやりフレームワークのようにclassを使うのが妥当でしょうか?
ある程度たまってきたら全部公開したいと思っているので、
みなさまのご意見をお聞かせください。
0647nobodyさん2007/04/22(日) 23:52:34ID:???
1週間に1回は出てくるOOPの是非はいい加減テンプレに入れるべき

>>646
どっちでもいいよ好きなように作ってください
0648nobodyさん2007/04/22(日) 23:56:59ID:???
DBに格納する前にエスケープ処理をすれば
取り出すときにhtmlspecialcharsしなくてもいいと思うのですが
あるスレで格納する前は処理しなくて取り出すときにhtmlspecialcharsするような
ことが書いてあったのですがどちらがいいのでしょうか?
0649nobodyさん2007/04/22(日) 23:59:50ID:???
>>646
根本的にクラスの捉え方を間違ってる
>>648
理由が分からないなら後者
0650nobodyさん2007/04/23(月) 00:06:03ID:???
理由がわかっても後者をすすめる
0651nobodyさん2007/04/23(月) 00:08:17ID:???
理由が分かったら前者を選ばないと思う
0652nobodyさん2007/04/23(月) 00:09:12ID:???
>>648
変数を何らかの文法の中に埋め込む(HTMLとして出力する、SQL文を発行する、JSONとして出力する)
際にエスケープ。
理由はエスケープの目的(文法上のエラーや意図しない動作を防ぐ)と手段(エスケープ)
の対応が明確になり、必要十分なエスケープ処理を行えるから。

0653nobodyさん2007/04/23(月) 00:09:18ID:???
高木さんの言うこともわからんでもないけど、
結局あれこれあるから、最終viewのところで制御するのが安全だなあ。
0654nobodyさん2007/04/23(月) 00:11:05ID:???
でも格納前にSQLインジェクション対策はしろよな!

格納前というか発行前か?
0655nobodyさん2007/04/23(月) 00:16:17ID:???
クエリ文字列を形成するときかな
0656nobodyさん2007/04/23(月) 00:27:38ID:???
たかぎくんも意見も大事だと思うけど、あの人は自分の意見が絶対だと思ってるとこがやだ
0657nobodyさん2007/04/23(月) 00:34:41ID:???
>>648
ttp://takagi-hiromitsu.jp/diary/20051227.html#p02

>>654-655
prepareStatement使ってればあんま意識しないけどな
magic quoteがONだとややこしいことになるけど
0658nobodyさん2007/04/23(月) 02:01:49ID:J6ot4vJK
すいません。
627です。
この文字ばけを直せばきちんと表示されるでしょうか?
これが質問です。
よろしくお願い致します。
0659nobodyさん2007/04/23(月) 02:03:16ID:???
>>658
直してみたら分かるんじゃない?
0660nobodyさん2007/04/23(月) 02:03:23ID:Ks2m9GLI
何?
文字化けで直らないと文字化け直さないの?
見てあげたいけど携帯だしどうしようもない…
0661nobodyさん2007/04/23(月) 02:18:40ID:???
>>658
お前あのソースどっからコピーしたの?

エディタからソースをそのままコピー?
それともブラウザで何も表示されてない状態で
右クリックしてソースを表示したのをコピー?

なんか後者の気がムンムンするんだけど・・・
もしそうならちゃんと結果は返ってきてるんだから
100%文字コードの設定だろう。

ちょっとブラウザの表示からエンコード変えてみれ
0662nobodyさん2007/04/23(月) 02:21:23ID:Ks2m9GLI
>>661
ソースコピーしたらphp表示されなくね?
DWのソースコピーしたらこうなるよ
06636612007/04/23(月) 03:03:56ID:???
俺としたことがあああああああああああああああ
0664nobodyさん2007/04/23(月) 03:06:15ID:???
>>627 はphp.ini の short_open_tag がoffなのに、<? だけで書いてる臭い。
0665nobodyさん2007/04/23(月) 03:21:53ID:J6ot4vJK
意味がよくわからないのですが、直してまたうPします。
ありがとうございました。
0666nobodyさん2007/04/23(月) 08:28:11ID:???
サーバに定期的にデータを蓄積していき、そのデータ数が一定の値を越えたら処理を実行させる
というような使い方をしたいのですが、
PHPでもcronなどを使えば実現できますがそういう処理はJAVA Servletやアプリケーションサーバ
向きかなと思いましてどうしようか悩んでいます.
どちらがいいでしょうか?経験者の方などがいましたら違いを教えてください.
06676662007/04/23(月) 08:28:41ID:sNG4PNgp
ID出し忘れたので出しときます
0668nobodyさん2007/04/23(月) 08:47:16ID:LOUhoqIW
それトリガーじゃね?
0669nobodyさん2007/04/23(月) 09:09:25ID:???
前スレにwebcronというやつが紹介されてたのを思い出した
0670nobodyさん2007/04/23(月) 09:15:04ID:???
>>666
一番金のかからないやり方で実装すればいんじゃね
つか、なんでその文脈でサーブレットがでてくるのかわかんね
0671nobodyさん2007/04/23(月) 09:27:15ID:???
クーロソ使えるなら使えばいいじゃない
0672nobodyさん2007/04/23(月) 09:56:28ID:oOc9kXWC
質問です。
他人様が作成したphpスクリプトの一部にHTMLタグを加えたのですが
上手く反映されません…。
スクリプトはこちらの物です。 ttp://www.rocomotion.jp/php/p_link.php
左側のmenuバーの所にだけ<head>用のタグを貼り付けたかったので

#-----------------------------------------------
# フレーム部分(main)
#-----------------------------------------------

と言う項目の下にある<head>の下に付け加えたのですが、反映されませんでした。
アドバイス頂けないでしょうか。 よろしくお願いします。
06736722007/04/23(月) 10:05:42ID:oOc9kXWC
訂正です。

編集したのはメインスクリプト、
#-----------------------------------------------
# フレーム部分(menu)
#-----------------------------------------------
以下の部分でした。
0674nobodyさん2007/04/23(月) 10:19:31ID:???
>>672
そこのどれだよ!

アドバイス
人の質問を見て、何を提示すれば回答が得やすいか考える。
0675nobodyさん2007/04/23(月) 10:33:47ID:sNG4PNgp
>>670
servletやjspに関してあまり知らないので見当はずれなことを言っていたらすみません.
ただ、クライアントのリクエストに関わらず処理させるサーバにWeb特化のPHPは向いてないと聞いたので、
どのようなシステムを使うのが良いのか知りたかったので質問しました。
0676nobodyさん2007/04/23(月) 10:39:19ID:???
>>675
一般解は無いよ。
もっと情報出せば答えが出るかもしれないけど。
0677虚弱PHP2007/04/23(月) 10:42:53ID:???
>>603
ブラウザの処理の途中でリロードされてるんじゃないかな?
session_regenerate_idでIDが変更されたのに、
変更前のセッションIDを送ってるとか。
0678虚弱PHP2007/04/23(月) 10:46:04ID:???
>>675
俺の周りではshellとPerl使ってる人が多かったかな。
俺はPHPのシステムだったら、バッチ処理もPHPで書いてた。
0679nobodyさん2007/04/23(月) 10:57:35ID:???
>>674
失礼しました。

#-----------------------------------------------
# フレーム部分(menu)
#-----------------------------------------------
function frame()
{
global $title, $script, $col_devide;

print<<<head
<?xml version="1.0" encoding="shift_jis"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="ja" lang="ja">
<head>

<head>の下に1行だけ加えただけです。
0680nobodyさん2007/04/23(月) 11:06:44ID:???
だから何加えたんだよ
06816482007/04/23(月) 11:07:10ID:???
ありがとうございました
よくわかりました

たかぎさんのサイト面白いです
0682nobodyさん2007/04/23(月) 11:34:54ID:???
>>680
<!--nobanner-->
0683nobodyさん2007/04/23(月) 15:34:47ID:Ks2m9GLI
実務経験なしでフリーランスのアシスタントすることになったが不安
0684nobodyさん2007/04/23(月) 15:35:31ID:???
>>683
イキロ
0685nobodyさん2007/04/23(月) 15:46:15ID:EsFw1dKU
http://aaaa .com/ が公開サイトでのドメインだとします。
会員登録などしてログイン情報をセッションで持ち回る事で、
会員専用のページなどにもアクセス出来ます。

それはわかるのですが、SSLを使った場合はどうなるのでしょうか?
ただリンクをhttps://aaa .com/にすればいいだけなのでしょうか?
SSLのディレクトリにあるファイルでsession_start()とすれば、公開サイトの
会員IDなどが引き継げるのでしょうか?

独自ドメインでSSLを使ったサイトを作成した事がないので、気になりました。
0686nobodyさん2007/04/23(月) 15:58:34ID:qAG2+B55
youtubeみたいなサイトつくってみたいんだけど、
参考サイトありますか?

特に動画アップロードの作り方が詳しくでているところ希望します。
0687nobodyさん2007/04/23(月) 16:22:09ID:???
動画もファイルもアップロードは同じ
FLASH板いけ
0688nobodyさん2007/04/23(月) 16:24:52ID:???
正規表現じゃなくて[A-Z0-9]を文字列として表示するにはどうすればええのん?
$unko 1++; とか以外の方法で。
0689nobodyさん2007/04/23(月) 16:37:07ID:???
>>688
日本語でおk
0690nobodyさん2007/04/23(月) 16:39:32ID:???
688は自己解決しますた
メタ文字のことです、、、うへへw
0691nobodyさん2007/04/23(月) 16:40:46ID:LAYu+KhN
出来るならワンタッチで、しかも「情報起業」に特化した
ホームページ作成ソフトがあったらいいのに・・・。

もし、プロ並みにキレイなホームページが作成が出来たとしたら、
情報商材で一旗あげようと思っているあなたの人生は変りますか?

【早くも成功者続出!】起業サイトビルダー
http://www.infotop.jp/click.php?aid=16484&iid=5683
0692nobodyさん2007/04/23(月) 16:52:22ID:???
クラスとインスタンスの概念がいまいちよくわからないです
抽象化とか実体化とかわけわかめです
簡単な例文とか見るとなんでいちいちこんなことするのかと思えるのですが
複雑な処理になってくるとクラスを使った方がいいというわけでしょうか?

簡単な例えで概念を教えてください。
0693nobodyさん2007/04/23(月) 16:55:11ID:???
独り言ですが、何でもかんでも関数でまとめようとするのも考えものですね。。
必要なデータを参照する時に関数かし、その結果、処理がスムーズになると
思っていたのですが、関数化する事で複雑になりすぎて扱いづらくなってしまいました。

単純に別ファイルにしてincludeした方が良いのかも・・。
0694nobodyさん2007/04/23(月) 17:09:43ID:hrPvjONA
>>692
クラス => 素材(変数)と料理の本(メソッド)
インスタンス=> ↑を準備した台所

ちょっと違うか

>>693
関数の使いどころ間違ってないか?
頻度の多い処理は、関数を作るべき
06956932007/04/23(月) 17:21:45ID:???
>>694
頻度の多い処理の中に、いろんな変数を参照する物があるんだけど、
そういう場合、その処理に使う変数をすべて関数内にいれなきゃいけないよね?
それをするのにソースが複雑になりすぎて、後から見直すと「どうだっけかな?」
っと思う時がある。俺の書き方が悪いのかもしれないが。
0696nobodyさん2007/04/23(月) 17:27:39ID:???
>>685
それで問題ないよ
0697nobodyさん2007/04/23(月) 17:42:20ID:???
>>691
宣伝乙
通報しますた
0698nobodyさん2007/04/23(月) 17:45:32ID:???
>>695
自分で作った関数の使い方忘れてたら元も子もないわな
PHP Doc みたいに、説明文書いておけば?
0699nobodyさん2007/04/23(月) 18:03:03ID:???
関数の前にコメントでどういうものか記述するわな普通。
0700nobodyさん2007/04/23(月) 18:03:29ID:???
頻度関係なく関数は数行でぱっと見理解できる程度に分けたいけど
匿名関数つかえね
0701nobodyさん2007/04/23(月) 18:49:46ID:YDuj5yCb
while文を変数に代入することってできますか?
0702nobodyさん2007/04/23(月) 18:52:17ID:YDuj5yCb
自己解決しなすった
0703虚弱PHP2007/04/23(月) 19:01:59ID:???
>>695
おそらく関数間の依存関係が強すぎるんだね。
そうだとしたら設計の問題。

それ以外だったら、オブジェクトにまとめて関数に渡せばOK。
0704nobodyさん2007/04/23(月) 19:05:39ID:???
PHP5では参照渡しってデフォなんですよね?
以下の場合、&$hogeはどんな解釈になるんですか?
また、どっちがはやい?
class hoge {
foo($hoge) {
echo $hoge;
}
foo2(&$hoge) {
echo &$hoge;
}
}
0705nobodyさん2007/04/23(月) 19:11:51ID:wES6lMlt
個人的好みを聞きます。初期config設定をするとき
1)override予定していないものは、出来るだけ定数にする
2)定数できるものも変数でやっちゃう
どっち派ですか?

あとconfigファイルは
1)phpファイルに書き込むか
2)iniあるいはcsv風テキスト
3)xmlなど
どれ派ですか?

あっしは(1)-(3)なんですけど。
0706nobodyさん2007/04/23(月) 19:14:18ID:???
>>704
気になるならベンチ計ればいいだろうが馬鹿か?
07077042007/04/23(月) 19:17:45ID:???
>>706
計ったに決まってるでしょ…
私の環境だとたいした差がないし、どう違うのか分からないから聞いてるんですけど!
バカとは失礼な!
0708nobodyさん2007/04/23(月) 19:22:55ID:???
大差ないなら大差ないんだろ
07097042007/04/23(月) 19:30:33ID:???
>>708
わかんないんなら黙っててくれる?
興味あるから知りたいだけですから…
あんたみたいな大雑把な人はプログラミング向いてないからやめた方がいいよ(迷惑だし)
0710nobodyさん2007/04/23(月) 19:37:26ID:???
>>706
>>708
ネタにマジレス(・∀・)カッコワルイ
0711nobodyさん2007/04/23(月) 19:39:19ID:???
>あんたみたいな大雑把な人はプログラミング向いてないからやめた方がいいよ
(´,_ゝ`)プッ
0712nobodyさん2007/04/23(月) 19:40:08ID:???
春ですね^^
07137042007/04/23(月) 19:40:52ID:???
>>710さん
ネタじゃないですよ…○;ω;)…
クダラナイ質問ではありますが…
0714虚弱PHP2007/04/23(月) 19:49:15ID:???
>>704
オブジェクトは参照渡しだけど他はPHP4と変わらず。
速度はZendエンジンがごちゃごちゃやるはずなのでコード依存じゃないかな。
07157042007/04/23(月) 19:53:37ID:???
>>714
ありがとうございます
>>ほか
みんなヒドイです…
ネットでいじめられてるみたいでショックでした さよなら
0716nobodyさん2007/04/23(月) 19:53:53ID:???
はいさようなら
07177042007/04/23(月) 19:58:49ID:???
>>715-716
市ね!
じゃあな
0718nobodyさん2007/04/23(月) 20:01:09ID:???
自分の環境が信じられないのに他人の環境は信じれるのか
■ このスレッドは過去ログ倉庫に格納されています