【PHP】下らねぇ質問はここに書き込みやがれpart10
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/09/25(日) 02:03:45ID:nLUfPXhDここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
【PHP】くだらねぇ質問はここに書き込みやがれpart7
http://pc8.2ch.net/test/read.cgi/php/1121100429/
【PHP】くだらねぇ質問はここに書き込みやがれpart8
http://pc8.2ch.net/test/read.cgi/php/1123431535/
【PHP】くだらねぇ質問はここに書き込みやがれpart9
http://pc8.2ch.net/test/read.cgi/php/1125716012/
0082nobodyさん
2005/09/26(月) 16:56:47ID:???入力をdate()でやるのはロケールが欠落するから完全ではない場合もあるが
008376
2005/09/26(月) 16:59:56ID:???うまく行きました。
問題は型だった?
PHP側での処理は、time()だったので、
>>82さんの言うのは当てはまらない??
んんんんー、謎です。
何が悪かったのでしょうか。
0084nobodyさん
2005/09/26(月) 17:04:14ID:???それともphpスクリプト自体が問題なければ、心配する必要は
なしでしょうか?
0087nobodyさん
2005/09/26(月) 17:14:10ID:???まあ他人に使われないならないんじゃない
悪用の仕方はリモートファイルを読み込んでeval()で実行させるとか
串代わりにするとかだろうから
0088nobodyさん
2005/09/26(月) 17:31:23ID:???ファイルパスを引数にとる関数は全部そうだけど
http://marc.theaimsgroup.com/?l=php-dev&m=111973903130155&w=2
0089nobodyさん
2005/09/26(月) 17:38:43ID:???cURLライブラリを使って実装しました。
ですが、セッションIDが全く別のものとなっていて、実装したいことができなく悩んでいます。
$header = "Set-Cookie: PHPSESSID=" . session_id();
curl_setopt($ch, CURLOPT_HTTPHEADER, array($header));
のようにして、セッションを渡してみたのですが、うまく行きません。
どうにかして、同じセッションIDで実装したいのですが、解決策はないですか。
環境:PHP5.1b3, apache1.3.3, windows
0090nobodyさん
2005/09/26(月) 17:52:51ID:???実際送ったら上書きされるようなかんじ?
009189
2005/09/26(月) 17:57:49ID:???そうです。
送信側と受信側でsession idが全く別のものとなってるんです。
受信側はアクセスごとにsession idが違うものになってます。
0092nobodyさん
2005/09/26(月) 18:12:25ID:tV04tbjf面白いです。
●無料レンタルランキング
URL : http://rk.xgm.jp
●無料レンタルホームページ
URL : http://sp.xgm.jp
●無料レンタル掲示板
URL : http://bb.xgm.jp
●無料画像アルバム
URL : http://ph.xgm.jp
0094nobodyさん
2005/09/26(月) 18:18:05ID:???CURLをクライアントに使ってるなら、リクエストで“Set-”Cookie:ておかしくないですか
CURL的なクッキの送り方は判らないけど、Cookie: PHPSESSID=〜
0095nobodyさん
2005/09/26(月) 18:20:05ID:???// ケース1 set
// mb_language("Japanese"); mb_internal_encoding("EUC-JP");
$header = mb_encode_mimeheader("テスト送信者",'ISO-2022-JP');
// ケース1 out
print($header);
// ケース2
mb_language("Japanese"); mb_internal_encoding("EUC-JP");
// ケース2 out
print($header);
0096nobodyさん
2005/09/26(月) 18:40:45ID:???0097nobodyさん
2005/09/26(月) 20:06:11ID:???自分で書くスクリプトで問題が出るような作りをする香具師は
全体的に悔い改めるべきだと思う。ポカミスじゃなくて
理解不足の致命的なミスで危険な問題だから。
よく共有サーバでOffにした方が...という話も聞くが
そんならもっとPHPの動作環境を根本的に見直せと。
0098nobodyさん
2005/09/26(月) 21:29:45ID:???mkdirとかuseraddとか。出来るなら、その書き方がわかるサイトなどを
教えてもらえますか?ぐぐっても参考とするところが見つからなくて・・
0099nobodyさん
2005/09/26(月) 21:39:42ID:???そう熱くなるな。
関数の良し悪しじゃなく使う方のロジックの問題なのは誰も分かってるのに
どっかにサンプルコードあったからーとか安易に考えてるのが問題。
例えばinclude $_SERVER[REMOTE_ADDR'];は無問題だが
それをロジックで示せる人間は割と少ない希ガス。
>>98
おまいは示せそうにないな。
0101nobodyさん
2005/09/26(月) 22:00:00ID:???('**' は、ディレクトリ階層を再帰的にたどってくれるパターンです。)
これをサポートした関数ってありますか。
Rubyならできるとかいわれたんですけど、PHPでやりたいです。
0102nobodyさん
2005/09/26(月) 22:08:50ID:???正規表現が間違ってますか?
<?php
$date = "<li>aaaaaaaa</li><li>bbbbbbbb</li><li>cccccccc</li>";
$ary = split('<li>.*</li>', $date);
print_r($ary);
?>
0105軟式PHP
2005/09/26(月) 23:11:52ID:???<?php
$date = "<li>aaaaaaaa</li><li>bbbbbbbb</li><li>cccccccc</li>";
preg_match_all("/<li>.*?<\/li>/",$date,$reg);
print_r($reg);
?>
簡単にだけど。
0108nobodyさん
2005/09/27(火) 06:17:35ID:CN65Gin9を有効にして、php.iniを保存しました。
Apacheを再起動して、<?php phpinfo() ?>をブラウザからアクセス
するとMySQLの項目が表示される、と思うのですが
私の場合、Apacheを再起動すると、「php_mysql.dllがありません。」
のようなことをPCが叫びます。
どうしてでしょう?原因がさっぱりわかりません。ご教授くださいませ。
0109nobodyさん
2005/09/27(火) 06:50:18ID:NWOBxAVj0110nobodyさん
2005/09/27(火) 06:52:18ID:NWOBxAVj0111nobodyさん
2005/09/27(火) 07:55:07ID:???dllということはWindowsのようですからPHPを解凍したディレクトリにあるlibmysql.dllというファイルをシステムディレクトリ(例:C:\WINDOWS\system32\)にコピーすると幸せになれるかもです。
0112nobodyさん
2005/09/27(火) 10:24:29ID:???<?php echo date('m/d', filemtime('../xxx/zzz.log') ) ?>
なんですが、
色々なディレクトリに存在する複数のファイルを参照して、
いずれかが更新されていればその日時を表示させる、
というようなコードはないでしょうか?
../xxx/zzz.log 2005/09/25更新
../../yyy/yyy.dat 2005/01/01更新
./www.log 2005/09/26更新
↓
./www.log の更新日時を表示
0113nobodyさん
2005/09/27(火) 10:26:55ID:???何をもってして「更新されている」と判断するのかが分からない。
0114nobodyさん
2005/09/27(火) 10:50:45ID:B3+8rfdNstripslashes
バックスラッシュが取り除かれた文字列を返します。(\' が ' になるなど) 2つ並んだバックスラッシュは1つのバックスラッシュになります。
stripcslashes
バックスラッシュを取り除いた文字列を返します。C言語と同様に \n, \r ..., 8進表現, 16進表 現を認識します。
という説明があったのですが、よくわからないです。
0115nobodyさん
2005/09/27(火) 10:53:30ID:???>色々なディレクトリに存在する複数のファイルを参照して
ループ処理 + readdir 関数で1ファイルづつ舐めながら、
>いずれかが更新されていれば
基準となる UNIX 時間か何かと if 比較して
>その日時を表示させる、
date('m/d', filemtime('../xxx/zzz.log')
ってのは、そんなに難しい事なの?
0118nobodyさん
2005/09/27(火) 10:58:33ID:???>stripcslashes
手元の教科書には addcslashes 関数でクォートされた文字列をアンクォートする
って書いてある。用途別って事かと。
0119nobodyさん
2005/09/27(火) 11:02:27ID:???>>115でも書いてる通りの方法だけど。
$files = array('../xxx/zzz.log','../../yyy/yyy.dat','./www.log');
forerach($filelist as $value) $filemtimes[] = filemtime($value);
sort($filemtimes,SORT_NUMERIC);
echo $filemtimes[0];
0120119
2005/09/27(火) 11:03:36ID:???$files = array('../xxx/zzz.log','../../yyy/yyy.dat','./www.log');
forerach($files as $value) $filemtimes[] = filemtime($value);
sort($filemtimes,SORT_NUMERIC);
echo $filemtimes[0];
0121nobodyさん
2005/09/27(火) 11:28:55ID:???php/4.3.11にPOSTしたときの連想配列ってid属性じゃ受け取れないみたいで、将来的にどうしたらいいの?
0122nobodyさん
2005/09/27(火) 11:43:10ID:???0123nobodyさん
2005/09/27(火) 11:50:44ID:???XTML1.1のDTDから ttp://www.w3.org/TR/xhtml-modularization/DTD/xhtml-form-1.mod をDLしてくると、
<!ENTITY % InputType.class
"( text | password | checkbox | radio | submit
| reset | file | hidden | image | button )"
>
<!-- attribute 'name' required for all but submit & reset
-->
とあるから、nameを使ってええんでないの?
0124nobodyさん
2005/09/27(火) 12:46:22ID:???ありがとうございます。(--ゝ
参照するファイル数が増えると、多少読み込み時間は長くなりますかね?
>>120氏のコードは.phpとして保存して、別のphpのhtml部からincludeさせるというような方法でいいんですよね?
>>113
スミマセン。 「複数のファイルを参照して、更新日時の一番新しい物を表示」
の間違いでした。(汗
0125nobodyさん
2005/09/27(火) 15:29:08ID:???そんなとこでsortしないほうがよか
foreach($files as $value) $mtime = max($mtime, filemtime($value));
0127115
2005/09/27(火) 17:36:05ID:???うおー。max 関数を使って、そういう事ができるのか。
趣味でチマチマと PHP やってる程度の自分にとっては、目から鱗です。
また少し、書くスクリプトに幅を出せそう。
0128nobodyさん
2005/09/27(火) 18:00:11ID:???0131nobodyさん
2005/09/27(火) 20:37:55ID:???00134nobodyさん
2005/09/28(水) 10:15:01ID:???0137nobodyさん
2005/09/28(水) 10:43:06ID:???では、mysql_closeについて
「 持続的でないリンクはスクリプトの実行終了時に自動的に閉じられるの で、この関数は通常の場合必要ありません。」
と説明されています。
この関数が必要とされる「通常」でない場合とは、どのような場合でしょうか。
ヒントや手がかりでもお教えいただけましたら幸いです。
よろしくお願いします。
0138nobodyさん
2005/09/28(水) 10:57:23ID:???たとえば、DBから情報を取得してから、そのあとに長い処理が続く場合とか。
ほら、気持ち的に切っといたほうがいいだろ。
難しい話はしても分からんと思う。
0139nobodyさん
2005/09/28(水) 11:32:02ID:dxIsb4Ke1枚ずつというのは手間がかかるのでまとめて処理する方法があれば
教えてください。
0140nobodyさん
2005/09/28(水) 12:08:28ID:oH6eqvtcMail_mimePartを使いメールのエンコードをやってみました。
使ってみると、setTxtBodyで指定したメール本文が反映されずbodyの
値が入っていませんでした。
どなたかMail_mimePart::encode()の使い方、または参考になりそうなページを
ご存知の方いませんか?
0141nobodyさん
2005/09/28(水) 12:22:48ID:b9i0UmwQ自分はHoge.classなんですが。
0142nobodyさん
2005/09/28(水) 12:30:00ID:???エディタが拡張子で色分けとか判別する場合、.classだとJavaのソースとごっちゃになるから漏れは.class.phpにしてるけど。
まあフレームワークとか配布されてるコードでは.class.phpが一番よく見かける罠。
0143nobodyさん
2005/09/28(水) 12:33:39ID:???テキストとしてソース垂れ流しちゃう危険性もあるから、.phpで終わらせるのが普通。
*.inc.php
*.class.php
*.conf.php
とかかな。
0144nobodyさん
2005/09/28(水) 13:22:27ID:???0147nobodyさん
2005/09/28(水) 13:54:56ID:oiijkcifサーバーに負荷をかけなくてすむのでしょうか?
1、
echo"こん";
echo"にちわ";
2、
echo"こん".
"にちわ";
3、
$html .="こん";
$html .="にちわ";
echo $html;
4、
echo <<<EOD
こん
にちわ
EOD;
0148nobodyさん
2005/09/28(水) 14:11:10ID:???こんにちは
<?php
0149nobodyさん
2005/09/28(水) 14:57:24ID:oiijkcifありがとうございます
そちらの方向で行きます
0151150
2005/09/28(水) 17:13:12ID:???普通じゃんね。
あほだな俺。
スルーしてください(鬱
0152nobodyさん
2005/09/28(水) 18:19:45ID:????>
あほ
<?php
処理
?>
あほ
<?php
処理
?>
あほ
<?php
処理
?>
あほ
<?php
みたいな。
0153nobodyさん
2005/09/28(水) 19:16:22ID:???<?
echo"<input name='test' type='hidden' value='テスト'>";
?>
でも、echoなので書き出され、表示されます。
何か良い方法、書き方はありませんでしょうか?
0154nobodyさん
2005/09/28(水) 19:19:13ID:???0157nobodyさん
2005/09/28(水) 20:01:23ID:qeEepy5X変数に格納したいのですがどうすればいいでしょうか?
0158nobodyさん
2005/09/28(水) 20:25:26ID:???0159nobodyさん
2005/09/28(水) 20:56:33ID:???これだけ書いとけばヒントになるかな?
---included.php---
<?php
$string = 'テラワロス';
?>
--show.php--
<?php
include 'included.php';
echo $string; // “テラワロス”が出力される
?>
0160nobodyさん
2005/09/28(水) 21:35:42ID:???マッチしたらスクリプトを終了。しなかったらURLにリダイレクト。
というような機能のスクリプトを書いたのですが、「211.102.103.65」の
最後の二桁の数字(65)が変動するので変わるたびに新しくリストに
登録しなければいけません・・・
後ろ二桁の「65」がマッチしていなくても「211.102.103」の部分がマッチすれば
TRUEを返すようにしたいのですが、どのようにすればいいのでしょうか?
よろしくお願いします。
ソースは次にかきます↓
0161nobodyさん
2005/09/28(水) 21:36:30ID:???//許可IPリスト
$ip_list = array("211.102.103.65",
"216.102.103.65",
"208.102.103.65",
"201.102.103.65");
$url = "http://hoge.org"; //リダイレクトするURLを変数に代入
$get_ip = $_SERVER['REMOTE_ADDR']; //取得したIPアドレスを変数に代入
//IPアドレスのチェック
foreach ( $ip_list as $value ) {
if (ereg ($get_ip, $value) ) {
exit;
}
else {
header ( "Location: $url" );
}
}
?>
0162nobodyさん
2005/09/28(水) 21:39:04ID:???0163157
2005/09/28(水) 21:53:48ID:???phpファイルにはスクリプト以外にhtmlソースも混ざっていて、
それの出力結果を変数に入れるということです。
0166nobodyさん
2005/09/28(水) 22:50:38ID:???IPv6は扱えないけど
0167nobodyさん
2005/09/29(木) 01:35:01ID:???0168nobodyさん
2005/09/29(木) 02:38:30ID:???0169nobodyさん
2005/09/29(木) 03:39:41ID:???ob_start();
include('includefile.php');
$data = ob_get_contents();
ob_end_clean();
0170157
2005/09/29(木) 06:03:27ID:FSfI9Iafありがとうございました。
0171nobodyさん
2005/09/29(木) 10:06:58ID:M2gqALef無限ループしないのは何故ですか?
上の例では foo で発生したエラーに対してエラーハンドラ関数が適用"されない"のに対し、
下の例では var で発生したエラーに対してエラーハンドラ関数が適用"されます"。
ぶっちゃけこういう仕様のほうがプログラミングが楽ちんなんですけど
なんか仕組み的に納得いかないもので。
------------------------------------
function foo(){
$x = 1 / 0;
}
set_error_handler('foo');
$a = 1 / 0;
restore_error_handler();
------------------------------------
------------------------------------
function foo(){
echo 'ERROR';
}
function var(){
$x = 1 / 0;
}
set_error_handler('foo');
var();
restore_error_handler();
------------------------------------
0172nobodyさん
2005/09/29(木) 11:56:56ID:7Ojuf/BR性器表現できないなら、explodeで前3つ保存すれば?性器表現を勉強するんだな。ユーザーエージェントとホストで弾けばいいんジャマイカ?
0174nobodyさん
2005/09/29(木) 17:25:57ID:???php.iniまわりの話なんですが
0175nobodyさん
2005/09/29(木) 17:35:25ID:???GDライブラリを使って画像出力をしてます。
沢山の図形や線を様々な色を使って描画するのですが、
一定数以上の図形を出力すると、
図形そのものは表示されるのですが図形の色が途中から全て同じになります。
phpの初期設定周りが原因なのでしょうか。解決出来ず困っています。
0176nobodyさん
2005/09/29(木) 17:52:56ID:???0177nobodyさん
2005/09/29(木) 18:07:21ID:???それも疑ったんですが、結構積んでるのでその心配はないかと。
CGIとして動かしてるので、
apacheとか別の所で引っかかってるんでしょうか...。
0178nobodyさん
2005/09/29(木) 18:35:39ID:???メモリ積んでてもphp.iniで制限してたら意味なし
memory_limit = 500M
とかやっとけ
0179nobodyさん
2005/09/29(木) 18:48:29ID:???くだらない質問じゃないから、も少し詳しい状況と
実際に使ってる環境とスクリプトソースをMLに投げたら?
ここでもいいけど追試してくれる母数が大きいところで調べた方がいいと思う。
0180nobodyさん
2005/09/29(木) 18:48:39ID:6Acw6xK3$val_tmp2 = 'ポストする文字列
項目1(タブ)項目2
111(タブ)222';
$val_tmp2 = urlencode($val_tmp2);
$val_length = strlen( $val_tmp2 );
$val_tmp1 ='POST /recive.cgi HTTP/1.0
Content-Type: text/csv
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)
Host: hoge.hage.com
content-length:' . $val_length';
$val_out = $val_tmp1 . "\n\n" . $val_tmp2;
$val_sock = fsockopen( 'host_name', 80, $val_error_no, $val_error_msg, 120 );
if( $val_sock == false ){
print "bom1<BR>\n";
exit( 1 );
}
$val_ret = fwrite( $val_sock, $val_out );
fclose( $val_sock );
としたのですが、どうしてもval_tmp2の値が受け側で取得できません(それ以外はOKでした)
どのようにしたら取得できるでしょうか?
■ このスレッドは過去ログ倉庫に格納されています