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

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

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001nobodyさん2006/07/07(金) 14:54:53ID:KnVubDvE
PHPに関するくだらねぇ質問用スレです。
ここならお前の下らない質問に回答があるかも知れません。

まず読め【PHP マニュアル】
http://www.php.net/manual/ja/

過去スレは>>2
0899nobodyさん2006/07/21(金) 18:23:35ID:???
>>897
能動的にリンクを探したいのですが、
何か他のサイトを読み込む方法などあるのでしょうか?
0900nobodyさん2006/07/21(金) 18:36:31ID:???
>>899
ttp://www.mukom.netfirms.com/scripts/linkman.php
参考になるかもね
0901nobodyさん2006/07/21(金) 18:38:32ID:???
mb_send_mail()でメールを送信しました。
From:test@example.comで

From 【test@example.com (test@example.com)】

となるのですが、このFromに名前をつけれないのでしょうか?

たとえば
From 【EXAMPLEからメールです。 (test@example.com)】

このような感じでしたいのですが、どうすれば良いのでしょう。
どなたか教えていただけませんか?
0902nobodyさん2006/07/21(金) 18:42:33ID:???
>>901
additional_headers に所望の From ヘッダを挿入
http://jp.php.net/manual/ja/function.mb-send-mail.php
mime_encode とか忘れずに。アドレスを囲むのは <> で。
0903nobodyさん2006/07/21(金) 18:46:14ID:???
>>902
有難う御座います。
タイトル(?)の部分が文字化けしてしまったのですが、
mime_encodeというのは何でしょうか?
ググってみたのですが、それらしいサイトが見当たらなくて
0904nobodyさん2006/07/21(金) 18:47:58ID:???
>>903
3分ググっただけかよ と。
0905nobodyさん2006/07/21(金) 18:49:09ID:???
>>903
http://www.google.com/search?hl=ja&q=mime_encode&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
それらしいサイトだらけに見えるんだけどー
0906nobodyさん2006/07/21(金) 18:49:17ID:???
>>903
最近 mime_encode せずにメールのヘッダ部分が化けるって質問多いな。
なんだかなぁ。
0907nobodyさん2006/07/21(金) 18:50:01ID:???
mb_encode_mimeheaderですね。
今見つけました。
0908nobodyさん2006/07/21(金) 19:01:03ID:???
SMTPサーバーを立ち上げたいのですが、
何か参考になるサイトがあれば教えてください。
0909nobodyさん2006/07/21(金) 19:15:24ID:???
PHPでSMTPサーバを書くっていうことか?
0910nobodyさん2006/07/21(金) 19:15:44ID:???
>>909
いや、自分のローカルサーバーでメールが送信できるようにしたいんです
0911nobodyさん2006/07/21(金) 19:18:24ID:???
それ、phpの質問?
0912nobodyさん2006/07/21(金) 19:21:06ID:???
>>911
すみませ4ん、どこで質問していいのか
0913nobodyさん2006/07/21(金) 19:21:24ID:???
>>908
>>634 だろ?
こんなところで聞かないと駄目なようなら SMTP サーバなんて立ち上げるな。
0914nobodyさん2006/07/21(金) 19:27:27ID:???
>>913
すみませんが別人です。
0915nobodyさん2006/07/21(金) 19:31:58ID:???
>>914
どっちでもいい。立ち上げるな。
0916nobodyさん2006/07/21(金) 19:32:25ID:???
>>915
立ち上げてはいけないのですか・・・。


・・・あれ?
0917nobodyさん2006/07/21(金) 20:11:14ID:???
PHPってサーバーにウプしたらソースがばれますか?
0918nobodyさん2006/07/21(金) 20:19:23ID:???
サーバの設定による
09199172006/07/21(金) 20:28:16ID:???
>>918
必死につくったのがバレるのはいやだなとおもったんですが、
サーバーにどんな設定をすれば盗まれないのでしょうか?
0920nobodyさん2006/07/21(金) 20:40:06ID:???
>>919
ロジックを記述した部分をドキュメントルートの下に置かなければ
よほどのことがない限り、ソースは流出しないよ
0921nobodyさん2006/07/21(金) 20:47:25ID:???
>>920

ありがとうございます。ちょっと勉強してみます。
0922nobodyさん2006/07/21(金) 21:22:58ID:5NMNDw00
>892
>みなさん

パスワードなどが書かれたファイルを、ドキュメントルートより下にしか置けない場合、対処法はありますか?

そもそも、ドキュメントルート以下に置いたPHPファイルの中身を見るのは、結構簡単なのでしょうか?
0923nobodyさん2006/07/21(金) 21:23:48ID:???
その程度の知識で作ったコードなんて、誰も見たいとは思わんだろう
参考になるコードなら、山ほど公開されてるしな
0924nobodyさん2006/07/21(金) 22:01:11ID:???
ajax の使いやすいグラフィックライブラリってありますか?
09259242006/07/21(金) 22:02:12ID:???
↓こういうのが出来るやつ
http://www.nextapp.com/platform/echo2/echo/demo/
0926nobodyさん2006/07/21(金) 22:34:26ID:???
system()を利用してシェルをコマンドを送った場合に、
ブラウザを閉じたり、セッションが終了すると
勝手に送ったジョブが終了してしまいます。

ブラウザを閉じたりしても、
ジョブが残るにはどうすればいいんでしょ??

環境は
FedoraCore 5
PHP 5
Apache 2
です。
0927nobodyさん2006/07/21(金) 22:46:08ID:???
>>898
漢字の正確な読みなんて人間にだって分からないんだからプログラムじゃ不可能
0928nobodyさん2006/07/21(金) 22:46:38ID:???
>>924
PHPじゃないだろそれ
0929nobodyさん2006/07/21(金) 22:49:37ID:???
>>922
拡張子またはパーミッションの変更、あるいは特定のディレクトリに入れた上で
そのディレクトリに対して全IP制限やBASIC認証を施すなど。
0930nobodyさん2006/07/21(金) 23:40:53ID:???
header('Content-type: application/xml; charset=utf-8');

$rdfData = simplexml_load_file('new.rdf');
$rdfData->channel->items->Seq->addChild('li', 'testurl', 'rdf');
echo $rdfData->asXML();

このコード実行するとApacheが死ぬんだが・・・・・
0931nobodyさん2006/07/22(土) 00:02:32ID:???
>>930
サーバモジュールとしてPHPを入れてるなら、
PHPとサーバ(Apache)は一連托生。
PHPが落ちるような時にはApacheも引きずられる。
0932nobodyさん2006/07/22(土) 11:39:11ID:6iz1vYAq
カウンタを作るためテキストファイルの読み書きをしているのですが、ごくたまにファイル内容が壊れてしまうときがあり悩んでおります。
コードは
$fp = fopen($count_file,'r+');
if (flock($fp, LOCK_EX)){
$count = trim(fgets($fp));
if (empty($count)) $count = 0;
$count++;
ftruncate($fp, 0);
fseek($fp, 0);
fputs($fp, $count);
}
fclose($fp);

flockでロックしてるので、ftruncateでファイル内容をクリアしても他から妨害されないと思ってるのですが…
お知恵をいただきたく。
0933nobodyさん2006/07/22(土) 12:30:20ID:???
>>932
俺は書き込んでから丸める主義
fputs($fp, $count);
ftruncate($fp, ftell($fp));
ファイルが空になる瞬間がないと思ってるんだけど
0934nobodyさん2006/07/22(土) 12:42:04ID:QMrS4QvA
URLを指定してtitleを取得したいんですけど、
良い方法ありませんか?

XMLパーサーでなんとか、文字列にして無理やり、正規表現でなんとか、
頭の悪い私にはどれも難しくて、スマートな方法はありませんか?
お願いします。

0935nobodyさん2006/07/22(土) 12:46:35ID:???
>>934 手動でやれば。
0936nobodyさん2006/07/22(土) 12:51:37ID:???
>>934
file_get_contents ()で開き、正規表現でマッチさせればいいやん。
09379342006/07/22(土) 13:05:30ID:QMrS4QvA
preg_split ですよね?
たぶん正規表現の書き方がおかしくて、出来ませんでした。
正規表現、勉強してきます。
0938nobodyさん2006/07/22(土) 13:08:47ID:???
PHP4でこれを使ってftp_chmodを実現してるんですが、
指定ディレクトリ以下のファイル全てのパーミッションを変更、
またはワイルドカードでの指定を可能にすることはできないでしょうか?
あるディレクトリ内のファイルのパーミッションをphpからftp関数経由で
全て変更したいのですが、数が膨大なため、苦労しています。

<?php
if (!function_exists('ftp_chmod')) {
function ftp_chmod($ftp_stream, $mode, $filename)
{
return ftp_site($ftp_stream, sprintf('CHMOD %o %s', $mode, $filename));
}
}
?>
0939nobodyさん2006/07/22(土) 13:09:04ID:???
split?
0940nobodyさん2006/07/22(土) 13:10:43ID:6iz1vYAq
>>933
おお、なるほど!
参考にさせていただきます。
09419342006/07/22(土) 13:15:54ID:QMrS4QvA
matchですね、、、、、
splitでやってました。
それにしても正規表現、苦手ッス
0942nobodyさん2006/07/22(土) 13:17:48ID:???
>>938
普通に他のFTPクライアントがやってるように
一覧を取得して(必要なら再帰)、各々にchmodを掛ける。
0943nobodyさん2006/07/22(土) 13:36:41ID:???
while で配列の要素数だけ繰り返し、という場合、
$i = 0;
while($i < count($array)){

$i = $i + 1;
}

としてますがもっと簡単なコーディング教えてくださいませ
0944nobodyさん2006/07/22(土) 13:44:06ID:???
>>943
foreach($array as $value)

foreach($array as $key => $value)
0945nobodyさん2006/07/22(土) 14:16:42ID:wSNHExxb
ああああ
0946nobodyさん2006/07/22(土) 14:45:14ID:???
現在のURLを取得するにはどうすればいいですか?
0947nobodyさん2006/07/22(土) 14:55:26ID:???
$host = $SERVER['HTTP_HOST'];
$req_uri = $SERVER['REQUEST_URI'];
$scr_name = $SERVER['SCRIPT_NAME'];
$php_self = $SERVER['PHP_SELF'];

// 1
$url1 = $host . $req_uri;
// 2
$url2 = $host . $scr_name;
// 3
$url3 = $host . $php_selfi;

ケースバイケースで好きなのを選べ
0948nobodyさん2006/07/22(土) 15:00:05ID:???
>>947
ありがとうございます!
0949nobodyさん2006/07/22(土) 15:33:52ID:???
phpのPCREパターン修正子で
「デフォルトで、PCREは検索対象文字列を(実際には複数行からなる 場合でも)単一の行からなるとして処理します。 」
の'm (PCRE_MULTILINE)'の意味が分かりません。
0950nobodyさん2006/07/22(土) 15:40:13ID:kdb16aHf
漢字などの文字列を数字に変換するような関数ってないですか?
0951nobodyさん2006/07/22(土) 15:46:36ID:LAiwhQ0T
>>949
文字列の途中に改行コードがあっても、複数行とは認識しないってこと

"bar\nfoo\n"
こんな場合の文字列のこと
09529492006/07/22(土) 16:45:47ID:???
>>951
m有りでもmナシでも同じじゃないですか。
0953nobodyさん2006/07/22(土) 16:49:24ID:???
>>952
違う、mが付くと\nが末尾として扱われる
0954nobodyさん2006/07/22(土) 16:52:44ID:???
≪前の5件 |1| |2| |3| 次の5件 >>

こんな感じでページ送りしたいのですが、参考になるソースをおいてる
サイトありますか?
0955nobodyさん2006/07/22(土) 16:56:53ID:???
>>954
マルチは死ねばいいと思うよ
0956nobodyさん2006/07/22(土) 17:03:27ID:???
>>955

今生き返りました。教えてください。
0957nobodyさん2006/07/22(土) 17:05:03ID:???
その程度のアルゴリズムも考えられないならプログラム止めれば?
0958nobodyさん2006/07/22(土) 17:05:42ID:???
>>954
pearのpager
0959nobodyさん2006/07/22(土) 17:25:32ID:???
>>958
ttp://elf.no-ip.org/~elf/php/peardoc/ja/package.html.pager.html

ここを参考にして勉強してみます。 今はチンチンカンプンプンです Qrz

もう一回しんできます。 生き返ったらもう一回質問させてください。・

0960nobodyさん2006/07/22(土) 17:53:18ID:???
>>954
パラメータでページ番号を渡す
→ページ番号から表示範囲を計算する
→表示範囲の分だけHTMLを表示する

終わり
0961nobodyさん2006/07/22(土) 18:07:19ID:???
cron を使って PHP のプログラムを動かしたいのですが、
本来の php.ini の設定は mbstring.script_encoding = EUC-JP なのですが
cron で動かしたいプログラムが置かれているディレクトリに
.htaccess を置いて、UTF-8 で書いています。
コマンドラインから、この PHP を動かそうとすると、
どうやら文字コードが違うのでエラーが表示されます。
コマンドラインに文字コードを指定する、なんてのはできないでしょうか?
0962nobodyさん2006/07/22(土) 18:15:38ID:???
>>961
utf-8な設定のphp.iniを書いて、実行時に読み込ませる。

$ php -h

-c <path>|<file> Look for php.ini file in this directory
0963nobodyさん2006/07/22(土) 19:21:36ID:???
>>949
$text = "abc
123
def";
echo preg_match("/\A.*\Z/", $text)," <= /\A.*\Z/\n";
echo preg_match("/\A.*\Z/s", $text)," <= /\A.*\Z/s\n";
echo preg_match("/^\d/", $text)," <= /^\d/\n";
echo preg_match("/^\d/m", $text)," <= /^\d/m\n";
0964nobodyさん2006/07/22(土) 20:40:44ID:???
Windows2003 + Apache2 + PHP5 をインスコして動かそうとしてます。

WebサーバにIEで接続して下記のPHPファイルを見たら
「HTTP400 正しくない要求」と怒られました

<? phpinfo(); ?>

phpがうまく動いてないんだけど、httpd.confが悪いんかな?
0965nobodyさん2006/07/22(土) 20:55:49ID:???
>>961
.htaccessってのはApacheの設定。PHPもApacheモジュール版は
Apacheの一部分という形なので、それで設定が出来る。
PHPの設定は、基本はphp.iniの方でやるんだよ。
0966nobodyさん2006/07/22(土) 21:06:31ID:???
>>964
もちろんIISは動いてないよな?

拡張子の設定をApacheにちゃんとしてる?
0967nobodyさん2006/07/22(土) 23:52:08ID:???
>>966
IISは動いてない。ほかのhtmlも見れる

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
Action application/x-httpd-php "c:/php/php-cgi.exe"

こんな感じで拡張子も設定してある

ほかのサイトを見てたら
LoadModule php5_module "c:/php/php5apache2.dll"
php-cgi.exe使わないでこうしろってのもあったけど、
なんかこれだとApache自体起動しないんだよね。

c:\php\php5apache2.dllはあるくせに
Syntax error on line 115 of C:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf: Cannot load C:/PHP/php5apache2.dll into server
と怒られるんだよね。PHPが設定できてないのかな?
0968nobodyさん2006/07/23(日) 00:02:14ID:???
php4.3にて検索用の管理用データベースを作成しています。
検索時にはクエリーに日本語を含めることもあるのですが、
そのときに「ー」が入るとREG_EBRACKというエラーが返ってきます。

調べてみたところJIS特有?のエラーで別の文字コードで回避出来るらしいのですが、
システムの都合上JISで構築する必要があります。

この場合「ー」を含んだ文字のエラーを回避する方法はありますでしょうか。

よろしくお願いします。
09699682006/07/23(日) 00:04:05ID:???
すみません、補足です。
具体的には、

if( ereg($target, "探してるものー") ){ echo "HIT"; }

のようにereg系統の関数で上記のエラーが発生しました。
試しにmb_eregを用いてみましたが同様にエラーが発生しました。
0970nobodyさん2006/07/23(日) 00:16:40ID:TM25KdOC
MagpieRSS【http://www.hyuki.com/yukiwiki/wiki.cgi?MagpieRSS

これを利用して仲間内で必要な情報をまとめたサイトを作ろうと考えました。
それで、実際にこれを導入してみたところ
2バイト文字が ? で表示されてしまいます。

そのため、このページの下にある 「Jcode.phpを使う方法」を試してみましたが
やはり、2バイト文字が ? で表示されてしまいます。

Windows上で下記のような条件で動かしています。
PHP Version 4.4.2-pl1
Apache 2.0 Handler

最初は、マルチバイト系の問題だと思ったのですがJcode.phpを使っても
解決しないため、原因がわからなくなってしまいました。

どなたか、経験のある方がいらっしゃったらご教授願いたいです。
宜しくお願い致します。
09719682006/07/23(日) 00:29:17ID:???
スミマセン自己解決しました><; パソコン止めればよかったんですね。
0972nobodyさん2006/07/23(日) 00:35:24ID:???
>>967
お前みたいなバカには無理ってことだよ
0973nobodyさん2006/07/23(日) 01:59:11ID:V6UlX/Ft
[root@localhost ~]# pear install DB
No releases available for package "pear.php.net/DB"
Cannot initialize 'DB', invalid or missing package file
Package "DB" is not valid
install failed

pear install の使い方間違ってるかな?
0974まさお2006/07/23(日) 02:12:02ID:PeJIVLLO
ホームページにゲームセンターがあります!
http://www.geocities.jp/kimu19780809/
0975nobodyさん2006/07/23(日) 02:32:16ID:???
>>968
JISでなくSJISだろ、それ…最低限の文字コードの知識も持ち合わせてないで
日本語対応データベースを構築しようとはシステム屋をなめてるな。
素直に金出して外注で作ってもらえば?
つか、それ正規表現なんて使う必要あんの?
0976nobodyさん2006/07/23(日) 02:44:05ID:???
>>975
いちいち細かい誤字をそこまで叩いて何か楽しい?
システム屋を語る前に精神を浄化した方がいいよ、どの程度のシステム屋かしらんけどw
0977nobodyさん2006/07/23(日) 03:09:02ID:???
JISとSJISの違いを誤字だってよ!すげーなおまえww
0978nobodyさん2006/07/23(日) 03:14:18ID:???
>>976
そんな怒るほど叩かれてないと思う。
0979nobodyさん2006/07/23(日) 03:48:54ID:???
何にせよ余計な事言いすぎ。煽り交じりでしかレスできないって
どんな精神の持ち主だよww
0980nobodyさん2006/07/23(日) 09:13:30ID:???
気付いてないようだから教えてやる。どっちも同レベル。うぜぇからキエロ。
0981nobodyさん2006/07/23(日) 09:16:56ID:???
はあ…、こういう叩きの連鎖が荒らしになっている事に当事者は気が付かないんだよね。
0982nobodyさん2006/07/23(日) 10:00:00ID:???
すいません質問させてください。
PHPで2MB以上のファイルをアップロードする場合、php.iniを編集しなければならないようですが、
当方レンタルサーバーを使っておりまして、php.iniの編集ができません。

スクリプト中に「ini_set('upload_max_filesize', '5M');」と記述しても2MB以上アップロードできません。
.htaccessでも設定できるようなのですが、具体的な記述方法を教えてください。
0983nobodyさん2006/07/23(日) 12:31:43ID:???
>>982
ttp://www.php.net/manual/ja/configuration.changes.php
php_value 設定名 値
ただし、.htaccessで設定できるかどうかはサーバーの設定による。
0984nobodyさん2006/07/23(日) 12:38:17ID:???
pph.iniの編集ができないってことは共有のレンタルか?
共有鯖で2MB以上のファイルをアップロードなんてはた迷惑だと思うがね
0985nobodyさん2006/07/23(日) 13:26:24ID:???
>>969
単純な検索ならmb_strpos使っとけば
とりあえずこけることは無くなると思う。
正規表現をどうしても使いたいなら工夫が必要。
0986nobodyさん2006/07/23(日) 15:33:51ID:???
下らないPHPの質問はここに書き込みやがれ 25
0987nobodyさん2006/07/23(日) 16:41:08ID:wyHjEd65
0723,hoge
0723,fuga
0722,moge
0721,sage
0719,age

ってな具合で、日付,文字列って言う順序に並んでるファイルの中のデータを
21日から23日までの分だけ取得してprintするにはどうすれば良い??
21..23とかいう書き方ってあるんだっけ?
0988nobodyさん2006/07/23(日) 17:16:50ID:???
>>987
ファイルなら順々に読んでいくしかないのでは?

一発で読み出そうと思ったらDB化するしかないような。
0989nobodyさん2006/07/23(日) 17:34:32ID:???
思考停止した質問ばっかだな
0990nobodyさん2006/07/23(日) 17:34:54ID:wyHjEd65
>>988
レスthx
if($file[0] == "21..23"){
$line = $file[1];
}
print $line;
こんなんじゃだめっすか?
0991nobodyさん2006/07/23(日) 17:36:08ID:wyHjEd65

21..23って書いたら、21のときしかtrueにならない(T_T)
0992nobodyさん2006/07/23(日) 17:45:43ID:???
>>991
if文の中には==や!=の他にも<とか>が使えるからw
後はな。分かるよな?
0993nobodyさん2006/07/23(日) 17:49:12ID:???
>>990
PHPじゃ使えんだろうその範囲指定は。
0994nobodyさん2006/07/23(日) 18:02:02ID:???
>>990
foreach
0995nobodyさん2006/07/23(日) 18:41:14ID:???
SimpleXML関数で、子要素の先頭に子要素を追加するにはどうすればいいのでしょうか。
addChildメソッドでは末尾に追加されてしまいます。
0996nobodyさん2006/07/23(日) 18:52:48ID:???
in_array($file[0], range(21,23))
0997nobodyさん2006/07/23(日) 19:28:09ID:???
>>990
次スレよろ
0998nobodyさん2006/07/23(日) 19:41:06ID:wyHjEd65
>>997
りょ、了解;
レス数が950を超えています。1000を超えると書き込みができなくなります。