【PHP】質問スレッド Part4
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
02/06/02 15:32ID:f3afNVBG<<参考>>
■本家
http://www.php.net/
■日本 PHP ユーザ会
http://www.php.gr.jp/
■PHP マニュアル
http://www.php.net/manual/ja/
■PEAR マニュアル
http://pear.php.net/manual/ja/
過去スレ, 関連スレは>>2を見よう。
0172nobodyさん
02/06/19 12:08ID:???そのコード斜読みしただけだけど、
セッションからの値がきてないんじゃ無い?
ここの>>4とマニュアルのセッション関数のところみてみてみて。
0173171
02/06/19 12:37ID:wvwPfn4bご返答感謝します!
register_globalsはonにしています(php.iniで唯一変えた箇所)
やはりセッションがうまく働いていないんでしょうか…。
帰ってきたらマニュアルなどを利用して、
もう一度セッションについて勉強してみます。
では昼休みも終わりそうなんでまたです。
0174nobodyさん
02/06/19 18:18ID:???皆様から返答が得られないのは
尋ね方が悪いんでしょうか。
情報が足りないんでしょか。
よろしくお願いします。
0175nobodyさん
02/06/19 18:46ID:???0177nobodyさん
02/06/19 19:32ID:???0178nobodyさん
02/06/20 06:25ID:3HmCYevVIFのなかのcopyが失敗しているようですが・・・
$writefileには何が入っていますか?
0179139
02/06/20 11:14ID:???$writefileの中にはテキスト、ものが入ってると思います。
>>その後は以下のように。これでファイル全部です。
<HTML>
<HEAD>
<TITLE>
<?
echo $filename
?>
</TITLE>
<META http-equiv="Content-Type" content="text/html; charset=euc-jp">
</HEAD>
<BODY>
<FORM ACTION="<? echo $PHP_SELF; ?>" METHOD="POST">
<TEXTAREA NAME="contents" ROWS="10" COLS="50">
<?
require ($filename);
?>
</TEXTAREA>
<INPUT TYPE="submit" NAME="submit" VALUE="更新">
</FORM>
</BODY>
</HTML>
ファイルのパーミッション確認すれ
0181171
02/06/20 19:45ID:???原因はex3.phpの設定を引きずってしまった為の記述ミスでした…。
(ex3.phpの34行目 $sel = new myPgSelect 消し忘れ)
ソースを見直してこれが不要なのではと気づいた点は、
救いようがあると思いますが、やはりまだまだ理解不足ですね。
お騒がせしました。
0182139
02/06/20 19:51ID:???重ね重ね、申し訳ないですけどご教授いただけませんか。
PHPはヴァージョン4でした。
0184139
02/06/21 00:11ID:???フォルダに対してプロパティ→共有セキュリティタグは出てきます。つまりフォルダに対して行うのですよね。
共有ドキュメントフォルダに移動させるとディレクトリ自体が変更してしまいアパッチが起動できなくなりできません。
てことでネットワーク上でこのフォルダを共有するというチェックボックスをオンにしました。
そして、どのフォルダを共有させるのでしょうか。
ローカルホストを有効にさせているアパッチ、PHP本体、
あとローカルホストのルートディレクトリ。これらのフォルダをすべて
プロパティ→共有タブ→ネットワーク上で共有のチェックボックスをオンにしました。
しかし実行したときの反応、出てくるメッセージ文に変わりはありませんでした。
すみません…よろしくお願いします。どうすればいいのでしょうか…
0186139
02/06/21 00:42ID:???137かつ139かつ179かつ182かつ184です。
パーミッションの確認方法がわかりません。
全ユーザには権限がないんだと思いパーミッションの変更方法をお聞きしてたのですが。
0188nobodyさん
02/06/21 01:00ID:???画像表示のカウンターって、どうやってカウントしてるんすか?
リモートホストはどうやって取得してるんすか?
0192nobodyさん
02/06/21 06:41ID:???ちゃんと$writefileに希望の内容が入っているか確認してみました?
echo $writefile;で一度チェックしてみては?
パーミッションの方は
$fp = fopen("test.txt", "w");
fputs($fp, "test");
fclose($fp);
とでもしてファイルを作成できるかチェックしてみてはいかがでしょうか?
0193nobodyさん
02/06/22 09:55ID:oMvchyAUで、mbereg_replace()を使うと
Warning: mbregex compile err: premature end of regular expression
と、エラーが出てしまいます。
コンパイルエラーとありますが、何度インストールし直してもこのエラーです。
$ phpize
$ ./configure --enable-mbregex
$ su
# make install
でインストールしました。
なにがいけないんでしょうか?
0194nobodyさん
02/06/22 18:00ID:???正規表現が間違ってるんだYO!
0195193
02/06/22 23:54ID:???phpinfo();で、
mbregex
Directive Local Value Master Value
mbregex.encoding EUC-JP EUC-JP
となっているのに、S-JISで書いてたのが原因でした…
0196nobodyさん
02/06/23 00:18ID:???どうしたらよろしいでしょうか。
チェックボックスとかセレクトとか使ってテキスト作り上げて、
そいで貼り付けとかしたいので。
0197somebodyさん
02/06/23 00:29ID:???WindowsXP,IE系に逝ってください
0198nobodyさん
02/06/23 00:47ID:???mb_ereg_* を使うと Fatal error: Call to undefined function: mb_ereg_*()
と言われます。
phpinfo()だと
Configure Command :
'./configure' '--with-pgsql' '--without-mysql' '--with-namazu' '--with-kakasi' '--with-apxs=/usr/local/apache/bin/apxs' '--with-openssl' '--with-iconv' '--enable-mbstring' '--enable-mbstr-enc-trans' '--enable-trans-sid' '--with-mbregex'
となってるんですが…(ていうか実際そうした)
php.iniはデフォルトのままで、
[mbstring]
mbstring.internal_encoding = iso-2022-jp
mbstring.http_input = auto
mbstring.http_output = iso-2022-jp
;mbstring.detect_order = auto
;mbstring.substitute_character = none;
となっています。
日本語使えなくて鬱です…どうしたらよいでしょうか。
0200nobodyさん
02/06/23 09:28ID:???いや、--enable--mbregexだと無視されます。
マニュアル見ると、いつのまにか--with-mbregexオプションは無くなってたみたいなので
(後方互換のためいちおう有効にされてはいた?)
つけずにやってみてもやはり Undefined functionと言われます。
0201nobodyさん
02/06/23 09:35ID:???どうもmb無しのereg_*で日本語もあつかえるらしい…
別に
mbstring.func_overload=1
とかしてないんですがね…
#デフォでonになってる??
ともかくなんとかなりそうです。THX>>199
・・・ほんとに?
configure見ると思いっきり
--enable-mbregex
Enable multibyte regex support
って書いてあるんだけど・・・>PHP4.2.0/PHP4.2.1
0204nobodyさん
02/06/23 18:38ID:kqip7CeK$fp = @fopen("/tmp/counter", "r+");
// ファイルがなかった場合、ファイルを作る。
if( !$fp ) {
$fp = fopen("/tmp/counter", "w");
}
// 重要。説明は下で。
set_file_buffer($fp, 0);
flock($fp, LOCK_EX);
rewind($fp);
$buf = fgets($fp, 1000000);
if( !$buf ) {
$buf = 1;
} else {
$buf++;
}
rewind($fp);
fputs($fp, $buf);
flock($fp, LOCK_UN);
fclose($fp);
itboostのロックの頁を見たら、上のようなソースが載っていた。
自分はfopen($file,"w")をしたときにrewindなんてしなかったんだけど、
rewindって必要なの?それともロックとかかけるときのみ必要なの?
0205縞栗鼠(シマリス)の親方
02/06/23 18:45ID:ZSSdFO5T汚物入れを物色して女子生徒の使用済みタンポン・ナプキン等を
個人的に収集しているというのは事実。
中央高等学院では
生徒及びその保護者の個人情報を名簿図書館等に売却しています。
中央高等学院 http://chs-f.com/index.html 中央高等学院福岡校
http://www.chuo-school.ac/
0208nobodyさん
02/06/24 01:16ID:0X7UgTkp0209nobodyさん
02/06/24 02:37ID:???<select name="array[]" size=20 multiple >
このように複数行選択した内容を扱いたいけどつかえないよ。
一応、他の変数のように
$array[] = $_REQUEST["array[]"];
このようにしたけど、空の値が入るだけ。
どうすりゃいいの?
昔はできたのに・・・・
ガイシュツだったらスマソ
0210名無しさん
02/06/24 03:49ID:???0212nobodyさん
02/06/24 21:22ID:v5JHJkLyという文字列の "63861" の部分を "f975" のように
16進数に変換し、
$str = "&#f975;";
というようにしたいのですが、書き方がわかりません。
$str = preg_replace( "/()([0-9]{5})(;)/", "$1$2$3", $str );
↑どう書けばいいのでしょう?
わかる方いたら教えてください。
m(__)m
※ちなみに全角にしているのは文字化け防止です。
0213nobodyさん
02/06/24 21:53ID:???強引にやってみた。駄目かなあ。。。
<?php
$str='&#63861;';
$str=dechex(eregi_replace("(&#)([0-9]*)(;)","\\2",$str));
$str='&#'.$str.';';
echo $str;
?>
0214nobodyさん
02/06/24 22:07ID:v5JHJkLyレスサンクス.
でも
$str = '&#63861;'
だけの時はいいんだけど
$str = 'わたしは&#63861;です。';
とかだったりするとだめっぽいです。
うーん。
0216nobodyさん
02/06/24 22:59ID:???0217sage
02/06/24 23:45ID:v5JHJkLy汚いけどナントカ動きました。
一度にやらなければそんなにむつかしくなかったです。
$str = "&#63861;";
preg_match_all( "/([0-9]{5});/", $str, $match );
for( $i=0; $i<count( $match[0] ); $i++ ) {
$match[1][$i] = '' . DecHex( $match[1][$i] ) . ';';
$str = ereg_replace( $match[0][$i], $match[1][$i], $str );
}
return $str;
0218nobodyさん
02/06/25 00:10ID:P4v4WPT0$str = "掠";
$str = preg_replace("/()(\d*)(;)/", "$1" . dechex("$2") . "$3", $str);
print $str;
0219nobodyさん
02/06/25 00:17ID:pVNEMAn7sybaseの拡張モジュールってあるのでしょうか?
※WindowsからLinuxにあるsybaseへアクセスしたい。ODBC無で。
0220216
02/06/25 00:41ID:???んな面倒なことせんでも2行でおさまるが。
$str = "掠";
ereg("([0-9]+);", $str, $match);
$str = "".sprintf("%x", $match[1]).";";
0221nobodyさん
02/06/25 01:35ID:???ありがとうございます。
でも、それだと >>214 でも書いたんだけど
$str = 'わたしは&#63861;です。';
のようなときにうまく動かないのです。
0223216
02/06/25 01:49ID:???$regRule = "(.*)([0-9]+);(.*)";
while(ereg($regRule, $str, $match))
$str = $match[1]."".sprintf("%x", $match[2]).";".$match[3];
0224nobodyさん
02/06/25 02:15ID:vEnhn/oCProxyのプログラムをPHPで作りたいです。
これが、一番参考になるかな〜って思ったけど
http://php.s3.to/net/kusi.phps
でも、駄目。
cURLを利用して、作りたいんです。誰か、つくりかた、おせて!
わからん...
0227nobodyさん
02/06/25 20:31ID:9ydA7d41何がどう駄目なんだよ!
だって、次のページへ進むとProxyがはずれるし、
Javaに対応してないし、
フレームにも、対応してないじゃん。
作りが、あまいの
もっと、プロ仕様にしてくれなきゃ。
0228nobodyさん
02/06/25 20:33ID:9ydA7d41cURLを使ってよ。
LetsPHPでしょ。Letsして!藁
0229nobodyさん
02/06/25 20:36ID:???―――┴┴┴┴┴―――――、
/.  ̄ ̄ ̄//. ̄ ̄| || ̄ ̄ ̄||| ̄ || __________
/. ∧// ∧ ∧|.|| ||| || /
[/____(゚_//[ ].゚Д゚,,) ||___||| || < 224=227=228を迎えに来ました
||_. * _|_| ̄ ̄ ∪|.|. .|ヽ. _|| \__________
lO|o―o|O゜.|二二 東|.|京 精神 .病院 ||
| ∈口∋ ̄_l__l⌒l_|_____|_l⌒l_||
 ̄ ̄`ー' ̄ `ー' `ー' `ー'
0230nobodyさん
02/06/25 22:37ID:???0231nobodyさん
02/06/25 22:38ID:24biITUFhttp://php.s3.to
作った人、きっと、見てんでしょ。藁
0232nobodyさん
02/06/25 22:47ID:???0233nobodyさん
02/06/26 10:35ID:???0234nobodyさん
02/06/27 02:54ID:oQ+aVv2C君だけだよ
もれのセンスがわかってくれるの。藁
もうちょっと、ちゃんと作って欲しいよね〜って感じ。煽
0235nobodyさん
02/06/27 04:38ID:???クッキーが使用できない携帯端末などを想定して
<A href="hoge.php?<?=SID?>">Next</A>
などとして持ちまわっていたのですが、どうしてもformタグを使用しなくて
はならず
<form action=hoge.php?<?=SID?> method=POST>
としてみたらiモードでうまく持ち越せました。
同様にJフォン対応にするべし!と思い
<form action=hoge.php?<?=SID?> method=GET>
としてみましたが撃沈してしまいました。
諦めるしかないのでしょうか?
0237nobodyさん
02/06/27 15:32ID:???0238nobodyさん
02/06/27 23:01ID:???配列のキーに文字列入れてソートすると、その文字列消えちゃって
整数に変わっちゃうのですが、これを簡単に回避する方法って
何かありますか?というかこれって仕様ですか?
foreach($dat as $line){
list($lasttime,$title,$admin,$comment,$url)=explode("<>",$line);
$mix_data[$lasttime][]=array($title,$admin,$comment,$url);
}
print_r($mix_data);←ここでは文字で出てきてる(2002/06/27(Thu) 22:58みたいな)
rsort($mix_data,SORT_STRING);
list($key,$value)=each($mix_data);
print_r($key);←ここになると0、1になっちゃう
0239nobodyさん
02/06/28 21:43ID:MwZT+i3a<input type=checkbox name="target" value="2"> 2 <br>
<input type=checkbox name="target" value="3"> 3 <br>
こんなフォームを受け取った場合に全部のcheckboxを見るにはどうしたら良いかの?
2つ以上チェックしたとき、$_POSTや$_GETだと最後のチェックしか見えないのだが。
0240nobodyさん
02/06/28 22:37ID:???0242239
02/06/28 23:21ID:???0243nobodyさん
02/06/28 23:49ID:???#!/usr/local/bin/php
<? phpinfo() ?>
とかってやると、先頭に
#!/usr/local/bin/php
と出力されてしまいます。なで?
0244nobodyさん
02/06/29 01:33ID:???ここのHTTPクライアントで、Hoops!のページを取得しようとしたんですが、
HTTP/1.0 200 OK
Date: Fri, 28 Jun 2002 16:28:33 GMT
Server: Apache/1.3.14 (Unix) mod_perl/1.24_01
Content-Type: text/html
X-Cache: MISS from squid4.hoops.hoops.ne.jp
Connection: close
HTTP によるリクエストが不正です.可能性のある問題は以下の通りです:
リクエスト方法が指定されていないか,あるいは不明です.
URL がありません.
HTTP 識別文字列がありません (HTTP/1.0).
リクエストが長すぎます.
POST/PUT リクエストにおいて Content-Length がありません.
ホスト名に不正な文字が使われています: アンダースコアは使えません.
のように取得できませんのです。
アパッチじゃなくスクイドサーバーというの使ってるみたいなんですが、
この場合どないすれば良いでしょうか。
何を加えればよろしいでしょうか。
0245nobodyさん
02/06/29 02:55ID:???は
"Server: Apache/1.3.14 (Unix) mod_perl/1.24_01"
と返すのですか?
0246244
02/06/29 03:41ID:???ここにスクイドって書いてありますけど、
なんなんでしょうか、これ。
0247nobodyさん
02/06/29 07:58ID:???0248nobodyさん
02/06/29 11:29ID:nVQfumhW↑こんな感じでCGI版PHPを起動しているのですが
-c 指定が効かずに /etc/php/cgi の php.ini が使われてしまいます.
# phpinfo()で確認
http経由でなくコマンドラインから上記スクリプトを実行してもダメでしたが
/usr/local/bin/php -c /home/hoge/php.ini -i
のようにphpを起動すると,意図通りのphp.iniを使ってくれました.
CGI版PHPで任意のphp.iniを使うことは不可能なのでしょうか?
環境は以下の通りです
PHP/4.0.3pl1
Apache/1.3.9
Debian/GNU Linux 2.2
0249uho!
02/06/29 12:27ID:???教えてください。
【Bulknews】
http://bulknews.net
0250nobodyさん
02/06/29 13:27ID:???やるにしてもリクエストが多いなら、
宮川たんに許可を取ってからにして下さい。
0252nobodyさん
02/06/29 15:04ID:???0253nobodyさん
02/06/29 21:39ID:???でも、こういう点でうまくいかない(こんなメッセージがでる)。
どうすりゃいい?
くらいの聞き方はしてほしい。
0254nobodyさん
02/06/29 22:02ID:???これはうちのサイトがニュースサイトだから、かなり個人的な。
Perlでならできた。だけど負荷が高いから一時停止してPHPに乗り換えようとしています。
これでいいですか、>>253さん?
0255nobodyさん
02/06/29 23:15ID:???か?
0256PEAR太郎
02/06/30 00:47ID:???答えが見つからないので、どなたかご存知の方おられましたらお知恵を
お貸しください。
以下のようなソースを書き、結果をブラウザーに出力しデバッグしているのですが、
すべての答えにDB_OK(データ無しだがSQL成功)が帰って来まして、どの答えにもデータがのって来て
くれません。どなたかPEAR上で、FETCHによりデータを取り出す方法をご存知無いでしょうか?
#同SQLはPSQLにてテストし、思い通りのデータが取り出せております。
$sql = "BEGIN WORK;";
$res = $db->query( $sql);
print_r( $res);
$sql = "DECLARE cur CURSOR FOR select * from data;";
$res = $db->query( $sql);
print_r( $res);
$sql = "FETCH 20 FROM cur;";
$res = $db->query( $sql);
print_r( $res);
$sql = "CLOSE bbs_cur;";
$res = $db->query( $sql);
print_r( $res);
$sql = "END WORK;";
$res = $db->query( $sql);
print_r( $res);
いや・・・なんていうか。
$resの中に何が入っているか勘違いしてるような。
http://pear.php.net/manual/ja/core.db.tut_fetch.php
この辺参照。
0259nobodyさん
02/06/30 02:37ID:???0260PEAR太郎
02/06/30 10:40ID:???普通にsql文に"select * from hoge"等とし、$resにDB_Resultが返って
来て、それに対してfetchする一般的な処理は理解できるのですが、
queryによって返ってくるのが、上記カーソルの例の場合DB_Resultではなく、
DB_OKばかりなのです。FETCHでDB_Resultが返って来てくれることを
期待したのですが・・・
0261Power
02/06/30 16:32ID:I8dOrvMOセッション変数とかで出来るのでしょうか?
0262nobodyさん
02/06/30 17:06ID:???レッツPHPの「PHPあぷろだ」を使いたいのですが、
ある特定の拡張子のみ(jpgとか)うp出来るようにしたいのですが、
どのようにすればよろしいでしょうか?
スレ違いだったらすいません
0263nobodyさん
02/06/30 19:16ID:???レッツPHPとやらのURLくらい書いておけよ
if($pos=="") $ext='xxx';//拡張子が無いときはxxx
↑この行があるが、これを見てピンとこないのか?
ちとは自分で考えれ
0264nobodyさん
02/07/02 16:09ID:???0265nobodyさん
02/07/02 16:40ID:xZuMtSlY2ちゃんねるのdatファイルを読み込みたいのですが
どうしたらよいのでしょうか?
0267nobodyさん
02/07/02 16:46ID:xZuMtSlY要約すると
素人にはお勧めできない
ってことですか?
0268初期不良
02/07/02 16:54ID:LBDwMoL/ふつうに fopen とか
http://www.php.net/manual/ja/function.fopen.php
0269nobodyさん
02/07/02 19:17ID:mUq62rt1$site = 'http://aaa.bbb.ccc.com';
print "<a href=\"$site\">ABC</a>";
これってエスケープしないで書く方法ってないの???
Perlはあるのに。。。
0270nobodyさん
02/07/02 20:09ID:???0271nobodyさん
02/07/02 20:19ID:???$format = '<A href="%s">ABC</A>';
printf($format, $site);
■ このスレッドは過去ログ倉庫に格納されています