【PHP】くだらねぇ質問はここに書き込みやがれpart5
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん
2005/04/30(土) 00:12:53ID:OJfc9xBuここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>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/
0802nobodyさん
2005/05/28(土) 12:51:34ID:O3+IZd9y実鯖に転送したら作動しないのはWHY?
本のスクリプト使えねえよ・・・10日で覚えるPHP
0806nobodyさん
2005/05/28(土) 13:38:20ID:???[template.html]
僕の名前は###myname###です。<br>
あなたの名前は###yourname###です。<br>
[/template.html]
[index.php]
$myname = "あほたれ";
$yourname = "ばかたれ";
$hoge = file_get_contents("template.html");
$hoge = str_replace("###myname###", $myname, $hoge);
$hoge = str_replace("###yourname###", $yourname, $hoge);
echo $hoge;
[/index.php]
脳内で書いたから動くかどうかは知らんが。
0807nobodyさん
2005/05/28(土) 14:27:39ID:???CP932, Windows-31J, MS_Kanjiは、SJIS-winのエイリアス。
それぞれケース依存はしてなかったと思うが、気になるようなら自分で確認してくれ
0808789
2005/05/28(土) 16:17:37ID:???いや初歩的かな〜?と思って前置きとして書いただけです
何が初歩的で何が上級かもわからんので・・・
マニュアルだけじゃ分からなかったのでググって色々な例を見てやっとできますた
(自分的には全然初歩的じゃなかった・・・(;´Д`))
関数を教えてくれてどうもありがとう
0809nobodyさん
2005/05/28(土) 19:38:17ID:???0810797
2005/05/28(土) 19:52:35ID:???>>801
>>804
何故か全部駄目でした
僕の説明不足かもしれません
やりたい事と全ソース
<?php
header("Content-type: text/plain");
echo header("Content-type: text/plain");
$text='htmldata='.file_get_contents($_GET['url']);
$text=strip_tags($text);
$text = str_replace('&', '','$text');
echo $text;
?>
flashから渡されたURLのソースをテキストとして取得
↓
それのタグと &を 削除
↓
htmldata= 形式でテキストとして出力
なんですけど
実際は何故か $text♪= のような形で出力されてしまっています
読み込むflash側の問題でしょうか?
0811nobodyさん
2005/05/28(土) 20:11:37ID:???echo header〜 の行は不要。というか場合によっては有害。
str_replace('&','','$text') とすると、'$text'の部分は単なる文字列(変数とは解釈されない)なので、
str_replaceの結果は 文字列 $text (&が含まれないので元の文字列のまま) になる。
str_replace('&','',$text) が正解。
この場合、' ' が付いていないので、文字列では無く変数として解釈される。
0812810
2005/05/28(土) 20:18:23ID:???できました ありがとうございます
作ってもらって貼り付けるだけでは成長しないですよね
内容を理解できるように努力しようと思います
0813nobodyさん
2005/05/29(日) 09:51:25ID:???別ページへ飛ばすというようなものは、phpではどうやるのですか?
簡単な例をお願いします。
0814nobodyさん
2005/05/29(日) 10:11:43ID:???perlに限らずサブルーチンと呼ばれるものは、そういう挙動の事を意味しませんよ。
簡単な例を出してください。
0815nobodyさん
2005/05/29(日) 10:23:57ID:???画面を変えることなんですけど・・・
ググっても、本を読んでも見当たらないので例すら分からないのです。
0816nobodyさん
2005/05/29(日) 10:48:50ID:???0817nobodyさん
2005/05/29(日) 10:58:18ID:???1個のPHPファイルが全てのリクエストを受け付けるって事かい?
フロント・コントローラーって呼ばれたりするやつか。
自分でif文を使って分岐させてもいいし、
いくつかのフレームワーク(mojaviとか)はそういう呼び出し方を前提に作ってあるよ。
0818nobodyさん
2005/05/29(日) 12:56:43ID:???0819nobodyさん
2005/05/29(日) 19:32:09ID:???Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; istb 702)
これってどういう意味ですか?
SV1 istb 702ってところがよくわかりません。
0820nobodyさん
2005/05/29(日) 21:08:22ID:???オープンソース、もしくはフリーでPHPで使えるリッチクライアントって何かありませんか?
JavaでしたらLoszloなどがあるのですが、PHPでは有料のもの以外見つかりませんでした。
0821nobodyさん
2005/05/29(日) 22:58:06ID:???問題の切り分けをしましょう。
それはPHPの問題ではなくてUserAgentの内容に関する質問です。
したがって、すれ違いです。
0822nobodyさん
2005/05/30(月) 00:01:46ID:???0823nobodyさん
2005/05/30(月) 02:48:10ID:???お前はまずGETメソッドについて勉強しる。
で、それはともかくとしてBASICみたいにGOTO使えたら便利なのに、と考える漏れ。
0824nobodyさん
2005/05/30(月) 03:10:02ID:???0825nobodyさん
2005/05/30(月) 07:44:04ID:???初回のアクセスの際、変数がなく、エラーになります。どうすればよいでしょうか?
0826nobodyさん
2005/05/30(月) 08:20:39ID:???http://www.webmasterworld.com/forum88/4831.htm
0828nobodyさん
2005/05/30(月) 14:11:42ID:???0829nobodyさん
2005/05/30(月) 14:12:42ID:iPZEzWrI0830nobodyさん
2005/05/30(月) 14:14:36ID:???0832nobodyさん
2005/05/30(月) 14:51:47ID:???20 if x=1 then goto 10
死亡
0833nobodyさん
2005/05/30(月) 15:31:27ID:???0834nobodyさん
2005/05/30(月) 16:11:42ID:???Notice: Undefined offset: 1 in c:\usr\Apache\htdocs\test\registration.php on line 45
Notice: Undefined offset: 2 in c:\usr\Apache\htdocs\test\registration.php on line 45
Notice: Undefined offset: 3 in c:\usr\Apache\htdocs\test\registration.php on line 45
Notice: Undefined offset: 4 in c:\usr\Apache\htdocs\test\registration.php on line 45
Notice: Undefined offset: 5 in c:\usr\Apache\htdocs\test\registration.php on line 45
という風に未定義のオフセットとか言われてしまいます。
処理は正常に終わっているのですが、いちいち上記のメッセージが出てしまいます。
どうすれば解消できるのでしょうか。
for($i=0; $i<=$entry_number; $i++){
if($idchk[$i]!=$id){
$idflg = true;
}else{
$idflg = false;
break;
}
}
0835nobodyさん
2005/05/30(月) 16:28:45ID:???0836nobodyさん
2005/05/30(月) 16:34:06ID:???たびたびすいませんがこの方法で後々不具合が出るとかはないでしょうか
0837nobodyさん
2005/05/30(月) 16:58:11ID:???zend様のご気分次第で御座います。
if(isset($idchk[$i]) && $idchk[$i]!=$id){ てな感じで
$idchk[$j]が存在するかチェックすれば気にしなくて済みますが。
0839nobodyさん
2005/05/30(月) 20:10:40ID:???PHPでリッチクライアントはFlash使ったのぐらいしかみないなぁ・・・
俺も仕事だとBiz/Browser使ってるけど、個人で使うには高いしね。
0841nobodyさん
2005/05/31(火) 01:21:02ID:???0842nobodyさん
2005/05/31(火) 01:28:19ID:???照会順序はデータベース、テーブル、フィールドすべてsjis_japanese_ci
phpファイルもsjisです ヘルプ
0843nobodyさん
2005/05/31(火) 03:33:46ID:???環境を書けよ・・・
多分Mysql4.1系だから
$conn = mysql_connect(xxx);
mysql_query("SET NAMES sjis" , $conn);
0844nobodyさん
2005/05/31(火) 04:25:32ID:???「メアド」を書いたりするヤツがたまにいるんですけど、
これをPOST後の入力チェック画面で赤字などで表示して知らせたいんです。
mb_convert_kanaとかだと変換されちゃうけど、変換はせずに、
単に「入力されたのはカタカナではない文字である」と検出するだけの
関数ってありますでしょうか??
0849nobodyさん
2005/05/31(火) 06:26:34ID:???4.1系は駄目なんですよ・・・
スキルあるなら、sjisでコンパイルやり直すぐらいしか対処法はないです。
>>847
本でも買って読んでろボケ
と、心でつぶやいてみる
0851nobodyさん
2005/05/31(火) 07:32:18ID:???英数以外が見つかればそれをurlencodeしたい。ここに\1を使うのは違ってるらしい。正しい手法を教えて。
0852nobodyさん
2005/05/31(火) 07:42:14ID:???0853nobodyさん
2005/05/31(火) 07:46:12ID:???replacement部分で、ヒットしたpatternをどうこうするにはどうしたらいいか、です。
0854nobodyさん
2005/05/31(火) 08:24:24ID:???>>852の言うように意味無いんだけどこういうのがある
$hoge = preg_replace_callback("/(\W+)/",
create_function(
'$match',
'return urlencode($match[1]);'),
$hoge
);
0855nobodyさん
2005/05/31(火) 08:33:49ID:???それ、サーバ側の設定の所為じゃなくて、
クライアント側(PHPのMySQLエクステンション)の設定の所為だから。
クライアント側をコンパイルし直せばOK。
あとphp.iniで設定できるようなパッチが出回ってた気がするが、
そのままパッチあてるならphpのバージョンにも依存するだろうしな、
コネクション開始する際にSETするようにソフト側で対処するのが無難。
0856nobodyさん
2005/05/31(火) 11:15:59ID:hNG5bdXN0857nobodyさん
2005/05/31(火) 11:21:14ID:???0859nobodyさん
2005/05/31(火) 12:16:58ID:???今までの質問、全部その「環境」が一因じゃん。
PHPは単体で動くものじゃないし
エンジンが何でコンパイルされてるのか
設定ファイルがどうなってるか
ライブラリはそろってるのか
環境変数 動作OS
いろんなものが絡み合って、支えあって生きているんだ。
人という字は、人と人とが支え
0860nobodyさん
2005/05/31(火) 12:22:23ID:???0861nobodyさん
2005/05/31(火) 12:25:12ID:???ログファイルが有るのですが、そのログファイルの i 行目だけを
ユーザーから受けた値で修正したいのです。
そういう場合どういう処理をすればいいのでしょう。
0862nobodyさん
2005/05/31(火) 12:32:54ID:???先頭から1行ずつ読んで別ファイルに書き込んでいく。最後にファイル名を変更
そんなに大きなファイルじゃなければfile()で全体を配列に読み込んで修正して書き込む
0863nobodyさん
2005/05/31(火) 12:41:07ID:???行という概念が、そのOSでの改行コードがファイル中に存在するだけ、ということを頭の中に叩き込む。
そうすれば、ファイル中で i 行目を発見するにはファイルの先頭から読み込んでいくしか無いことが分かる。
1. 各行を配列にぶち込んで、該当の配列要素を弄くり倒し、改竄された配列をファイルにぶち込む
2. 行単位で読み込みながら、該当行が見つかるまでファイルに書き出し、
該当行を発見したら修正したものをファイルに書き出して、ファイルの終わりまでそれを続ける。
3. 適当なサイズのバッファを用意し、それにファイル内容を逐次読み込みながら改行コードをカウントする。
該当行を発見したら修正しつつ、ファイルの終わりまでそれを続ける。
4. 各行が固定長だと限定できると、改行コードの数を数えなくても一気に指定行へ移動(seek)でき、
修正(修正+固定長へのパディング)して上書き保存。固定長制限の見返りに冒頭の話の例外的な扱いになる。
etc.
0865nobodyさん
2005/05/31(火) 15:37:15ID:???404などのステータスエラーの場合のエラーページをカスタマイズするには、
PHPというよりはApacheの機能なのでしょうか?
Apacheでのカスタマイズ方法は調べてわかりましたが、
PHPのみでは実現可能なのでしょうか?
それと、php.iniでax_execution_timeに設定された秒数を超える処理だとエラーになりますが、
このエラー自体はPHPのエラーメッセージが出ます。
これは、Apacheではエラーとして拾えないのでしょうか?
また、拾えた場合、エラーステータスは何になるのでしょうか?
最初の質問での、エラーページのカスタマイズがApacheで行うしか手が無い場合、
同様に、タイムアウトした処理のエラーページもカスタマイズしたいので、
一緒に質問させていただきました。
0866nobodyさん
2005/05/31(火) 15:43:31ID:???動画ファイル(aviやmpeg等)の横幅と高さの取得はどのようにすればいいでしょうか?
0868nobodyさん
2005/05/31(火) 16:29:55ID:???PHPのみというのがわからない
ApacheのErrorDocumentで特定のPHPスクリプトを実行では駄目なのか
0869nobodyさん
2005/05/31(火) 16:54:29ID:???> 404などのステータスエラーの場合のエラーページをカスタマイズするには、
> PHPというよりはApacheの機能なのでしょうか?
そう
> Apacheでのカスタマイズ方法は調べてわかりましたが、
> PHPのみでは実現可能なのでしょうか?
質問の意図がよくわからない
> それと、php.iniでax_execution_timeに設定された秒数を超える処理だとエラーになりますが、
> このエラー自体はPHPのエラーメッセージが出ます。
PHPのエラーだから当たり前
> これは、Apacheではエラーとして拾えないのでしょうか?
> また、拾えた場合、エラーステータスは何になるのでしょうか?
Apacheで拾うのは無理だと思う。
> 最初の質問での、エラーページのカスタマイズがApacheで行うしか手が無い場合、
> 同様に、タイムアウトした処理のエラーページもカスタマイズしたいので、
> 一緒に質問させていただきました。
set_error_handler使えばPHPのエラー画面のカスタマイズはできると思う
0870nobodyさん
2005/05/31(火) 17:44:47ID:???値が空のときの振り分けは無理なのでしょうか?
0871nobodyさん
2005/05/31(火) 17:49:01ID:???0872nobodyさん
2005/05/31(火) 18:03:46ID:???レスありがとうございます。
defaultはdefaultで指定したい動作があります。
空のときとcase 1の時に同じ処理にしたいのですが・・・
同じ内容を2回書かずに、break無しで振り分けられたら良いな、と。
"NULL"とか指定しても無理でした。
ifを使えば簡単なのかもしれないんですけど、
覚えたてなので色んな手段で試してみたいんです。。。
0873nobodyさん
2005/05/31(火) 18:30:01ID:???空というのはGETの変数が指定されていない、という意味だったら
以下でいいんでないかい?
switch (empty($_GET['id']) ? 1 : $_GET['id']) {
case 1:
echo '空 or 1';
break;
...
0874nobodyさん
2005/05/31(火) 18:35:30ID:???言葉足らずでした。
動画のサイズをPHPで取得したいのです。
画像ならサイズを取得できるのですが…
<embed src = "aaa.mpg" width = "ここ" height = "ここ">
という感じで、「ここ」の部分を自動的に取得したいと思っての質問です。
0877nobodyさん
2005/05/31(火) 19:19:20ID:???0879nobodyさん
2005/05/31(火) 21:33:00ID:???dieとかexitで処理を終了した場合
image resourceのメモリ開放やdirでcloseメソッドで閉じるなどは
しなくてもいいのですか?
終了した瞬間にメモリ開放とかならうれしいのですけどねぇ
0880nobodyさん
2005/05/31(火) 21:33:42ID:???ありがとうございます!
出来ました!
caseで指定する値ばかりに気をとられてました。
勉強になりました。
0881nobodyさん
2005/05/31(火) 23:11:13ID:???0882nobodyさん
2005/06/01(水) 03:09:50ID:???よろしくお願いします。
簡単なサイト内検索を作っているところです。
ファイルをゲットして、配列に格納して、正規表現で
フォームから入力された文字と比較して、出力するものなんですが、
なぜか、「ポ」「ー」だけヒットしません・・・。
文字コードが間違ってるのかと、
いろいろ組み合わせてみたのですが、だめでした。
わかる方がいましたら、アドバイス願います。(_ _)
0883nobodyさん
2005/06/01(水) 03:13:38ID:???if(isset($_SESSION['user'])){
echo "sessionが生きている";
} else {
echo "sessionが切れている";
}
0885nobodyさん
2005/06/01(水) 03:33:42ID:???switch($_POST['mode']):
case 'aaa' or 'bbb':
ab();
break;
case 'ccc':
c();
break;
こんなのもある
0886nobodyさん
2005/06/01(水) 05:46:19ID:???うーむ、$_SESSION調べるしかないのか。
必ずセットされるキーが無いかも知れないので、
if (count($_SESSION) == 0) {
echo "sessionが切れている";
}
とでもしてみますわ。
0887nobodyさん
2005/06/01(水) 07:34:27ID:???正規表現じゃなく文字列関数でチェックすればいい。
処理も軽いらしいし。
if (strpos($text, "ポー") !== false) {
echo "ヒット";
}
else echo "アウト";
0888nobodyさん
2005/06/01(水) 09:34:44ID:???こんなんはどう?
if (!empty($_SESSION)) {
print_r($_SESSION);
}
0889nobodyさん
2005/06/01(水) 09:54:21ID:???0890nobodyさん
2005/06/01(水) 13:43:09ID:???function mkTrip($key, $length = 10)
{
$salt = substr($key . 'H.', 1, 2);
$salt = preg_replace('/[^\.-z]/', '.', $salt);
$salt = str_replace(
array(':',';','<','=','>','?','@','[','\\',']','^','_','`'),
array('A','B','C','D','E','F','G','a','b','c','d','e','f'),
$salt);
return substr(crypt($key, $salt), -$length);
}
0891nobodyさん
2005/06/01(水) 14:10:28ID:ol5jb9i+find / -name "*.ini*"の結果
/usr/src/php-4.3.10/pear/tests/php.ini
/usr/src/php-4.3.10/php.ini-recommended
/usr/src/php-4.3.10/php.ini-dist
しか見当たりませんでした。
phpはCLI版で動いているようです。
php -v :PHP 4.3.10 (cli)
phpinfo()のConfiguration File (php.ini) Path は
/usr/lib
になっていてこちらも見当たりません。
この場合、php.iniを探す方法ってありますか?
0892nobodyさん
2005/06/01(水) 14:23:45ID:???存在しない(でも動いてる)
と言う可能性もあるんでしょうか?
0893nobodyさん
2005/06/01(水) 15:07:35ID:???ってかREADMEかINSTALLに自分で
/usr/src/php-4.3.10/php.ini-dist
をコピーして環境に合わせて編集せいって書いてるだろ。
0895891&892
2005/06/01(水) 15:17:12ID:???>>893
今まで自分ではコピって編集して使ってたので
「ない」という自体に戸惑ってました。
>>894
PHP4からなくてもデフォルト値で動くようになったみたいですね。
ちょっとびびりました
0897nobodyさん
2005/06/01(水) 19:37:39ID:1hihSq3g正常に書き込みが終わります。
このエラーが何であるかを知りたいのですが、どのようにデバッグを行ったらよいですか?
0898軟式PHP
2005/06/01(水) 19:39:16ID:???それを止めてデバッグすればいいのでは。
0899896
2005/06/01(水) 19:52:16ID:1hihSq3gリダイレクトではありません。
ボタンを押した次の瞬間にエラーが表示された後、書き込み終了する感じです。
サーバーを見に行けば分かりますか?
0900nobodyさん
2005/06/01(水) 20:09:21ID:???書き込みの完了(つーか完了の画面を出力)の直前あたりにexit()を入れて、
エラーが画面に残るまでexit()の位置を前にずらしていく。
エラーが表示された部分が勝手に消去されるなんて事は、
リダイレクトやjavascriptでごにょごにょぐらいしか思いつかないけどなぁ。。
マニュアルの「エラー処理およびログ記録関数」にエラーの扱いに関する情報が沢山載ってるよ。
0901896
2005/06/01(水) 21:44:31ID:1hihSq3gexitの位置を変えてデバッグに成功しました!
レス数が900を超えています。1000を超えると表示できなくなるよ。