【PHP】初心者コーナー 3 Released【スローモード】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
03/06/11 06:24ID:???ファイル MySQL PostgreSQL 正規表現でも なんでもいってみ
でもな、アホな質問であっても詳しく質問しろよ。 ネタはおもしろく書けよ。
前スレ http://pc2.2ch.net/test/read.cgi/php/1048442813/l50
■PHPの普通の質問はあっちな、【PHP】質問スレッド Part8
http://pc2.2ch.net/test/read.cgi/php/1050249148/l50
■PHPへ移行したいPerl信者はあっちな、【待望】PerlユーザのためのPHP入門
http://pc2.2ch.net/test/read.cgi/php/1046326634/l50
■マニュアル嫁ってうるさいのがいるからちょっとは嫁な、
http://www.php.net/manual/ja/
■おまえ初心者なら入門本くらいかっとけな、PHP関連の書籍(但しPHP出版系お断り)
http://pc2.2ch.net/test/read.cgi/php/985315574/l50
■これはなズープスと読むらしいがあっちな、XOOPS
http://pc2.2ch.net/test/read.cgi/php/1031736248/l50
でもな、ここで書きたかったらここで書き。 あとは関連な、>>2
0752nobodyさん
03/08/13 22:01ID:3p1HFmGf0753nobodyさん
03/08/13 22:09ID:???readfileで殆どのページを表示させるのと、
PHPファイルに情報を入れておいて、 ?> でPHPを出て表示させるのとどちらがサーバー負担が小さいでしょうか。
前者はもう一つファイルを開くという作業があって、
後者はPHPとしてのチェック作業がありますよね。
もちろんサイズが小さければ後者だと思うのですが、
ある程度大きくなる前者の方が良い気がします。
どの辺りのサイズで切り替えを考えるべきでしょうか。
簡単な例
前者 <?php readfile("htm.txt"); ?>
後者: <?php TEST ?>このあとに全ページが続く
0754nobodyさん
03/08/13 22:11ID:???後者: <?php ?>このあとに全ページが続く
PHP-GTKとかいうのがあったな。デスクトップアプリ作るやつ。
ブラウザをPHPで作るアフォはあまりいないと思うが。
0757nobodyさん
03/08/14 13:29ID:GZQg1swIを使用しているのですが、これをの投書を表示するindex.phpに、
最新1項目だけ表示させるにはどうすればいいのでしょうか?
<-------- index.php -------->
<?php
include "bblog/config.php";
if(is_numeric(@$_GET['postid'])) {
$bBlog->assign('postid',$_GET['postid']);
$bBlog->show_post = $_GET['postid'];
$bBlog->display('post.html');
exit;
}
if(is_numeric(@$_GET['sectionid'])) {
$bBlog->assign('sectionid',$_GET['sectionid']);
$bBlog->assign('sectionname',$bBlog->sect_by_name[$_GET['sectionid']]);
$bBlog->show_section = $_GET['sectionid'];
}
$bBlog->display('index.html');
?>
<-------- ここまで -------->
0760nobodyさん
03/08/14 14:19ID:JF8X1a1vupload_max_filesize = 2M
となっているレンタルサーバ(WebARENA)なんですが
どうにかして2M以上のファイルをアップロードできるように
する手段はないでしょうか?
0762nobodyさん
03/08/14 15:58ID:???ちょっと落としてソースを眺めてるのだが bblog のソースはなんか
TURBO PASCAL 系のようなインデントがされてるな。
つーか TAB インデントと SPACE インデントが混ざってるところが
痛い。
まぁそれはおいといて、bBlog.class.php ってファイルの中の get_posts
あたりを見てみたらどう?このメソッドで出来そうだけど。
0763nobodyさん
03/08/14 16:34ID:3awXqGFxなぜ?
ttp://www.php.net/downloads.php
サーバーがない・・・
なぜ?
ttp://www.php.gr.jp/
下記のバージョンを使っているのですが、ユーザディレクトリで
fopenを使うと、ファイルが無い言われます。(requireなどはオッケー)
フルパスで指定すると平気なのですが、相対パスだとアウトです。
ちょっと調べたのですが、「バグ?」という曖昧な情報だけで、
バグかどうかに関する物が見つかりませんでした。
これって結局バグなのでしょうか?
PHP 4.3.0 (cli) (built: Jan 17 2003 16:22:27)
Copyright (c) 1997-2002 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2002 Zend Technologies
0766nobodyさん
03/08/14 17:10ID:???file_exists() は true 返すの?
0767nobodyさん
03/08/14 17:15ID:SyUXGdwyパンティーが見えそうな位に短いスカート、ムチムチした足にルーズソックス。
私自身も大のセーラーフェチなんです。
そんな欲望を満たしてくれる動画だけを徹底的に集めました。
無料ムービーを観てください。
http://www.pinkschool.com/
0769nobodyさん
03/08/14 17:50ID:???0770765
03/08/14 18:23ID:???<?php
$test = fopen("./test.conf",'r');
?>
で、こけます。
当然、test.confは同じところにおいてありまつ。
さっぱり(;´Д`)
0771nobodyさん
03/08/14 18:56ID:???0772nobodyさん
03/08/14 19:00ID:???0773763
03/08/14 19:02ID:???ttp:///get/php-4.3.2-Win32.zip/from/jp.php.net/mirror
ってなってる。
ttp://www.php.net/get/php-4.3.2-Win32.zip/from/jp.php.net/mirror
にしたら、保存できた。
ttp://www.php.gr.jp/
は、復活していた
0775nobodyさん
03/08/14 20:14ID:???http://jp.php.net/manual/ja/function.file-exists.php#26757
file_exists (getcwd()."/somedir/somefile.php");とか
file_exists (realpath("./somedir/somefile.php"));で動く
0776nobodyさん
03/08/14 20:48ID:gUgtxMRFという配列を
$RENSOU[A] = 001
$RENSOU[b] = 002
とする場合、perlではそのまま代入すれば出来ましたが、
PHPの場合はどうやって変更すればよいでしょうか?
しまった。
ここに張っておけばよかったか。
--- PHP users MLから転載 ---
日時 :8月14日(木) 終日
影響範囲:www.php.gr.jp のみ (注)
理由 :回線拡張工事の為
その他 :14日中には完了する予定ですが、予期しない問題の為
15日もアクセスできない可能性もあります。
また、何らかの理由により15日以降回線に一時的に
障害が発生することもあります。
以上、ご不便をおかけ致しますが、皆様のご協力をお願い致します。
注:メーリングリストは使用できます。
0778nobodyさん
03/08/14 21:14ID:???$hoge=array("A","001","B","002","C","003");
reset($hoge);
while(list(,$key)=each($hoge)){
list(,$value)=each($hoge);
$RENSOU["$key"]=$value;
}
0779nobodyさん
03/08/14 21:50ID:gUgtxMRFありがとうございます。listの使い方が分かりました。
しかしperlに比べて少々めんどい、、、
0780nobodyさん
03/08/14 22:04ID:???perlのやりかたをphpで実現しようとすれば当然めんどい。
phpはphpのやりかたで便利なようにできている。
どの言語でも同じ事だが。
0781nobodyさん
03/08/15 07:29ID:???each()は連想配列用だからトリッキーになっちゃう。
素直に書くとこうじゃない?
$hoge=array("A","001","B","002","C","003");
reset($hoge);
while (($key = current($hoge)) !== FALSE) {
$RENSOU[$key] = next($hoge);
next($hoge);
}
元の配列を破壊するならこっち。
$hoge=array("A","001","B","002","C","003");
while (($key = array_shift($hoge)) !== NULL) {
$RENSOU[$key] = array_shift($hoge);
}
0782nobodyさん
03/08/15 11:04ID:???こんなのでも大丈夫みたい。
$hoge=array("A","001","B","002","C","003");
foreach ( $hoge as $key ) {
$RENSOU[$key] = next( $hoge );
}
0783782
03/08/15 11:14ID:???結果に不要な値が含まれるので失敗。
0784nobodyさん
03/08/15 11:25ID:???falseが帰ってくるから場合によっては危険。
0785nobodyさん
03/08/15 11:28ID:mChPmz42「表示」「機能」などの文字を書き込むと文字化けしてしまいます。
化けないようにするには書き込むときに何か特別な処理が必要なんでしょうか?
0786nobodyさん
03/08/15 11:41ID:???これは \ と同じなので次の文字の1バイト目がエスケープされてしまう。
1. SJISで書くのをやめる
2. PHPの設定でmagic_quotes_gpcをonにする
3. 危なそうな変数はaddslashesを通過させる
1.がお薦め。
0787新宿歌舞伎町裏DVD本舗
03/08/15 11:50ID:2mbTnFQt☆★ 無修正DVD★☆なら 新宿歌舞伎町直送 ☆★
人気爆発新作ベスト9入荷
堤さやか引退特集 憂木瞳 プロジェクトX No8 ベイビーフェイスをやっちまえ
白石ひより・愛葉るび SNAPSHOT 地下映像陵辱援交 すぎはら美里痴女教師
店頭販売の売れ筋のみ厳選してみました 安心の後払い
http://book-i.net/moromoro/
白石ひとみ 小森詩 山田まり 長瀬愛
@@ 及川奈央 レジェンド @@ 堤さやか 東京バーチャル 依然大好評
サンプル画像充実 見る価値あり 最高画質
▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼
0788nobodyさん
03/08/15 12:07ID:mChPmz421と3はやってみたんですが何故かダメでした。
動かしてるのは自分のサーバじゃないんですが、2は調べてみたらoffになってました。
こうゆう場合はどうすればいいんでしょうか?
0790nobodyさん
03/08/15 12:22ID:mChPmz42SJISになってましたが、なんか色々やってるうちに
文字化けせずに書けるようになりました。
$msg = stripslashes($msg);
この行をのけたらいけました。
どうもありがとうございます。
0791Name_Not_Found
03/08/15 12:28ID:???皆さんどうやって指定しているのですか?
0793nobodyさん
03/08/15 13:39ID:ZJsoX+AAMLに書こうかと思ったけど、粘着されるとやだからこっちに書いてみるテスト。
0794nobodyさん
03/08/15 14:58ID:???ここでやれ。夏厨
PHP-users ML ヲチ
http://pc2.2ch.net/test/read.cgi/php/1031734100/
0795793
03/08/15 15:41ID:???0796757
03/08/15 16:14ID:???/* \bblog\templates\default\index.html */
{getrecentposts num=1 assign=posts}
上記の行の数字部分を変えることで、表示ポスト数を変えることができました。
0797nobodyさん
03/08/15 17:10ID:???正常に取得することができません($strはから文字でした)
どのようにすれば取得できるのでしょうか?間違っている点の指摘などありましたら
よろしくお願い致します
$fp = fopen( "php://stdin", "rb" ) or die( "error" );
$str = fread( $fp, 3 );//ファイルタイプチェックのため
以下続く
0798nobodyさん
03/08/15 18:18ID:???0799nobodyさん
03/08/15 21:36ID:???stdinはだめ。.htaccessで
php_flag always_populate_raw_post_data On
と設定して、postを受け取ると$HTTP_RAW_POST_DATAに生の中身が入ってるよ。
サンプル↓
<?php echo $HTTP_RAW_POST_DATA;?>
<form method=post><input type=text name=booboo><input type=submit value=post></from>
0800nobodyさん
03/08/15 22:05ID:???以下処理が続くという意味で書いたのですが、ものすごく紛らわしくて
申し訳ありませんでしたm(__)m
>>799
stdinだとダメだったんですか。ずっとこれで頑張っていました__| ̄|○
早速、教えていただいたものでやってみようと思います。
0801山崎 渉
03/08/15 22:28ID:???│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0802nobodyさん
03/08/15 22:52ID:bGL7o/n70803nobodyさん
03/08/16 00:09ID:yCKhoHep0804nobodyさん
03/08/16 00:41ID:bJ8kSIAeすべて無修正でみせます。
アニメの中の美少女のオマンコ、女子校生のオマンコ
はっきり見えます。
無料画像をここでゲッツ!!
http://www.pinkfriend.com/
0805nobodyさん
03/08/16 01:35ID:kg29KKNXどの掲示板を使っても、必ずエラーメッセージが表示されるのですが、どうしましょう。
例えば
$mode = $_POST["mode"]; に対して
Notice: Undefined index: mode in 〜 というメッセージを出すのですが、
無視してもよろしいんでしょうか。
こうした方がより良いという方法があったら、教えて頂きたい次第です。
0806nobodyさん
03/08/16 01:50ID:???0807nobodyさん
03/08/16 02:25ID:???上のスクリプトはこんな感じでした。
echo "<form action=\"$setting[script]\" method=\"POST\">\n";
aaacafeの方に上げて試すと、特にエラーメッセージは出ませんでした。
エラー出っ放しでも投稿は反映されるので、
htmllint並みの潔癖さんなのかしらん。と、心のどこかで疑っている次第です。
できればエラーメッセージを止める以外の方法で、解決できませんでしょうか。
0808807
03/08/16 03:06ID:???インストーラー版をアンインストールして、
zipでまとめられていた方を入れてみたところ、
エラーメッセージが綺麗さっぱり消えました。
ヒントはhttp://pc2.2ch.net/test/read.cgi/php/1046326634/7でした。
8時過ぎからずっと悩んで、検索しまくってたのにー。
0809nobodyさん
03/08/16 03:20ID:???php.ini の error_reporting はどうなってますか?
消えたように見えただけでエラー出力が抑止されてるだけ?
(aaacafeの設定がそうなっているとか)
$mode = (isset($_POST['mode']) ? $_POST['mode'] : ''); とか
0810807
03/08/16 03:54ID:???error_reporting = E_ALL & ~E_NOTICE
でした。以前がどうだったか分かりませんが、デフォルトのはずです。
英語もあんまり読めないしー。
>$mode = (isset($_POST['mode']) ? $_POST['mode'] : '');
なるほど、とか言えるほどの知識はないので、
リファレンス見ながら理解してみようと思います。
ありがとうございます。
808のスレ見てたら、もう酷い時間ですよ!
0811nobodyさん
03/08/16 04:46ID:0jlc9p4o0812nobodyさん
03/08/16 06:32ID:???せいきひょうげんと読みます。
文字列の操作に使います。以上。
0813nobodyさん
03/08/16 11:35ID:???$a = 0;
$b = 0;
$heikin = $a/$b;
echo $heikin;
のように、"0"がセットされた$aと$bを使い割り算をし、ある数値を求めたいのですが
どうも0/0の計算の場合に
Warning: Division by zero in 〜
と上の四行ソースで言うと、三行目で警告が出てしまうッス。 これを回避する方法を教えてください。
お願いします。
0814nobodyさん
03/08/16 12:09ID:???$b = 0;
#$heikin = $a/$b;
echo $heikin;
0815nobodyさん
03/08/16 12:29ID:???b=0 の時だけ処理を分ける
算数の問題のような
0816nobodyさん
03/08/16 12:40ID:???ありがとうございますっ!
お、そんな方法が・・・と思ったら$aと$bが0の場合は$heikinに0がセットされないんですな・・とほほ。
>>815
そうそう、二時間近くいじくって先ほどそれに気が付きました汗
ありがとうございましたー!
0819nobodyさん
03/08/17 00:22ID:/KfDx3SXフォルダの中にフォルダを作るにはどうしたらよいですか。
↓やるとhogeフォルダが作成できません。(uidが違うから?)
mkdir("aaa");
chmod ("aaa", 0707);
mkdir("aaa/hoge");
0820nobodyさん
03/08/17 14:57ID:???0821nobodyさん
03/08/17 18:07ID:w938zl0m現在使用しているPHPスクリプトが時差設定が出来なくて困ってます。
$abctime= (date ("H:i:s"));
この部分をgmtimeとか使って変える気がするんですが、
どうすればいいんでしょうか?
誰かおながいします
0823nobodyさん
03/08/18 00:09ID:pnFIbaKU$abctime=putenv('TZ=JST-9');
ってことでしょうか?
すんません知識がしょぼくて汗
0824821
03/08/18 00:19ID:pnFIbaKU正しくは以下です。
$abcdate = (date ("Y-m-d"));
$abctime= (date ("H:i:s"));
これを何とか日本の時間に直したいんでつ。
よろしくお願いしまつ
0827nobodyさん
03/08/18 06:12ID:BwATsvIe0828nobodyさん
03/08/18 07:21ID:???作成するシステム全体で読み込みしかしないんだったら不要。
もしどこかで書き込みと競合する可能性があって、それがまずいなら何らかのロックは必要。
あとflock()はadvisory lockなので、みんなで守らないと意味ないので注意。
0829nobodyさん
03/08/18 08:06ID:BwATsvIeじゃあどこかでファイルに書き込みする所が1箇所でもあれば
fopenで開く処理のときは全部lockかけないといけないって事ですか?
0830nobodyさん
03/08/18 09:16ID:???読み込むだけなら無くても良いと思うが・・・。
0832nobodyさん
03/08/19 03:47ID:OzwjKvy8だったらやっぱり使う定数が多い場合は全部defineで宣言した方がいいんですか?
global宣言しないといけないものがあまりに多くなってしまったので。
定数として宣言した方が処理が早くなるとかあるんでしょうか。
0833nobodyさん
03/08/19 08:22ID:???あるファイル(txtやdat)ファイルに
文章あ-1 文章あ-2 文章あ-3
文章い-1 文章い-2 文章い-3
が書いてあって
別のphpファイルから 文章あのなかからランダムでひとつ、文章いの中からランダムでひとつ取り出すのはどうしたらできるでしょうか?
どなたか 教えてください。
0834nobodyさん
03/08/19 11:48ID:???複雑化してるなら定数で済むものは定数でいいのでは?たぶん処理も早いし
>>833
文章あ-ランダム数 文章い-ランダム数 でいいかと?
0835nobodyさん
03/08/19 20:37ID:HWSDVW6Bhttp://homepage3.nifty.com/manko/
0836nobodyさん
03/08/20 02:26ID:DmnhIRDP0838nobodyさん
03/08/20 04:12ID:???file関数で一度全部配列に入れて1行目だけ書き換えて保存する以外に効率が良い方法はどんなやり方がありますか?
0839nobodyさん
03/08/20 04:31ID:???どうしたらいいんですか?
0840nobodyさん
03/08/20 06:18ID:5bGlwbl+でmixed searchが半角1文字のときは探してくれないんでしょうか。
0841_
03/08/20 06:30ID:???0842nobodyさん
03/08/20 21:17ID:UjFXAgnthttp://beauty.h.fc2.com/
0844nobodyさん
03/08/21 02:26ID:???>>843
行が固定長でなければぜんぶ読むしかないんとちがう?
file()で正解だと思う。ネイティブ処理だし。
いっそログファイルをdbmにするのはどう?
0846838
03/08/21 06:13ID:???最初ある1行目を消して違うものに書き換え、2行目以降は元のままって意味だったんですが、やっぱりfopenでできますか?
0847nobodyさん
03/08/21 15:36ID:pPohBqhpPHPの質問で数値の表示方法についての質問なんですが、数値の計算で
例えば
10×1.05 をやると 10.5
になるのですがこれの小数点以下を切り捨てたいのですが、どうすれ
ば良 いのでしょう。number_format関数を使えば小数点以下の修正が
行なえるというのは知っているのですが、number_format関数を使うと
1000などの数値の時、1,000となり","(カンマ)が表示されてしまい、数
値として認識しなくなってしまいます。
この計算の後にもさらに計算をしたいので、数値として認識させなけれ
ばならないので、こまっています。
どうぞご指導をよろしくおねがいします。
0848nobodyさん
03/08/21 16:33ID:???(int)
0849nobodyさん
03/08/21 16:53ID:pPohBqhpたすかりますね。今後もどんどん活用しようと思います!!
0850nobodyさん
03/08/21 16:56ID:???>>846
いや、だから普通にやるなら無理なんだってば。
ファイルを開くモードによって書き換えた残りの部分が
中途半端に残ったり、ファイルサイズが0になったりする訳
だから、いずれにせよ、書き換えた部分以外の残りを
書き足さなきゃだめな訳。
file()で読み込んだ配列をforでまわして残りを書き込むとか。
■ このスレッドは過去ログ倉庫に格納されています