08/08/21 15:50:39
初心者なんですけど
独習PHP山田 祥寛
まずこれやればいいですか?
自分のwebサーバーでphp使ったサイトとか作れるようになりたいです
209:nobodyさん
08/08/21 15:52:50
まずマニュアルに目を通す
210:nobodyさん
08/08/21 17:20:22
>>209
なんかマニュアル難しそうです
211:nobodyさん
08/08/21 17:26:28
じゃ諦める
212:nobodyさん
08/08/21 17:45:50
入門系のサイトに目を通してみたらどうか
検索すりゃ役に立つサイトから立たないサイトまでわんさか出る
マニュアルも早いうちから目を通せ
本やサイトは主観で書いてある記事だから誤解もある
213:nobodyさん
08/08/21 18:25:36 CIze4FXP
MySQLのデータベースからデータを取り出そうとしてます
データベースはUTF8で作成しています
select文を実行する前に、
$sql = "SET NAMES utf8";
mysql_query($sql);
を実行してデータを取り出しましたが、日本語文字は『utf8』なのですが、
半角英数字は全部『ASCII』になっています
なぜでしょうか?
214:nobodyさん
08/08/21 18:47:35
ASCII だから
215:nobodyさん
08/08/21 20:58:15
>>212
URLリンク(www.standpower.com)
とかでいいですか?
216:nobodyさん
08/08/21 21:32:52
>>215
そんな感じ
文法や基本的な命令語を覚えれば後は使いたい関数やクラスを都度調べればいい
使う機会の多いものは自然に身についていくから
一通りのことが出来るようになった後に効率や最適化を考えればいい
あくまで趣味の一環として習得する場合だけどな
>>213
ASCIIしかないなら保存形式が何であれASCII
utf8と判断する材料がないからな
217:nobodyさん
08/08/21 23:55:32 2yWxB/YG
PHPってばかが使う言語だろ?
218:nobodyさん
08/08/22 00:09:08
釣られちゃダメだ釣られちゃダメだ釣られちゃダメだ!
219:nobodyさん
08/08/22 00:10:17
>>218
もう手遅れだよ・・・・
220:nobodyさん
08/08/22 09:40:04
ちなみにphpの本買ったけど書いてることが意味不明すぎてもう読むのやめたよww
そこらへんから完成品見つけてきてそれ改造してる方がよほど身につくと思う
221:nobodyさん
08/08/22 10:04:01
おれも買った本はリファレンスくらいだな
ごちゃごちゃ解説読むの面倒だから辞書のように使ってた
それでもバージョン変われば役に立たんから直ぐにマニュアル見ることになるっと
完成品やサンプルソースを読んで動きを理解できるようになればいいな
パターンを覚えていけば応用が利いてくる
そのうち別パターンを自分で書けるようなるんじゃね?
222:213
08/08/25 20:42:58
>>214
>>216
ご返答ありがとうございます。
phpファイルはUTF8で保存して、metaタグでもUTF8を指定しています。
そういうことでは無いんでしょうか?
223:nobodyさん
08/08/25 21:35:52
>>222
違う
phpのscript_encodingとかmeta(HTMLタグかよ)は関係ない
asciiはあくまでascii
224:nobodyさん
08/08/26 03:06:03
>>222
大雑把かつ乱暴に言うと
半角英数と一部の記号はどのエンコード方法だろうと内部での表現方法が同じ
だから半角英数だけだと区別のつけようがないしつける必要もない
UTFとかeucとかは、日本語とかはいってくるときだけ
225:nobodyさん
08/08/28 02:17:41
xamppでwebサーバー作るならphp使うのが一番簡単ですかね?
pealもつかえるようですが
226:nobodyさん
08/08/28 02:33:08
何を持って簡単としてるのか分からん
227:nobodyさん
08/08/28 06:20:10
余計にインストールとかしないですむという意味で
228:nobodyさん
08/08/28 06:38:59
xamppは開発用で、そのためにセキュリティゆるゆるだから
まともに公開しようと思うと一から一づつ入れるより設定面倒だよ
設定に詳しくない限り止めておけ
229:nobodyさん
08/08/28 08:53:39
入手する手段、パッケージの違い、適切なコンフィグ、文字コード等の環境依存要素の調整、など
全部すっとばしても構わないと思うならxamppで良いかと。
230:nobodyさん
08/08/28 17:51:11
条件を言えばそのPHPを探してきてもらえる
スレがあったら誘導お願いします
231:nobodyさん
08/08/28 19:41:11
自分で探せアホ
232:nobodyさん
08/08/28 22:54:08
>>229
サーバの構築関連は、どのようにして知識を得るのがいいんですかね。
やっぱり書籍ですか?
233:nobodyさん
08/08/28 23:12:59
ネットは断片的になりがちなので本がいいよね。
で、仮想マシンや引退したボロPCあたりで環境作っていじり倒す
234:nobodyさん
08/08/28 23:18:21
本なんて著者によって偏るし古いし訂正も効かないしノウハウもTipsも無いぞ。
それでも良ければご自由に。
235:nobodyさん
08/08/28 23:28:54
>>234
じゃぁ、どんな風に勉強していけばいいですか?
>>233が言っているようにネットだと情報がかなり断片的で、
しかも、本と同じでネットで情報公開している人によって偏ってたり、訂正もされないまま放置されていたりするわけなんだけど。
236:nobodyさん
08/08/29 01:13:34
糞ブログでたまにある詳しくはこちらとか言って別のアドレス貼り付けるだけのやる気のない馬鹿は死んでしまえ。
237:nobodyさん
08/08/29 01:14:32
ブログだけは世の中から消滅して欲しい
238:nobodyさん
08/08/29 01:15:48
検索の邪魔なだけだ。中途半端なことばかりしやがって。
239:nobodyさん
08/08/29 01:33:52
それは君の検索能力が低いだけだ
URLリンク(help.goo.ne.jp)
240:nobodyさん
08/08/29 11:55:19
>>235
確かにネットも本と同じで書き手次第だが
本と違うのは書き手の数
より多くの情報を知ることで信頼出来る情報や誤解を判断出来る
(本では数読むには金がががががが)
それに基本はオープンソースなのだから、公式のドキュメントもネットにある、
ある程度の認識が身についたら、公式を押さえることを忘れるな
そして糞ブログ滅べ(特に半端な日記系)
241:nobodyさん
08/08/29 15:09:59
昨日VistaにApache2.2とPHP5をいれ、
DocumentRootにphpinfo関数が書かれたindex.phpファイルを置き
PHPの情報をブラウザで表示させるところまで成功しました。
次にPOSTの勉強のために以下のform.htmlファイルをつくり
<html><head>
<title>テキスト送信のテスト</title>
<META http-equiv="Content-Type" content="text/html;
charset=Shift_JIS"></head>
<body bgcolor="#FFFFFF" text="#000000">
<font size="4">テキスト送信のテスト</font>
<form name="form1" method="post" action="view.php">
名前:<br>
<input type="text" name="onamae"><br>
<input type="submit" value="送信">
</form>
</body>
</html>
以下の内容のview.phpと一緒にDocumetRootにつっこんで
<html><head>
<title>PHPによるテキスト送信・受信・表示</title></head>
<body>
<?php
print $_POST["onamae"];
?>
</body>
</html>
ブラウザでURLリンク(localhost)を表示させ名前を入力し送信ボタンを押したのですが
IEの"WEBページが見つかりません"のHTTP404エラーが出ます。
ネットで調べて色々php.ini、httpd.confの設定を書き換えてやっているのですが解決しません。。
どこの設定を直せばいいのでしょうか。お助けください。
242:nobodyさん
08/08/29 15:24:11
>>241
URLリンク(localhost)
直接呼び出して見てはどうだろう
404エラーってことはファイルがないってことだから設置場所が間違っているか
formのaction指定が正しくないかのどっちかになると思う
243:nobodyさん
08/08/29 15:44:07
>>242
直接view.php呼び出しても404エラーが出ます。
設置場所はDocumentRootに指定してあるC:\Apache2.2\htdocsの中に
form.htmlとview.php二つつっこんでます。
action指定については間違ってないと思うのですが。。
244:nobodyさん
08/08/29 16:04:48
>>242
htmlとphpが同じ場所にあって、htmlしか呼び出せないってのは変
(header関数でどこかに飛ばしてない限り)
htmlとphpを削除して、ブラウザで両方404になるか見てから、もう一度設置してみて
245:nobodyさん
08/08/29 16:10:56
view.php.html
view.php.txt
大丈夫そうなんだけど、こういう事例も多いからいちおう。
246:242
08/08/29 16:21:02
245さんの言うとおりview.php.txtになってました^^;
phpファイルに変更したらちゃんと呼び出せました。
どうも皆さんすいません。
247:nobodyさん
08/08/29 16:55:09
これはひどい
248:nobodyさん
08/08/30 01:23:15 xhTnmRsd
内容:
ランダムテキストを使い「random.php」に例えば10個のリンク先を設定し、
ページの上中下で <?php require "random.php"; ?>で呼び出して使いたいんですが
ページの広告全てが同じものが表示されてしまいます。
ランダムテキストをcgiで作り、SHTMLファイルで呼び出してた時には
すべてきちんと違う広告がランダムに表示されてました・・。
1っのrandom.phpできちんとページ内の広告がバラバラに出るにはどうすればいいでしょうか?
249:248
08/08/30 01:23:35
ちなみにrandom.phpは検索で拾ったソースです。
↓
<?php
// hitには相対確率を入れる。完全にランダムにするなら全部"1"にする
// rtxtには、テキストを入れる。改行はしないようにする
// テキストを増やしたりする場合は、"[ ]"の数字が0から順になるようにする
$hit[0] = 1; $rtxt[0] = '<a href="...">1</a>';
$hit[1] = 1; $rtxt[1] = '<a href="...">2</a>';
$hit[2] = 1; $rtxt[2] = ''<a href="...">3</a>';
$length = count($hit) - 1;
for($i=0; $i<=$length; $i++) {
$m += $hit[$i];
}
srand( (double)microtime()*1000000 );
$n = round(rand(1,$m) );
for($i=0; $i<=$length; $i++) {
$x = $y;
$y += $hit[$i];
if($x<$n && $n<=$y) $ad = $rtxt[$i];
}
print("$ad");
?>
よろしくお願いします。
250:nobodyさん
08/08/30 01:53:03
やってみたけどランダムで出るよ一応
251:nobodyさん
08/08/30 03:04:20
>>249
別の方法として
簡単にやりたければshuffleで配列($rtxt)をシャッフルしてarray_shiftで配列の先頭を取り出せばいい
array_shiftで取ると配列は1つ減るから2回目、3回目で重複することはない(同セッション内)
252:250
08/08/30 04:09:13
もしかして
(double)microtime()*1000000
が同じ値をシードに与えてんじゃないの?
253:235
08/08/31 18:33:17
遅レスすみません。
>>240
レスありがとうございます。
ネット上は断片化された情報が多くて、取捨選択が難しい上に、
あっちの情報とそっちの情報での差異が出る理由が明確に分からなくて悩ましいです。
それを調べるってことが、公式ドキュメントを読めっていうということなんですかね。
技術情報を読める程度には英語勉強しろってところですね。
板違いですんませんでした。
254:nobodyさん
08/09/12 15:34:40
SQLから取り出したデータをテーブルに表示させる際にhtmlタグを無効にしたいのですが、どうしたら良いでしょうか。
今のままだと例えば<b>文字</b>で登録されているデータは太字で表示されてしまいます。
SQLはpostgresです。
現在のコード↓
$passmd5 = md5('$pass');
$sql = htmlspecialchars("SELECT * FROM table1 INNER JOIN table2 ON table1.id=teble2.id WHERE
table1.id='$id' AND table1.pwd='$passmd5';");
$rs = pg_query($conn, $sql);
$rows = pg_num_rows($rs);
if($rows==0){
print("IDかパスワードが正しくありません。<br />");
print('<a href="#" onclick="history.back(); return false;">戻る</a>');
exit;
}
print("<table border=\"1\">");
print("<tr><td>ID</td><td>パスワード</td><td>項目1</td><td>項目2</td><td>項目3</td></tr>");
while($row = pg_fetch_array($rs)) {
print("<tr>");
print("<td>".$row["id"]."</td>");
print("<td>".$row["pwd"]."</td>");
print("<td>".$row["koumoku1"]."</td>");
print("<td>".$row["koumoku2"]."</td>");
print("<td>".$row["koumoku3"]."</td>");
print("</tr>");
}
print("</table>");
255:nobodyさん
08/09/12 15:39:24
htmlspecialchars
256:nobodyさん
08/09/12 16:01:58
>>255
htmlspecialcharsを使うんだろうなとは思うんですけれど、何処につけたら良いんでしょうか。
257:nobodyさん
08/09/12 16:12:31
print~~htmlspecialchars($row["koumoku1"].)~~
だな
出力の直前にやるのがいい
それ以前は加工する可能性があるからな
258:254
08/09/12 16:18:13
で~き~た~!!!!
本当にありがとうございました!!
259:nobodyさん
08/09/14 09:44:04 B7I6GMpn
プログラムじゃない質問で恐縮なのですが、質問させていただきます。
phpを勉強するのに何をしたら「俺すげぇ進化したぁ」と感じたかを教えてください。
260:nobodyさん
08/09/14 09:52:22
楽して身に付けようなんて甘い考えが通用しないことを実感したときかな
261:nobodyさん
08/09/14 12:14:00
PHPとか言語は関係ないが、再帰的アルゴリズムがバシッとはまると、俺すげえって思うw
262:nobodyさん
08/09/14 13:35:42
フレームワークを作った時かな
車輪の~って言われるだろうが、利用するかはともかく仕組みを考えて実装することに意味がある
と、言いつつ愛用してるが・・・
263:nobodyさん
08/09/14 21:23:06 jIYlcJD1
phpでもなんでもそうだけど、本の書いてあること
が理解できるようになったとき。
あとショッピングカートとかブログとかその辺
のアプリができたとき。
264:nobodyさん
08/09/14 22:46:57 B7I6GMpn
>>260,261,262,263
観念的で曖昧な質問に答えてくださってありがとうございます。
ちょっと(いや、かなり)質問の仕方が悪かったかもしれません。
「コレを頑張ったら結果をより早く導出できるようになった」という体験を伺ったのです。
「頭打ち状態からブレイクスルーした」という体験はありませんでしょうか?
>>262さんのレスを参考に「フレームワーク 車輪の」でググってみました。
「車輪の再発明」ということですね。
自分でもそういうことをしてしまっている可能性があるので参考になりました。
ありがとうございます。
265:nobodyさん
08/09/14 22:54:51
その段階だと・・・ひたすら作ってひたすら無駄な労力にorzするのが一番さ
266:nobodyさん
08/09/14 23:41:45
イヒ体験ってことか
メール送信でPHPが標準でsendmailしか使わんことに気付いた時
大量に送信するにはオーバーヘッドがウザいからSMTP送信をしたいのに出来ない・・・
仕方なくpopenで実装って時にSMTPっつうプロトコルの仕組みを知ってて良かった~ってことはあった
267:nobodyさん
08/09/15 00:02:57
しかし、みんな頑張り過ぎw
268:nobodyさん
08/09/15 00:03:46
誤爆、失礼><
269:nobodyさん
08/09/15 22:32:29
効率の良いプログラミングをしようと思ったらLL言語使いだろうと
中の仕組みを知っていたほうが良いのは当然だな。
ある程度理解していればプロトコルの詳細はRFC斜め読みでなんとかなる。
270:nobodyさん
08/09/17 12:48:50 JTQWTwl/
理解したつもりの関数とか1日で忘れてしまう
substrとか これなんだっけ ってなる
271:nobodyさん
08/09/17 12:52:42
それはヤバイな
272:nobodyさん
08/09/17 12:57:46
学校の勉強はノートに書いて覚えていくけど
プログラミングの勉強となると紙のノートじゃなくPCに依存して勉強したくなるよね
でもメモソフトと紙のノートには雲泥の差の自由度があるから勉強のためのメモとしてはあまり利用出来ないよね
273:nobodyさん
08/09/17 12:59:19
プログラミングの勉強ってどんなことしてんの
274:nobodyさん
08/09/17 16:13:37
プログラミングの勉強ってひたすらソース書いてナンボっしょ
275:Noone
08/09/17 16:59:26
URLリンク(www.php.net)
276:nobodyさん
08/09/18 00:02:52 X0thX7wZ
あげ
277:nobodyさん
08/09/18 07:48:56 eOfu22hG
レンタルサーバでPHPの勉強中です。
ファイルのアップロードをしているんですが、php.iniやhttpd.confが直接いじれなくて
.htaccessに
php_value post_max_size 100M
php_value upload_max_filesize 100M
php_value memory_limit 100M
と書いてそれぞれの値を変更しています。
問題は、これらの値がページをリロードする度にサーバのデフォルト値である
post_max_size 32M
upload_max_filesize 32M
memory_limit 90M
になったり、
post_max_size 100M
upload_max_filesize 100M
memory_limit 100M
になったりすることです。
こういった現象を経験された方いらっしゃいませんか?
各値の確認は、
ini_get()関数で確認しています。
278:nobodyさん
08/09/18 08:58:15
共用サーバーはリソースも共用です。
279:nobodyさん
08/09/18 09:48:54 eOfu22hG
>>278
レンタルサーバが、リソースが不足している場合.htaccessが有効にならないような設定がされているということでしょうか?
280:nobodyさん
08/09/18 09:51:27
リソースが共有されてるのはいいが関係はないな
プロセスが別なのにPARDIRのディレクティブが上書きされるなんて聞いたことがない
281:nobodyさん
08/09/18 10:42:43
if(!isset($_GET['aaa']) || !isset($_GET['bbb']))
これの真ん中の||とissetの前の!はどういう意味?
282:nobodyさん
08/09/18 10:50:24
|| は OR と同じ、ちなみに && は AND と同じ「かつ」「または」ってヤツだな
! は反転を意味する。
issetは「初期化されていればtrue」で調べたいことは「定義されていない場合」だからfalseとなるところを!で反転して評価してるんだな
283:nobodyさん
08/09/18 10:50:49
>>281
マニュアルをどうぞ
284:nobodyさん
08/09/18 10:54:39
なるほど。
!は反転するということなんですね。
285:nobodyさん
08/09/18 12:44:53
反転ではなく否定な
286:nobodyさん
08/09/18 13:27:00
if(!isset($_GET['aaa'])) {
// 値がセットされてなければecho
echo '';
}
こういうことですよね?
287:nobodyさん
08/09/18 13:37:33
もうちょっと基礎から学習したほうがいいと思うよ
288:nobodyさん
08/09/18 13:50:01
! の解釈はそれで合ってるけど(まぬあるの「論理演算子」のところを読もう)
> // 値がセットされてなければ
empty() と isset() の説明や比較例を見ると良いです。
?aaa=&bbb=hoge というクエリが飛んできた場合、isset($_GET['aaa'])==TRUE。
言われてるように急がずにゆっくり取り組めばいいと思うよ。
289:nobodyさん
08/09/18 13:51:32
> isset($_GET['aaa'])==TRUE
isset($_GET['aaa'])がTRUEだと言いたいんだろうがその説明の仕方はだめだw
290:nobodyさん
08/09/18 14:20:02
あっ、まずかったですか。
言いたかったことはその通りなので、「isset($_GET['aaa']) は TRUE を返す」に訂正します。
291:nobodyさん
08/09/18 14:34:48
age
292:nobodyさん
08/09/18 14:42:09 eOfu22hG
>>280
レンタルサーバの会社に問い合わせたところ詳しくは教えてもらえませんでしたが
>>277で書いたような負荷がかかることはことはしないでくれとのことでした。
根本的な解決はできませんでしたが、こういった現象もあるってことで・・・
しかし、今度はどうやって高負荷時は.htaccessを無視するようなことができるのか
そっちに興味がわいてきました。
Apacheの設定にそういうことができるようなオプションがあるのかな?
293:nobodyさん
08/09/18 14:46:31
単に違う設定の鯖をロードバランスしてるだけとか
294:nobodyさん
08/09/18 14:56:27
すいません...
基礎を勉強したいと思います
295:nobodyさん
08/09/18 15:14:50
珍しく伸びてるな
296:nobodyさん
08/09/18 15:15:16
そりゃあ鯖のリミッタを外したら怒られるにきまっているだろ
297:nobodyさん
08/09/18 21:33:48
>>292
だから、>>278って書いたでしょ。
興味を持つのは良い事だけど、
実験したければ、自鯖立ててやってね。
298:nobodyさん
08/09/19 03:16:00
こんにちわ。
サーバー側が php4 → php5 にしますよ
と言ってきました。
バグってどれくらい出るものでしょうか。
移行された人いらっしゃいますか?
299:nobodyさん
08/09/19 05:25:52
バグっていうか対応度合いの問題だろ
そんなんアプリによってまちまちとしか言えん
ていうか手元で移行検証くらいしようよ
300:nobodyさん
08/09/21 15:55:59 G8wZRX1E
すいません、知っている方がいたら教えてください。
strip_tags()を使用してコメントタグだけを残したい場合はどうしたらよいでしょうか?
$html = strip_tags($html, "<!---->");
という書き方だとコメントタグも削除されてしまいます。
301:nobodyさん
08/09/21 16:35:13
質問というかアドバイスをください。
プログラミング経験は無いわけではなくC,C++でマルコフ連鎖モンテカルロ法
の実験などを大学の研究でしたりもしているのですが、最近なんとなく
PHPのようなウェブアプリを簡単に作れる言語に興味があります。
が何を作ったらいいかわかりません。
自作で、実用レベルまで比較的に簡単に作れるもの、
というとどういうものがあるでしょうか。お願いいたします。
302:nobodyさん
08/09/21 16:36:57
掲示板でも作ってみたら?
まぁ何にするにせよ実用性とは程遠いだろうが気にするな
303:nobodyさん
08/09/21 17:51:38
>>301
何かのウェブアプリを作りたいからphp学びたいんじゃないの?
せめて作りたいものの目標くらい無いとモチベーション続かないと思うんだけど。
なんか目的と手段が逆になってるような気がする。
304:nobodyさん
08/09/21 17:53:03
>>301
有能な君にはphpbb並の国産高機能BBSをぜひ作ってほしい
305:nobodyさん
08/09/21 18:30:23
>>301
隠れマルコフモデルを応用して、
形態素解析でインターネット上の情報サンプル集積でもやってみてくれ
306:nobodyさん
08/09/21 18:30:48
>>300
マニュアルに書いてあるぞ、無理ってな
strip_tagsの前後でHTMLコメントの置き換えて逃げるしかないだろうな
307:nobodyさん
08/09/21 18:31:56
誤字った
誤:strip_tagsの前後でHTMLコメントの置き換えて逃げるしかないだろうな
正:strip_tagsの前後でHTMLコメントを置き換えて逃げるしかないだろうな
308:nobodyさん
08/09/21 20:19:14 uUB1weY6
すみません、ほんとに基本の質問だと思いますが
.htmlファイルの中に
<?php
include('file.php?pass=123');
?>
としましたが、includeが実行されません
拡張子は常に.phpでなければいけないんでしょうか?前に試した出来たような気がしたんですが、、
また、上記のようなインクルードファイルに引数をつけた場合、
file.phpの中で$_GET['pass']としてを解釈することは出来るでしょうか?
どなたかご回答お願いします
309:nobodyさん
08/09/21 20:28:27
無理
310:nobodyさん
08/09/21 20:29:10
>>308
俺の経験では出来ない。
file.phpの中に関数f_fileを書いて以下の様にすればいい。
<?php
include('file.php'); f_file('123');
?>
311:308
08/09/21 20:49:34 uUB1weY6
>>309-310
ありがとうございました
phpは .htmlの拡張子のファイルでは動かないということでいいでしょうか?
また、二つ目の質問に関しては
URLリンク(okwave.jp)という解決法を見つけました
>>310さんの答えと合わせて考えたいと思います
312:nobodyさん
08/09/21 21:12:27
>>311
できる
addtypeでググってみ
313:300
08/09/21 22:14:17 G8wZRX1E
>>306
ありがとうございます。
自分の持ってるPHP辞典には記載されてなかったでわかりませんでした。
なんとも中途半端な仕様ですね。
314:nobodyさん
08/09/21 22:33:44 aDAFCUyF
しつもーん。
URLリンク(jp.php.net)
> 注意: PHP 5以降、デフォルトで値はリファレンス渡しとなります。
の、主語というか目的語というか、ナニのデフォルトが参照渡しになるんでしょか。
function alter($str){
$str = $str . '!';
}
$nya = 'nya';
alter($nya);
echo $nya;
は PHP 5.2.0-8+etch9~bpo31+1 (cli) では $strを 変更せずに nya が表示されました。
315:nobodyさん
08/09/21 23:03:33
それは日本語版スタッフの訳が悪いと思う。
原文読むといいかと。
URLリンク(jp.php.net)
316:nobodyさん
08/09/21 23:22:56
引数がデフォルトでリファレンスよ
やってみれば分かるが&付けなくても参照元の値も変わるぜ
余談だが
PHP4では 「&$arg=null」なんてデフォルト引数が使えないんだが、PHP5から問題なく通る
呼び出し時に引数指定したかどうかでスイッチしてんだろうなぁ
317:nobodyさん
08/09/21 23:29:51
>>314では&無しでは変わってなくないか?
318:nobodyさん
08/09/22 01:05:35
PHPで逆IP制限ってできる・・・?
変数$aに1が入ってる時だけ変数$bに入ってるIP以外からのアクセスがあった場合にifコマンド使って、
他の内容を表示するの。
319:nobodyさん
08/09/22 01:09:02
IP見て比較すれば普通にできるんでない?
320:318
08/09/22 01:10:00
if ( !strcmp ( $ip_address, $list_ip ) )
これ使っていけるかな・・・・・・?
321:318
08/09/22 01:10:58
>>319 それなぜか思いつかなかった。トンクス。
322:318
08/09/22 02:51:53
txtファイルから文字列読み込んだときに改行まで読み込まれて比較ができない。
どうすればよいですか?
323:nobodyさん
08/09/22 03:00:08
改行文字を除いてから比較すれば?
324:318
08/09/22 03:15:17
>>323どうもうまくいかなかった.........
<?php
$ip = $_SERVER['REMOTE_ADDR'];
$str = "$ip";
$len = strlen($str);
$handle = fopen('ip.txt','r');
$contents = fread( $handle, $len );
fclose( $handle );
echo $contents."<br />\n";
if($ip==$contents){
echo "成功";
}
else{
echo "失敗";
}
?>
ipアドレスの文字数分引っ張り出して比較することで回避できた。
325:nobodyさん
08/09/22 03:21:01
ip.txtに入ってるIPの方が今アクセスしてる人のIPより長かったらどうすんの?
326:318
08/09/22 03:24:26
>>325 したら絶対IP違うからエラーでていいんでない?
327:318
08/09/22 03:27:42
一時的にip.txtの中に入ってる一番最初のIPの人以外見せたくないものを作るんだ。
処理が終われば解除されるようなかんじで。
328:nobodyさん
08/09/22 03:39:53
212.134.32.14
と
212.134.32.143
329:nobodyさん
08/09/22 06:54:54
>>317
変わってないな
330:nobodyさん
08/09/22 12:43:54
PerlのNet-CIDRを移植したら?
331:nobodyさん
08/09/22 15:10:26 EKIEGJ69
phpでカート作成のHP教えて
332:nobodyさん
08/09/22 15:12:32
>>331
URLリンク(www.nintendo.co.jp)
333:nobodyさん
08/09/22 15:19:02 EKIEGJ69
ありがとう><;
334:nobodyさん
08/09/22 16:42:16
ワラタ
335:nobodyさん
08/09/22 16:44:51
>>331
ショッピングカートの基本はセッションを上手く扱うことだと思う
具体的なカート作成のサイトはなくてもセッションに関する記事は多いから、そこから学べば良いかと
どうせ学習目的とかでしょ?
336:nobodyさん
08/09/23 01:10:46 KzC+qHTk
>>312
ありがとうございます! 助かりました!
337:nobodyさん
08/09/23 12:55:10 BK/ZFWc8
ちょっとまてよ、>>331はPHPを使ってカートを作るHPというのを教えて欲しいんじゃないか?
338:nobodyさん
08/09/23 12:59:43
さあ?
339:nobodyさん
08/09/23 13:06:07
>>331-333の流れでネタのようにしか思えん
340:nobodyさん
08/09/23 13:08:38
>>318は日本語の勉強から始めないと意図が伝わりにくいと思うが
まず何が目的で特定IP以外からのアクセスを制限したいかが不透明
内容からするに何らかの処理をしている期間は別の接続者を拒否したいって意味のようだが
その処理ってのが何度もリクエストを受けて完了するもだとしたら
---
アクセスがある
↓
閲覧者IPのデータを確認する─(IP記録なし)→閲覧者IPを記録し結果表示
↓<(IP記録がある)
IP比較─(一致)→結果表示
└(不一致)→拒否
---
こんな感じでコード書けばいいだろ
記録IPをいつ削除するかは知らんけど、この処理書くどこで詰まってるの?
もし、一回のリクエストの結果表示までにすべて処理が終わってしまうようなものだったら
ファイルロックとかの方法でも調べれれ。IPを比較する意味ない
あとどうでもいいけど改行の削除は置換を使えよ
341:nobodyさん
08/09/23 13:10:56
<?php
echo(">>331\n");
echo("このサイトを見れ\n");
echo("URLリンク(www.nintendo.co.jp)");
?>
つまりこういうことだな
342:nobodyさん
08/09/23 14:16:43
echoで括弧を付けるのはダサい
343:nobodyさん
08/09/23 14:20:41
echoはカッコ付けなくてもエェ子やで
344:nobodyさん
08/09/23 18:25:40
PHPなんて久しぶりに書いたから忘れてたわw
えーこと聞いた
345:nobodyさん
08/09/23 19:38:04
fopenを使ってURLを開くとき
複数のURLに対して並列に処理を行いたいんだけど
どういう風にやればいいですかね?
最悪参考になりそうなサイト教えてください。
346:nobodyさん
08/09/23 19:52:08
fopenはブロックするから並列処理には向かない
347:nobodyさん
08/09/23 20:59:24
>>346
ブロック?とはどういうことでしょうか?
並列処理に向いているfopenに代わる関数を
教えていただけるとありがたいです。
348:nobodyさん
08/09/23 21:01:16
そんなのない
349:nobodyさん
08/09/23 21:05:07
じゃあfopenでがんばるとして
並列処理を行うにはどうすればよいでしょうか?
というかPHPでそんなことするなってことでしょうか?
350:nobodyさん
08/09/23 21:18:43
>>345
HTTPDのプロセスを複数起動
351:nobodyさん
08/09/23 21:31:31
>>345 ちなみにPHPではマルチスレッドはできない。
プロセスで何とかする。
352:nobodyさん
08/09/23 22:13:13
なるほどプロセスを複数起動ですか
とりあえずその方向でググったりしてなんとかしてみます
ありがとうございました
353:nobodyさん
08/09/24 23:43:55
$a=1;
$b=9;
$c=3;
「bが一番大きいです。」
と表示させたいのですが、maxだと数値しか返ってこないし・・・
教えていただけると幸いです。
354:nobodyさん
08/09/25 00:11:02
>>353
変数名を取得することは出来ないから値の管理方法を変えよう
出来ないなら諦めるしかないと思う
例: 連想配列
$var = array(
'a' => 1,
'b' => 9,
'c' => 3,
);
355:nobodyさん
08/09/25 00:19:45
ありがとうございます!
356:nobodyさん
08/09/25 00:20:07
いいてことよ
357:nobodyさん
08/09/25 05:09:05
ちょっと疑問に思ったんだけど、
連想配列の場合、
$var = array(
'a' => 1,
'b' => 9,
'c' => 3,
'd' => 9,
);
この場合、どうなるんだろ?
358:nobodyさん
08/09/25 05:29:20
何がどうなるんだろなのかわからないけどこういうこと?
$var = array('a'=>1, 'b'=>9, 'c'=>3, 'd'=>9);
$keys = array_keys($var, max($var));
var_dump($keys);
359:nobodyさん
08/09/25 06:08:13
>>358
この出力結果ってb dってなるのかな?
360:nobodyさん
08/09/25 06:21:43
お前は何を言ってるんだ
361:テスト
08/09/25 23:34:41
てす
362:あ
08/09/25 23:39:24
てすと
363:nobodyさん
08/09/27 20:36:51 Zle5Z5JO
return文と返り値がよく分からないんですが
PHPのマニュアルを見てもさっぱりです
どなたかreturn文が詳しく書いてあるサイト知っていたら教えてください
364:nobodyさん
08/09/27 20:53:26
>>363
returnについてなんてマニュアル以上のことが書いてあるサイトはないと思うぞ
何が分からなくて、何が知りたいんだ?言ってくれれば答えるが
365:nobodyさん
08/09/27 21:09:22
function hoge() {
366:nobodyさん
08/09/27 21:15:49
$a = 'a';
367:nobodyさん
08/09/27 21:18:59
return $a;
368:nobodyさん
08/09/27 21:20:42
}
369:nobodyさん
08/09/27 21:27:34
$huga = hoge();
370:nobodyさん
08/09/27 21:31:06
この場合、$hugaには 「ああ゛っでるっ…!!たまみるくでるっ!! でっでるうっブリジットのこくまろミルクぅ」 が入ります
371:nobodyさん
08/09/28 21:34:07 +UcDtbz0
PHPの動作確認のページが
Not Found
The requested URL /phpinfo.php was not found on this server.
Apache/2.0.63 (Win32) PHP/5.2.6 Server at localhost Port 80
と出てしまいます。どなたか教えていただけませんか?
372:nobodyさん
08/09/28 21:37:11
マルチ乙
373:nobodyさん
08/09/28 22:52:10
>>371
「/phpinfo.phpが無い」って書いてあるじゃないか。
これ以上何を教えろというのか
374:nobodyさん
08/09/29 20:16:12
マンモス本2冊買った。1回一通り読んだけど、インストールからわけわからん。
なにをDLしたらいいのかさっぱりぜよ・・・。
375:nobodyさん
08/09/29 20:39:55
それはプログラミング以外に問題がありそうだが・・・
376:nobodyさん
08/09/29 22:54:33 ex4B3ZuI
PHPの確認動作で、phpinfo.php.txtとアドレスに表示されたまま、
画面には<? phpinfo(); ?>
と出てしまいます。
明らかに間違いですが、何がおかしいと思いますか?
どなたか教えてください。
377:nobodyさん
08/09/29 23:01:53
誰か、華麗に答えてやってくれ。華麗にだぞ?
378:nobodyさん
08/09/29 23:39:32
>>376
マルチ乙(どう?華麗でしょ
379:nobodyさん
08/09/30 00:43:56
>>374?
380:nobodyさん
08/09/30 16:45:48
>>376
拡張子txtがPHPのファイルとして定義されていないから。
381:nobodyさん
08/10/01 05:38:30 ggjV1Mvy
getMessage()について質問させてください
URLリンク(www.php-labo.net)
でgetMessage()が定義されてないのにエラー表示のときに表示するとありますが
どうしてなのでしょうか?
よろしくお願いします
382:nobodyさん
08/10/01 06:04:37
require_once 'DB.php';
してるから
383:nobodyさん
08/10/01 09:00:47 12eBxrbJ
URLリンク(www.php.net)
この辺のことだと思うのですが、質問させてください。
$a == $bのところで、日本語の文字を使うには、
$a == "日本語"のようにすると思うんですけど、
これは、「日本語」に等しいということですよね。
たとえば「日本」を含む文字列の条件を指定したいとき、
どうしたらいいでしょうか?
条件の分岐で、「日本語」も「日本人」も「日本古来」もその他も
一括して指定したい、という感じなのですが。よろしくお願いします。
的をはずしていたらごめんなさい。
384:nobodyさん
08/10/01 09:22:18
mb_ereg_match
385:nobodyさん
08/10/01 10:43:40
できました! ありがとうございます。
もうひとつ合わせて質問なのですが、
完全に一致するものを、$a == "アメリカ"として
部分的に一致するのを、mb_ereg_match("[日本]",$a)として、
それぞれ処理をしようとしています。
else ifでつなげたほうがいいのですか?
別のifとして分けたほうがいいですか?
それとも、どっちでもいいですか?
386:nobodyさん
08/10/01 11:56:07
>>385
分けるかどうかはやりたいことによって違うからなんともいえないけど、
今回の場合は分けなくていいでしょ。
分けちゃうと一回アメリカと完全一致したものをもう一回日本が含まれてるか
判定することになるから余計な処理になる。
387:nobodyさん
08/10/01 12:12:38
なるほどー!
では、どんどんつなげていくことにしますね。
よく判る説明で、助かりました。ありがとうございます!
388:nobodyさん
08/10/01 12:54:11
>>387
注意
ヒント
ある文字列が他の文字列内に含まれているかどうかを調べるためだけに preg_match() を使うのは避けた方が良いでしょう。 strpos() か strstr() 関数を 使う方が速くなります。
URLリンク(jp.php.net)
389:nobodyさん
08/10/01 13:20:15
すみません、参照先を見たけど、書き方がよくわかりませんでした。
$aに入る文字列は数十文字くらいの短いもので、それを見ています。
早さはそんなに変わらないと思うので、このままで大丈夫ですよね?
390:nobodyさん
08/10/01 22:32:30 HCEY5R1b
質問させて頂きます。
基礎からのPHPorやさしいPHPを買おうか迷ってるのですが、
基礎からのPHPはアプリが動作しないと聞きました。
自分は、アプリの有無よりも文法やクラス(?)、データベースの基礎を学びたい
と思っているのですが、そのような場合はアプリの動作は気にしなくてもよいでしょうか?
その他の面(参考書としての面)では良いと聞くので。
書籍スレでの質問はナンセンスだと感じたのでこちらでさせて頂きました。
ご教授願います。
391:nobodyさん
08/10/01 22:49:30
動作しないわけないだろ
392:nobodyさん
08/10/01 22:56:32
マジレスすると(ry
393:nobodyさん
08/10/01 23:58:01
オライリーの初めてのPHP+mysqlがいいと思います。
もしくは実践マスターか。
基礎からのPHPorやさしいPHPは意味がないと思います。
特に基礎からのPHPはアプリが動作しませんでした。
びっくりです。
これは捨てました。
アプリを改造していくといろいろスキルがあがってくるので、
ただ本見てもおもしろくないと思いますし。
アプリが動くやつがいいと思います。
では
394:nobodyさん
08/10/02 10:20:57 Qa3+G5H3
あるphpで、別のphpを呼び出すのに、こうやって書いています。
<?php include('ini.php'); ?>
この、ini.phpを、別のサーバにおいて呼び出したいのですが、
<?php include('http://別のサーバ/ディレクトリ名/ini.php'); ?>
みたいにやっても、うまくいきません。
どこでつまづいていて、どうすればいいのか、教えてください。
395:nobodyさん
08/10/02 10:40:39
> どこでつまづいていて
基礎的な理解からつまづいてる
URLリンク(...)をinclude = webサーバ経由でinclude
= ini.phpの「実行結果」をinclude
ini.phpの「内容」をincludeしたいなら、ftp経由にするとか、
ini.phpをincludeしたい内容の文字列を返すものにするとか。
396:nobodyさん
08/10/02 10:59:48 Qa3+G5H3
ありがとうございます。もうちょっと勉強してみます。
397:nobodyさん
08/10/02 18:21:25
うまくいかないといってもパースエラーが出るのか空文字が返ってくるのか接続できないとWarningが返ってくるのか
によって全く違う。
こういうのが「うまくいかない」しか書かない心理って何なの?
398:nobodyさん
08/10/02 18:25:19
考えるのすら面倒なんでしょ
399:nobodyさん
08/10/02 20:57:18 JC9hPbTs
>>393
ありがとうございます。オライリーですか、参考にしてみます。
にしても、やさしいPHPのレビューってないですね。
あと基礎PHPとかはもう古いのかな‥
400:nobodyさん
08/10/02 21:31:32 PvYZxYkH
変数のスコープについての質問です。
mona.php
<?php
$a = 1;
include("giko.php");
include("fusa.php");
?>
giko.php
<?php
$b = 2+$a;
?>
ってあったときに$aがincludeされたファイル内でも利用だというのはわかったのですが
giko.phpの$bはmona.phpやfusa.phpで見れるのでしょうか?
ユーザー定義の関数の予定はないです。
401:nobodyさん
08/10/02 21:41:47
100回includeのページを読め
402:nobodyさん
08/10/02 21:55:19 PvYZxYkH
>>401
スコープの方を必死に検索かけてました
includeの方で調べればよかったんですね
ありがとうございます
403:nobodyさん
08/10/06 07:28:33 eMKnyKHT
PHPでpearのパッケージを利用したいのですが
インストールの仕方が分かりません
URLリンク(www.php.net)には拡張モジュールしかないので
よく分かりませんでした
URLリンク(pear.php.net)
に書いてあるように コマンドプロンプトを使えばいいのですが
コマンドプロンプトの使い方が分からないので
使い方を教えてください よろしくお願いします
404:nobodyさん
08/10/06 07:48:42
>PEAR インストールのアップデートを行うには、 URLリンク(pear.php.net) をブラウザで表示してその出力をローカルファイル
> go-pear.php に保存します。そして次のコマンドを Windows のコマンドプロンプトで実行してください。
405:403
08/10/06 07:56:08 eMKnyKHT
レスありがとうです
多分その上の行らへんでつまずいていると思います
>PHP をダウンロードしインストールが完了したら、
>バッチファイルを実行します。 というのはダブルクリックだけでいいんでしょうか?
するとコマンドプロンプトが出てくるだけですが
>インストールしたフォルダへのパスを
>PATH 環境変数に追加します。 手動で追加する
> (スタート > コントロールパネル > システム > 環境変数)
>以上で、Windows のコマンドプロンプトから pear コマンドを使い PEAR パッケージマネージャを実行できるようになります。
pealパッケージとは PHPをインストールした時点で使用できるわけではないと思うので
多分ここでつまずいてます
よろしくおねがいします
406:nobodyさん
08/10/06 08:05:35
バッチファイルの方はやらなくていいよ
go-pearの方保存して実行すればおk
407:403
08/10/06 08:13:05 eMKnyKHT
ありがとうございます
確認させてください
go-pear.phpというファイルを作ってそこに
URLリンク(pear.php.net)のソースをコピペ
そのあと保存先はC:\phpで
コマンドプロンプトで php go-pear.php
を実行するんですよね?
実行すると『内部コマンドや外部コマンド バッチファイルなどと認識されませんでした』
と表示されます
C:\PHP\PHP-pear.phpを実行しても
エディタが起動するだけでした
よろしくお願いします
408:nobodyさん
08/10/06 08:15:52
phpの実行ファイルがある場所に移動してから実行すべし
409:nobodyさん
08/10/06 08:19:25
> 実行すると『内部コマンドや外部コマンド バッチファイルなどと認識されませんでした』
C:\Documents and Settings\username>
で実行してるので php.exe が見つからないとかそういうオチなのかな。
410:403
08/10/06 08:38:03 eMKnyKHT
>>408-409
その通りです。。。
もう少しコマンドプロンプトの使い方勉強してきます
今から学校なので ありがとうございました
411:nobodyさん
08/10/07 10:08:44 rx4j8OHY
PDT + xDebugはここで大丈夫かなぁ?
どっちもインスコ、php.iniを書き換えるがうまくいかない。
下のように、extensionだと、phpinfo()にxDebugの項目が現れるけど、
extension=php_xdebug-2.0.3-5.2.5.dll
下のようにzend_extension_tsの指定ではうまくいかない。
[xdebug]
zend_extension_ts = c:\php\ext\php_xdebug-2.0.3-5.2.5.dll
DebugBuildはnoで、ThreadSaftyはenabledだから、後者の書き方の筈なのだが。
で、まぁ前者で行くとして、問題は、[xdebug]の中に書いた設定が全然反映されない...orz
xdebug.remote_enable=true
とかやっても、phpinfo()で見ると、offになってる。
他の設定も同じ。
なので、eclipseでブレークポイントで止まってくれない...orz
誰かお助けを~
412:nobodyさん
08/10/07 12:08:43
zend_extension_tsじゃないとダメよん
413:nobodyさん
08/10/07 12:35:01 rx4j8OHY
>> 412
どうもありがとうございます~。
414:nobodyさん
08/10/07 13:15:45 2lCZsXeT
PHPではサーブレットやmod_*、あるいはrailsなどのWebアプリのように
URIにコントローラやアクションを含めるような設計ってできるんでしょうか。
PHPのインスコ状況によるのかもしれませんが、どうも情報見つかりません。
415:nobodyさん
08/10/07 13:23:31
コントローラーからビューに変数を渡したいのですが、
コントローラーで$this->set('test', 10);と書くと
exception 'Zend_Controller_Action_Exception' with message 'Method "set" does not exist and was not trapped in __call()' ~
とエラーがでてしまいます。
setを使うのに宣言か何かが必要かと思い、調べたのですが何処を見てもsetを使えばできるとしか書いていません。
コントローラーで$test;や$test=3;はエラーが出なく、エラー文を見てもsetに原因がある気がするのですが、何が原因なのでしょうか?
416:nobodyさん
08/10/07 13:41:47
>>415
フレームワークのこと知らないので適当だけど、
メッセージを見るとsetが未定義で、call(多分ビルトインの)で
トラップ(多分、未定義のメソッドが呼ばれたときに適当なメソッドを割り当てる)もできないと言ってる。
多分$thisはControllerクラスのことだと思うので(多分ばっかですんまそ)
要するにControllerクラスにsetが定義されてないんじゃないかと思います。
クラス定義やメソッド一覧するメソッドがあると思うので、確認してみては?
ちなみに今気づいたんですが、フレームワークを使ってると>>414の質問の答えはYesでしょうか?
417:nobodyさん
08/10/07 14:12:15
>>414
「?name=value」が嫌ならmod_rewrite(Apache)で出来る
>>415
コントローラにsetがないってことじゃないか?
$thisじゃなくてビューのオブジェクトのsetを呼べばいいような気がする
ZendFWは使ったことないが、普通はそうだと思うぞ
418:nobodyさん
08/10/07 14:28:36
>>415
もしかしてキャメルケースのアクションで引っかかってない?
419:415
08/10/07 14:44:42
>>415
ご指摘どおり、thisはコントローラーでsetがありませんでしたので、
中身のないsetを作ってみたところエラーは出なくなりましたが、変数の受け渡しはうまくいきませんでした(空なので当たり前ですね)
これでエラーそのもの原因は分かったので次は変数が受け渡せるように頑張ります。
>>417
確かにコントローラーに無いのでthisだと自分で処理を書くか、何処かからコピーしてこないといけないようです。
何処かからコピーしてくるんならそれを使えよって話なので、まずビューからそれらしいのがないか探して見ます。
>>418
キャメルケースが何なのか分からないのでぐぐってみましたが、命名規則(camelCaps?)の事でしょうか。
とりあえず命名規則はチェックしましたが大丈夫でした。
420:nobodyさん
08/10/07 14:48:06
すまん先走ってた。俺が自分修正してるZFの不具合かと思った。
メソッド書いてないからメソッド無いと言われたっていう話ですか。(´Д`;)
421:416
08/10/07 15:26:57
>>415
今、どんなかなと思って近所でZendの本(緑のやつ)見てきました。
それで思ったんですが、set(value,value)って
Controllerクラスじゃなくレジスタクラス(?)のメソッドじゃないかな?
コントローラで
require "Zend::Registry" <-これ正確じゃないです。これ的な名前。
regist = new Zend::Registry(); #レジスタオブジェクト
regist.set('test', 10);
じゃないかと思います。
ただ、これはアプリ全体で共有したい変数を記憶しておくクラスということなので
このメソッドで即ビューに値が渡るかは分かりません。
Controllerクラスには$this->setBody(value)的なメソッド群がある模様。
しかし、フレームワークでの制作をコピペ等でこなすのは逆にけっこうな大冒険なのでは・・・
422:416
08/10/07 15:32:59
>>417
どもです。それ自分もやったことあります(CGIでw)
Apacheモジュールとして動作してるなら他といっしょかなと思ったのですが
経験者の方が耳にしたことないってことは、
少なくとも基本機能ではないってことですもんね。
参考になりました!
423:414
08/10/07 15:34:14
↑間違えた。414です。
424:403
08/10/09 04:27:43
あれからやってみたのですが
>>408-409さんの言ったとおりに
C:\>php\go-pear.phpを実行してみたのですが
go-pear.phpのエディタが出てきただけでした
それで完了されているとは思えないのですが
どこが間違っているのでしょうか?
よろしくお願いします
425:403
08/10/09 04:52:41 Sz+W15yD
追記
自分が持っている本ではgo-pear.batをコマンドプロンプトで実行すると
いくつかの質問が出てきて
最後にPHP.iniにパスを通す動作が出てくるようなのですが
それらしき質問もでません
よろしくお願いします
426:nobodyさん
08/10/09 05:13:45
ドキュメントルートにアップしてブラウザからアクセスしてみ
phpが動いてるか確認してな
427:403
08/10/09 05:21:50 Sz+W15yD
>>426
レスありがとうございます
ドキュメントルートにアップして とはどういうことでしょうか?
URLリンク(always-pg.com)で調べたら
/で区切っているディレクトリのことだと思うのですが
PHPは動作してます
さっきまで簡単なソースをapacheでやっていました
428:nobodyさん
08/10/09 05:25:50
URLリンク(localhost)
429:nobodyさん
08/10/09 05:25:57
だめだこりゃ
先に基礎的な知識を身に付けてからのほうがいいと思うよ
430:403
08/10/09 05:30:32 Sz+W15yD
>>428さん
そういう意味だったんですか
表示されました
go-pear.phpをapacheの中に入れたら
>>429さん
そのことは十分理解しております
ここで聞いてたときも何度も言われました
そのため基礎的な本を買ってこの様です
頑張りたいと思うのでよろしくお願いします
431:403
08/10/09 05:42:21 Sz+W15yD
>>426さん
>>430のようにやったら出来ましたが
このあとどうすればいいのでしょうか?
432:403
08/10/10 15:39:02 6TTacjje
どなたかよろしくお願いします
php.iniを見てもパスが通っている気配がないです
コマンドプロンプトを使用してもエディタしか起動しない…
433:nobodyさん
08/10/10 16:16:49
どこまでやって何が分からないん?
ブラウザでgo-pear.phpにアクセス出来たならその画面から操作するわけだが?
434:403
08/10/10 17:16:06 /lY+1YLG
>>433さん
おお そんなことだったんですか
今やってみました
ですが最後のページのURLリンク(index.php)
が開けれないんですが
pearが導入されたことを確認する方法ってありますか?
またphp.iniにパスが通ってないようなのですが
勝手に書き込まれるわけではないのでしょうか?
よろしくお願いします
435:nobodyさん
08/10/10 19:00:50
> URLリンク(index.php)
そりゃムリだろ
最初にgo-pear.phpにアクセスした際に環境設定するじゃん
そこにインストールされる
パスが通ってるかどうかはphp.ini次第だから、そんなのあとあと
まずはファイルが配置されたかを確認
436:403
08/10/10 21:45:20 /lY+1YLG
>>435さん
レスサンクス
PHPの中のpearというフォルダにはたくさんファイルが入っていました
さらにその中のpearというフォルダにも入っていました
インストールは完了したっぽいです
これで最後にphp.iniにinclude_path=".;C:\php\pear"と最後に書いたら完了でしょうか?
437:nobodyさん
08/10/10 22:04:35
>頑張りたいと思うのでよろしくお願いします
どの辺が頑張ってんだ。
438:nobodyさん
08/10/10 22:40:00
画伯まだやってんのかw
439:nobodyさん
08/10/11 07:38:32
この調子じゃ、この先も質問連発だね。
440:403
08/10/11 07:52:03 IbH29Qlb
>>437-439
とりあえず環境設定でいつもつまずくので
環境設定だけ完了したいんでよろしくおねがいします
441:nobodyさん
08/10/11 08:05:52
頑張りたいと思ってんだろ?
頑張れ。
442:403
08/10/11 10:04:59 IbH29Qlb
試しにindex.phpをしてみたら こんなのが出ました
Notice: Use of undefined constant PEAR_CONFIG_SYSCONFDIR - assumed 'PEAR_CONFIG_SYSCONFDIR' in C:\Program Files\Apache Group\Apache2\htdocs\PEAR\pearfrontendweb.php on line 72
Warning: Can not find config file, please specify the $pear_user_config variable in /index.php
Error: the template directory (C:\php5\pear\data\PEAR_Frontend_Web\data\templates) is not a directory, or not readable. Make sure the 'data_dir' of your config file (C:\php5\pear\data) points to the correct location !
これはインストールされてないってことでしょうか?
443:nobodyさん
08/10/11 12:01:25
通知: 未定義の一定の_PEAR_CONFIG SYSCONFDIR--Cで'PEAR_CONFIG_SYSCONFDIR'を仮定することの使用: 線72の上の\Program Files\アパッチGroup\Apache2\htdocs\PEAR\pearfrontendweb.php
警告: コンフィグがファイルであることを見つけることができないで、/index.phpの$洋梨_ユーザ_コンフィ
グ変数を指定してください。
誤り: テンプレートディレクトリ(C: \php5\洋梨\データ\PEAR_Frontend_ウェブ\データ\テンプレート)は、ディレクトリ、または読み込み可能です。 あなたのコンフィグファイル(C: \php5\洋梨\データ)の'データ_dir'が正しい位置を示すのを確実にしてください!
という意味だよ
444:nobodyさん
08/10/11 14:23:21 8EU/X1Q4
教えてください。
print(mb_strwidth("※",'UTF-8'));
これををUTF-8でテキストとして保存して実行すると答えが1とでます。
なんとか正しく判定させて2と出させたいのですが、どうすればいいのでしょうか。
ちなみにSJISやEUCで試してもやはり1でした。
445:nobodyさん
08/10/11 14:39:07
正しくの根拠は?
446:nobodyさん
08/10/11 20:36:15 mQFhChia
MagpieRSSでrssを取得したくて、
URLリンク(www.vipper.org)
のコードを動かしてみたんですが、
Parse error: syntax error, unexpected T_VARIABLE, expecting ';' in /virtual/boon/public_html/2ch/rss.php on line 28
が帰ってきます。。
よかったら、原因を教えて下さい。。
447:nobodyさん
08/10/11 20:44:39
>>446
26: for ($i=0;$i
// 27:
// 28: $rss = fetch_rss($rssurl[$i]);
CGI設置について質問【Part3】
スレリンク(php板)
448:nobodyさん
08/10/12 09:51:36
ある文字列から
<h1>と</h1>
で囲まれた部分だけを抽出して配列に格納したいのですが、どのような方法があるでしょうか。
449:nobodyさん
08/10/12 10:03:24
postしてprintしただけなのに
ある日突然
"の前に\が入るようになってしまいました。これはなぜなのでしょうか?
450:nobodyさん
08/10/12 10:58:55
>>448
正規表現
>>449
magic_quote
451:403
08/10/12 16:56:29 5ipLjJfb
>>443さん
レスサンクスです
翻訳サイトで僕も翻訳してましたw
Error: the template directory (C:\php5\pear\data\PEAR_Frontend_Web\data\templates) is not a directory, or not readable. Make sure the 'data_dir' of your config file (C:\php5\pear\data) points to the correct location !
という部分なのですが
C:\php5\pear\data\PEAR_Frontend_Web\data\templatesというファイルを作っても動きませんでした
これはパスを通せという注意だと思うのですが
なんのデータに何をすればいいのでしょうか?
452:nobodyさん
08/10/12 17:34:56
Error: the template directory (C:\php5\pear\data\PEAR_Frontend_Web\data\templates) is not a directory, or not readable. Make sure the 'data_dir' of your config file (C:\php5\pear\data) points to the correct location !
ってことだよ
453:403
08/10/12 17:36:26 5ipLjJfb
>>452
よく分かりません
454:nobodyさん
08/10/12 17:37:51
>>450
magic_quote の設定をどう変更しても¥が出てしまいます。
455:nobodyさん
08/10/12 17:54:24
>>453
訳せよ
456:nobodyさん
08/10/12 18:11:17
>>454
どう変更したの?
457:nobodyさん
08/10/12 18:43:59
>>456
onにしたりoffにしたりして試してみました。
458:nobodyさん
08/10/12 19:10:31
apache再起動すれ
459:nobodyさん
08/10/12 21:45:13
>>454
ゆとり的な回答もしておくね。
つ[stripslashes]
460:nobodyさん
08/10/12 22:42:57 B6zhuvJO
apache再起動か。
なんでできないんだろうなと思った。
こういうところまで教えないといけないのか。
461:403
08/10/13 03:01:56 5FVzcFud
URLリンク(www.s-memo.net)
を見て途中までインストールしたのですが
>試しにPEAR::HTTP_Downloadをインストールしてみましょう。
というとこでコマンドプロンプトを使ってダウンロードしようとしたら
最後の行で
No valid packages found
install failed
と出ました
これはC:\php\pearをコマンドプロンプトで実行したら
Usage: pear [options] command [command-options]
Type "pear help options" to list all options.
Type "pear help " to get the help for the specified command.
Commands:
という部分は出こなかったことと関係しているのでしょうか?
上のサイトにも書いてあったのですが
pear.batというファイルが出てきたらインストールできたということ
と書いてあったのでインストールは出来ていると思います
なんにせよ インストールは完了したことを確認できました
みなさんありがとうございます
462:nobodyさん
08/10/13 04:03:24
>>458
>>460
apache再起動でもやっぱり¥が入ってしまいます。
463:nobodyさん
08/10/13 05:33:07
URLリンク(www.pachiweb.com)
これはとある画像掲示板の画像削除時のスクリプトなんですが
これは1行ずつ削除該当ナンバーか照らしあわしつつ$lineに格納していって
該当ナンバーならその行は空白にすると言うスクリプトでいいのでしょうか?
fputs($fp, implode('', $line));
この部分のimplodeは要素間に改行を入れた後、
書き込みということですか?
464:nobodyさん
08/10/13 07:49:18
$lineに格納したあと再度ループして比較してる。
そのimplodeは配列だった$lineを区切り文字無しで全部くっつけて一つの文字列にしてる
ちょっと前時代的な手法だね。
URLリンク(www.pachiweb.com)
・・・ゴクリ
465:nobodyさん
08/10/13 09:31:48 5FVzcFud
apacheを利用しているんですが
localhostでPHPの状態を見れるようにしたのですが
Notice: Use of undefined constant PEAR_CONFIG_SYSCONFDIR - assumed 'PEAR_CONFIG_SYSCONFDIR' in C:\Program Files\Apache Group\Apache2\htdocs\PEAR\pearfrontendweb.php on line 72
Warning: Can not find config file, please specify the $pear_user_config variable in /index.php
Error: the template directory (C:\php5\pear\data\PEAR_Frontend_Web\data\templates) is not a directory, or not readable. Make sure the 'data_dir' of your config file (C:\php5\pear\data) points to the correct location !
と出てきました
pearfrontendweb.phpの問題の行には
// find other config file location
$default_config_dirs = array(
substr(dirname(__FILE__), 0, strrpos(dirname(__FILE__), DIRECTORY_SEPARATOR)), // strip eg PEAR from .../example/PEAR(/pearfrontendweb.php)
dirname($_SERVER['SCRIPT_FILENAME']),
PEAR_CONFIG_SYSCONFDIR,
と出てきました
これはpearをダウンロードした場所が悪かったのでしょうか?
この場合はC:\Program Files\Apache Group\Apache2\htdocs\pearにダウンロードしなければならなかったのでしょうか?
あと気になったのがC:\php5\pear\data\PEAR_Frontend_Web\data\templatesという部分です
php5\とありますがphp5はありません
PHPという名前に変えたので これが原因でしょうか?
466:463
08/10/13 09:38:47
か、解説ありがとうございます、
人の癖がついたスクリプトをいじるのはほんと大変ですね。
ほんとに改造できるか心配になってきました。
プロフィールとかは気にしないで下さいw
それですごい基本的な事で申し訳ないんですが
$log = fopen('access.log','w');
fopen関数のファイルの内容をクリアする(w)などのモードの場合、
ログ内容をこの例だと$logに格納した後ログ消去するのでしょうか?
467:nobodyさん
08/10/13 11:18:50
>>465
自分でテンプレートディレクトリ設定すりゃええんちゃうん?
468:465
08/10/13 12:18:31 5FVzcFud
テンプレートディレクトリってのはtempletsというディレクトリをどう設定したらいいのですか?
469:nobodyさん
08/10/13 12:20:11
知るかよ何のスクリプト使ってるかも書いてないのに
470:465
08/10/13 12:55:01 5FVzcFud
>>469
すいません
スクリプト自体がどれか分からないんですが
エディタならPHPエディタです
すいません 用語をよく知らないので
471:nobodyさん
08/10/13 13:01:37
じゃ調べろよ・・・
472:nobodyさん
08/10/13 13:03:59
もうPEARのエラーメッセージはおなかいっぱい
冷静になって環境見直せよ、画伯
473:465
08/10/13 13:20:54 5FVzcFud
URLリンク(kaden.yahoo.co.jp)
で調べてきたんですけど
コンパイラが何か分からないんです
変換という意味が分からなくて
apacheはサーバ代わりだし
474:nobodyさん
08/10/13 13:28:42
画伯って何?
475:nobodyさん
08/10/13 13:41:35 CGfh2V74
>>901
ディレクトリについて少し質問
C:\php\pear\DBだった場合 (DBはフォルダ)
C:\php\pearでもいいんでしょうか?
476:nobodyさん
08/10/13 13:43:52 CGfh2V74
書くとこ間違えました
申し訳ないです
477:463
08/10/13 19:28:39
俺と間違えられてた?
478:nobodyさん
08/10/14 00:30:55 z+viMTEc
PHP4てまだ使ってる人いるんでしょうか
479:KYOO ◆1C9DnWzrKw
08/10/14 00:34:16 IZm37X9Z
URLリンク(daveri.site90.net)
掲示板ってやつをつくってみたんですけど、
暇だったら見てみてください。
480:nobodyさん
08/10/14 00:44:52
>>478
サポートは終了しても現行システムを移行させるまでは使うしかない
新たに始めるならPHP5だろう
dev版PHP6を見てると・・・また互換性のないUPがたんまり・・・
481:nobodyさん
08/10/14 04:11:06
>>480
メジャーバージョン違いはもう別言語と思ったほうがいいよな。マイナーアップでさえry
482:465
08/10/14 08:40:33 OazE8u18
どなたか>>467をphp触って一ヶ月の俺に分かりやすく詳しく教えて下さい
483:nobodyさん
08/10/14 09:46:19
>>482
PEAR_Frontend_Webの設定でテンプレートパスを正しく変更する
これでFA
484:nobodyさん
08/10/14 09:54:18
FAかな…。
>>442と同じことを>>465で訊いてしまう感覚とか、
C:\php\pear(>>436等) or C:\php5\pear のどっちに PEAR を入れたのか本人もよくわかってないとか、
目先の対症療法では解決しない根深いものを感じるよ。
485:nobodyさん
08/10/14 10:01:00
意識の低さが問題を深くしているんですね、この1ヶ月は無駄だったと、わかります
486:nobodyさん
08/10/14 10:15:59
>>482
>>429
>>437-441
487:nobodyさん
08/10/14 12:30:14 PhS+pU3S
超初心者的な質問ですいません
phpを使ったwebサイト作成の勉強をしているのですが
C:\Users\ユーザー名\Documents\サンプルサイトの中でwebサイトを作っているのですが
C:\xamppの中にあるhtdocs内にあるphpを読み込もうとしても上手くいきません。
phpの初心者なんで概念自体があやふやなので変な質問でしたらごめんなさい<(._.)>
488:nobodyさん
08/10/14 13:06:00
apache 動かしてるのにドキュメントルートの外でサイト作らなくてもいいと思うのよ。
489:nobodyさん
08/10/14 18:05:42
Cドライブ開くの面倒ならショートカット作ればいいしな
490:nobodyさん
08/10/14 18:49:32
初心者はxamppやめれ
491:nobodyさん
08/10/15 15:36:31 jArJnvnC
平分のIDとmd5で暗号化したパスワードをtxtファイルにして
それを.htaccess下のフォルダに入れました。
メインのPHPでそのファイルを読み取り認証
その後、ID.datファイルを外部から読込んで
IDごとに違うページを表示させているのですが
セキュリティ的に問題などあるでしょうか?
補足
ID.datも.htaccess下に入れてあります。
ちょっとした顧客の納期表示に使おうと思っています。
492:nobodyさん
08/10/15 15:40:03
htaccess下って何だよ
493:nobodyさん
08/10/15 15:42:31 jArJnvnC
>>492
すいません
.htaccess .htpasswordファイルを置いてアクセス制限かけたフォルダです。
494:nobodyさん
08/10/15 15:43:47
>>492
「.htaccessでアクセス制限しているディレクトリ配下」くらい予測しろ
>>491
.htaccessでdeny from allしてるなら直リン出来ないからまぁ安全じゃないか?
出来ればルート外に置くのがベストだが
495:nobodyさん
08/10/15 15:56:52 jArJnvnC
わかりづらい文章で申し訳ありません
>>494
ありがとうございました。
ルート内にあったのでルート外に置くようにしてみます。
496:nobodyさん
08/10/15 17:58:29 9ioAzBde
PEARってセーフモードの鯖にはインストールできないんですか?
497:nobodyさん
08/10/15 20:04:57
インストールはできる。
使えるかどうかはともかく。
498:nobodyさん
08/10/16 00:04:07
>>490
理由は?
499:nobodyさん
08/10/16 08:26:41
>>498
質問に答える側が使っていないから。
500:nobodyさん
08/10/16 10:28:23
>>499
いやそれなりに使うだろ
開発でFTPとかNFSが面倒な時
開発用、テスト用の鯖作るの面倒な時もか
501:nobodyさん
08/10/16 17:46:31
うん、そんなものをWebProgのWの字も知らない初心者が使うってのがそもそもおかしいだろ、な?
502:nobodyさん
08/10/16 18:09:17
それもそうか
じゃぁ普通にレン鯖か
しかしレン鯖だとセーフモードやらパーミッションやら意識することが多いよな
・・・そうかそれも勉強か!
503:nobodyさん
08/10/16 18:21:05
ApacheとPHPとMySQLをインストールすればいいと思うよ。
504:nobodyさん
08/10/16 20:03:13
んだんだ
505:nobodyさん
08/10/17 13:22:48
phpinfo()などではき出される全項目の意味を説明してあるサイトなどを、ご存じな方
教えて頂けませんでしょうか。
506:nobodyさん
08/10/17 14:04:27
個別に調べればいいんでないの?
コアの部分はPHPまぬある必見
PECLの分まで纏めたサイトなんてある意味マゾだ