【PHP】下らねぇ質問はID出して書き込みやがれ 96
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/05/28(金) 16:33:44ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 95
http://pc11.2ch.net/test/read.cgi/php/1271636105/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0187nobodyさん
2010/06/05(土) 05:45:25ID:???横?でしかもうろ覚えですまんが、
今UTF-8じゃないならスクリプトのエンコードをUTF-8に変更する時に設定変えないとだめじゃないっけ
0188nobodyさん
2010/06/05(土) 06:02:52ID:???ダメな時(B)のロックファイル作成が通るって事?
fopen() のモード x みたいな感じを想定してた。
> 書き込みのみでオープンします。ファイルポインタをファイルの先頭に置きます。
> ファイルが既に存在する場合には fopen() は失敗し、 E_WARNING レベルのエラーを発行します
> ファイルが存在しない場合には新規作成を試みます。
flockとかがアレなのはアレなんで,つまりそう言うのはDBゲホゲホ
0191nobodyさん
2010/06/05(土) 13:48:58ID:???0192nobodyさん
2010/06/05(土) 13:57:26ID:dqtCuv4f何方か力を貸してください。
SELECT文からtest内の値をarray関数に入れたいのですが良い方法ありますでしょうか。
mysql_fetch_arrayだと、idとtestをarrayにいれるだけで結果を全て入れる方法が
見つからない状況です。
実際には下記のように値を入れたいのです。
$a = array (aiue, okaki,kuke );
---------------------------------
| id | test |
---------------------------------
| 01 | aiue |
---------------------------------
| 02 | okaki |
---------------------------------
| 03 | kuke |
0193nobodyさん
2010/06/05(土) 14:11:06ID:???どーも、ついに本格的にCS5でPHPのコードヒントとか関数リファレンス、
動的な部分もプレビューしてくれたりとか、プロジェクト管理もできるようです。
今エクリプスなんだけど、ちょっと乗り換えてみたいんだけど、使ってる人いたら感想とか聞きたい。
0194nobodyさん
2010/06/05(土) 14:22:16ID:???http://php.net/manual/ja/pdostatement.fetchall.php
0196nobodyさん
2010/06/05(土) 15:03:14ID:???0197169
2010/06/05(土) 15:06:11ID:zOlNlPcy現在>>179さんのアドバイスに従い、LOCK_UNの記述を削除してテスト中です。
念のため、rとwでわけていたのもr+で一度に処理するようにしてみました。
ロックファイルを使用する場合は>>188のやり方がいいんでしょうか?
これでダメだったら試してみます。
ほんとはDB使った方がいいのは百も承知なんですが、
既にサイトが稼働してるおかげで勉強&システム移行してる余裕が・・・
どうもありがとうございました。
0198nobodyさん
2010/06/05(土) 15:12:55ID:???普段DB使ってて、ファイルでのデータ管理は経験ない素人が適当なこと言って悪いけど、
ロックファイル作成後、書き込み時にロックファイルを確認すればいいんじゃない?
ロックファイルが複数あったら、先に作成されたほうだけを有効にするとか。
0199nobodyさん
2010/06/05(土) 17:06:14ID:dqtCuv4fありがとうございます。とりあえずサンプルみて頑張ります。
(こんな関数しらんかった…)
0200質問1/2
2010/06/05(土) 18:17:47ID:w09PCQypPHP5 & MySQL5.0
<?php
$mysql_dbs = mysql_connect("host", "user", "pass");
mysql_select_dB("db-name");
$debug = false;
if($debug) print_r($HTTP_POST_VARS);
$query = "SELECT * FROM table";
if(!empty($Col0)) {
$Col0 = addslashes($Col0);
$where = "Col0 MREGEXP '$Col0' && ";
}
if(!empty($Col5)) {
$Col5 = addslashes($Col5);
$where .= "Col5 MREGEXP '$Col5' && ";
}
0201質問2/2
2010/06/05(土) 18:18:54ID:w09PCQyp$where = substr($where, 0, -4);
$where = "WHERE " . $where;
}
$query .= $where;
if($debug) {
print "<BR><BR>";
print $query;
}
$result = mysql_query($query);
$num_rows = mysql_num_rows($result);
if($num_rows == 0) $message = "該当するデータはありませんでした";
else $message = $num_rows . "件ヒットしました";
?>
検索結果<br>
<?=$message?>
<table border=1><tr><td>名前</td><td>住所</td></tr>
<? while($row = mysql_fetch_assoc($result)): ?>
<tr><td><?=$row[Col0]?></td><td><?=$row[Col5]?></td></tr>
<? endwhile; ?>
</table><a href="input.html">再検索</a>
</body>
</html>
0202nobodyさん
2010/06/05(土) 18:29:58ID:???0203nobodyさん
2010/06/05(土) 18:30:23ID:???0204nobodyさん
2010/06/05(土) 18:35:44ID:???0205nobodyさん
2010/06/05(土) 18:47:16ID:IfiEpjR7Ubuntu 9.10
【PHPのバージョン】
5.2.10
【連携ソフトウェア】
MySQL
【質問内容】
SQLインジェクションを防ぐためには、プリペアードステートメント(PDOのbindParam)を
使うだけで十分なんでしょうか?
怖いので、今はhtmlspecialchars($text, ENT_QUOTES)というのをやってから
プリペアードステートメントを使ってINSERTやUPDATEをしてます。
0207nobodyさん
2010/06/05(土) 19:47:38ID:???prepareね
http://php.net/manual/ja/pdo.prepare.php
説明じっくりよんでみ
0208nobodyさん
2010/06/05(土) 20:08:07ID:IfiEpjR7PHPMyAdminでデータベース内を覗いて、保存されたデータを見てみると
「<」のような文字がたくさんあって、容量的に「<」という1文字より多くなるし
ぱっと見て読みにくいので、使い方が間違ってるかなと思ってました。
「エスケープ」する必要があると聞きましたが、htmlspecialcharsというのは
エスケープとは違うんでしょうか?
>>207
あ、そうです。prepareです。
例えば、
$sql = "INSERT INTO testtable (testcolumn) VALUES (:testcolumn)";
$stmt = $db->prepare($sql);
$stmt->bindParam(':testcolumn', $_POST['data1']);
$stmt->execure();
という風にやってます。
「基礎からのPHP」という本で学んだやり方です。
これだけでSQL対策は十分ですか?
よろしくお願いします。
0209nobodyさん
2010/06/05(土) 20:09:02ID:IfiEpjR70210nobodyさん
2010/06/05(土) 20:12:56ID:XPkr7TFjhttp://php.dori-mu.net/source/source.php?src=search/search.phps
これ見てやったんだろう?
これおれうごいたから。
お前どっかぬけているんだよ。
まずは元ソースが動くか試してみな
0211205、208です
2010/06/05(土) 22:46:24ID:IfiEpjR7いろいろ調べてみて自分で理解したことを書いてみます。
・DBに保存するとき
SQLインジェクションの対策としてプリペアードステートメント(PDO::prepareなど)が必要
それを使えばhtmlspecialcharsは不要
・ブラウザに出力するとき
XSSの対策としてhtmlspecialcharsを使う
これで合ってますでしょうか?
プリペアードステートメントを使わない場合、htmlspecialcharsでは代わりになりませんか?
0212nobodyさん
2010/06/05(土) 23:00:07ID:???PDO使ってるならPDOのメソッド一覧あるんだから1つずつどういうものがあるか確認するぐらいしなさいよ
>プリペアードステートメントを使わない場合、htmlspecialcharsでは代わりになりませんか?
http://www.php.net/manual/ja/pdo.quote.php
htmlspecialcharsはxss対策に使うものでsqlインジェクション対策に使う関数ではありません
0213nobodyさん
2010/06/05(土) 23:08:36ID:bkBaLixK28habcpt918のような英数字の組み合わさった文字列を
最後の数字の部分だけ00918のように頭に0を加えて5桁にしたいのですが、
文字列のパターンはabc123や987xyz12のようにさまざまです。
つまり、
28habcpt918なら28habcpt00918、
abc123ならabc00123、
987xyz12なら987xyz00012のようにしたいです。
アドバイスお願いします
0215nobodyさん
2010/06/05(土) 23:25:25ID:IfiEpjR7すみません、既に読んでます。
お尋ねしたいのは以下の2点です。
・プリペアードステートメントを使えば、SQLインジェクションの対策としては完璧ですか?
・SQLインジェクションを防ぐ方法はプリペアードステートメントを使うのが良いのはわかりますが、
htmlspecialcharsを使う方法が代わりにならない理由は何ですか?
(数値が期待される部分では、その部分に用いる値をintval()で数値化する方法もダメですか?)
0216nobodyさん
2010/06/05(土) 23:32:48ID:???>プリペアードステートメントを使えば、SQLインジェクションの対策としては完璧ですか?
いいえ
プリペアードステートメントとは簡単に言えばSQLを高速に実行するための準備のことなので
sqlインジェクションとは関係ありません
PDO::prepareはこの準備をしつつSQLインジェクション対策を同時に行うメソッドです
>・SQLインジェクションを防ぐ方法はプリペアードステートメントを使うのが良いのはわかりますが、
> htmlspecialcharsを使う方法が代わりにならない理由は何ですか?
xssとsqlインジェクションとではエスケープすべき文字列が異なるからです
0217213
2010/06/05(土) 23:34:04ID:bkBaLixKつまりどう書けばいいんですか?
0218nobodyさん
2010/06/05(土) 23:37:11ID:???preg_match("/[0-9]+$/", $str);
0219nobodyさん
2010/06/05(土) 23:37:52ID:???$str = "28habcpt918";
$length = count($str) - strlen((int)strrev($str)) - 1;
$format = sprintf("%05d", strrev((int)strrev($str)));
echo substr($str, 0, $length) . $format;
0220nobodyさん
2010/06/05(土) 23:39:11ID:Jla4xmZF文字列のある部分だけ置き換えたいのですが、
1)12345-12345-123-a
2)aaa-aaa-aaa-12345-a
の2つの文字列があるとき、結果を
11111-123-a
11111-12345-a
と置き換えしたいです。
$AAA = preg_replace('/(.*?)-(.*?)-a/','11111-(.*?)-a',$AAA);
と記述したのですが、結果は、
11111-(.*?)-a
11111-(.*?)-a
になってしまいます。初歩的で申し訳ありませんが、
希望の動作にするためにはどう記述すればいいか宜しくお願いします。
0221213
2010/06/05(土) 23:46:34ID:bkBaLixKすごいです
感動しました
0222219
2010/06/05(土) 23:47:44ID:???$length = count($str) - strlen((int)strrev($str)) - 1;
↓
$length = strlen($str) - strlen((int)strrev($str));
0223205、208です
2010/06/05(土) 23:54:22ID:IfiEpjR7レスありがとうございます。
> プリペアードステートメントとは簡単に言えばSQLを高速に実行するための準備のことなので
> sqlインジェクションとは関係ありません
> PDO::prepareはこの準備をしつつSQLインジェクション対策を同時に行うメソッドです
知りたいのは、プリペアードステートメントの本来の目的ではなく、
「SQLインジェクション対策として十分か」ということです。
> xssとsqlインジェクションとではエスケープすべき文字列が異なるからです
htmlspecialcharsでは「\」がエスケープされないのが問題ということですね。
疑問が解消できました。
0224213
2010/06/05(土) 23:54:48ID:bkBaLixK文字列の最後が0の場合うまくいかないようです
0225nobodyさん
2010/06/06(日) 00:06:05ID:???http://php.net/manual/ja/function.preg-replace.php
0226nobodyさん
2010/06/06(日) 00:06:32ID:???もう正規表現でええやん。
$str = '28habcpt918';
if (preg_match('/([0-9]+)$/', $str, $matches)) {
$format = sprintf('%05d', $matches[1]);
echo $format;
}
0227219
2010/06/06(日) 00:21:03ID:???失礼
全然考えてなかった
intにキャストしてるから頭にある0が消えちゃう
>>226さんので取れるからそれでおながいします
0228nobodyさん
2010/06/06(日) 00:26:42ID:???> 「SQLインジェクション対策として十分か」ということです。
そらおまえさん用意されてる関数を信じないで何を信じるの?
そんなに心配ならDBの資料あさって自前でエスケープしたらいいんとちゃうの?
0229nobodyさん
2010/06/06(日) 00:41:50ID:???SQLインジェクション対策に有効だということはわかっていても
「十分」有効なのか「ある程度」有効なのかわからないということです。
プロが作ったサイトでも対策に失敗している場合があるようなので、
素人にとっては自分勝手に信じるのが怖いのです。
そのため、他者の裏付けを求めてお尋ねした次第です。
「信じないで何を信じるの?」ということは、つまり「信じていい」ということですね。
ありがとうございました。
0230nobodyさん
2010/06/06(日) 00:43:05ID:???$a = "12345-12345-123-a";
$b = explode("-", $a);
echo "11111-" . $b[count($b)-2] . "-" . $b[count($b)-1];
0231nobodyさん
2010/06/06(日) 00:48:24ID:???> プロが作ったサイトでも対策に失敗している場合があるようなので、
それは関数のせいじゃなくて単にエスケープ忘れてるだけ
プロといっても人間だからね
大手サイトとかにもなると作りが複雑になるし
ちゃんと規約決めて工程を遵守して多人数でやってる場合はバグも出にくいけどコストがかかる
PHPなんかはコスト重視だから設計もなしに適当にやってるとこは潜在的なバグがいっぱい
0232nobodyさん
2010/06/06(日) 00:50:27ID:???あなたはSQLインジェクション対策の有効性について
慎重な意見を求めているようだけど、逆に他者の裏付けがあれば安心出来るのか?
そんなに心配なら自分で納得いくまでとことん調べるしかないだろう。
0233220
2010/06/06(日) 00:51:00ID:uQxRO+T3ありがとうございます。
すいません読んでみましたが、初心者なのでよくわからなかったです。
$n形式という方法ですか?
0234nobodyさん
2010/06/06(日) 01:00:02ID:???第二引数の置き換えのところで正規表現使ってるけどここは使えない。
マッチしたものをここで参照する場合$nもしくは\\nと書く。
マッチした全体が$0(\\0)になり、以降()で囲ったところが順番に$1(\\1)、$2(\\2)と入っていく。
まぁ>>220は第一引数の正規表現もおかしいので第二引数の置き換えを変えたところでどうにかなるわけではないが。
正規表現のお勉強は正規表現スレへどうぞ。
http://pc12.2ch.net/test/read.cgi/tech/1268979408/
ただそのケースだと初心者にとって難解な正規表現を使う必要もないので、
>>230を参考に組み立てたほうがよい。
0236nobodyさん
2010/06/06(日) 01:54:28ID:???それなら聞く必要ない気がするけどさ。
0237nobodyさん
2010/06/06(日) 02:11:20ID:???0238220
2010/06/06(日) 02:32:34ID:uQxRO+T3出来ました!ありがとうございます!
0239nobodyさん
2010/06/06(日) 11:18:37ID:???ワードプレスを動かしたいのですが
0240nobodyさん
2010/06/06(日) 11:19:21ID:lMgRzA8Fワードプレスを動かしたいのですが
0241nobodyさん
2010/06/06(日) 11:51:52ID:???http://wordpress.org/extend/plugins/pdo-for-wordpress/
0242nobodyさん
2010/06/06(日) 12:16:08ID:???SQLインジェクションを予防するのに、
・「SQLインジェクションを予防するための関数」と
・「XSSを予防するための関数だけど、たまたまSQLインジェクションも防止できるような気がする関数」
どっちを使うかって話だよ。
つうか、「\がエスケープされないから危険」という思考は、要は裏で「SQLに混じって危険なのはコレとコレとコレと…」と候補を自分で考えてるだろ。
「危険な要素を弾く」はセキュリティ対策として非常に危険なので(見落としがあるとアウト)、自己の判断で行なうのを極力避けるべき。
俺を含めPHPプログラマの9割がカスなのは事実だが、言語自体の開発者や標準ライブラリの設計者は優秀だし、しっかりテストもされてる。
だから、「2chの意見と標準ライブラリどっちを信じるか」ならば、標準ライブラリを信じたほうが絶対にいい。
0243nobodyさん
2010/06/06(日) 12:24:40ID:lMgRzA8Fpdoドライバが必要になります。なしで使える方法無いですか。
0244nobodyさん
2010/06/06(日) 12:29:00ID:lMgRzA8F;extension=php_pdo_sqlite.dll
こっちがONで
extension=php_sqlite.dll
extension=php_sqlite3.dll
動く方法ないですか
0245nobodyさん
2010/06/06(日) 12:40:03ID:lMgRzA8F未完成
http://polygon-blog.blogspot.com/2010/03/posql-for-wordpress.html
0246nobodyさん
2010/06/06(日) 12:47:37ID:???wordpressのソースをハックすればどうにでもなるが
あんな長いのを見るのもめんどくさいしな
ちゃんと抽象化されてて他のスクリプトへの影響が最小限の作りになってて
DB操作用のクラスなんかがあってそのファイルだけいじればOK
みたいなかんじの作りになってたら修正も簡単なんだけど
wpのソースなんて見たことないしシラネ
0247nobodyさん
2010/06/06(日) 13:15:59ID:lMgRzA8F0248nobodyさん
2010/06/06(日) 13:39:02ID:???0249nobodyさん
2010/06/06(日) 13:57:01ID:???0250nobodyさん
2010/06/06(日) 14:22:36ID:???入力画面から確認画面に遷移する際のバリデーションは、どこに実装すべきでしょうか?
0251nobodyさん
2010/06/06(日) 14:42:53ID:???確認画面と完了画面の両方。
コピペはあり得ないので、外部ファイルに関数の形で定義する事になるな。
0252nobodyさん
2010/06/06(日) 15:00:52ID:???そうなると、確認画面で入力エラーになったら、入力画面にリダイレクトさせることになるんですよね。
その場合の入力値って、セッションに保存しておくしかないのですか?
0253nobodyさん
2010/06/06(日) 15:30:15ID:???確認画面にinput type="hidden"で仕込めばいい。
あと、入力された値がちょっと全角英数だったからとかいう理由で入力値を全部消滅させやがる糞フォームを作るような奴は地獄に落ちるべき。
普通にエラー表示するだけにしとけ。ブラウザバックで戻れば入力値は保持されてることが多いし。
確認画面にエラー内容と、ユーザーが入力したものがそのまま入ってる入力フォームが出てるのがベスト。
0254nobodyさん
2010/06/06(日) 15:39:21ID:lMgRzA8Fバイナリ(エクステンション)なしで
動かす方法ないですか。
0255nobodyさん
2010/06/06(日) 16:37:25ID:B6xMlzjU画像保存時に縮小画像を保存しておくのがいいのか
表示時に毎回縮小するのがいいのか、どっちでしょう?
全画像の縮小版をあらかじめ保存しておくと容量を喰いそうなので
表示のタイミングで縮小するのが良いと思ってますが、
縮小画像を削除するタイミングがわかりません。
0256nobodyさん
2010/06/06(日) 16:47:41ID:???バッチで定期的に古いファイルを削除すれば?
実際には更新日時をいちいち判定するのは面倒くさいので、例えば月ごとにディレクトリ掘ってそこに置いといて、月イチで古い月のディレクトリを丸ごと削除とか。
保持しておくべきか動的に生成すべきかは画像の量と表示回数次第だろうね。
容量をざっくり見積もって、それが許容できそうな範囲なら静的に置く方が楽だと思う。
0257nobodyさん
2010/06/06(日) 17:00:31ID:B6xMlzjUなるほど。その方法いいですね。
でも考えてみれば、アクセスが多くなると毎回縮小するのは負荷がかかりますね。
容量的にいけそうだったらやっぱり静的なほうにしようと思います。
0258nobodyさん
2010/06/06(日) 17:02:41ID:lMgRzA8F量が多いなら、3Mくらいの複数の書庫に詰め込んで呼び出せばいい。
実測も書庫の方が高速になる。
たとえば100個表示させるとすると、画像への100回オープンが発生するが。
書庫なら一回。
0259nobodyさん
2010/06/06(日) 17:18:34ID:???はいって何だよ。さっきから何度も。何がはいなんだよ。
出来もしねえ奴が軽々しくはいなんて言うんじゃねえよ。
だから申し訳ありませんじゃねえだろうよ。何が申し訳ねえんだよ。
本当に反省してんのかよ。
本当に今なら出来んのかよ。
口先だけの謝罪をするんじゃねえよ。
いい加減な気持ちでやってるんだったら今すぐ帰れよ。
だから以後じゃねえんだよ。俺は今の話をしてんだろうが。
今の反省も出来てねえ奴が勝手に未来語ってんじゃねえよ。
勝手に話を切り上げようとするなよ。失礼だろうが。
そんなにやりたくないんだったらだったら今すぐ辞めろお前。
0260nobodyさん
2010/06/06(日) 17:45:19ID:???0262nobodyさん
2010/06/06(日) 18:15:18ID:???0266nobodyさん
2010/06/07(月) 03:25:38ID:???0267nobodyさん
2010/06/07(月) 06:44:36ID:FJeCaP+n自分でテンプレートを作成することになると思いますが、
その場合例えばDBから値を取り出してそれを表示するなんて場合、
DBから結果取得〜表示までのロジックをかかなければなりません。
一部用意されている関数で処理が省略できるとしても、
PHPを知らないとなりません。
そこであらかじめテンプレートで使われそうな処理(上記の例の場合、ある結果の取得から表示まで)を
関数単位で用意し、テンプレートではHTMLの構文に似たカスタムタグを使うことで、
テンプレートからHTMLに変換する際、カスタムタグを構文解析して対応した関数を呼び出そうと考えました。
こういう方法は一般的でしょうか?
構文解析方法ですが、正規表現を使って行っています。
0268nobodyさん
2010/06/07(月) 07:40:10ID:???Smartyとかテンプレートエンジン使うとかではダメなの?
もちろん、HTMLタグに似せたり、テンプレート側から呼び出せる機能を制限したい、ということであればあり得る方法だと思う。
0269nobodyさん
2010/06/07(月) 10:11:02ID:???告知させて。
現在のところあまり盛んに動いてるオンライン勉強会がないので
あたらしくグループつくりました。
オンラインでチャット・生中などいろいろ(未定)で
できれば毎晩だらだら勉強やる予定です。
熱意のある人いたらたまーに課題だしてってアプリ作るなんてのも
ありかなと思ってます。
初心者の人はもちろん、おれが仕切って教えてやるわって人も大歓迎です。
グーぐるグループ
「初心者歓迎 PHP勉強会 2ch発」
ttp://groups.google.co.jp/group/2ch-php
php.2ch@gmail.com
参加希望の人いたら、メールくださいな。
0270267
2010/06/07(月) 12:08:54ID:dndZJJbf>>268
レスありがとうございます。
Smartyはどういうものかよく知りません。
テンプレートエンジン自体どういうものかよくわからなくて・・・
ただMovableTypeを数年前に使っていて、
そこではテンプレート用のMT専用タグみたいなのが使えたので、
>>267のような仕組みになってるのかな?と思い実装しました。
そういう実装もありとのことなので少し安心しました。
テンプレートエンジンについても後ほど調べてみたいと思います。
0271nobodyさん
2010/06/07(月) 14:06:21ID:hz9Zbx6T./configureの度にgccがないとか、libxml2がないとか、libpngがないとか、とにかくエラーばっか
自分centOS5.4使ってるんだけど、皆さんやっぱこういう風に色々とインストールしてPHP環境(ApacheとかMySQLとか)作ってるんですか?
以前yumで全部インストールしたんだけど、あまりにバージョンが全部古いんで今回最新版を全部入れようと思ったら予想外に時間と手間がかかって
それとも何か自分のやり方が間違ってるんですかね?
0272nobodyさん
2010/06/07(月) 14:22:18ID:MuZbivCshttp://ja.wikipedia.org/wiki/LAMP
0274nobodyさん
2010/06/07(月) 14:42:06ID:???あと
> 以前yumで全部インストールしたんだけど、あまりにバージョンが全部古いんで今回最新版を全部入れようと思ったら
yum update
0275nobodyさん
2010/06/07(月) 14:50:49ID:hz9Zbx6Tそれはやっぱりyumでって事なんでしょうか?
自分は以前yumで全部入れたんですが、バージョンが古くて
PHPなんかも名前空間使いたかったので5.3が必要で
それともyum以外で何かインストールするパッケージがあるのでしょうか?
centOSは他のディストリビューションよりもサーバ型だと思うんですが
>>273
あぁ、やっぱyumで入れてるんですか?
確かcentOS5.4のPHPは確か5.1か何かで古くて自分でWindowsで作ったソースがエラーが出たりして最新版を入れようと奮起していまして
いやぁ、ほんと次から次に./configureでエラーが出まくってくれて、その度にダウンロード→./configure→make→make installの繰り返して・・・
相当萎えていました
こんなんじゃ企業で使うとき、クリーンインストールや新規PC等の度に1台につき設定が物凄い無駄な時間かかるなぁ、と思いまして
Windowsだとすぐだけど
0276nobodyさん
2010/06/07(月) 15:15:25ID:hz9Zbx6Tあれ?
yum updateでPHPのバージョンとかも5.2とかにアップデートされるのでしょうか?
自分はyumでPHP環境を作る前に2度ほどyum updateをしたのですが、5.1.16とかの古いバージョンのままでした
php infoでも確認したつもりだったのですが
それかcentOSはそうなのでしょうか・・・
自分が勘違いしてたか、何かおかしな事をしたのかもしれませんね
0278nobodyさん
2010/06/07(月) 16:39:40ID:???最新版が使いたいならCentOSやめろ。そんなことのためのディストリじゃない。
>>275
突っ込みどころは腐るほどあるけど、どうしてもそのディストリで自前ビルドしたものを使いたい、かつ、
ほかにも使いまわしたいのならRPM作って署名してローカルリポジトリを使うようにする。
>>276
全部yumでインストールしたなら全部yumでアップデートすればいい。
なぜ最新版がリポジトリにないのかについては、それがCentOSだからという答えになる。
RHELのクローンということを認識してるか?
0279nobodyさん
2010/06/07(月) 18:46:23ID:???0280nobodyさん
2010/06/07(月) 19:28:33ID:???0282nobodyさん
2010/06/07(月) 21:36:24ID:goYJN4/h【PHPのバージョン】5.3
【連携ソフトウェア】いまのところなし
【質問内容】
すみません。質問させてください。
「10日でおぼえるPHP入門教室(第2版)」という本で勉強中のものです。
5日目の2限目のゲストブック閲覧のところで、つまってしまいました。
うまく動いてはいるのですが、名前かメッセージのところの1文字目が全角英数字だと、
(2文字目以降だと正常に表示されます)
guest.datには書かれるのに、閲覧ページのguest_read.phpには何も入っていなく空欄なのです。
ぐーぐる先生に聞いても半角⇔全角変換のことばかり出てきてうまく答えがみつかりませんでした。
全角英数字のまま出力はできないのでしょうか?
文字コードは本のとおりUTF-8(BOM無し)です。
よろしくお願いします。
0283nobodyさん
2010/06/07(月) 23:41:38ID:???0284nobodyさん
2010/06/08(火) 01:43:03ID:X6L4SMDoソースを出せよ。
それじゃわからんないでしょうが。
0285nobodyさん
2010/06/08(火) 01:55:27ID:???0286nobodyさん
2010/06/08(火) 01:59:43ID:X6L4SMDoもっとちゃんとした本買ったほうがいいぞ。
本の名前書くと著者乙とか書かれてしまうから
かかねーけど
■ このスレッドは過去ログ倉庫に格納されています