【PHP】質問スレッドPart3
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
02/02/17 13:23ID:N+9Uw5dE答えられる方、返答よろしくお願いします。
<<参考リンク>>
■本家
http://www.php.net/
■PHP日本語マニュアル
http://www.php.net/manual/ja/
■JapanPHPUsersGroup
http://www.php.gr.jp/
■PHP日本語ページ
http://www.cityfujisawa.ne.jp/~louis/apps/phpfi/index.html
■Pearのドキュメント
http://phpdocu.sourceforge.net/peardocs/
<<過去スレ>>
■【PHP】質問スレッドPart1
http://ebi.2ch.net/test/read.cgi/php/982687820/
■【PHP】質問スレッドPart2
http://pc.2ch.net/test/read.cgi/php/1003283567/
<<教えて君>>
■ここ見習って書き込んじゃ、駄目よ
http://pc.2ch.net/test/read.cgi/unix/1011345180/242-245
0281教えて君
02/03/13 22:24ID:???ほんとだ。
http://www.php.gr.jp/php/php4/new_features.php3
にも書いてアターヨ。スマソ。
0283nobodyさん
02/03/14 02:19ID:80hRLeB+0284nobodyさん
02/03/14 02:21ID:80hRLeB+教えて君でスマソ
0285名無しさん
02/03/14 02:27ID:???0286283
02/03/14 09:31ID:n8zcTGGh通常はコミットしてます。スマソ。
ようするにエラーでたときにコミットせずに exit してるって事です。
0288nobodyさん
02/03/14 14:37ID:7AlJ59cB0289283
02/03/14 16:53ID:n8zcTGGh実際にはデータチェック → データ登録の
データチェックの部分でエラー出してるんで
ロールバック必要ないかな?と思ったりしてるんですが、やっぱり必要ですか?
0290nobodyさん
02/03/14 16:55ID:5LxluOYT0291ななし
02/03/14 18:15ID:???3択クイズってやっぱりこれがいい?
0292nobodyさん
02/03/14 18:32ID:???やはり「データベースの勉強」は必要かも。
何のためにトランザクション使っているのか分かってないでしょ。
仮に今のそのシステムでトランザクションなしにして、不都合ある?
0293283
02/03/14 18:43ID:n8zcTGGhトランザクション開始
↓
フラグチェック
↓
データ更新
↓
トランザクションコミット
って、やる所を
トランザクション開始
↓
フラグチェック
↓
エラー
↓
exit
って、なんだけどコミット(ロールバック)は要るか?って事で
insert 文や update 文は発行してないから無くてもイイかな?って思うんだけどやっぱダメ?
0294283
02/03/14 18:47ID:n8zcTGGhデータチェックって入力されたデータのチェックでなくて
DBに格納されてるデータのチェックね。フラグとか
0295教えて君
02/03/14 21:48ID:???みんな出直してこい、ってんじゃん。
なんでそんなことで悩んでるんだ?
他にもっと重要なことがあるだろ。
不安ならrollbackすればいいだろ。
自分で考えられないなら、向いてないから辞めちまえ。
0297nobodyさん
02/03/15 04:28ID:sSRdthigecho 'ls';
とかじゃダメ?
0299nobodyさん
02/03/15 10:17ID:???例えばクエリー文字列を取得する場合に
$QUERY_STRINGだけではダメなんですか?
$_SERVER["QUERY_STRING"]とすると大丈夫ですが。
マニュアルの注意書きにある、コマンドラインからでないと使えない変数ってやつ??
0300教えて君
02/03/15 11:22ID:jXzuFDrgClipPDF と libpdf ってどちらがオススメですか?
OS は FreeBSD4,5R、PHP は 4.1.2 です。
0301nobodyさん
02/03/15 16:50ID:zj9b84BUPerlだったら
$stars = '☆' x 4;
ってやれば"☆☆☆☆"って出来たのですが
PHPだとうまくいきません。
4回足せば?
0303nobodyさん
02/03/15 18:42ID:???0305ほげ
02/03/15 19:01ID:mEJywi54コンピュータ
を窓から投げ捨てろ
制限時間を10秒にしろ。 ターイム・ショック!
0313nobodyさん
02/03/16 00:38ID:bJHnWes8php.iniで、register_globals=Onにすれば従来どおり。
0314nobodyさん
02/03/16 01:51ID:d8wgePDM無理でしょうか?
C-BOARD
http://skully.lib.net/atman/c-board3/c-board.cgi?cmd=qvh;hue=0;saturation=
ここまで凄いものではなく、簡単なものでいいんですが
いろいろ探しても、GDが必要なものばかりなので。
0315nobodyさん
02/03/16 01:59ID:???ひみこーどがそうだっけ?
0316nobodyさん
02/03/16 03:35ID:rfiYtYN+以下のファイルがあったとします。
<!-- test.php -->
<img src="./log.cgi?ref=<?php echo getenv("HTTP_REFERER"); ?>">
これの実行結果を変数に入れようと
$bar = include("test.inc");
echo $bar;
とやってもうまくいきませんでした。
fread 関数では処理されずにソースコードがそのまま入れられてしまいました。
方法があれば教えてください。
0317へなちょこ
02/03/16 06:14ID:ZL3U7heyソースが丸見えになってしまいました。
他のサイトのPHPファイルは正常に表示されるのですけど、
自分のサイトのPHPファイルを見るとソース丸見えという状態です。
ちなみにローカルだとどのブラウザでも表示されるんです。
これはどういったことが原因なのでしょうか?
0318317
02/03/16 06:44ID:???0319 ◆AngelBlk
02/03/16 10:03ID:QdJopNnKoffがいいのはわかってるし、利用者が自分だけならいいんだけど
サーバ利用者にその辺のサイトで配ってるスクリプトを
使いたいっていう人がいるとちょっと問題。
まあ、簡単な書き換え方法もあるけど・・・うーん。
0320nobodyさん
02/03/16 10:24ID:???0321nobodyさん
02/03/16 10:25ID:???よると思うけど、offってた方が絶対いいよ
0325nobodyさん
02/03/16 23:56ID:w4jnixRumbereg_replace の e オプションはどういう風に使うのでしょうか?
実は、ある文字に囲まれた文字列がデータベース上に
存在しているかをチェックしてから、その文字列を置換
したいのですが、mbereg_replace の説明を見ると、
「eを指定した場合、置換文字列をPHPの式として評価します」と
記載されているので、これが使えないか、と考えてるのですが
このオプションを使ったサンプルが見つからなくて・・・
どなたかお願いします。
0326nobodyさん
02/03/17 02:26ID:QsNQTCic$string = 'あいうえおかきくけこさしすせとたちつてと';
$replaced = mbereg_replace('おかき', '$hoge', $string, 'e');
こんなんでどう?
0329325
02/03/17 04:00ID:???ありがとうございます。なるほど・・・。
$hogeの代わりに\1を引数に関数を呼んで、置換文字を
返すようにしたら、望み通りの動きをしてくれました。
さんくすです。
0330nobodyさん
02/03/17 21:17ID:cMXiknvMスクリプト中でタイムアウト設定を
set_time_limit(0);
ignore_user_abort(1);
とやってますが、長い処理をやらせると300秒で中断してしまいます。
apacheの httpd.conf 内で Timeout を増やせばその分長くなることがわかりました。
しかし .htaccess にTimeoutディレクティブは書けず(エラーになりました)、
「ここだけtimeout増やしたい(or timeoutさせたくない)」というのをどうやって
実現するのかがわかりません。
使用しているのはPHP4.1.2+apache1.3.22です。
どなたか助言を・・・
0331nobodyさん
02/03/17 23:23ID:RVb4+mVnあらかじめ用意したpdfファイルを二つ以上結合し、
ひとつのpdfファイルとして出力することは可能ですか?
可能であれば是非教えてください。
可能だけど、A+B=A になっちゃうな。それでもいい?
0333nobodyさん
02/03/17 23:35ID:RVb4+mVnA+B=A
っということは、結合後のPDFファイルを表示したときの内容は変化しないということですか?
表示時にAもBも両方表示させたい場合はダメでしょうか?
0334nobodyさん
02/03/18 01:28ID:eemTiEMOそのため軽いCGIを作らなければいけないのですが、
PHPはかなり軽いと聞きました。
たとえばCで書いたCGIと比べてどうなのでしょう?
現在は、CGIはPerlで書いたことがあるくらいです。
0335nobodyさん
02/03/18 01:53ID:FbIeGRWPCGIに勝つのはなかなか難しいでしょう。
CGIのプロセスforkのオーバーヘッドはFastCGIなどで
改善できますので、ぎりぎりまでチューンしなければ
ならないのならば、Cで書いたほうが無難です。
本当にそこまでのチューンが必要なのかどうかが実は
大事なところですが、書き易さやデバッグ・テスト・
メンテナンスのし易さなどに重きを置くなら、PHPは
良い選択肢の一つになるでしょう。
0338nobodyさん
02/03/18 13:21ID:???ほうがよいのでは?
機械語っていう表現がネタっぽいけど、真実はそのとおり。
だけどメンテするのはだれだ?
俺はいやだ。 保守性と速度のトレードオフじゃん?
0341nobodyさん
02/03/18 14:20ID:9HrxD1ngCPANの膨大なライブラリを利用できる分
mod_perlの方が良さげに思える。
0342nobodyさん
02/03/18 14:54ID:???わたしの知るかぎり、
mod_perl の長所は、8バイト
PHP の短所は、3バイト
0343nobodyさん
02/03/18 15:00ID:???これのphp版を探してるんだけど、知らない?
cgiから呼び出ししたいんで、imgタグでないとダメなのよ。
おまけに、php鯖とcgi鯖は別の所にあるから。
日に3万ぐらい呼び出されるんで、cgiだと鯖が圧迫されちまうんで、軽いphpに乗り換えたいのよ。
0344nobodyさん
02/03/18 15:06ID:???どーでもいいことだが
そのphp鯖ではGDがインストールされてるかね?
使えなかったらIMG呼び出しのカウンタは使えんぞい。
0345337
02/03/18 15:37ID:???結局どうなんですか?
共用サーバーでできる方法限定で教えてください。
CGI起動にかかる負荷はどれくらいなんですか?
PHPとCのCGIで比較した場合。
0346nobodyさん
02/03/18 15:59ID:Q2ChloQCphpで添付ファイルをMINEエンコードするにはどのようにしたらいいのでしょうか?
検索をかけてみたところ、国際化されているphpが前提、のような
サイトばかりでてきてしまいました。
また、添付ファイルを扱うようなクラスや関数などありましたら
紹介していただけないでしょうか。
よろしくお願いいたします。
0347nobodyさん
02/03/18 17:11ID:???管理者に聞いてみたけど、使えるって。
>343に書いたcgiカウンタのphp版、知ってませんか?
0348334
02/03/18 17:26ID:eemTiEMOありがとうございました。
決して開発時間に余裕があるわけではないので、
PHPで行こうと思います。
それで問題が出たら、負荷の軽い方法で順次リプレースしていけば
いいわけですしね。
0349名無しさん
02/03/18 17:56ID:???0350nobodyさん
02/03/18 19:17ID:9HrxD1ng名前以外には違いがないんですか(w
中間コードをメモリに置けばかなりいけるような・・・。
うちだとcore吐いてapacheおちちゃうけど(苦笑
現在、PEARを色々使ってみよう週間中。
PEAR-Authうまくいかない・・・。
サンプルが少ないのはきついよ。
0352nobodyさん
02/03/19 05:14ID:???$result = $hoge->var;
$hogeにはオブジェクトが返されるんですが、これを一行で
$result = $obj->method()->var
みたいな感じには書けないですか?
じゃあ自分何か決定的な勘違いしてるのかな・・・。
PHP4.1.2/register_globals=offの状態、
/usr/local/lib/php/Auth/Auth.phpに入れていて
DB「hoge」に「master_auth」テーブルを作り
そこに「id」と「pass」という項目に
アカウントとcryptでMD5かけたパスいれて
require_once ('Auth/Auth.php');
function loginFunction($username, $status){
(サンプル通り。省略)
}
$dsn = "mysql://mysqlのid:mysqlのpass@localhost/hoge";
$auth_params = array(
"dsn" => "$dsn",
"table" => "master_auth",
"usernamecol" => "id",
"passwordcol" => "pass"
);
$a = new Auth("DB",$auth_params, "loginFunction");
$a->start();
if ($a->getAuth()){
echo "認証に成功したよー";
}else{
echo "失敗してるよ〜";
}
こんな感じ。
mysqlの接続はうまくいって、フォームは出るんだけど
認証に成功しない。
間違いあったら指摘よろしくっす。
0357名無しさん
02/03/19 09:34ID:???0358名無しさん
02/03/19 09:36ID:???自分で色々やっても出来ないから質問してるだけですよ。
>357
echo "<input type=\"text\" name=\"username\">";
echo "<input type=\"password\" name=\"password\">"
って感じにサンプルそのまま。
(というか、username/passwordしか駄目なんですよね?)
>358
一応、生のパスワードをDBに入れて試してみたんだけど
うまくいかず・・・。
とりあえず、時間ある時にやってみます>自分でmd5
//って、MD5で入れて自分でMD5にするのが正解なのかな・・・。
//ソースのコメントみたら
// 'passwordcol' => $column_with_md5_pw
//って書いてあったし。
//というか、これ認証自体はどこでしてるものなんだろう・・・。
0360nobodyさん
02/03/19 15:20ID:???0362nobodyさん
02/03/19 15:53ID:???条件にマッチしたもののリストをまず配列に作り、次に全件に対してwhileかforeachでループを行い、
その条件に当てはまったらnext;、当てはまらなかったらprint
0364nobodyさん
02/03/20 02:17ID:0gbAx4e0読むだけで勉強になるぜー。
0366nobodyさん
02/03/20 02:37ID:???0367nobodyさん
02/03/20 03:21ID:WjKXVqhvperlで書くと上のようになるスクリプトをPHPで書きたいのですがどのように書けばよいのでしょうか?
0368nobodyさん
02/03/20 03:37ID:???0369nobodyさん
02/03/20 03:54ID:vOH6bAl6反対も欲しいよ。
Perlで書いて「PHPで書くと・・・」
うまい感じのスレにして下さい
0370nobodyさん
02/03/20 04:10ID:???------------------------------------------------------
「Perlではこう書くんだけど、PHPではどう書くの?」
とか、逆に
「PHPではこう書くんだけど、Perlではどう書くの?」
ってな質問用スレッドです。
質問はスクリプトの丸投げをせずに、必要最小限のみでしてください。
------------------------------------------------------
ってな感じ?
0371nobodyさん
02/03/20 04:11ID:vOH6bAl6スクリプトの丸投げかぁ。それされると萎えるよね、確かに。
0372nobodyさん
02/03/20 08:44ID:???0373nobodyさん
02/03/20 17:59ID:hVtSV1Suここで聞くほどでもないような初歩的な質問はどこにすればいいのでしょうか?
本やWebで調べればいいと思うよ。 何事も勉強。
それで判らなかったら、ここで聞けばいいし。
0375nobodyさん
02/03/20 18:54ID:GUsWp33Xレスがついたら上がるようにするにはどんな動作をさせればよいでしょう?
0377die
02/03/21 00:39ID:LqA6LiGp馬鹿にされる傾向にあるね。
「PHPなんてむっちゃ簡単じゃん!」とか言うけれど
どんな言語もそれなりの事をしようとすれば、
それなりに大変なんだと感じてるんだけど。。
みんなもこんな風にムカツイタ経験ない?
0378nobodyさん
02/03/21 01:59ID:ZJLyYdJYpreg_match()とlist()のマニュアル見れ。
http://www.php.net/manual/ja/function.preg-match.php
http://www.php.net/manual/ja/function.list.php
それで分かんないなら、PHPで書くのやめてPerlにしれ。
0379nobodyさん
02/03/21 04:08ID:IEuenbIbどのようにすればきちんと計算できますか?
任意精度数学関数は使えないようです。
0380nobodyおっさん
02/03/21 05:19ID:???1024 + 11183317819 / 1024
これでどうでしょう? PHPやったことないから / 演算子があるかどうかわからないケド
■ このスレッドは過去ログ倉庫に格納されています