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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/04/27(金) 10:02:42ID:H9gF1SfB
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 44
http://pc11.2ch.net/test/read.cgi/php/1176364487/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0587nobodyさん2007/05/06(日) 23:05:09ID:???
 
0588nobodyさん2007/05/06(日) 23:06:51ID:???
>>586
ありがとうございます。
0589nobodyさん2007/05/06(日) 23:41:18ID:???
>>583
http://example.com/index.php/hogehoge/fugafuga
設定次第で http://example.com/index/hogehoge/fugafuga
とかもできる
0590nobodyさん2007/05/06(日) 23:44:27ID:???
>>589
設定次第とはどんなの?
0591nobodyさん2007/05/06(日) 23:46:17ID:???
>>583 「動的URL 静的URL 」 で検索.
0592nobodyさん2007/05/06(日) 23:48:11ID:???
めんどくさいから一言でおながい
0593nobodyさん2007/05/06(日) 23:49:30ID:???
一言:「IDを出せ」
0594nobodyさん2007/05/06(日) 23:51:47ID:???
指図するな!!!
0595nobodyさん2007/05/07(月) 00:05:20ID:???
平和だな
0596nobodyさん2007/05/07(月) 00:44:37ID:???
               ,      ,
  ./  ̄/  ̄  / _|__ ___|_
    ―/     /   |/   /|
    _/  _/    |  _/|
                                  /\___/ヽ           
    (.`ヽ(`> 、                      /''''''   '''''':::::\           
     `'<`ゝr'フ\                 +  |(●),   、(●)、.:| +      
  ⊂コ二Lフ^´  ノ, /⌒)                 |  ,,,ノ(、_, )ヽ、,, .::::|       
  ⊂l二L7_ / -ゝ-')´                .+ |   `-=ニ=- ' .::::::| + .    
       \_  、__,.イ\           +     \   `ニニ´  .:::/    +  
        (T__ノ   Tヽ        , -r'⌒! ̄ `":::7ヽ.`- 、   ./|  . 
         ヽ¬.   / ノ`ー-、ヘ<ー1´|  ヽ | :::::::::::::ト、 \ (  ./ヽ    
          \l__,./       i l.ヽ! |   .| ::::::::::::::l ヽ   `7ー.、‐'´ |\-、 
  ___________________________  __
 │二│三│四│二│三│四│二│三│四│◎│◎│◎│伍│|伍| 
 │萬│萬│萬│萬│萬│萬│萬│萬│萬│◎│◎│◎│萬│|萬|
0597nobodyさん2007/05/07(月) 02:20:03ID:ey+jINI9
Rails等のフレームワークにあるflush(一回限りのセッション)て
どうやって実装すればいいですか?
0598nobodyさん2007/05/07(月) 02:46:59ID:oQG5Osro
Smarty使い始めたらファイルの量が2倍になって、
20〜30ページも作るとファイルの管理とエディタで切り替えがいい加減だるくなってくるんですが、
皆さんテンプレートやPHPファイルの数が増えても普通にエディタで作ってますか?
EmEditorで全部書いてるんですけど、統合環境とか使うと違うのかなぁ。
05995972007/05/07(月) 03:34:54ID:???
register_shutdown_functionを使ってできますた
0600nobodyさん2007/05/07(月) 03:52:54ID:???
Smartyとか使ってるカスまだいたのか
0601nobodyさん2007/05/07(月) 04:14:46ID:???
使ってない童貞まだいたのか
0602nobodyさん2007/05/07(月) 05:29:17ID:VG09sLBd
そそ、テンプレートとかモデルとか使ってるとファイル数が増えすぎて逆に管理が大変になったりするんだよね・・・
0603nobodyさん2007/05/07(月) 06:53:03ID:HuKM0EbB
URIからドメイン部分だけ抜き出すにはどうすればいいですか?
http://hoge.com/poge/fugo
↓
hoge.com
みたいな感じです
0604nobodyさん2007/05/07(月) 07:10:02ID:???
>>603
var_dump(parse_url('http://hoge.com/poge/fugo'));

array(3) {
 ["scheme"]=>
 string(4) "http"
 ["host"]=>
 string(8) "hoge.com"
 ["path"]=>
 string(10) "/poge/fugo"
}
0605nobodyさん2007/05/07(月) 07:17:22ID:???
>>604
ありがとうございました
0606nobodyさん2007/05/07(月) 11:00:55ID:???
すみませんが教えてください。
PHPでPDFを出力したく、フリーのライブラリを探しているのですがなにがお勧めでしょうか?
PDFLibは、商用で使う場合有償なのですよね?
0607nobodyさん2007/05/07(月) 11:26:11ID:???
pearにあんじゃないの
多分
0608nobodyさん2007/05/07(月) 11:47:12ID:sGzYZkCO
下記SQLで抽出しようとすると、関係の無い2バイト文字まで出てきてしまいます。
どのようにすればよいでしょうか、よろしくお願いします。

$str="a";
$sql="SELECT * FROM table WHERE field LIKE BINARY '$%str%';";
0609nobodyさん2007/05/07(月) 11:49:26ID:sGzYZkCO
すみません、間違いました。
訂正 $sql="SELECT * FROM table WHERE field LIKE BINARY '%$str%';";
0610nobodyさん2007/05/07(月) 12:18:04ID:???
>>609
バイナリで検索してるんだから当たり前
LIKE BINARY
↓
LIKE

更にフィールドの型がbinary型になっていないかチェック
0611nobodyさん2007/05/07(月) 12:30:58ID:sGzYZkCO
>>610
ありがとうございます。
LIKE BINARYとしているのは、テキストボックスに入力があった場合に
日本語文字も検索できるようにしているからです。
この場合どうすればよいでしょうか。
よろしくお願いします。
06126092007/05/07(月) 13:09:14ID:sGzYZkCO
preg_matchで調べて2バイト文字を含む時のみBINARY句を入れるようにしたんですが
思うようにいきません。
データベースはMYSQLで検索対象フィールドタイプはtextにしています。
0613nobodyさん2007/05/07(月) 13:16:35ID:???
クッキーについて
setcookieで同一ページでは問題ないのですが
同じ階層の違うページで
if( isset( $HTTP_COOKIE_VARS["vs_pass"] ) ) {
$vs_pass = $HTTP_COOKIE_VARS["vs_pass"];
} else{ . . .
とやってもからっぽでした。

ドメインやパスか何かを指定しなければならないんでしょうか?
0614nobodyさん2007/05/07(月) 13:17:17ID:???
>>607
ライセンス嫁
0615nobodyさん2007/05/07(月) 13:19:12ID:???
まちがえた>>606
0616nobodyさん2007/05/07(月) 14:12:45ID:???
>>608
>>208 >>210
0617nobodyさん2007/05/07(月) 14:22:40ID:???
DB側の問題だよね?
0618nobodyさん2007/05/07(月) 14:33:03ID:V6z/gjwq
すみません、どなたか知恵をかしてください。

PHP5.2.1にて、ダイレクトIO(DIO)関数を使いたいのですが、
./configure 時に --enable-dio を指定しても DIO が有効になりません。

PECLのサイトに dio がありましたが、ダウンロードしようとすると File Not Found となってしまい、pear install dio 、 pecl install dio でもインストールすることが出来ません。

ググっても同じような症状を解説しているサイトが見つからず、解決策が見つかりません。
どなたかご存知の方がいらっしゃいましたら、アドバイス頂けたらと思います。
よろしくお願いいたします。
0619nobodyさん2007/05/07(月) 14:33:48ID:???
文字コード指定すればいいだろ。日本語あるからバイナリて。
06206182007/05/07(月) 15:01:20ID:V6z/gjwq
自己レスです。

CSVにてダウンロード、コンパイルが出来ました。。
お騒がせいたしました。
0621nobodyさん2007/05/07(月) 18:28:01ID:eAJiAY6Q
すみません。include構文でつまづいています。初心者ですが、おしえてください。
Apache2/htdocs/sampleフォルダにPHPファイルを入れています。include構文で使うふぁいるは
Apache2/includeに入れないとだめみたいなんですが、sampleフォルダからだと相対パスはどうなるんでしょうか?
../../include.incとしても駄目でした。他にも色々試したんですがだめでした。
06226212007/05/07(月) 18:31:26ID:eAJiAY6Q
621です。事故解決しました。他の部分のソースが違ってました。。

すみません。
0623nobodyさん2007/05/07(月) 20:07:37ID:???
ねこすけgoogle八分にされないかな
0624nobodyさん2007/05/07(月) 22:11:52ID:i2xtF+k7
ファイルの行数の総数を出す関数ありませんか?
0625nobodyさん2007/05/07(月) 22:46:53ID:RBHhVsf2
すんまそん。。

PDOでsqliteを操作しようとしています。
selectは問題なくできるのですが、insertができません。。orz
コマンドラインからならinsertも出来ます。。

$dbh = new PDO("sqlite:test.db", '', '');
$sql = "INSERT INTO counrty_tbl (country) VALUES ('japan')";
$res = $dbh->query($sql);
var_dump($res);

でfalseが返ってきてしますうのですが。。どこら編がまずいのでしょうか。
sql文はコマンドラインで試したのと同じなので問題ないともうのですが。。

よろしくおながいします。m(_ _)m
06261152007/05/07(月) 22:47:53ID:???
>>624
単一では、ないんじゃないの?
最後の行が、改行コード行末を持つかどうかでちがう。
$file_array = file('foo/bar/file');
$count = count($file_array);
として、end($file_array);で最後の行の末尾が改行コードあるかどうかをチェックして
$count + 1 するかどうかが必要。




0627nobodyさん2007/05/07(月) 23:01:44ID:DrdXpO7U
fopenで改行探すだけ
file()だとtextが100MBあったら100MBの配列作ることになるわな

>>625
insertは戻り値無いからPDO->exec使うべ
06286252007/05/07(月) 23:16:58ID:???
>>627

どうもありがとーです!
原因は、、、、dbのアクセス権がよろしくなかったみたいです。。orz
アクセス権を修正したら、execでもqueryでも出来ました。><

しかも、「counrty_tbl」のつづりが間違ってました。。orz

でも、627さんのレスのおかげで、再び希望を持つことが出来、原因を突き止めることが出来ました。本当に助かりました!
06296242007/05/07(月) 23:30:11ID:i2xtF+k7
なんとなくわかった気がします。

私がやりたかったのは、
「ある行で、ある文字が検出されたら、それより上の行を全削除する」ってのをやりたかったんです。
0630nobodyさん2007/05/08(火) 01:18:30ID:???
>>613
同じ階層であれば通常は問題ないはずなんだがなぁ〜
なんか特殊なことでもしてる?
単純にクッキーの発行と読み出しだけする
2個のプログラムでも書いて動作確認してみては?

どうでもいいけど $HTTP_COOKIE_VARS はもう古い。
0631nobodyさん2007/05/08(火) 01:21:25ID:???
>>629
なんでそれで行数のカウントなんてするんだ?
0632nobodyさん2007/05/08(火) 03:46:58ID:???
すみません、本を読みつつ作業してるんですがセッションを使った
プログラムがまともに動きません。
買い物カートにモノを入れて、最後のカート内確認画面まで選択情報を
セッションで維持して、最後に確定ってやつなんですが、カートの中身がカラなんです。
phpinfoは以下の通りなんですが、これじゃダメなんでしょうか?

Session Support enabled
Registered save handlers files user sqlite
Registered serializer handlers php php_binary wddx

Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 On On
session.bug_compat_warn On On
0633nobodyさん2007/05/08(火) 04:01:01ID:???
ソースに問題があるとは考えないんだ
0634nobodyさん2007/05/08(火) 04:01:16ID:???
ソースがなけりゃエスパーの出番だろ
0635nobodyさん2007/05/08(火) 04:11:33ID:???
>>633
いやー、ほんについてたCDのソースをそのまま使ってみたんだけど、
それでも動かなかったので…
基本的な設定がおかしいのかと。
0636nobodyさん2007/05/08(火) 04:18:10ID:???
ブラウザのクッキーがオンになってないんだよ。
0637nobodyさん2007/05/08(火) 04:18:22ID:???
>>635
auto_startがOFFならソース中にsession_start()はあるんだよな?
…という感じで、設定値が正しいかどうかはソースによる。
設定だけ出されても
> Session Support enabled
を見て、使えるかもしれなないね、としか言えない。
save_pathのディレクトリにセッションファイルは生成されてんの?
0638nobodyさん2007/05/08(火) 04:25:38ID:???
貴様の3流ソースなんてパクらねえし、探せば似たようなコードがありふれてんだから
どうどうと晒せよクズ
0639nobodyさん2007/05/08(火) 04:35:11ID:???
晒せだと!?
晒すならお前が晒せよ
0640nobodyさん2007/05/08(火) 04:43:03ID:???
ソースもださずに質問するなっ!!!!
0641nobodyさん2007/05/08(火) 04:46:53ID:???
頭おかしいのかっ!!ふざけんな!!!
0642nobodyさん2007/05/08(火) 04:52:30ID:???
PHP:神の子孫
Perl:漢
asp:いとこ
Ruby:ネカマ
0643nobodyさん2007/05/08(火) 04:53:38ID:???
>>87

>>1の頭に失礼だよ
0644nobodyさん2007/05/08(火) 07:32:02ID:???
>>628
PDO->exec()はほぼSELECT文専用。…というより、コンストラクタコールを
new PDO('sqlite:./test.db',null,null,array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION))
にしとけば何が起きてもすぐ解ると思うよ。
06456322007/05/08(火) 08:11:02ID:???
ソース見せろとのご意見、ありがとうございました。
http://sakuratan.ddo.jp/uploader/source/date39691.zip がソースです
セッションの問題ということで、複数のファイルから構成されていて量があるため
見るほうの負担になるんじゃないかと思ったんですがヨロシクお願いします。
0646nobodyさん2007/05/08(火) 10:45:51ID:???
該当部分だけ抜き出せよ
回答者に対して全部読めとかふざけてんの?
どこが関連部分かすらも分かってないからできないんじゃん
0647nobodyさん2007/05/08(火) 10:55:59ID:???
抜き出せだぁ!?
お前が抜き出せよ
0648nobodyさん2007/05/08(火) 11:02:17ID:???
ガタガタいってんじゃねえぞヘボ回答者ども!!
おまえらが晒せっていったんだぞクズ度も!!!
いいから答えろや!!!
あ、ごめんwwwwおまえらレベルひくいんだっけ?wwwwwwwwwwwww
0649nobodyさん2007/05/08(火) 11:41:50ID:???
ソースめんどくさいから見ないが、
なんとなくPHPのバージョンが悪いんじゃないかと思う。
0650nobodyさん2007/05/08(火) 11:46:45ID:???
2004年のソースか
0651nobodyさん2007/05/08(火) 12:34:19ID:???
>>645
肝心の
chap5
が無いけど
それに本のプログラムを勝手に晒すと著作権違反では
0652nobodyさん2007/05/08(火) 12:55:43ID:???
原因の切り分けができてない証拠だな
0653nobodyさん2007/05/08(火) 13:53:03ID:???
原因の切り分けができるようだったら、そもそも質問しないだろうがw
0654nobodyさん2007/05/08(火) 14:10:32ID:???
じゃつまり切り分けしろってことだな
0655nobodyさん2007/05/08(火) 14:36:56ID:???
printfとsprintf
の違いは何でしょうか?
PHPマニュアルでは、
sprintf:フォーマットされた文字列を返す
printf:フォーマット済みの文字列を出力する
とありますが、意味がよく分かりません。
0656nobodyさん2007/05/08(火) 14:43:43ID:???
フォーマットされた値がほしいだけなのに常に出力されたら困るやんか
0657nobodyさん2007/05/08(火) 14:46:41ID:???
>>656

早速の返信ありがとうございます。
Cと同じで良かったんですね。どうも、お手数お掛けしました。
0658nobodyさん2007/05/08(火) 14:51:18ID:???
本当にわかってるんだかわかってないんだか・・・
0659nobodyさん2007/05/08(火) 15:59:29ID:???
>>645
session_start()して$_SESSIONでI/Oしてるから
特に問題はなさそうな気がするけど
phpinfoでsession.save_pathってどこになってる?
そのディレクトリはちゃんと存在する?
0660虚弱PHP2007/05/08(火) 16:15:27ID:???
>>645
色んなところで$_SESSIONをvar_dumpかprint_rすればどこでデータなくなってるか分かるかと。
0661nobodyさん2007/05/08(火) 16:54:16ID:???
    FOX★公認!今世紀最大の祭り!!!
俺たちのクリックで日本を一位にしようぜ!!
“30年は日本に手は出せないな”という勝ち方をしたい
http://wwwww.2ch.net/test/read.cgi/news4vip/1178602852/

1. チリ 136,836,018
2. ポーランド 135,173,390
3. イスラエル 80,308,719
4. ★日本 71,029,997★
5. スロベニア 56,818,986
6. フィンランド 40,275,252
石を投げる戦争から人は進化・進歩を遂げ、剣や槍などの武器をもって戦うようになった
人間はさらに発展し兵器を使う戦争を始めた
そして今、指先一つを武器とした電脳戦争が勃発したのであった・・・
皇国を勝利へと導くには貴様らの参戦が不可欠である
・戦場
http://www.clickclickclick.com/default.asp
・まとめサイト
http://www33.atwiki.jp/clickvip/
・mixi
http://mixi.jp/view_community.pl?id=2141035
0662nobodyさん2007/05/08(火) 17:50:46ID:8RlmlJO8
こんなスレにまで張られるとは
0663nobodyさん2007/05/08(火) 18:00:01ID:???
日本人は暇人なんだなって思われるだけだな。
0664nobodyさん2007/05/08(火) 18:48:04ID:cGr79y4f
>>662
>>663
レスすんなよカス2匹
0665nobodyさん2007/05/08(火) 19:07:54ID:???
今Sn Uploaderを使って
UpLoader作成して
Upできるようにはなったんだが
ブログにリンクはるとアクセスできませんって
でるんだが
原因なにかわかりますか?
使ってるレンタルHPは
infoseek
0666nobodyさん2007/05/08(火) 19:11:42ID:???
それだけじゃ、全然わからん
0667nobodyさん2007/05/08(火) 19:17:16ID:???
並みのエスパーではわからん。
スーパーエスパーが必要
0668nobodyさん2007/05/08(火) 19:18:21ID:???
すまん
PHPじゃなくてPerlでした
質問とりさげます
0669nobodyさん2007/05/08(火) 19:28:20ID:???
スーパーエスパーもびっくり
0670nobodyさん2007/05/08(火) 19:39:36ID:???
その前に句読点覚えようぜ。頭悪く見える。
0671nobodyさん2007/05/08(火) 19:39:38ID:???
スーパーエスパー3でないと分からんな
0672nobodyさん2007/05/08(火) 20:01:07ID:???
PHPとかPerlの垣根以前の問題だろうに
0673nobodyさん2007/05/08(火) 20:47:26ID:T0+r/ZNA
アクセサについて質問なんですが、
これはプロパティとも呼ばれるもので、
クラス内のprivateメンバ変数が、外部からの操作を直接できないように、
間接的にアクセスするための仕組みなようなものという認識であっていますか?

Javaの参考サイトや、Wikipediaにはこのようなことが書かれていたのですが、
(自分勝手に解釈してる部分があるので、実際に書かれている意図とは違うかもしれません)
某PHP5の解説サイトでは、

>アクセサとは、未定義のメンバー変数やメソッドに対してアクセスがあった場合、
>あらかじめ用意しておいたメソッドを実行する機能である。

といった説明もあったりして、PHPではアクセサの意味が違うのかな?と思っています。
それとも両者とも正しい説明なのでしょうか?

OOPに詳しい方、ぜひこれぞアクセサだという説明をしていただけませんでしょうか?
よろしくおねがいします。
0674nobodyさん2007/05/08(火) 20:50:16ID:???
__getとか見るべ
0675nobodyさん2007/05/08(火) 20:57:31ID:zeXB/nU1
ヘッダに付くPHPのバージョン番号を隠す方法を教えて下さい
前にどこかで見た気はするのですが…
0676nobodyさん2007/05/08(火) 20:58:01ID:???
すいません
PHPを作ってファイルをアップするとき
掲示板はどうしますか?
原因がわかりません・・・
0677nobodyさん2007/05/08(火) 21:00:35ID:???
>>676
日本語でおk
0678nobodyさん2007/05/08(火) 21:03:25ID:???
>>676
超質問だな
0679nobodyさん2007/05/08(火) 21:08:25ID:???
>>675
http://jp.php.net/manual/ja/ini.core.php#ini.expose-php
0680nobodyさん2007/05/08(火) 21:25:36ID:???
>>673
結論から言うとPHPでは意味が違う。
PHPでいうアクセサはマジックメソッドの__get()及び__set()。
これらは存在しないメンバ変数をコール、
または存在しないメンバ変数に割り当てようとしたときにオートコールされるもの。

んで普通アクセサというとその認識で概ね合っている。
Javaだとアクセサとはいうもののただのメソッド
06816802007/05/08(火) 21:27:00ID:???
ごめん途中で送信しちゃった。
Javaだと構造的にはただのメソッドと変わらないような物らしいから、
C#のプロパティとかがアクセサのイメージとしては一番近いんじゃなかろうか。
0682nobodyさん2007/05/08(火) 21:46:16ID:???
__getや__setって本来使うべきものじゃないっしょ?
06836732007/05/08(火) 21:49:04ID:T0+r/ZNA
>>680
どうもお答えありがとうございます。
おかげでモヤモヤがとれました。
イメージが近いとのことなので、早速C#のプロパティについても調べたいと思います。
0684nobodyさん2007/05/08(火) 22:17:43ID:j3fFuUxd
メソッドのforeachとかによく使う配列があんだけど、
毎回そいつをいちいち書くのだるいから、
define("XYZARR",array("X","Y","Z"))ってやったけどだめだったよ。
$GLOBALS["xyz"]=array(ry とかで参照させるしかねぇのかな?
0685nobodyさん2007/05/08(火) 22:18:28ID:???
メンバ変数にすりゃいいじゃない。
0686nobodyさん2007/05/08(火) 22:24:17ID:???
クラスって何なのか分かってない悪寒

(ついでに言えばdefineのページくらい見れよ)
■ このスレッドは過去ログ倉庫に格納されています