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

【PHP】質問スレッドpart33【php】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/02/16(木) 03:19:52ID:xwXojaq/
PHP全般の質問スレです。
【基本ルール】
・新規質問の方は上げてください。age進行でお願いします。
・質問者は2回目以降、最初のレス番号を名前欄に入れてください。
・回答者は質問者に対して>>(アンカー)をつけてください。
・煽り・荒らしは放置。荒らしに反応した香具師も荒(ry
・解決しなくてもこたえてもらったら礼を。
【質問テンプレ】
・マニュアルを調べたか、google検索したか(調べたキーワード)
・タイトル(禁:教えてください!etc) 例:requireとinclude
・内容 例:requireとincludeはどう違うのですか?
・質問する際には環境も明記。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
【PHP マニュアル】
http://www.php.net/manual/ja/
※マニュアル上部の「search for」から検索を活用すべし(便利)。

過去スレ、関連リンク、FAQ等>>2-10辺り
0478nobodyさん2006/03/03(金) 07:26:08ID:???
>>472
elsif -> elseifの置換ぐらいなら問題ないけど =~ であきらめた
sub -> functionも引数の取り扱いや変数のスコープが違って自動では無理
0479nobodyさん2006/03/03(金) 07:35:07ID:???
>>477
<?php
$imageDir = "../img/";
include "header.php";
?>

header.php

<style>
body { background-image: url("<?php echo $imageDir?>bg.gif") }
</style>
0480nobodyさん2006/03/03(金) 11:48:31ID:???
>>468
空気よんだ上でのフォローだと気付いてやれw
0481nobodyさん2006/03/03(金) 11:51:04ID:???
>>464
あさげ、ひるげ、ゆうげ
0482nobodyさん2006/03/03(金) 12:24:21ID:???
>>481
赤出汁の「ひるげ」が好き
0483nobodyさん2006/03/03(金) 14:38:07ID:WgfWnQX6
phpのlinux版ってextフォルダがなくて
php_pgsql.dll
とかがないんですが、どこから入れたらいいんでしょうか?
0484nobodyさん2006/03/03(金) 14:54:20ID:???
>>483
環境によって違うがFedoraCoreのrpmなら
/usr/lib/php/modules
に
mbstring.soやgd.soが入る
0485nobodyさん2006/03/03(金) 15:10:50ID:WgfWnQX6
>>484
あ、環境書かなくて申し訳ないです。
redhat9で、自分でPHP5をコンパイルして入れてます

-------
./configure
--with-apxs2=/usr/local/apache2/bin/apxs
--with-gd
--with-zlib
with-pgsql=/usr/local/pgsql
--enable-mbregex
--enable-mbstring
--enable-trans-sid
--enable-mcrypt
-------

で、入れてるんですけど、modulesもextもないです…。
あとから入れることってできないんでしょうか?
0486nobodyさん2006/03/03(金) 16:42:21ID:???
>>485
ソースのextディレクトリに各モジュールのディレクトリがある
好みのディレクトリに移動して
phpize
./configure --help
./configure --enable-hoge
make
make install

で
/usr/local/lib/php/extensions/*****/
あたりにインストールされる
0487nobodyさん2006/03/03(金) 16:54:06ID:???
>>485
ちなみにコンパイル時に指定したモジュールはphp.soに内蔵されるので拡張モジュールのように別ファイルにはならないよ
0488nobodyさん2006/03/03(金) 16:58:58ID:WgfWnQX6
>>486-487
ありがとうございます!
やってみますー
0489nobodyさん2006/03/03(金) 23:29:21ID:t7JloJn3
学習用に、Windows2000+Apache2.0.55+PHP5.1.2を導入しました。
phpinfo();は表示されます。

print date("Y/m/d");と記述し、foo.phpで保存したものを、直接127.0.0.1/foo.php
とアクセスすると動作するのですが、
var.htmlに<?php print date("Y/m/d"); ?>
を記述し127.0.0.1/var.htmlにアクセスしても表示されません。
httpd.confやphp.iniは確認したのですが、うまくいきません。
原因はどこにあるでしょうか。
0490nobodyさん2006/03/03(金) 23:58:51ID:???
拡張子がhtmlではPHPは実行されません。
0491nobodyさん2006/03/04(土) 00:05:16ID:???
>489
それは普通の振る舞い。apache側で設定すれば実行されないわけ
じゃないけどな。ただそれをするとapacheの負担にもなると。
0492nobodyさん2006/03/04(土) 00:20:09ID:???
phpエディタ使ってるけどphpeclipse入れたほうがいい?
04934892006/03/04(土) 01:45:09ID:aZXPUvQz
そうだったのですか、すみませんでした。
サンプルソースにタグが入っていたので、perl CGIのように呼び出していると
思っていました。ありがとうございました。
0494nobodyさん2006/03/04(土) 01:46:46ID:???
>>492
なんでそう思う?
0495nobodyさん2006/03/04(土) 02:34:26ID:???
>>493
perlも基本的に拡張子がcgiやplじゃないと実行できないよ。
0496nobodyさん2006/03/04(土) 03:07:45ID:???
環境 apach2.20 + php5.1.1

ftp_puts()でファイルアップロードしようとすると
あるサーバーAにはちゃんとアップロードされるのですが
別のサーバーBだと0バイトのファイルが作成され、falseが返ってきます

ftp_nb_put()やftp_pacv()なども試してみましたが状況は同じでした
他に何か試してみるべき事はありますか?
0497nobodyさん2006/03/04(土) 09:27:11ID:???
>>496
パーミッション、ファイルのパスが合っているか、
また念のためソースの一部を書いたほうがわかりやすいと思います。
0498nobodyさん2006/03/04(土) 10:32:48ID:???
A:MySQLサーバ
B:WEBサーバ
A、Bはそれぞれ別のネットワークにあります。
Aのデータベースに接続し、データを取得してきたり
修正したりするPHPプログラムをBに設置し、
B上の Apache のCGI(PHP)から
データの表示やまたは修正を行えるようにしています。

Apache では SSL を使用しているのですが、
この場合、MySQL側でもSSLを使用すべきでしょうか?
Aから引っ張ってくるデータは盗み見されると困る内容ですが、
上の例の場合、どこからどこまで Apache の SSL が
機能するのかよくわからなくなってきました。
0499nobodyさん2006/03/04(土) 12:53:13ID:???
>>496と>>498は違う人だよな?
サーバA、サーバBなんて同じ表現するから紛らわしいだろ。
0500nobodyさん2006/03/04(土) 14:04:48ID:???
>>497
パーミッションやパスが違ってたら0バイトのファイルすら作れない気がする…
0501nobodyさん2006/03/04(土) 14:09:57ID:???
>>498
AとBっってのはグローバルIPを介してHTTPプロトコルでDBデータをやりとりすんのかよ
0502nobodyさん2006/03/04(土) 14:39:20ID:???
$t_string = eregi_replace("(.*)<title([^>]*)>","",$t_string);
$t_string = eregi_replace("</title>(.*)","",$t_string);

htmlソースからタイトル部分だけ取り出したいのですが、
上記のように二段つかっているのを1つにまとめるにはどうすればいいでしょうか。
0503nobodyさん2006/03/04(土) 14:40:31ID:???
>>498
サーバAにはSSLなApacheは入ってないんだろ?
なら当然Webブラウザ-サーバB間のHTTPSに対してのみSSL。
0504nobodyさん2006/03/04(土) 14:49:18ID:???
preg_match('/<title>(.*)<\/title>/i', $t_string, $t_match);
05054982006/03/04(土) 14:53:39ID:???
>>501
グローバルIPを介しますが、
PHPのmysql_connect() を使用する場合HTTPプロトコルでの
データのやりとりになるのでしょうか?
0506nobodyさん2006/03/04(土) 14:57:35ID:???
MySQLはMySQLプロトコルだろ。
ただ、それは暗号化されていない平文。
だから、途中でsnoopされたりするのが心配だってことだな。

MySQLプロトコルを暗号化するのは聞いたことがない。
どちらにしても、鯖側にも何かモジュール入れないと無理そうだけどな。
05074982006/03/04(土) 15:09:05ID:???
[ブラウザ]---[Apache]---[MySQL]
ブラウザとApacheの間はSSLで暗号化されるのでいいとして、
問題はApacheとMySQLの間ですよね。

>>506
この場合、
ttp://itpro.nikkeibp.co.jp/members/ITPro/oss/20050819/166553/
のようにMySQLでSSLを使用するのと、PHPからMySQLへ接続することは
別問題なのでしょうか?
0508nobodyさん2006/03/04(土) 15:50:49ID:???
>>507
なんか色んなところでマルチしてないか?

>別問題なのでしょうか?
いや同じ話だよ。ただPHPのmysql関数ではSSLを使う仕組みが
デフォでは無いので、拡張版のmysqli関数を使ってSSLの設定をする。
あとPHPのコンパイルでSSLも要るな。
05094962006/03/04(土) 17:58:12ID:???
>>499
紛らわしいので以下のように表現を変えます
サーバーA → サーバー1
サーバーB → サーバー2

>>497>>500
こんな感じでやっています

//HTML部
<form method="post" action="script.php" enctype="multipart/form-data">
<input type="file" name="up"><br>
<input type="submit" value="upload">
</form>

//PHP部
$name = "./".$_FILES["up"]["name"];
if ( !($ftp = @ftp_connect($host)) ){echo "connect error";}
if ( !@ftp_login($ftp,$user_id,$user_pass) ){echo "connect error";}
ftp_pasv($ftp,false);

if( @ftp_put($ftp,$name,$_FILES["up"]["tmp_name"],FTP_BINARY) ){
echo "<br>success";
}
else {
echo "<br>error";
}

ftp_close($ftp)
サーバー1、2ともパーミッションは755で、パスはユーザーのルートディレクトリです
あと最初に書き忘れましたが、FFFTPなどを使った場合はどちらも普通に操作できます
0510nobodyさん2006/03/04(土) 18:20:02ID:WPEf+PS6
include
require
require_once

の使い分けはどういう時に有効ですか?
0511nobodyさん2006/03/04(土) 18:30:25ID:???
全て*_onceを使うのがPEAR標準。

includeとrequireは、
どんな条件下でも必ず評価されるものにはrequire
ある条件下で評価されない可能性がある(if文など)場合はinclude

理由はマニュアル嫁。
0512nobodyさん2006/03/04(土) 18:33:47ID:???
>>509
そのアップロードによって生成されているテンポラリファイルは確認してみた?
move_uploaded_fileして、一旦どこかに保存してやってみるとか。
0513nobodyさん2006/03/04(土) 18:37:49ID:???
>>510
>>1
05145102006/03/04(土) 18:48:08ID:WPEf+PS6
ヘルプなんか読んだ上で質問してるわ。
具体的にどう使い分けるの?
分からないなら答えなくていいよ。
どうせ分かってないでrequire_once使ってんだろ。
0515nobodyさん2006/03/04(土) 18:53:29ID:???
>>514
君、向いてないから止めた方がいいと思うよ
0516nobodyさん2006/03/04(土) 18:55:50ID:SB9snESx
PHPのバージョンは4.3.11ですが、統計処理用の関数はどこにあるのでしょうか?
標準偏差や相関係数をJAVAではなくphpでやりたいのですが。
0517nobodyさん2006/03/04(土) 18:56:32ID:SB9snESx
PHPのバージョンは4.3.11ですが、統計処理用の関数はどこにあるのでしょうか?
標準偏差や相関係数をJAVAではなくphpでやりたいのですが。
0518nobodyさん2006/03/04(土) 19:00:12ID:???
>>514
正直俺もイマイチわからんので、わかったら教えてください

>>515
そういう無駄なことはいわなくていい。回答する気がないならスルー汁
0519nobodyさん2006/03/04(土) 19:12:16ID:???
>>514
俺も良く分からないまま使ってる

>>515
君の方が向いてないから止めた方がいいと思うよ

>>514は良く分からないまま使ってることが嫌で質問してるんだよ
これこそ向いてるでしょ

0520nobodyさん2006/03/04(土) 19:30:31ID:???
あのマニュアルを読んで判らない奴に何をどう説明しろと?
0521nobodyさん2006/03/04(土) 20:03:21ID:???
>>511じゃ不満なのか?
まさに511の言う通りだと思うのだが。
0522nobodyさん2006/03/04(土) 20:26:32ID:???
>>510,514,518,519
>>511が良回答。たぶんおまいらがこれ以上居座ると空気悪くなるのでくだらない発言は控えてもらえると助かる。

http://www.php.net/manual/ja/function.include.php
http://pear.php.net/manual/ja/standards.including.php

この2箇所読んでも不満や疑問があるならまた来ればいい。
とは言ってもpear標準は絶対必須というわけではないので、エラーの扱いについて正しく理解した上で明確な理由があるなら別の使い分けをしてもかまわない。
05234962006/03/04(土) 20:31:16ID:???
一応解決(?)したので報告を

スクリプトを他のサーバー3に置いて実行してみたところ、サーバー2にもアップロードできました
(サーバー1からスクリプトを実行しなかったのはFTP関数の使用が規制されているため)

どうもサーバー2からは自分自身にアップロードできないようです

スクリプトの不備ではなくサーバーの設定関係の問題のようなので
今後は自力でそっちの方を当たってみます

ありがとうございました
0524nobodyさん2006/03/04(土) 20:32:43ID:???
>>516
peclでこんなのあるけど。
http://www.php.net/manual/ja/ref.stats.php
0525nobodyさん2006/03/04(土) 20:48:34ID:aGprecBm
定数を文字列に直接埋め込むにはどうすればいいんでしょうか?

define('hoge', 'string');

echo "hoge is {hoge}";
echo "hoge is {'hoge'}";

↑どっちもダメでした。

0526nobodyさん2006/03/04(土) 20:52:07ID:???
掲示板スクリプトをPHP+MySQLで作っています。
投稿用テーブルkakikoにuser_idがあるのですが、ユーザ名が格納されているのは
ユーザテーブルusersの中のuser_nameです。

書き込み表示の時にユーザ名を表示させたいのですが、一旦kakikoからuser_idを取ってきて
その後にuser_idがある分だけusersからuser_id -> user_nameのSELECT文を発行しないと
いけないのでしょうか…
何かすごくマヌケなことをしている気がするのですが、これしか思いつかないもので…

user_id -> user_nameの関数を用意しても結局同じ数のSQLを発行しますよね

みなさんはどうやっていますか?
05275262006/03/04(土) 20:53:09ID:???
>>525
echo "hoge is ".hoge;

普通大文字にすると思うけど。
echo "hoge is ".HOGE;
0528nobodyさん2006/03/04(土) 20:53:45ID:???
>>525
残念ながらPHPだと文字列リテラルに定数いれられないんです。
echo 'hoge is ', hoge; でがまんして。
0529nobodyさん2006/03/04(土) 20:59:35ID:???
>>526
ユーザが比較的少ないなら、不要なものも入るけど
一括して最初に全部取ってきたら?
0530nobodyさん2006/03/04(土) 20:59:47ID:???
>>526
sqlの話なのでスレ違いだけど
select * from kakiko, users where kakiko.user_id = users.user_id and なんちゃらかんちゃら
0531nobodyさん2006/03/04(土) 21:00:39ID:aGprecBm
>>526
ヒアドキュメントの中で使いたいのですが
それだとソースがぐちゃぐちゃになっちゃいそう

>>527
無理ですか…

05325252006/03/04(土) 21:01:26ID:???
>>531 名前入れ忘れました
0533nobodyさん2006/03/04(土) 21:09:50ID:???
>>531
$hoge = HOGE;

$heredocument = "$hoge";
じゃダメ?

>>530
まだ理解できていないですけど、ちょっとやってみます。
0534nobodyさん2006/03/04(土) 21:14:07ID:SB9snESx
>>524
>peclでこんなのあるけど。
>http://www.php.net/manual/ja/ref.stats.php
php5.1以上ではphp_stats.dllをダウンロードして使えるようだが
それ以前ではだめみたいだね。実際php_stats.dll(5.12)を
試したが拒否された。



0535nobodyさん2006/03/04(土) 21:20:38ID:???
>>525
変数のパース
http://www.php.net/manual/ja/language.types.string.php#language.types.string.parsing
定数≠変数。定数がパースされないのは無難な仕様だと思うけど。
0536nobodyさん2006/03/04(土) 21:36:26ID:???
>>531
あとヒアドキュメントでも
http://www.php.net/manual/ja/language.types.string.php#60971
この手がいけるかと思う。でも
>それだとソースがぐちゃぐちゃになっちゃいそう
が気になるなら、早々に何らかのテンプレートシステムを導入。
0537nobodyさん2006/03/04(土) 21:39:43ID:???
>>530
やってみたらできました。
ありがとうございましたー。
0538nobodyさん2006/03/05(日) 03:26:56ID:???
>>514
俺は同じプログラムでrequire_onceとrequireとincludeは使い分けてるけど
include_onceだけまだ使ったことないや。そういえば。
0539nobodyさん2006/03/05(日) 11:55:08ID:???
俺はrequireとinclude_onceしか使わなかったりする
include_onceでPHP5のラッパー関数を定義しといて
PHP4の環境でも同じソースで済むようにしてる
0540nobodyさん2006/03/05(日) 14:06:29ID:???
Vineにて録画サーバを構築、2G超えのファイルをダウンロードすべく
自分でスクリプト書いてみたが、どうもうまく動かない・・
filesizeの取得がマニュアルによると「sprintf("%u", filesize($file))で2G越え
てもいけるぜ」と書いてあるけど、エラーで取得できず。
おまけにfopenでファイルも開けずエラー。
どうしたらよかとですか。
教えて、エロイ人。
0541nobodyさん2006/03/05(日) 14:25:52ID:???
>>540
「うまく動かない」→どう動かないんだ?
「エラー」連呼→エラー文はコピペしろ。

上記を踏まえて・・・ダウンロード、filesizeとか言ってる辺りから推測すると、
まさか、その1ファイルを全部PHPのメモリ上に乗せてから出力させてんのか?
それならロジックを変えるか、実装メモリを増やしてPHPのメモリ設定変更。

・・・どう考えても後者は実用的じゃないがな。
0542nobodyさん2006/03/05(日) 15:05:43ID:???
>>540
2Gのデータが一括で扱えるようにPHPのメモリーリミットを
設定してないからではないか?
0543nobodyさん2006/03/05(日) 16:36:09ID:???
>>541
エラー内容はファイルサイズ取得で
「filesize() [function.filesize]: stat failed for ***」とでます。
fopenも同じエラーです。

メモリに一気に乗せるロジックではなく、freadでループさせて
吐き出そうとしてますが、それ以前の問題なんでつorz

>>542
PHP.iniのリミットのことですか。
ファイルサイズ取得、ファイルオープンと関係あるんでしょうか。
0544nobodyさん2006/03/05(日) 18:11:30ID:???
何でぼかすかな
>>5行きか?
0545nobodyさん2006/03/05(日) 18:55:22ID:???
>>544
***のところはファイル名です(録画済ファイル)
具体的には
「filesize() [function.filesize]: stat failed for /video/1003_20060303220000_20060303225400.nuv」
のような感じです。
書くと、長くなるためとファイルの扱いに関係がないと思われたため記述を控えました。
0546nobodyさん2006/03/05(日) 19:12:45ID:???
>>545
ext\standard\filestat.cの中だけど
if (!IS_EXISTS_CHECK(type) || (errno != ENOENT && errno != ENOTDIR)) { /* fileexists() test must print no error */
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Lstat failed for %s (errno=%d - %s)", BG(CurrentStatFile), errno, strerror(errno));
}
なので、'/video/1003_20060303220000_20060303225400.nuv’がfilestatusを取るのに
相応しくないだけっぽいな。
実際にそのファイルはあるの?(これは他のエラーになる筈だから違うか)
絶対パス指定ではどう?パスを短くしてみたらどうなる。

>>543
いや、エラーの詳細が判ったので今のところ関係ないと思われる<リソースリミット
05475462006/03/05(日) 19:18:13ID:???
ごめん、全然違うものみてた。
0548nobodyさん2006/03/05(日) 19:25:31ID:???
>>546
ファイルは実際存在し、ファイルサイズの小さなもの(60M程度)を
ダウンロードしてみるとダウンロードはできます(データも問題なし)。
パーミッション、オーナーともにダウンロードできるファイル
と同一のため問題なく思われます。
パス指定は現在絶対パスで行っています。
値はGETで取得、これも問題なく取得できています。

書き忘れましたが、apacheのバージョンが1.3.33、PHPのバージョンが5.1.2
です。
ああ、どうしたらよいものやら・・orz
0549nobodyさん2006/03/05(日) 19:32:50ID:???
1.3.34にしてみなさい
0550nobodyさん2006/03/05(日) 19:37:53ID:???
2.0.55にしてみなさい
05515462006/03/05(日) 19:39:21ID:???
PHP5.1.2の貼っとくよ。
#define IS_EXISTS_CHECK(__t) ((__t) == FS_EXISTS || (__t) == FS_IS_W || (__t) == FS_IS_R || (__t) == FS_IS_X || (__t) == FS_IS_FILE || (__t) == FS_IS_DIR || (__t) == FS_IS_LINK)

if (php_stream_stat_path_ex((char *)filename, flags, &ssb, NULL)) {
/* Error Occured */
if (!IS_EXISTS_CHECK(type)) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "%sstat failed for %s", IS_LINK_OPERATION(type) ? "L" : "", filename);
}
RETURN_FALSE;
}

メッセージに変更はあるけど、別にチェックは余り変わってないな。
0552nobodyさん2006/03/05(日) 20:13:54ID:???
ちら読みしたけどわかんね。http://bugs.php.net/bug.php?id=27792 かもね。
でもエラーは「filesize() [function.filesize]: stat failed for /video/1003_20060303220000_20060303225400.nuv」なんでしょ?
0553nobodyさん2006/03/05(日) 23:08:03ID:???
もりこもりこー
0554nobodyさん2006/03/06(月) 10:35:47ID:???
実はPHPはstat64を呼んでなかったりして。>>552のバグレポート読んだ感じからして。
勘だけど、statした結果のファイルサイズ(st_size)が2GB以上だと符号付で見なしたときに負の値になって、PHPがどっかでエラーチェックのつもりで0と比較してエラーフラグ立ててるとか、どうせその手のアフォな話だと思うね。

>>540
というわけで、現時点ではPHPで2GB以上のファイルは扱えない、といったところか。

そもそもPHPのintはCのintそのままだからそこらのプラットフォームでは0x80000000以上の数値扱うこと自体に無理があるんだよな。
PHP6では多倍長整数がサポートされることを祈ろう。
0555nobodyさん2006/03/06(月) 11:31:40ID:???
>>554
マニュアルにあえてsprintf("%u")での対処方法が書いてあったところを見ると、
元々はstatの戻りをstringによる数字で扱ってて、うまく動いてたんだろうな。
ところがそれを忘れて改良してしまった部分があって今は動かなくなってしまった、
という可能性が高そうだな。PHPじゃよくある話だし。
0556nobodyさん2006/03/06(月) 16:14:07ID:???
>>554
intといったらshortの場合もあるし、longと言った方が適切では。
0557nobodyさん2006/03/06(月) 17:28:12ID:???
>>556
あーphpのintはcのlongだった。訂正。
intはcの標準上よろしくない罠。
0558nobodyさん2006/03/06(月) 17:34:37ID:zhIGepD3
ひとつ疑問に思ったのですが
fopenでファイル開いた後 fclose で閉じなかったら
どんな悪影響がでるんですか?
0559nobodyさん2006/03/06(月) 17:37:15ID:???
同じプログラム内で大量にfopenしてたらリソース使い切って致命的エラーになるかも。
あと、書き込みしたままfcloseしてなかったらプログラム終了までフラッシュされずに
ファイルが破損する確率が上がるかも。
flockしっぱなしで放置するとプログラム終了まで他のプログラムがアクセスできなくなるかも。

そんなもんか?
0560nobodyさん2006/03/06(月) 17:48:22ID:???
>>558
まあ基本的にはOSが閉じ忘れを面倒見てくれる(もしくはPHPもやってくれるかな?)から大したことはないってのもある。
人によってはfopenしたのにfcloseしていないプログラムに気持ち悪さすら覚えるらしいことも頭に入れておくべし。
0561nobodyさん2006/03/06(月) 19:45:27ID:???
あるプログラムで
Web経由で起動しとったらURIを、コマンドラインから起動しとったら
コマンドラインを標準出力に吐き出したいんだが
ちからづくでならなんとかなったんだけど
格好良く書くナイス方法は無いかな
0562nobodyさん2006/03/06(月) 19:56:51ID:???
>>561
日本語で書け
0563nobodyさん2006/03/06(月) 20:08:13ID:???
>>561
$msg = @ $_SERVER['REQUEST_URI'] or $msg = @ implode(' ', $argv) or $msg = 'おてあげ';
echo $msg;
てこと?
0564nobodyさん2006/03/06(月) 20:42:24ID:???
>>562
ワロタ
05655612006/03/06(月) 21:13:35ID:???
>>563
ヒントありがとう
それそのままだと1とか出ちゃったから
それヒントに姉ちゃんがんばるわ
0566nobodyさん2006/03/06(月) 23:11:58ID:6wJc3dTK
sakura.html の中に
<?include("print.php");?>
と書かれているとします。
この時print.php側で「sakura.html」のURLもしくはパスを取得し表示する方法はありますか?

$url = getenv('REQUEST_URI');
print $url;

とやってみた所
「print.php」が表示されてしまいます。
0567nobodyさん2006/03/06(月) 23:27:25ID:???
$_SERVER['PHP_SELF']
$_SERVER['REQUEST_URI']
0568nobodyさん2006/03/06(月) 23:35:52ID:???
>>566
sakura.htmlってのはPHPじゃないよね。
PHPのincludeはあくまでも、その場所にPHPのコードを
挿入するのと同じ動作だから。
|「print.php」が表示されてしまいます
とはならない。
0569nobodyさん2006/03/06(月) 23:42:05ID:???
>>567-568
すいません。includeの中身を
include ("http://***.com/print.php");
とURLで指定してました。
相対パスに変更した所、うまく動作しました。
0570nobodyさん2006/03/07(火) 08:25:04ID:???
>>569
付け加えるとincludeファイルは
webで見えない場所の方がセキュリティ的に良いと思う
0571皮先くん ◆N3i.Qu1SoY 2006/03/07(火) 09:35:07ID:W7VIXknd
【福島】逮捕された産婦人科医師を救え4
ttp://society3.2ch.net/test/read.cgi/hosp/1141605385/
不当にタイーホされた産婦人科医をなんとか救い出そうと思います。
同じ医師としてこのような不当タイーホは絶対に許せません。
参考
ttp://www.kaog.jp/20060306top.htm

そこで、PHPを使って署名をつのりたいのですが、
これをたたき台にして可能でしょうか?
ttp://oresama.hopto.org/~sheel/phptest/formtest/form.php
問題は、これで署名されたあとにどのようにして
整形されたhtmlをたたき出すか、という点です。
それと可能なら現在までに集まった署名の数をリアルタイムで
表示させたいのですがどうしたら可能でしょうか?
0572nobodyさん2006/03/07(火) 12:38:46ID:???
ぷぎゃー
0573nobodyさん2006/03/07(火) 12:40:35ID:???
「整形されたhtmlをたたき出す」がわかりません。
もっと具体的に。
0574nobodyさん2006/03/07(火) 13:49:50ID:???
>>573
>>313
0575皮先くん ◆N3i.Qu1SoY 2006/03/07(火) 13:56:43ID:HRxo4IHm
>>573
返答ありがとうございます。

署名文の入力は
http://oresama.hopto.org/~sheel/phptest/formtest/form.php
こちらで完了し、submitボタンをクリックすることで
text.batにどんどん追記されていく仕組みまではつくりました。
問題は、追記されていくtext.batをどのようにデータベースとして
取り扱うか、という点です。
CSV形式で追記していけばあとでいろいろと使えますか?

最終的にはたまった署名文を福島県警に郵送する予定です。
0576nobodyさん2006/03/07(火) 14:30:48ID:???
名簿業者から名簿買って転送すりゃいいよ。
0577nobodyさん2006/03/07(火) 17:25:02ID:???
関数で、変数の参照を返すことって出来ますか?
■ このスレッドは過去ログ倉庫に格納されています