【PHP】下らねぇ質問はID出して書き込みやがれ 92
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2010/01/09(土) 20:11:42ID:lsb/cZ9k過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 91
http://pc11.2ch.net/test/read.cgi/php/1260247989/
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0002nobodyさん
2010/01/09(土) 20:12:24ID:???【PHP】下らねぇ質問はID出して書き込みやがれ 90
http://pc11.2ch.net/test/read.cgi/php/1258187482/
【PHP】下らねぇ質問はID出して書き込みやがれ 89
http://pc11.2ch.net/test/read.cgi/php/1255263534/
【PHP】下らねぇ質問はID出して書き込みやがれ 88
http://pc11.2ch.net/test/read.cgi/php/1253061577/
【PHP】下らねぇ質問はID出して書き込みやがれ 87
http://pc11.2ch.net/test/read.cgi/php/1251447028/
【PHP】下らねぇ質問はID出して書き込みやがれ 86
http://pc11.2ch.net/test/read.cgi/php/1249042741/
【PHP】下らねぇ質問はID出して書き込みやがれ 85
http://pc11.2ch.net/test/read.cgi/php/1245074032/
【PHP】下らねぇ質問はID出して書き込みやがれ 84
http://pc11.2ch.net/test/read.cgi/php/1240835951/
【PHP】下らねぇ質問はID出して書き込みやがれ 83
http://pc11.2ch.net/test/read.cgi/php/1238958898/
【PHP】下らねぇ質問はID出して書き込みやがれ 82
http://pc11.2ch.net/test/read.cgi/php/1236532468/
【PHP】下らねぇ質問はID出して書き込みやがれ 81
http://pc11.2ch.net/test/read.cgi/php/1234958956/
【PHP】下らねぇ質問はID出して書き込みやがれ 80
http://pc11.2ch.net/test/read.cgi/php/1233479457/
0003nobodyさん
2010/01/09(土) 20:12:27ID:???■本家マニュアル http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル http://pear.php.net/manual/ja/
■メーリングリスト http://ns1.php.gr.jp/mailman/listinfo/
■ZFマニュアル http://framework.zend.com/manual/ja/
■Smartyマニュアル http://www.smarty.net/manual/ja/
(以下英語)
■Zend本家 http://www.zend.com/
■Zend Framework http://framework.zend.com/
■php | architect http://www.phparch.com/
■Smarty http://www.smarty.net
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0004nobodyさん
2010/01/09(土) 20:12:30ID:???1.文字コードは何を使えばいいの?
→1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
→ http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
→ Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
→ 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
→ {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
→ cronかタスクスケジューラを使え。
7.extractって危険なの?
→変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
→ URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
→ .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
0005nobodyさん
2010/01/09(土) 20:12:33ID:???→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
11. SQLの質問はどこで?
→ データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
→ ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
→ 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
→ よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
15. クッキーの情報をユーザから隠したい
→ セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
→ strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
→ まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
→ C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(http://〜とか)を扱う際の限界
→ fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
→19.を参照
21. 画像処理一般 or GDの限界
→ ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
→ 好きにしてください
0006nobodyさん
2010/01/09(土) 20:12:54ID:lsb/cZ9k0007nobodyさん
2010/01/09(土) 20:23:06ID:???0009nobodyさん
2010/01/09(土) 20:51:29ID:???0010nobodyさん
2010/01/09(土) 21:54:25ID:???0011nobodyさん
2010/01/10(日) 06:11:17ID:Nqmvsa05【PHPのバージョン】PHP5
【連携ソフトウェア】MySQL,PHP標準関数
【質問内容】
ファイルをPHPから操作する場合のR/W速度について気になっているのですが、
ファイルをMySQLのDBに格納する場合と単にディレクトリに置くのとどちらが高速なR/Wが可能なのでしょうか?
R/Wアルゴリズムの関連もあると思いますが、その部分は今回は考慮しないものとして、単にDBと直置きファイルの速度差を知りたいです。
詳しい人お願いします。
0012nobodyさん
2010/01/10(日) 06:21:04ID:???0013nobodyさん
2010/01/10(日) 11:46:37ID:???0014nobodyさん
2010/01/10(日) 13:33:00ID:???0015nobodyさん
2010/01/10(日) 13:42:02ID:???0016nobodyさん
2010/01/10(日) 15:20:49ID:???0017nobodyさん
2010/01/10(日) 20:02:27ID:zJdzyZ1s;extension=php_pdo_mysql.dllのセミコロンを取るだけでいいのでしょうか?
;extension=php_mysql.dllもはずしたほうがいいのでしょうか?
0018nobodyさん
2010/01/10(日) 22:47:46ID:???0019nobodyさん
2010/01/10(日) 23:10:18ID:I33ULrf7session_cache_limiter("nocache");
とすると、IEで画像を保存するときに、
bmpで保存しようとしてしまいます。
これはIEの仕様らしいのですが、以下URL参照
http://blog.asial.co.jp/471
session_cache_limiter("nocache");
しながら、IEで保存する際に本来の拡張子で
保存できるようにする方法はあるでしょうか?
0020nobodyさん
2010/01/10(日) 23:41:57ID:???0021初心者
2010/01/11(月) 12:05:19ID:5Nbo1fwUこれはどんなブログにも送信することができますか?
レンタル鯖にphpのブログシステムを入れて使いたいですが送れませんでした。
php5.2.10
PHPウェブログシステム3.1 です。
よろしくお願いします。
0022nobodyさん
2010/01/11(月) 12:29:35ID:???0023nobodyさん
2010/01/11(月) 19:56:05ID:???文字列にこんな感じの改行が入ってるかどうか
調べたいのですが、
print_rとvar_dumpで出力してみたのですが、
改行として出力されてしまい表示されません
他に方法はありませんか?
0024nobodyさん
2010/01/11(月) 20:07:28ID:???002623
2010/01/11(月) 20:39:17ID:???両方とも試してみることにします
0027nobodyさん
2010/01/11(月) 20:52:00ID:???0028nobodyさん
2010/01/11(月) 21:14:37ID:???他のwebサーバで使いたいならそれこそapacheいらないし
何がしたいんだ
0029nobodyさん
2010/01/11(月) 21:49:00ID:???使えました。
いままでエラーチェックくらいしか出来ないと思ってたので感動してます。
ありがとうございました。
0030nobodyさん
2010/01/12(火) 00:11:49ID:hE+xduvc1"2345"6 と描かれた文字列から"だけを削除したいのですが、
$moji = ereg_replace("""","",$moji );
としても構文エラーが起きてしまいます。
"を抜きとる良い方法を教えて貰えないでしょうか?
よろしくお願いします。
003130
2010/01/12(火) 00:14:35ID:hE+xduvc'"'とすればよかったのですね。
スレ汚し失礼しました。
0032nobodyさん
2010/01/12(火) 00:15:31ID:p7hB8W65>$aMoji[0][data][id] = "あ";
>$aMoji[1][data][id] = "い";
>$aMoji[2][data][id] = "う";
上記のような配列を、イメージ的には↓みたいな感じで
>echo implode(",", $aMoji);
結果として
>あ,い,う
としたいのですが、なにか方法は有りますでしょうか。
foreachで回すしか無いですか?
0033nobodyさん
2010/01/12(火) 00:40:56ID:???下のサンプル
multi_implode("," , $aMoji)
0034nobodyさん
2010/01/12(火) 00:46:20ID:???33でもいいけど頭の体操になるので既存の関数使って作ってみた(php5.2以前)
�@
array_walk_recursive($aMoji, 'func', &$ret);
echo $ret;
function func($item, $key, $ret) {
$ret .= $ret ? ',' . $item : $item;
}
�A
echo implode(',', array_map('func', $aMoji));
function func($item) {
return $item['data']['id'];
}
0035nobodyさん
2010/01/12(火) 01:34:41ID:T+z2e9an【PHPのバージョン】php5.2.12
【連携ソフトウェア】
【質問内容】
下記のように未定義の変数を使用した場合、
centosではNOTICEエラーが出力されますが、
windowsでは出力されません。
if ( $a ) {
//処理
}
※$aは初期化されていません。
php.iniの設定はwindowsもcentosも同じです。
未定義の変数の扱いはOSによって扱いが変わるのでしょうか?
003635
2010/01/12(火) 01:39:28ID:T+z2e9anphp.iniの「Error handling and logging」の設定は
windowsもcentosも以下のようになっています。
error_reporting = E_ALL & E_NOTICE
0037nobodyさん
2010/01/12(火) 01:54:27ID:???の結果は?
0039nobodyさん
2010/01/12(火) 09:24:34ID:???ようになり、消すことができません。
どうすればよいでしょうか?
0040nobodyさん
2010/01/12(火) 09:48:25ID:???0041nobodyさん
2010/01/12(火) 09:56:04ID:RNz6Ugsrclass log{
var $file;
var $fp;
function log($file){
$this->file = $file;
$this->open(); //�@
}
function open(){ //�A
$this->fp = fopen($this->file, "a");
}
......
function __wakeup(){
$this->open(); //�B
}
.....
すみません、質問させて下さい
上記コードの�@と�Bの部分のopen()というのはメンバ関数�Aを表しているのでしょうか?
0042nobodyさん
2010/01/12(火) 10:32:48ID:sJxGHmq6php -vしたところ
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\php\ext\php_exif.dll' - 指定されたモジュールが見つかりません。
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\php\ext\php_oci8.dll' - 指定されたモジュールが見つかりません。
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\php\ext\php_oci8_11g.dll' - 指定されたモジュールが見つかりません。
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\php\ext\php_pdo_oci.dll' - 指定されたモジュールが見つかりません。
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\php\ext\php_sybase_ct.dll' - 指定されたモジュールが見つかりません。
と出ます。
dll自体は存在しているし、読み込みに行くパスも間違っていないのですが、
なぜロードされないのでしょうか・・・?
0043nobodyさん
2010/01/12(火) 10:37:13ID:???そうだよ。
○付数字は環境依存文字だから、こういうネットの向こうの人の環境が
不明なとこでは使わない方が良いぞ。
0044nobodyさん
2010/01/12(火) 14:44:39ID:x0mQFvp9【PHPのバージョン】php5.3.0.0
【質問内容】
$hoge = array(1,2,3,4,5);
print strlen($hoge);
以前はこれで5が表示されたと思ったのに、今やったらエラー
strlen() expects parameter 1 to be string, array given in~
前使ってたバージョンは不明
俺の勘違いか、仕様が変わったのか、他に原因があるのか教えてください
0045nobodyさん
2010/01/12(火) 14:45:38ID:???配列ならcount()じゃね?
0046nobodyさん
2010/01/12(火) 14:47:30ID:???仕様が変わったんなら、各所でis_arrayしてやらないといけなくなる・・・
0047nobodyさん
2010/01/12(火) 14:49:54ID:???たまたま使えただけ
$string = "12345";
echo $string[0]; // 1
たまたまこれと同じ扱いになってただけ
マニュアル見ろ
引数はstringって書いてあるぞ
0048nobodyさん
2010/01/12(火) 14:51:43ID:???0049nobodyさん
2010/01/12(火) 15:03:26ID:x0mQFvp9今は正式に使えなくなってるから、使わない方が良いってことかな・・・
他に原因あるかもしれないから、念のため少し保留にしておこう。
0052nobodyさん
2010/01/12(火) 15:43:15ID:x0mQFvp9それっぽいですね。
ありがとうございます。
0054nobodyさん
2010/01/13(水) 03:17:53ID:4wFOmYq3外部テキストファイルを下記のように読み込んでホームページで表示するものなんですが、
一つだけならうまく表示されるのですが、下のように二つ並べると
二分の一くらいの確立で下も上と同じものが表示されてしまいます。
<?php include('./aaa.php'); ?>
<br>
<?php include('./bbb.php'); ?>
どうしたら、きちんと表示されるのでしょうか・・?
お願いします。
0055nobodyさん
2010/01/13(水) 03:25:33ID:???aaa.phpとbbb.phpの内容書かないとわからんよ
0056nobodyさん
2010/01/13(水) 03:28:27ID:7wXBaV+j0057nobodyさん
2010/01/13(水) 03:42:32ID:???0058nobodyさん
2010/01/13(水) 04:03:47ID:4wFOmYq3こんな夜中にありがとうございます!全くの初心者なので、
ソースをコピペしてファイル名だけを変えていますので多分そうです。。
片方の関数を変えればいいのですね。
function 関数名 (引数){
・・・・・・・・・
}
の【関数名】を変えればいいのでしょうが、どのように変えるのでしょうか。。
if ($tate) の部分でしょうか。。
図々しくて大変申し訳ないですが、こちらにソースがございます。。
(長いのでコピペは避けさせて頂きました。。)
http://ameblo.jp/mingw/entry-10360989550.html
0059nobodyさん
2010/01/13(水) 04:35:39ID:???0060nobodyさん
2010/01/13(水) 05:10:33ID:4wFOmYq3二つ読み込もうとするとダメなので、一つににまとめて表示したいと思います。
みなさま、夜中に失礼しました。
0061nobodyさん
2010/01/13(水) 05:13:16ID:???だとしたら上の方で選択されたキーを保持しておいて、下の方でそれを除外するのが一番シンプルかと。
それにしても汚いコードだな。
0062nobodyさん
2010/01/13(水) 08:55:32ID:7Pi29LSttest.php
<form action="test.php" method="GET">
<input type="text" name="aa" value="<?PHP echo $_GET[aa]; ?>" size="10">
<input type="submit" value="submit"> </form>
これでフォームに「aaa/bbb」を入力して送信すると
読み込みして表示されるURLの部分がtest.php?aa=aaa%2Fbbb
と「/」が「%2F」になってしましますが「/」で表示させるにはどうしたらよいでしょうか?
006362
2010/01/13(水) 08:58:02ID:7Pi29LStブラウザのURLアドレスの部分です。
value="<?PHP echo $_GET[aa]; ?>" の部分は「/」で問題なく表示されてます。
0064nobodyさん
2010/01/13(水) 09:30:55ID:???0065nobodyさん
2010/01/13(水) 09:58:45ID:HpUkVVSo【質問内容】
class BookList {
var $parser;
.....
function BookList ($filename) {
$this->parser = xml_parser_create();
xml_set_object($this->parser, &$this);
.....
}
すみませんが一番最後の文の、&$thisの意味が分かりません
$thisを参照渡しにするというのはいったいどういう事なのでしょうか?
そのメンバ変数、メンバ関数全てということを意味するのか、そのクラスを意味するのか、それともそれらとは別の意味を持つのか分かりません
どのような挙動と役割を持つのでしょうか?
0066nobodyさん
2010/01/13(水) 10:13:04ID:???http://www.php.net/manual/ja/function.xml-set-object.php の例みたいなのをするために、
xml_set_elementなんちゃらでしていするコールバック関数は、なんのメソッドか設定しとくためのもの。
$thisじゃなくて ほかのとこにメソッド書いたならそれを指定する。
0068nobodyさん
2010/01/13(水) 13:02:01ID:???そのPCはもう復旧しないから処分したほうがいいよ
処分するにもお金かかるから俺が変わりに処分してやろうか?
元払いで送料だけもってくれればタダで処分してやるよ
0069nobodyさん
2010/01/13(水) 13:02:41ID:ShY6sORkこの一行で著作権主張できますか?
0070nobodyさん
2010/01/13(水) 13:15:01ID:???主張はするだけならできるが
認められないだけ
0071nobodyさん
2010/01/13(水) 13:40:10ID:kzBqS2uo0072nobodyさん
2010/01/13(水) 13:47:12ID:???著作権表示は削除しないでくださいって言ってるけど、削除しても何も言えないのか
なるほど。。
0073nobodyさん
2010/01/13(水) 13:50:33ID:???0076nobodyさん
2010/01/13(水) 14:46:04ID:???&$thisが何を意味しているのかという
別にxmlのメソッドの引数に関して聞いているんじゃないと思う
0077nobodyさん
2010/01/13(水) 16:21:50ID:???0078nobodyさん
2010/01/13(水) 17:58:57ID:???"$aに値がなければ$b"という書き方で、すんなり書く方法がありそうで悩んでいます。
%php -r '$a=1; $b=2; echo $a?$a:$b;'
%php -r '$b=2; echo $a?$a:$b;'
もっと簡単な書き方をご存じないですか?
0079nobodyさん
2010/01/13(水) 18:58:12ID:???0080nobodyさん
2010/01/13(水) 19:16:00ID:???return $a?$a:$b;
}
echo c($x,$y);
008169
2010/01/13(水) 23:08:21ID:???ありがとうございます
プログラム板でなんか著作権が発生するってレスを見たので気になるのですが>>70さんのほうが正しいでしょうか?
見たスレはこれです
http://pc12.2ch.net/test/read.cgi/tech/1256350845/698
http://pc12.2ch.net/test/read.cgi/tech/1256350845/702
0082nobodyさん
2010/01/13(水) 23:43:34ID:???一応
0085nobodyさん
2010/01/14(木) 14:00:09ID:???http://www.programming-magic.com/20080419014001/
0086nobodyさん
2010/01/14(木) 16:17:22ID:WCSXxawz※↓は擬似コードです
$obj->getProfile()->['name']
008786
2010/01/14(木) 16:35:15ID:WCSXxawzemptyとかいくつかの関数でもメソッドの戻り値に対しては対応していないというのを
以前マニュアルで確認していたのを思い出しました。
>>86も多分同じような理屈になると思います。失礼しました。
0088nobodyさん
2010/01/14(木) 17:04:48ID:???$thisを参照渡しってどういうこっちゃ?
0089nobodyさん
2010/01/14(木) 17:20:51ID:???$thisを渡したあと中身を書き換えたら、その環境で呼び出して欲しい。
とかかな。
0090nobodyさん
2010/01/14(木) 17:37:58ID:???パーサが貧弱なのがPHPの残念なところね
俺は諦めてメソッドの戻り値をArrayAccessにしてる
$obj->getProfile()->offsetGet('name')
>>88
上でも書かれてるけどPHP4はオブジェクトも値渡しになってしまうため、参照渡しの指定が必須だった
0091nobodyさん
2010/01/14(木) 17:43:58ID:???書き手が&を明示的に書いたという以外に理由はないと思うけれども。
0092nobodyさん
2010/01/15(金) 08:25:12ID:???0093nobodyさん
2010/01/15(金) 13:42:47ID:9vizjOHN【連携ソフトウェア】Apache2.2
結果のecho出力で質問です。
読み込みモードでTxt(output.txt)ファイルを開くtry〜catchのtry内で
$fileHandle = fopen("output.txt", "r");
if (false === $fileHandle) {
throw new Exception('ファイルオープンに失敗しました');
}else{
// ファイルの最後まで出力する
$data0 = fpassthru($fileHandle);
echo $data0;
fclose($fileHandle);
}
としたところ、Txtの内容は表示されたのですが末尾に余計な数字46とか48が付きます。
例: abc→abc48 とか abc→abc46
回避策をお教え下さい。
0094nobodyさん
2010/01/15(金) 13:42:56ID:KdiPzmscってやったときに、クライアントにこのファイルの絶対パスがばれるようなことってありますか?
もしもファイルがなかったときには
ファイルのあるディレクトリの文字列が表示されてここにはファイルがありませんって
エラーがでるけど@readfileにしとくとか、エラーは表示させない設定にしとけば大丈夫ですかね?
アドバイスよろしくお願いします。
009593
2010/01/15(金) 13:44:48ID:???コード内の空行は無視して下さい。
0096nobodyさん
2010/01/15(金) 14:08:15ID:???http://php.net/manual/ja/function.fpassthru.php
>>94
大丈夫だと思うよ
0098nobodyさん
2010/01/15(金) 14:15:37ID:KdiPzmscありがとうございました
009993
2010/01/15(金) 15:09:54ID:???ありがとうございます。
fpassthruを使う以上文字数は付いて廻るので、
これはこれでテキスト情報として利用します。
0100kuniokun
2010/01/15(金) 16:52:18ID:???mbstring.encoding_translationを'on'にして
$_POSTの値を、"mbstring.detect_order"で指定した順に文字コード判別し
"mbstring.internal_encoding"で指定した文字コードに変換する
いやいや、そんなの自分で$_POSTを内部コードに変換しろよウェェェアイウエ
どっちがいいの?
あとmbstring.detect_orderの順番がいまいち理解できません。
UTF-8でブラウザーに出力して内部コードがUTF-8です。
この場合みなさん優先順位どうしてます?
0101nobodyさん
2010/01/15(金) 17:01:33ID:???それぞれ内容も多いですし
で、Webで勉強しているときって、ただ見て「理解した。終わり」って感じで他の項目などに行くのですか?
それとも自分でノートか何か作ってまとめているのですか?
本に載っているようなPHPの構文はライブラリ、フレームワーク、テンプレート、など全部理解しましたがセキュリティなどになると、全部でなくてもあちこち抜けなくやっておかないと穴が出てきて困ってます
この関数はバイナリセーフじゃないとか
PHP等を本当にマスターしている人間ってどうやって学習しているのか気になります
0102nobodyさん
2010/01/15(金) 17:11:09ID:???0103nobodyさん
2010/01/15(金) 19:06:09ID:???0104nobodyさん
2010/01/15(金) 19:07:50ID:???mbstring.encoding_translation off
UTF-8で運用 変換をしない。
携帯サイトの場合だけ注意。
>>101
実際にサイト作る
0105nobodyさん
2010/01/15(金) 19:45:56ID:???ttp://d.hatena.ne.jp/naoya/20060426/1146033672
>>毎日会社が終わると近くの本屋に行って本を買って、喫茶店が閉店するまでこもって読書して、帰ってから仮眠をとって、夜中に起きて朝までプログラミングする。
そんなことをずっと続けてた時期がありました。
このままでは自分の力が伸びない――。
焦った伊藤さんはプログラミングの独学を決意。
専門書を買い漁り睡眠時間を3〜4時間に削って猛勉強した。
会社帰りに喫茶店で19時から23時まで、帰宅後も深夜まで
勉強をし続けた。自腹で買った本は半年で260冊に上った。
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20090324/327117/
あなたの不安こそ,最強の武器
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20090324/327068/?ST=develop
プログラマに必要なたった一つの力
ttp://d.hatena.ne.jp/amachang/20060804/1154679162
勉強が出来ない奴はプログラマになれ!(バカだからできる勉強法)
0106nobodyさん
2010/01/15(金) 21:50:47ID:???0107nobodyさん
2010/01/15(金) 21:52:17ID:???0108nobodyさん
2010/01/15(金) 22:09:08ID:???0109nobodyさん
2010/01/15(金) 22:30:25ID:???これなかったらとんでもないことにwwwwwwww
0111nobodyさん
2010/01/16(土) 06:34:44ID:T91bVb4q標準的なクラスライブラリはないのでしょうか?
ぐぐったけど見つからなかったので自分でクラス書いちまったけど、ないってことないだろうと思って質問。
0112nobodyさん
2010/01/16(土) 08:39:05ID:???ブラウザ落としてもセッションが残ってしまうんだが?
0113nobodyさん
2010/01/16(土) 08:59:59ID:???http://www.php.net/manual/ja/book.spl.php
0114nobodyさん
2010/01/16(土) 09:25:48ID:???俺は思うに、PHPは簡単だという言葉がよく書かれているけれど、実際ライブラリとかFWとか含めて全体的に使いこなせている人間は殆どいないんじゃないかと思う
基本的な事を使っているだけで
コードとかは書けるけれど、全ては知らないからセキュリティホールが出来たり
php.iniやhttd.confの設定も全てを知ってるって人も少なかったり
どの関数がバイナリセーフでそれが違うのかとかも
5年とかかかって毎日コツコツWebで公式マニュアル見て学習してる人間だったら話は別だろうけど、独学中はいいけれどプログラマーってそこまで余裕はないからね
0115nobodyさん
2010/01/16(土) 09:35:42ID:???ZendFrameworkとかまで色々と書かれているけれど、本書くのに時間がかかるだろうに、その上新しいものをマニュアル大量に読んで勉強してるんだろうか・・・
謎だ
0118nobodyさん
2010/01/16(土) 20:06:50ID:v+1X+f1pあれって書いている人いろいろいるみたいだよ
だから全部書いているのが本人とは限らない。
むろん見てはいるとは思うけど
0119nobodyさん
2010/01/16(土) 20:18:16ID:???関数だけで4000以上。
メジャー所のフレームワークは約4種類。
WordpressとかXOOPSみたいなシステム管理ツールもある。
まだ新しい言語っていうか、成長中の言語だから、
後3年くらいすれば、ある程度成熟して
利用頻度の高いフレームワークとかが決まってくると思うよ
0120nobodyさん
2010/01/16(土) 20:40:51ID:???PHPを一通り覚えたつもりになるのは早い、これがPHPが簡単だと言われる理由だとすれば
結局、その簡単にマスターしたつもりのPHPでいろいろ作れないのは作ろうとしてるものの仕組みが把握できてないことであって、これはPHPとは別物
これはつまりPHP以外の言語をやった経験が少ないであろうプログラマーが陥りがちなこと
0121nobodyさん
2010/01/16(土) 20:41:30ID:???0122nobodyさん
2010/01/16(土) 21:30:44ID:???マジで?
確かにそうかもな・・・
あまりにも幅が広すぎるもんな
PHP系はほぼやってるし、JavaScript、XML、ASP、SQLなどなど
あれだけの量をたった一人で書くのだけでも時間かかるし、マニュアル見て勉強してってのも大変だろうし
まぁ元々NECかどっかでプログラミングしてたようだけど
>>121
ワラタw
0123nobodyさん
2010/01/16(土) 21:38:04ID:???0124nobodyさん
2010/01/16(土) 22:28:41ID:v+1X+f1pまあJavaとSQLだけだけど。
理解は深まる。やさしい本。
ただ掲示板があるけど、あんまりうまく答えてくれないよね
0127nobodyさん
2010/01/16(土) 23:42:05ID:???Q.○○したいのですがどうすればいいですか?
A.そのやりたいことそのものの関数が用意されてるわけだが
となる
0128nobodyさん
2010/01/16(土) 23:49:25ID:???〜なことが出来る関数がある
だけ覚えて http://jp2.php.net/manual-lookup.php で検索
0129nobodyさん
2010/01/16(土) 23:49:38ID:???0130nobodyさん
2010/01/16(土) 23:52:00ID:???0131nobodyさん
2010/01/16(土) 23:55:07ID:???0132nobodyさん
2010/01/16(土) 23:56:28ID:???0134nobodyさん
2010/01/17(日) 00:00:26ID:???0135nobodyさん
2010/01/17(日) 00:10:20ID:???0136nobodyさん
2010/01/17(日) 00:41:02ID:???0137nobodyさん
2010/01/17(日) 01:45:46ID:???我々には無理です。
0138nobodyさん
2010/01/17(日) 10:17:03ID:???htmlspecialcharsやexplodeとかマニュアル見なくてもパラメータまで書ける
0140nobodyさん
2010/01/17(日) 11:16:57ID:???0141nobodyさん
2010/01/17(日) 11:24:48ID:???0142nobodyさん
2010/01/17(日) 13:58:13ID:???0143nobodyさん
2010/01/17(日) 14:24:14ID:???0144nobodyさん
2010/01/17(日) 14:24:17ID:???0145nobodyさん
2010/01/17(日) 14:39:33ID:???0147nobodyさん
2010/01/17(日) 14:45:05ID:???その中のメソッド名とか補完してくれるんですかね
0148nobodyさん
2010/01/17(日) 14:55:42ID:???0150nobodyさん
2010/01/17(日) 17:06:58ID:???0151nobodyさん
2010/01/17(日) 17:08:57ID:???0152nobodyさん
2010/01/17(日) 17:12:00ID:???0154nobodyさん
2010/01/17(日) 17:39:40ID:???0155nobodyさん
2010/01/17(日) 17:44:29ID:???0156nobodyさん
2010/01/17(日) 17:59:13ID:???0157nobodyさん
2010/01/17(日) 18:08:18ID:???0158nobodyさん
2010/01/17(日) 18:12:29ID:???おかげで大事な用を忘れたぜ
0159nobodyさん
2010/01/17(日) 18:17:01ID:???0160151
2010/01/17(日) 18:17:08ID:???(かなり昔に)勉強会で盛り上がったネタ振ったのに食いつき悪いなぁ
0162nobodyさん
2010/01/17(日) 18:26:38ID:???0163nobodyさん
2010/01/17(日) 18:34:52ID:???零細だけど俺以外は新人3名しかphp使えないよ。
それで仕事になるんだからある意味php凄い。
0164nobodyさん
2010/01/17(日) 18:38:59ID:???0165nobodyさん
2010/01/17(日) 18:51:46ID:???php部隊10名
ruby部隊20名
java部隊25名
0167nobodyさん
2010/01/17(日) 19:06:46ID:???0168nobodyさん
2010/01/17(日) 19:09:20ID:???0169nobodyさん
2010/01/17(日) 21:42:53ID:???Javaは大人のおもちゃって感じかな
0170nobodyさん
2010/01/17(日) 21:51:34ID:1yPUW7LTSELECT * FROM $TABLE ORDER BY rand()
このとき、画面表示する際に1ページあたり5件、全4ページで表示させようとしたところ
1ページ目で表示したアイテムが以降の他のページにも現れてしまいます。
これはどうしようもないのでしょうか?
(自分の期待した動作は、全てのデータをまんべんなく、繰り返し出現などせずにただランダム順で
引き出すということでした)
当然、ORDER BY $TABLE.`id`にすれば、登録順に重複なく20件表示できます。
環境はMYSQL5、PHP5でPEAR::Pagerを使ってページ送りを実現しています
DB板か、pearスレか、どこで聞くのが良いかわからなかったのでここで聞きました
宜しくお願いします。
0172nobodyさん
2010/01/17(日) 22:30:46ID:1yPUW7LTありがとうございます!
シード値なんてモノがあるのを知りませんでした。
なるほど、アクセスごとに整数値?のシードをセッションで持たせてやればいいんですね
ありがとう!
0173nobodyさん
2010/01/17(日) 22:39:59ID:CkMHerp9print "実行中・・・";
時間のかかる処理
print "実行完了";
結果をprint
ってやってるんだけど、結果を表示する前にページをクリアする("実行中・・・"を消す)
良い方法ないでしょうか。
0175nobodyさん
2010/01/17(日) 23:11:28ID:Wr8+Dze2【PHPのバージョン】php5.1.6
【連携ソフトウェア】mysql
質問します!
PHPでデータベース管理システムを作成してる初心者なのですが、
POSTで$db_cを受け取って、下のように記述したところ、$db_cというデータベースが作成されてしまいます。
$sql = "CREATE DATABASE $db_c;
分かる方、ご教授お願いします。。。
0178nobodyさん
2010/01/17(日) 23:39:58ID:w5y4G9F/あるstaticメソッドから他のstaticメソッドを呼び出すのに、
PHPではクラス名を指定しなきゃいけないようなんですが、
これをなくせないでしょうか。
class Foo {
static function sub() {
echo "FOO¥n";
}
static function main() {
Foo::sub(); // ← ここでクラス名が必要なのをなんとかしたい
}
}
class Bar extends Foo {
static function sub() {
echo "BAR¥n";
}
}
Bar::main(); #=> 'FOO' と表示される、つまり Bar::sub() は呼び出されない
0179nobodyさん
2010/01/17(日) 23:42:54ID:???でできるようになったよ
5.3からだけど
0181nobodyさん
2010/01/18(月) 01:15:18ID:hUO9bR2l【OS名】Windows XP Home Edition
【PHPのバージョン】php5.31
【連携ソフトウェア】pgsql
【質問内容】
PEARのFileを使ってアクセスするときに、文字化けを防ぐため、
mb_convert_encodingで
・ファイル一覧を取得するときはファイル名をShift-JISからUTF-8に変換
・ファイルを読み書きするときはファイル名をUTF-8からShift-JISに変換
しなければならず、とても面倒です。しかも、学校のサーバー用PCはFedora(多分)
なので、変換処理を行うと逆に文字化けしてしまうかもしれません。
何か良い方法は無いでしょうか?
学校の課題でWikiエンジンのようなものを作っています。
0182nobodyさん
2010/01/18(月) 01:26:18ID:???0183nobodyさん
2010/01/18(月) 01:44:02ID:hUO9bR2lecho file_get_contents(mb_convert_encoding($file, "SJIS", "UTF-8"));
PEAR使おうが使わまいが一緒のようです・・
mb_convert_encodingしないとファイルが見つからないっていわれます。
もう寝るか・・・
0185nobodyさん
2010/01/18(月) 02:47:37ID:???文字化けなんてするのか・・?と思ったが2バイト文字をファイル名にしてるのか。
ファイル名に2バイト文字を使うなんて恐ろしくてしたことがないから質問の意味がわからなかったわ
0187nobodyさん
2010/01/18(月) 03:15:37ID:???FTPでのファイルのやりとりに、日本語ファイル名を使うのはデフォ。
一般客を相手にする場合、避けようがない。
例えば、携帯配信業者とデータのやりとりをする時なんか、日本語
ファイル名が普通で、むしろ業者から推奨されている。
だから、その手の業務では、日本語ファイル名への対応は必須。
0188nobodyさん
2010/01/18(月) 04:21:24ID:???0190nobodyさん
2010/01/18(月) 10:14:46ID:???0192nobodyさん
2010/01/18(月) 20:01:08ID:uvnuuAT/その範囲に/**/でのコメントが無ければ、これでコメントアウトしちゃえばいいんですが、
使われているとこの手は使えません。
Cなんかだと、
#if 0
#endif
で囲むなんて手がありますが、同じように出来る方法は無いでしょうか。
0193nobodyさん
2010/01/18(月) 20:16:51ID:???--><?php
これでできないか?
0194nobodyさん
2010/01/18(月) 20:36:34ID:???ありがとうございました。
0195nobodyさん
2010/01/18(月) 20:38:27ID:???0196nobodyさん
2010/01/18(月) 20:40:15ID:NVuacAcrセッション変数を破棄する時、特定のセッション変数を残しそれ以外を破棄する方法などあるのでしょうか?
0197nobodyさん
2010/01/18(月) 20:51:54ID:???0200nobodyさん
2010/01/18(月) 21:21:26ID:maxs+89c//
foreach (array_keys($_REQUEST) as $key) {
if ($_REQUEST[$key] === $$key) {
unset($$key);
}
}
}
比較文($_REQUEST[$key] === $$key)がわかりません。
どうしてこのような厳密な比較が必要なのでしょうか?
また。$$keyという表現が解りません。どうしてここで可変変数を使う必要があるのでしょうか?
0201nobodyさん
2010/01/18(月) 21:53:32ID:???この処理をするまでに、その変数を変更してた場合は除外してるのかな。
0202nobodyさん
2010/01/18(月) 22:03:51ID:???0203nobodyさん
2010/01/18(月) 22:05:47ID:maxs+89c貴重なレスありがとうございます。
===が真になるリクエストの内容はどのようなものがありますか?
の処理をするまでに、その変数を変更してた場合という事について今いちわからないのです。
0204nobodyさん
2010/01/18(月) 22:24:06ID:???まぁregister_globals使うってことはGETパラメータをそのまま変数に使いたいってことだから
初期化なんかしないだろうけどね。
0205nobodyさん
2010/01/18(月) 22:41:00ID:maxs+89cということでしょうか?
0206nobodyさん
2010/01/18(月) 22:48:10ID:???その処理をどこで行うかにもよるし、役立つかは謎だが。
ちなみにそれ何にあったコードなの?
0207nobodyさん
2010/01/18(月) 22:58:37ID:rutu8tCmクラスとか苦手なんですけど、自作関数だけでなんとかいけますか?
0211nobodyさん
2010/01/19(火) 01:56:16ID:2Uw1FRPJphp.iniの場所をc:\windows以外にする(c:\phpにしたい)にはどうすればいいでしょうか?
http://www.php.net/manual/ja/configuration.file.php
http://www.php.net/manual/ja/faq.installation.php#faq.installation.phprc
この辺を見てレジストリを見たり環境変数PHPRCを追加したりしましたが、うまくいきません。
httpd.confにPHPIniDir "C:/php"は書いてありますが関係ないようです。
一体どこで指定されてるんですかね?
0212nobodyさん
2010/01/19(火) 02:11:57ID:???関係あるでしょ
0213nobodyさん
2010/01/19(火) 02:45:50ID:2Uw1FRPJそこを書き換えたり消したりしてApache再起動しても、phpinfo実行時の
Configuration File (php.ini) Path C:\WINDOWS
が変わりません。
AddType application/x-httpd-php .php
の部分を消すとPHPが実行されなくなるから、いじってるファイルは合ってるんだけど。
0214nobodyさん
2010/01/19(火) 10:09:29ID:???で、普通はそこを変えれば変わる。どこかで再定義したりしてない?
0215nobodyさん
2010/01/19(火) 11:55:03ID:???0216nobodyさん
2010/01/19(火) 12:34:38ID:2Uw1FRPJどこかで再定義されてるとしたら、可能性はどこがあるでしょうか。
>>215
消しても駄目でした。
そろそろあきらめようかな…。
0217nobodyさん
2010/01/19(火) 13:27:01ID:???そんなに目立ちたいのかねww
0219nobodyさん
2010/01/19(火) 14:38:43ID:???主に構文チェックとか、ちょっとしたコードを書いてテストとか。
c:\php> php -i | findstr php.ini
Configuration File (php.ini) Path => C:\WINDOWS
Loaded Configuration File => C:\php\php.ini
ってなったよ。1行目が何を意味しているのかは判りません。
設定は2行目に出てるファイルに書いてるし、それで反映されてます。
0221nobodyさん
2010/01/19(火) 17:59:23ID:zBtuMwVr上記環境にPHPデバッガを入れたいのですが、どのように入れればいいですか?
0222nobodyさん
2010/01/19(火) 18:12:05ID:???0223nobodyさん
2010/01/19(火) 18:19:17ID:zBtuMwVrPHPのデバッガには主にX DebugとZend Debuggerがあるようですが、LinuxではZendDebuggerしか選択肢がないのでしょうか?
ダウンロードは終えているのですが、PDT上でZendDebuggerを扱う設定がわかりません。
0224nobodyさん
2010/01/19(火) 19:12:08ID:???0225nobodyさん
2010/01/19(火) 20:52:31ID:???ttp://blog.wozozo.jp/archives/71
>で、デバッグのたびに開かれるウインドウをデバッグのたびに閉じるのは面倒すぎるので、Zend Debuggerを使うことにした。
>PDTのall-in-on Packageだと最初から入ってたのかもしれないけど、EclipseのSoftware Updateの
>Find and Installから一応入れた。
>http://downloads.zend.com/pdt
>
>Zend Debuggerが入ったら、Run → Debug As → PHP Scriptとかやるとデバッグ突入。
>
>これでおしまい。
この人はMacOSなようだが、同じことだろうと思う。
0226nobodyさん
2010/01/19(火) 22:16:23ID:zBtuMwVr一貫した設定方法がなく、あやふやな情報が多かったのでAptanaを使ってPHPプラグイン導入で対処しました。
レスありがとうございます。
0227nobodyさん
2010/01/19(火) 22:18:53ID:???0228nobodyさん
2010/01/19(火) 22:27:16ID:uwN5Jw79MySQLとPHPを使っているものですが、
「db1」というデータベースの中に「tb1」というテーブルがあり、その中に「pet」というカラムがあるとします。
で、その中に動物の名前がいくつか入ってるとして、「犬」がそのカラムにいくつあるかというのを書き出すにはどうすればいいでしょうか?
MySQLのバージョンは4.1.22です。どうか宜しくお願いいたします。
0229nobodyさん
2010/01/19(火) 22:34:16ID:???0230nobodyさん
2010/01/19(火) 23:30:42ID:???0231nobodyさん
2010/01/20(水) 02:59:11ID:???というのがあるかもしれんぞ
0232nobodyさん
2010/01/20(水) 03:54:40ID:???0233nobodyさん
2010/01/20(水) 10:43:29ID:6zid23dW$post_data = "バナナ";
if(in_array($post_data,$check_array)){
echo $post_data."が配列に含まれています。";
}
と言うように配列のチェックを行っていたのですが、
上記だと単語入力の場合でしかヒットしません。
foreachを使って$check_arrayを1ずつ確認していく方法以外で
最良の配列内文字列確認方法はありますでしょうか?
0234nobodyさん
2010/01/20(水) 10:45:10ID:???0235外国人参政権 Q&A
2010/01/20(水) 10:48:56ID:qzWQuxNIA 民主党は、いわゆる「反日団体」だからです。
根底に「日本が嫌い」「日本は悪い国」という思想があります。
Q 何故、民主党は日本人なのに日本が嫌いなの?
A 戦後60年、日教組が反日教育で日本人を洗脳し続けてきたからです。
洗脳された日本人が反日思想を更に広めるべく教員やマスコミに潜入しています。
また市民活動家や政治家にも大勢潜入しており反日政策を作ってきました。
反日マスコミが反自民党へ世論を誘導して樹立した反日政権が民主党です。
Q 何故、日教組は日本人なのに反日思想を広めて来たの?
A 戦後のGHQ統括下で右翼的な思想の日本人は戦犯になりました。
特に教職員(とマスコミ関係者)は駆逐されました。
代わりに教育の現場で指導に当たったのは反日思想の在日朝鮮人と共産党でした。
つまり日教組に「まともな日本人」は居ません。
Q 右翼も「まともな日本人」には見えませんが?
A 街宣車で騒音を撒き散らす右翼は、ほとんどが在日朝鮮人です。
その証拠に街宣右翼は「北方領土を返せ!」は言っても「竹島を返せ!」は言いません。
在日朝鮮人が「日本を愛するのは悪いことだ。」と宣伝しているのです。
また「在日朝鮮人はこんな人たちの差別に苦しんでいます。」と自作自演しています。
Q 日本を愛するのは悪いことじゃないの?
A 自分の国を愛するのは当然のことであって何も悪いことはありません。
愛国無罪(国のためなら何をしても良い)は悪いことですが。
Q でも日本は過去に悪いことしたんでしょ?
A 日教組やマスコミは様々な嘘の歴史が作り上げ広めて来ました。
彼らは「まともな日本人」の感覚では信じられないレベルの大嘘をつきます。
0236nobodyさん
2010/01/20(水) 10:51:34ID:???でも結局in_arrayでも内部的には1つずつ確認してるだけだぞ
0237233
2010/01/20(水) 10:58:08ID:6zid23dWそうなんですか。素直にforeach使います。
0238nobodyさん
2010/01/20(水) 12:46:53ID:a0XNCYkl関数名でぐぐっていたら
http://www.rubyist.net/~matz/20080129.html#p02
rubyのまつもとさんのBlogにたどり着きました。
なんとなく読んでいたら
htmlspecialchars($_GET['text']);
この書き方は良く無い、とおっしゃってるように見えるのですが
$_GET['text']をhtml内に表示する際にどのように記述したら良いのでしょうか?
0240nobodyさん
2010/01/20(水) 13:04:58ID:???そうやって上から目線でどうひどいでしょ的な例を出して初心者や経験者を釣るのがそのエントリの目的
問題点だけ出して対策案を出さないのはエンジニアとして残念だわなぁ
そのコードに関しては第二引数を適切に指定しろということかと
0241nobodyさん
2010/01/20(水) 14:05:24ID:???0242nobodyさん
2010/01/20(水) 14:37:51ID:???LAMP + Exclipse PDTをインストールして、デバッグしするとこまでは着たのですが
指定URLでデバッグするのってどうやるのでしょうか?
例)http://localhost/test.php?param=1
↑こんな感じです。
よろしくお願いします。
0243238
2010/01/20(水) 14:40:40ID:a0XNCYkl>>240
ありがとう、ENT_QUOTES全然知らなかったです
ついでにENT_QUOTESでぐぐると
ENT_QUOTESつけてもjavascript有効になっちゃうみたいで
http://phpspot.org/blog/archives/2008/04/phphtmlspecialc_1.html
addslashes使うといいかも、とありましたのでご参考まで。
両方合わせるのかな?
htmlspecialchars(addslashes($_GET['text']));
みたいな?
0244nobodyさん
2010/01/20(水) 14:41:38ID:???0245nobodyさん
2010/01/20(水) 15:46:29ID:???それなぜSmartyでやっているのか分からないけどSmartyに関係なく発生するよね
JavaScript中なら問題ないんだけどHTMLの属性として書いていると解釈されるようだ
実体参照って単に表示時に変換されるだけかと思ってたけど、そのままHTMLとして解釈されちゃうとは知らんかった
0246nobodyさん
2010/01/20(水) 17:51:49ID:???0247228
2010/01/20(水) 19:37:26ID:c5k2D9j8うーん、できません・・・。
$set = select count(*) from tb1 where pet = '犬';
print $set;
と書いたところ、
Parse error: syntax error, unexpected T_STRING in
とエラーが出てしまいます。
大変申し訳ありませんが、もう一度構文を書いていただけないでしょうか。
0249nobodyさん
2010/01/20(水) 20:38:56ID:???php・mysqlの解説サイトを読んだ上で
どこがわからないのか具体的に書いてもらわないと教える方も厳しいよ
0250nobodyさん
2010/01/20(水) 20:43:55ID:???$set = "select count(*) from tb1 where pet = '犬'";
0251228
2010/01/20(水) 20:54:04ID:c5k2D9j8$sssss = mysql_query("select count * from BBS where YYYY = 2010);
ただ結果が返ってこないのです。
echo $sssss;
print $sssss;
共にだめでした。
>>249
いくつかのサイトを回り、本も読みましたが…ほんとにすいません。
0252nobodyさん
2010/01/20(水) 20:59:09ID:???そのサイトや本はいきなりmysql_queryを実行してましたか?
まずmysql_connectでMySQLに接続して下さい。
その上でmysql_queryでSQLを実行し
mysql_fetch_array等で結果を取得します。
もう一度、サイトや本を読んだ方が良いと思います。
0253nobodyさん
2010/01/20(水) 21:05:12ID:???http://php.net/manual/ja/function.mysql-query.php
ここよんで、わからない(理解できない)なら、プログラムを作ることは、ほかの人に頼んだほうがよさそうです。
(あなたを非難しているわけではありません。)
0254nobodyさん
2010/01/20(水) 22:11:57ID:???define('DB_HOST',"localhost");
define('DB_NAME',"test");
define('DB_USER',"username");
define('DB_PASS',"password");
$con = mysql_connect(DB_HOST, DB_USER, DB_PASS);
mysql_select_db(DB_NAME);
$query = "select count * from `BBS` where `YYYY` = 2010";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$rec[] = $row;
}
echo nl2br(print_r($rec,true));
定数は適宜書き換えてちょ
0255nobodyさん
2010/01/20(水) 22:20:32ID:JcfZ2AVN配列の便利さがいまだにわかりません^^;
どなたか説明してくれませんか
0256228
2010/01/20(水) 22:55:57ID:c5k2D9j8色々やってみましたがエラーが返ってきてしまいますね。
…自分で言うのもなんですが、基礎の部分の知識が全然駄目ですね。出直してまいります。
最後に一つだけ。
皆様がお勧めする参考書とかありますか?私はソフトダンクの「基礎からのMySQL」という本を見ています。
0258nobodyさん
2010/01/21(木) 00:58:35ID:???XDebug使用しているのなら、リモートでバッグにすると幸せになれるかもよ。
ブラウザで、
ttp://localhost/test.php?param=1&XDEBUG_SESSION_START=1
(XDEBUG_SESSION_STARTn値は任意の文字列)
と、入力し実行すると、デバッガでブレイクしてくれる。
詳細は、ここ読んで
[Remote Debugging]
ttp://www.xdebug.org/docs/remote
PDTとの連携については、xdebug pdtでググれば、きっとどこかに行き着くはず。
Zend Debuggerなら、使ったことないので知らん。
0259nobodyさん
2010/01/21(木) 01:44:46ID:0ZIqvqkU0260nobodyさん
2010/01/21(木) 12:40:42ID:???あなたはSQLの他にPHPの知識も乏しいので
PHPの本を読んだほうがいいです。
そういう本にはSQLのことも書かれているでしょう。
0261nobodyさん
2010/01/21(木) 12:53:15ID:PEXDjvL/Cプログラムの中身は、
#include <stdio.h>
int main(){
printf("Hello.");
}
です。
phpの中身は、
<HTML>
<HEAD><TITLE>Cプログラム呼び出し</TITLE></HEAD>
<BODY>
<?php
$cmd = "test.exe";
$a = exec($cmd);
echo $a;
?>
</BODY>
</HTML>
としており、調べてみるとexec()関数で外部プログラムを実行すると書いてあったのでこのように作成しました。
他にもexec(),system(),shell_exec(),passthru()を試してみたんですがだめでした・・・
0262nobodyさん
2010/01/21(木) 12:58:11ID:???exec()は標準入力を受け取れるのかどうなのかマニュアルで確認してみそ
0263nobodyさん
2010/01/21(木) 13:02:18ID:???execでやりたいなら
echo exec($cmd);
とするか、第二引数を指定する。
PHP: exec - Manual
http://jp.php.net/manual/ja/function.exec.php
0264nobodyさん
2010/01/21(木) 13:06:49ID:???マルチ乙
0265nobodyさん
2010/01/21(木) 13:11:29ID:???0266nobodyさん
2010/01/21(木) 13:21:42ID:???にしても「ファイルが開けません」と出てだめでした。
test.exeもphpファイルと同じ場所に保存しているんですが
0267nobodyさん
2010/01/21(木) 13:34:13ID:???./ はピリオドスラッシュね
0269nobodyさん
2010/01/21(木) 13:42:58ID:PEXDjvL/どちらも試したところ、文も何も表示されませんでした・・・
0271nobodyさん
2010/01/21(木) 13:56:32ID:???「基本的には同一のシステム(コミュニティ)内での別個のカテゴリへの重複投稿を指すが
人によっては、別のシステム(「OKWave」、「Yahoo知恵袋」、「カカクコム」、「2ちゃんねる」など別個のサイト)への重複投稿もマルチポストと見る場合がある。」
基本的には同一のシステム(コミュニティ)内での別個のカテゴリへの重複投稿を指すので、
人によっては、マルチポストとは見ない場合もあるんじゃないですか?
0273nobodyさん
2010/01/21(木) 13:58:46ID:???自分が回答する立場になったらマルチの不快さはわかるよ。
0275nobodyさん
2010/01/21(木) 14:02:17ID:???0276nobodyさん
2010/01/21(木) 14:15:50ID:IMaJrSoT逃げたな。
マルチポストまともに反論できないなら最初からやらなければいいのにどうしてこういうバカは
それでもマルチポストをするのだろうか?
バカの考えは凡人にはわからないね。
0277nobodyさん
2010/01/21(木) 14:19:39ID:???どういう問題があって、どのように修正したらうまくいったのかを書いとけば
今後、同じような問題で困った人の助けになるのにな。
0278nobodyさん
2010/01/21(木) 14:22:13ID:???教えて君ってそういう物だよ。
・ネットマナーなにそれ?それっておいしいの?
・情報共有って必要?俺が満足すればそれでいい。
0279nobodyさん
2010/01/21(木) 14:22:49ID:???が設置してある神展開希望w。
0281nobodyさん
2010/01/21(木) 14:32:23ID:???0282nobodyさん
2010/01/21(木) 14:48:42ID:???0283nobodyさん
2010/01/21(木) 14:56:53ID:???0284nobodyさん
2010/01/21(木) 14:58:48ID:???0286nobodyさん
2010/01/21(木) 15:03:43ID:???0287age
2010/01/21(木) 15:47:35ID:rC/oBUeGecho 'Hello World!';
?>
実行できない。ちなみに
<?php
echo 'Hello World!';
?>
は実行できる。なんで?
0288nobodyさん
2010/01/21(木) 15:48:03ID:???0290age
2010/01/21(木) 16:16:58ID:rC/oBUeG0291age
2010/01/21(木) 16:18:50ID:rC/oBUeG0292nobodyさん
2010/01/21(木) 22:18:45ID:???echo<<<_HTML_
_HTML_;
の存在を今初めて知った。
0293nobodyさん
2010/01/21(木) 22:32:44ID:???0294nobodyさん
2010/01/21(木) 22:36:58ID:???0295nobodyさん
2010/01/21(木) 22:37:03ID:???おまえ普通にバカだろう。
「_HTML_ 」の部分は特別な意味はない。自由に決めることができる。意味があるのは「<<<」の部分。
http://jp.php.net/manual/ja/language.types.string.php#language.types.string.syntax.heredoc
ヒアドキュメントの事くらい知っておけよ。
でヒアドキュメントってPHPに限った機能ではない。Perlなどの言語にもある機能。
常識中の常識的な機能。
0296nobodyさん
2010/01/21(木) 22:38:00ID:???昼間のキチガイマルチがまた質問しているよ。
0300nobodyさん
2010/01/21(木) 22:48:26ID:???マルチもスルーな。
0301nobodyさん
2010/01/21(木) 22:49:38ID:???0302nobodyさん
2010/01/21(木) 22:51:54ID:???0303nobodyさん
2010/01/21(木) 22:53:03ID:???0304nobodyさん
2010/01/21(木) 22:55:33ID:???時間的にここ見て退会したようだね。
タイミング的にもこの中の誰かがID:PEXDjvL/だった可能性はあるね。
0305nobodyさん
2010/01/21(木) 22:56:32ID:???脳外科行ってこい
0307nobodyさん
2010/01/21(木) 23:00:24ID:???0308nobodyさん
2010/01/21(木) 23:03:31ID:???私のために争わないで
もうこれ以上
0309nobodyさん
2010/01/21(木) 23:35:03ID:???0310アルト
2010/01/22(金) 10:45:46ID:lVM55VZv掲示板作成してます。PHPで掲示板を作成しているのですが、どうしてもわからないところがあるので教えてください。
投稿コメントに
---------------------------
[例1]
>a
>>a
>>>a
>>>>a
#a
[例2]
aaa>a
aaa>>a>a
---------------------------
とあったとします。これを掲示板の機能でよくある、色を変える処理をしたいです。
【条件】
�@、行の初めに記号(例1)があるとき色を変える。
�A、行の途中に記号(例2)があるときは色を変えない。
�B、�@の条件から改行まで色を変える。
私が考えた正規表現だとバグがありました・・・
$res_comment = preg_replace('/^>(.+)/','<font color="#">\0</font>',$res_comment);
$res_comment = preg_replace('/^>>(.+)/','<font color="#">\0</font>',$res_comment);
$res_comment = preg_replace('/^>>>(.+)/','<font color="#">\0</font>',$res_comment);
$res_comment = preg_replace('/^>>>>(.+)/','<font color="#">\0</font>',$res_comment);
$res_comment = preg_replace('/^#(.+)/','<font color="'.$sharp.'">\0</font>',$res_comment);
※色コードは今だけ#にしてます。
$res_commentには上記の例だと
$res_comment = "[例1]<br>>a<br>>>a<br>>>>a<br>>>>>a<br>#a<br>[例2]<br>aaa>a<br>aaa>>a>a";
こんな感じの変数になってます。どなたか宜しくお願いします。
0311nobodyさん
2010/01/22(金) 10:58:24ID:???0312nobodyさん
2010/01/22(金) 11:10:30ID:???0313nobodyさん
2010/01/22(金) 11:11:32ID:???はいはいマルチ乙
0314nobodyさん
2010/01/22(金) 12:56:41ID:???0315nobodyさん
2010/01/22(金) 13:02:59ID:???0316nobodyさん
2010/01/22(金) 13:25:57ID:???$b = 'test1\ntest2';
/*ここに文字列化した$bのエスケープシーケンスを解釈する処理*/
($a === $b) ? echo good : echo bad;
一度変数に改行コードではなく純粋に文字列として入ってしまった'\n'などを
解釈させるにはどうしたらいいですか?
0318316
2010/01/22(金) 13:37:50ID:???0319nobodyさん
2010/01/22(金) 14:02:09ID:???0320nobodyさん
2010/01/22(金) 14:05:40ID:???0321PEX
2010/01/22(金) 14:28:10ID:???0322サブマリンPHP
2010/01/22(金) 14:49:49ID:lrtepsPM【PHPのバージョン】php5
【連携ソフトウェア】特になし
【質問内容】
requireのファイルを読み込んだ場所がカレントディレクトリーになってしまうために
おこる問題についてです。
同じ階層にあるhoge.phpを読み込む。
OK <?php require('hoge.php'); ?>
OK <?php require('/hoge.php'); ?>
他の階層にある(/hoge.phpを /hoge/hogeRead.phpから読み込む)hoge.phpを読み込む。
NG <?php require('/hoge.php'); ?>
相対パスでやればいいことは分かってるのですが、
hoge.phpは変更しない
hogeRead.phpをいろんな階層に配置する
場合、階層ごとにrequireを修正していたのでは大変です。
どの階層からでも同じ構文で読み込ませる方法はないでしょうか?
0323nobodyさん
2010/01/22(金) 14:54:23ID:???しといて
require(LIBS.'hoge.php');
とか?
0324サブマリンPHP
2010/01/22(金) 14:58:28ID:lrtepsPMそれだとdefineを設置するファイルの場所によってパスの内容が変化してしまうんです。
言い方間違えてました。
requireのファイルを読み込んだ場所がカレントディレクトリー
ではなくてphpの場合ファイルを読み込んだ場所がカレントディレクトリーになってしまうです
0326nobodyさん
2010/01/22(金) 15:04:37ID:???require realpath(dirname(__FILE__)).'/../includeFile.php';
0327nobodyさん
2010/01/22(金) 15:09:47ID:???function expand_escape($string) {
return preg_replace_callback(
'/\\\([nrtvf]|[0-7]{1,3}|[0-9A-Fa-f]{1,2})?/',
create_function(
'$matches',
'return ($matches[0] == "\\\\") ? "" : eval( sprintf(\'return "%s";\', $matches[0]) );'
),
$string
);
}
0328サブマリンPHP
2010/01/22(金) 15:27:13ID:lrtepsPMすみません、それでもうまくいかないです・・・・
0329サブマリンPHP
2010/01/22(金) 15:32:27ID:lrtepsPMrealpathやdirnameで取得したファイル自体の位置が変わるためにそれでは
意味がないです。
0330nobodyさん
2010/01/22(金) 15:34:03ID:???この板で前にそんな質問があって回答した気がする。
0332nobodyさん
2010/01/22(金) 15:43:52ID:???0333サブマリンPHP
2010/01/22(金) 15:56:06ID:lrtepsPMあ〜びっくり、ちょっと変えるとそれでうまくいきます!
require $_SERVER['DOCUMENT_ROOT'] . '../hoge.php';
として読み込むファイルはドキュメントルートに配置しました。
これだとOKなんですが
../ が必要な理由が分からない・・・・
0334サブマリンPHP
2010/01/22(金) 16:03:22ID:lrtepsPMでもとりあえず上手くいきました。有難うございました。
また、ほかの皆様にもたくさんご意見いただきまして有難うございました。
0335サブマリンPHP
2010/01/22(金) 16:11:01ID:lrtepsPMもうこの迷宮いや;;
0336nobodyさん
2010/01/22(金) 16:44:58ID:???includeパスを設定するとか。
set_include_path(get_include_path().PATH_SEPARATOR.'.'.PATH_SEPARATOR.'..'.PATH_SEPARATOR.'../..');
require('hoge.php');
file_existsとかしながら順に上の階層をみてまわるとか。
0337nobodyさん
2010/01/22(金) 16:48:42ID:???echo $_SERVER['DOCUMENT_ROOT']して
最後にスラッシュが入ってるか入ってないかとか
0338サブマリンPHP
2010/01/22(金) 16:50:06ID:lrtepsPMちなみにスラッシュは入ってませんでした・・
0339nobodyさん
2010/01/22(金) 16:56:31ID:???読み込むヤツはあちこちだけど、読み込まれるヤツは固定なんでしょ?
0340サブマリンPHP
2010/01/22(金) 17:37:03ID:lrtepsPMそこなんですよ!!なんで
/hogehoge/hogehoge.php
みたいな絶対パスが使えないんですかね?
0341nobodyさん
2010/01/22(金) 17:41:28ID:???0342nobodyさん
2010/01/22(金) 17:49:49ID:???絶対パスって、 /var/www/public_html/xxxx/yyyy.php とか c:\apach\www\html\xxx とかの方。
0343サブマリンPHP
2010/01/22(金) 17:51:59ID:lrtepsPM/hogehoge/hogehoge.php
じゃあだめなんですかね?
0344サブマリンPHP
2010/01/22(金) 17:53:04ID:lrtepsPMサーバールートですよね;;;;;;;;;;;;;
0345サブマリンPHP
2010/01/22(金) 18:01:53ID:lrtepsPMほんとにくだらねえ質問になってしまいました・・・
ここまでお付き合いくださいまして有難うございました。
無事解決いたしました。
0346nobodyさん
2010/01/22(金) 18:04:58ID:???0347nobodyさん
2010/01/23(土) 09:30:58ID:XRhFBb8M0348nobodyさん
2010/01/23(土) 12:05:43ID:???0349nobodyさん
2010/01/23(土) 14:17:45ID:xU/0WtfaHTML "ソニー"
php "ソ\ニー"
のようになってしまいます
これはどうすれば回避できるのでしょうか?
使っている文字コードはShift_JISです
str_replaceで\を取り除こうと試してみましたが、文字化けするだけでした・・・
0350nobodyさん
2010/01/23(土) 14:20:46ID:???【PHPのバージョン】php5
【連携ソフトウェア】ImageMagick
【質問内容】
PHPにてEPS、AI、PSDやらをWeb表示用にJPEGに変換したいと考えています。
一応、ImageMagickを介してEPSからJPEGが書き出せたのですが色がおかしくなりました。
元画像は不特定多数からの物なので、CMYKとRGBの統一などはできません。
色がおかしくならないようにする方法とか、
他に有用な道具は無いでしょうか。
0351nobodyさん
2010/01/23(土) 14:22:18ID:cU7c3b42ごめんなさい、sageてしまいました。
0353nobodyさん
2010/01/23(土) 14:38:02ID:BWTPXOpQ0354nobodyさん
2010/01/23(土) 14:39:51ID:BWTPXOpQ0355349
2010/01/23(土) 16:37:16ID:xU/0Wtfa無事解決できました。
ありがとうございます。
0356nobodyさん
2010/01/23(土) 16:59:17ID:LeVWmeZTそこで、あらかじめ適切な数値参照に変換した後にDOMに読み込ませ、
出力した後に数値参照をデコードしようと思いました。
しかし、この方法では最初の段階から数値参照だったものまでデコードされてしまいます。
何かいい方法ありますか?
数値参照は、ascii文字以外を変換しようとmb_decode_numericentityでconvmapを指定しても
"が'になってしまっていました。
0358nobodyさん
2010/01/23(土) 17:09:10ID:???そもそもの数値参照になっちゃうやつの対策が見つかると思うけど、そっちじゃ駄目なの?
0360nobodyさん
2010/01/23(土) 17:15:24ID:???解決するかどうかは俺にはわからんけどさ。
libxmlのバージョンは?
0361nobodyさん
2010/01/23(土) 17:25:42ID:???libXML Loaded Version 20706
でした。
$value='<b>"あa</b>';
$dom = new DOMDocument();
$dom->loadHTML($value);
$dom->encoding = "UTF-8";
echo $dom->saveHTML();
結果:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body><b>"ã??a</b></body></html>
やっぱり"あ"が数値参照(間違ってる)になってしまいました。
0362nobodyさん
2010/01/23(土) 17:41:15ID:???81 81 は制御文字なので変換失敗してるけど。
0363nobodyさん
2010/01/23(土) 17:44:06ID:???だとOKぽい
0364nobodyさん
2010/01/23(土) 17:44:51ID:???0365nobodyさん
2010/01/23(土) 18:10:59ID:???metaタグ追加
dom化
出力
metaタグ削除しかないんですかね。
0366nobodyさん
2010/01/23(土) 18:22:39ID:???new DOMDocument();
↓
new DOMDocument('1.0', 'UTF-8');
0367nobodyさん
2010/01/23(土) 19:14:17ID:LeVWmeZTそこで設定しても後からencoding指定したら意味ない(まあencoding指定してもダメなんだけど)よ。
結果は同じ。
0368nobodyさん
2010/01/23(土) 21:06:55ID:???0369nobodyさん
2010/01/24(日) 11:41:41ID:DWdjG26G同じ機能を持ったクラスをインスタンス化して利用するか、
どちらのほうが高速(メモリ的・処理的)に動作するのでしょうか?
0370nobodyさん
2010/01/24(日) 11:45:35ID:???両方を作成して計測する
0371nobodyさん
2010/01/25(月) 12:28:48ID:gaHrYkXDコマンドラインからIPを取得する方法はございませんか?
以下の方法でブラウザから動かすとIPを取得できるのですが
MS-DOSでコマンドラインから動かすと取得できません
$_SERVER['REMOTE_ADDR'];
getenv['REMOTE_ADDR'];
無理矢理でもいいのでどなたかcliでも取得できる方法をご教示お願いいたします
0372nobodyさん
2010/01/25(月) 12:51:10ID:???コマンドラインで実行してもなにもアクセスしてこないだろうし無理
0373nobodyさん
2010/01/25(月) 12:55:07ID:???0374nobodyさん
2010/01/25(月) 13:33:24ID:???0375nobodyさん
2010/01/25(月) 13:54:05ID:???0376nobodyさん
2010/01/25(月) 13:58:20ID:???それなりのコマンド実行して返ってきたものを取り出す、ことになるとおもうけど
PCのIPアドレスは1つとは限らない(0〜いくつでも。通常でもループバックと2つあるよね)
0377nobodyさん
2010/01/25(月) 14:17:11ID:???nslookupでも引くか。
0378nobodyさん
2010/01/25(月) 14:22:20ID:???0379nobodyさん
2010/01/25(月) 15:11:26ID:???質問者が必要としてるのは何だろうね。
0380nobodyさん
2010/01/25(月) 15:24:22ID:???0381nobodyさん
2010/01/25(月) 15:24:33ID:???0382nobodyさん
2010/01/25(月) 18:52:02ID:BRV0ROHO以下のコードを実行するとエラーが出てMySQLが応答しないです
どなたかphpでmysqlに正常にアクセスする方法をご教示お願いします
$con = mysql_connect("localhost, "root", "1234") or die("error");
mysql_close($link);
【エラー】
Warning: mysql_connect() [function.mysql-connect]: [2002] 接続済みの呼び出し先が一定の時間を
過ぎても正しく応答しなかった in 略
Warning: mysql_connect() [function.mysql-connect]: 接続済みの呼び出し先が一定の時間を過
ぎても正しく応答しなかったため、接続できませんでした。または接続済みのホストが応答しなかったため、
確立された接続は失敗しました。in 略
接続できませんでした: 接続済みの呼び出し先が一定の時間を過ぎても正しく応答しなかったため、接続できませんでした。
または接続済みのホストが応答しなかったため、確立された接続は失敗しました。
0383nobodyさん
2010/01/25(月) 18:53:26ID:???0384nobodyさん
2010/01/25(月) 18:55:37ID:???同居させているなら、接続時にポートで割り振って切り替えれ
localhost:9999
0385nobodyさん
2010/01/25(月) 23:07:47ID:???直接PHPファイルのprintf部分に書くと表示するので渡ってないと思うんですが
URLで+は文字としては認識されないんでしょうか?
0386nobodyさん
2010/01/25(月) 23:09:03ID:???誤)無反応
正)+−以外が表示されます。
0387nobodyさん
2010/01/25(月) 23:11:29ID:???0388nobodyさん
2010/01/25(月) 23:17:38ID:???ありがとうございました
0389nobodyさん
2010/01/26(火) 11:16:06ID:???0390nobodyさん
2010/01/26(火) 13:55:08ID:C4zRj44a全部小文字にして返すオプションとかあるのか?
PHPのバージョンによって小文字だけだったり
定義どおり大文字小文字混じってたりと違うようだが
統一する手段はあるのか?
0391nobodyさん
2010/01/26(火) 14:03:42ID:???大文字を小文字に変換する関数があることを
0392nobodyさん
2010/01/26(火) 16:42:48ID:ZX9klyVTプログラムを作成しなさい。なお,ネコ,犬をダウンロードして使いなさい。
←おもしろい画像で作ったやつが優勝
この課題がいろいろわからないので教えてください。
0393nobodyさん
2010/01/26(火) 16:54:25ID:???0394nobodyさん
2010/01/26(火) 16:57:34ID:???0395nobodyさん
2010/01/26(火) 17:07:18ID:SdRaerdT【PHPのバージョン】php5.26
【連携ソフトウェア】Apache/1.3.4
【質問内容】
質問です。
特定の条件下では、デフォルトの404ページを返すようにしたいのですが、その方法を教えていただけますでしょうか。
------------------------
<?php
(略)
if ($error)
{
header("HTTP/1.1 404 Not Found");
exit;
}
print "ok";
?>
-----------------------
「PHPで404エラーステータスを返す方法」を調べると、header〜行をやれと書いてあるサイトが多々見られます。
しかしこれだけですと、Not Foundページが表示されません。
(ヘッダは404になっていますが、HTMLソースは空っぽです)
デフォルトの404ページを表示させるにはもう一工夫いるのだと思いますが、どうすればよいのでしょうか?
・独自の404ページを表示するのはできました。(調べたサイトたちも、基本的に独自404ページを表示する方法として紹介されていました)
・<?より前。?>より後ろに改行コードなどが入っていないのは確認しました。
・PHPと同フォルダにて、存在しないファイル名を指定してブラウザからアクセスしたら、きちんとデフォルトの404エラーページが表示されました
よろしくお願いします。
0396nobodyさん
2010/01/26(火) 17:12:09ID:???用途によって好きな方選べ
0397nobodyさん
2010/01/26(火) 17:12:29ID:ZX9klyVTこの問題の答えをガチ教えて欲しい。
それはわがままなのか・・・
0398nobodyさん
2010/01/26(火) 17:13:44ID:???0399nobodyさん
2010/01/26(火) 17:14:37ID:???PHPの話はそれからだ
0401nobodyさん
2010/01/26(火) 17:17:58ID:???0402nobodyさん
2010/01/26(火) 17:18:33ID:???0403nobodyさん
2010/01/26(火) 17:18:38ID:SdRaerdTレスありがとうございます。
その「apacheに任せる」というのはどうすれば良いのでしょうか?
headerで404ステータスコードを返せば、自動的にapacheのデフォルト404が出るのかな。と期待していたのですが、それがだめだったもので。
0404nobodyさん
2010/01/26(火) 17:18:58ID:???でもAjaxを使ってというからには非同期通信使って何かする課題がその後に控えてんだろ
0405nobodyさん
2010/01/26(火) 17:20:59ID:???0406nobodyさん
2010/01/26(火) 17:21:59ID:???0407nobodyさん
2010/01/26(火) 17:22:41ID:???396じゃないけど
デフォルトの404ページって何?404を返したときに出るのがデフォルトだと思うけど。
自前の404ページを出したいんだよね?
ならあれはApacheが返してるものなのでApacheに設定したその条件に合致するURLにリダイレクトするか
404コードを出して自前の404ページにリダイレクトするなりincludeするなりすればいいなじゃないのかね
0408nobodyさん
2010/01/26(火) 17:26:24ID:???自前のページを挿しても、ieが違う見た目に置き換えやがるんだ
0410nobodyさん
2010/01/26(火) 17:44:25ID:ZX9klyVTたしかに、javaだけならすぐできるんだけど、それを
AJAXでの書き方がホントわからなぃww
もぉ2時間これで悩んでる(;´Д`)
0411nobodyさん
2010/01/26(火) 17:47:18ID:???<img src="neko.jpg" id="hoge">
<button onclick="hoge.src='inu.jpg';">click</button>
ネコ,犬をダウンロードってのは用意されたものを使えという意味か
Ajaxで画像とってこいといってるのかわからないけど
(面白い画像作ったやつが優勝っていうぐらいだから後者か?)
仮に後者でそれが課題だから回りくどい工程を取るとしても
それだけの結果を得るためにわざわざAjaxを使うというのが解せない
リクエスト減らすために描画領域に入ったらAjaxでとってくるっていうのならわかるけど
まぁ何が言いたいかというと課題が悪すぎるね
釣れたとか言わないでくれよな
0412nobodyさん
2010/01/26(火) 17:47:37ID:???0413nobodyさん
2010/01/26(火) 17:50:40ID:???google画像検索で「おもしろい顔 犬」で検索して結果から表示なんてやったり
0414nobodyさん
2010/01/26(火) 17:51:58ID:???JavaScriptとJavaはまったく別物だぞ。
それともJSP or Javaアプレットの方のことを君は書いているのか?
0415nobodyさん
2010/01/26(火) 17:56:07ID:???を提出する奴が二人はいる。
0416nobodyさん
2010/01/26(火) 18:01:22ID:???問題出したやつ頭おかしいんじゃね
知ってる言葉並べただけちゃうんかと
0417nobodyさん
2010/01/26(火) 18:02:45ID:???0418nobodyさん
2010/01/26(火) 18:03:47ID:???0419nobodyさん
2010/01/26(火) 18:08:02ID:???jQuery内に一つの機能としてAjax向けのライブラリがあるだけなのにね。
0422390
2010/01/26(火) 19:50:45ID:???get_class()を乗っ取って、内部で小文字に変換してから返せばいいってことか?
組み込み関数をオーバーライドするのはやったことないけど、ちょっとやってみるわ。
0423nobodyさん
2010/01/26(火) 20:46:08ID:81MG/9ia双方のメリットデメリットなどを教えてください
0424nobodyさん
2010/01/26(火) 21:07:24ID:???自分がメリットを感じる方を使えばいい
0425nobodyさん
2010/01/26(火) 21:12:19ID:???DBを利用すれば検索が早いがSQLを覚える必要がある
両方熟知しているなら、用途に合わせて好きな方を使いやがれでFA
0426nobodyさん
2010/01/26(火) 21:12:43ID:???メリット
・ファイル
データの取り回しが楽
・DB
登録/更新/削除さらには検索が楽
デメリット
・ファイル
DBの場合DB本体側で処理するのでインタプリタとしてPHPがからまないけど
ファイルの場合検索など一端PHPの側に取り込んでインタプリタで処理されるから効率は悪い。
・DB
管理がめんどくさい
時々最適化などの保守が必要
0427423
2010/01/26(火) 21:34:50ID:81MG/9ia詳しい解説ありがとうございました。
0428nobodyさん
2010/01/26(火) 22:10:44ID:???0430nobodyさん
2010/01/27(水) 00:26:16ID:???get_glass()の戻り値を小文字にするために、もしかしたらphp本体のソースを解析して、
パッチを当てているかもしれない人に、
「strtolower()使えばいいじゃん」
なんて、言える訳ないでしょ。察してよ。
0431nobodyさん
2010/01/27(水) 03:46:24ID:TEjoYy4L例えばですが、
自分の住まいの最寄の美容室を検索して並べて表示するというような事をするのはどのような知識が必要でしょうか?
検索方法はチェックボックス(複数選択可)、表示される検索結果は美容室の店名、住所、電話番号程度のものです。
(これは簡単なテーブルで作ろうと思っています)
idセッションとかデータベースというものを使うのでしょうか・・・?
データを取得して表示までの流れを教えて頂けたらと思います。。
0432nobodyさん
2010/01/27(水) 04:20:06ID:???0433nobodyさん
2010/01/27(水) 04:53:08ID:???必要なもの
・MySQLやSQLiteなどのRDBMSと
PHPやPerlなどのサーバサイド言語がインストールされているサーバー
必要な知識
・SQL(データベース問い合わせ言語)とデーターベースの基礎知識
・PHPやPerlなどのサーバサイド言語(以降PHPに絞る)
・HTML
流れ
・まずは美容室の最新データーを蓄積する(INSERT文、UPDATE文)
→PHPのデータベース関数を用いるかRDBMSの管理ツールを使って登録・更新する
・検索フォームから送られてきたデータでデーターベースから検索する(SELECT文)
→PHPのデータベース関数を使ってデータベースから該当データを取り出す
→取り出したデーターを整形してHTMLに出力する
0434nobodyさん
2010/01/27(水) 09:59:57ID:G51s6vJh$size = "400x300";
if(ereg("([0-9]{1,3})x([0-9]{1,3})",$size)){
echo 1;
}else{
echo 0;
}
というコードを書いたのですが、$sizeが4000x300でもtrueになります。
どういう指定方法をすればよいのでしょうか?アドバイスお願いします。
0435nobodyさん
2010/01/27(水) 10:10:29ID:???で、それ2つめは 000x300 でマッチしてるだろ
0436nobodyさん
2010/01/27(水) 10:14:42ID:???いや、パッチなんてあてなくても改造は出来るよ。
とりあえずget_class()の乗っ取りには成功しました。
ほんとPHPはバージョン間で互換性無くていやになるね。
0437434
2010/01/27(水) 10:14:46ID:G51s6vJhそれで2行目に指摘していただいた事でわかりました。
ereg("^([0-9]{1,3})x([0-9]{1,3})$",$size)
のようにすれば良いんですね。大変参考になりました。
0439nobodyさん
2010/01/27(水) 11:00:37ID:???まあできたんならいいけど
echo strtolower(get_class ($this));
でできるんだぜ
0440nobodyさん
2010/01/27(水) 11:06:12ID:???0441nobodyさん
2010/01/27(水) 11:36:59ID:TEjoYy4L>>433
返事おそくなりました。昨日はありがとうございました。
おかげで仕組みややるべき事、調べることなどがわかりました。
0442nobodyさん
2010/01/27(水) 13:40:47ID:/HDfkq3h環境変数にphpを登録するとコマンドラインでどのフォルダからでも楽にphpが使用できるのですが
ブラウザでMySQLを利用するスクリプトを使うとApacheが異常終了します
CLIも使えてApacheのモジュールとしてブラウザからも利用する方法はありませんか?
0443nobodyさん
2010/01/27(水) 13:53:23ID:???0447nobodyさん
2010/01/27(水) 14:30:36ID:???0450nobodyさん
2010/01/27(水) 14:48:00ID:???じゃそれを削除するか場所を変えるかおかしくない奴拾ってくるかすればいいのでは?
0451nobodyさん
2010/01/27(水) 14:50:56ID:???原因がわかっているなら、登録を削除すれば解決するんでね?
楽するよりもエラーを吐いて動かない方が重症だろ
>マンドラインでどのフォルダからでも楽にphpが使用できるのですが
PHPをインストールしているディレクトリのショートカットを、デスクトップに貼っとけ
0452nobodyさん
2010/01/27(水) 14:53:53ID:???補足ですが、mysql5.1とphp5.2で動かない症状が出た場合、
mysqlに入っているlibmysql.dllをphpに入っているlibmysql.dllで上書きすると動きます
0454nobodyさん
2010/01/27(水) 15:10:59ID:???エラーを吐くDLL名でファイル検索して、バージョン違いをゴミ箱入れれ
0455nobodyさん
2010/01/27(水) 15:22:10ID:???0456nobodyさん
2010/01/27(水) 15:28:38ID:???(コマンドラインを使うことは)
0457nobodyさん
2010/01/27(水) 16:58:23ID:???夜になったら質問してればいいのに
0458nobodyさん
2010/01/27(水) 18:32:55ID:J0bFMzRrID ちょめちょめ PASS にゃーん
ID でっていう PASS すぐやる夫
・・・
</body></html>
というhtmlファイルから、各IDとPASS抜き出すのはどうすればいいんですか?
$ID1 = "ちょめちょめ";
$PASS1 ="にゃーん";
$ID2 = "でっていう";
$PASS2 ="すぐやる夫";
という形にしたいです。宜しくお願いします。
0459nobodyさん
2010/01/27(水) 18:38:11ID:???ハッシュ使った方がいい気がするが
0461nobodyさん
2010/01/27(水) 18:47:58ID:???0462nobodyさん
2010/01/27(水) 18:52:04ID:???0463nobodyさん
2010/01/27(水) 18:52:35ID:???0464nobodyさん
2010/01/27(水) 18:53:49ID:???$w=<<<_YARUO_
$ID1 = "ちょめちょめ";
$PASS1 ="にゃーん";
$ID2 = "でっていう";
$PASS2 ="すぐやる夫";
_YARUO_;
echo $w;
0465nobodyさん
2010/01/27(水) 18:58:12ID:???0466nobodyさん
2010/01/27(水) 19:36:50ID:J0bFMzRrありがとうございます。
他にいい抜き出し方があったらお願いします。
0467nobodyさん
2010/01/27(水) 19:55:59ID:???0468nobodyさん
2010/01/27(水) 20:17:23ID:???0469nobodyさん
2010/01/27(水) 21:08:43ID:J0bFMzRr$get = explode(" ",$file);
$ID1 = $get[1];
$PASS1 = $get[3];
print $ID1.$PASS1;
で一応表示されたんですが、これではダメですか?
あとこれを行数だけ繰り返してID2,PASS2と振るにはどうすればいいですか?
宜しくお願いします。
0470nobodyさん
2010/01/27(水) 21:11:59ID:???0472nobodyさん
2010/01/27(水) 21:41:05ID:J0bFMzRrありがとうございます。
arrayを使えばいいですか?
行数の分だけ繰り返すところと、置き換えの文字列を変更する作業が
手こずっています。
0474nobodyさん
2010/01/27(水) 23:38:17ID:???0475nobodyさん
2010/01/28(木) 00:02:48ID:Y7CMbuAKID2 PASS2
という感じ末尾を変更するやり方を教えてください。
>>474
すいません。
0476nobodyさん
2010/01/28(木) 04:54:47ID:???0478nobodyさん
2010/01/28(木) 10:51:17ID:???ファイルにデータを貯めるよりもデータベースに貯める方が楽でしょうか?
0479nobodyさん
2010/01/28(木) 11:10:51ID:???0480nobodyさん
2010/01/28(木) 12:24:33ID:???0481480
2010/01/28(木) 12:24:56ID:WZ4SPb0m0482nobodyさん
2010/01/28(木) 12:34:11ID:???0483nobodyさん
2010/01/28(木) 12:40:32ID:???0485nobodyさん
2010/01/28(木) 18:33:03ID:???>終了タグは「?>」です。HTMLにPHPコードを埋める際は終了タグを使いますが、
>ライブラリのようにPHPコードのみを記述する際は終了タグを省くことが慣例となっています。
というのをみて(ブログ記事の一部)、
-- test.php
<?php
〜〜
?>
改行
改行
--
みたいな場合がかなりやばい、ということはわかったのですが、
え?それだけ?で?
な気持ちです。たしかに改行改行がダメなことは初めて気付かされましたが、
2つ以上の改行に注意するのと、?>を記述しないという注意と
そんなに言うほど変わりないと思うのです。
しかしいろいろなところで、(phpコードのみの場合は)絶対?>を取り除きましょう!!
みたいなノリについていけないというか・・実際やってる人なんているんでしょうか・・
0487485
2010/01/28(木) 18:37:12ID:Wx5X+hZmよろしくお願いします
0488485
2010/01/28(木) 18:38:57ID:6pvkIKgbすみません id
0489nobodyさん
2010/01/28(木) 18:41:07ID:???0490485
2010/01/28(木) 20:28:59ID:DXCM0MC80491nobodyさん
2010/01/28(木) 20:32:21ID:???0492nobodyさん
2010/01/28(木) 21:53:49ID:CVOGs3cZ<?php
// メニュー用画像リスト
$menuimg["login"] = "<IMG src=\"./img/top.login.gif\" width=\"100\" height=\"50\" alt=\"ログイン\">";
$menuimg["regist"] = "<IMG src=\"./img/top.regist.gif\" width=\"100\" height=\"50\" alt=\"新規登録\">";
$menuimg["mail"] = "<IMG src=\"./img/top.mail.gif\" width=\"100\" height=\"50\" alt=\"管理人へメール\">";
$menuimg["osaifu"] = "<IMG src=\"./img/top.osaifu.gif\" width=\"100\" height=\"50\" alt=\"######\">";
// メニュー用URLリスト
$menuurl["login"] = "./constr.htm";
$menuurl["regist"] = "./constr.htm";
$menuurl["mail"] = "mailto:############@yahoo.co.jp?subject=【サイト名】問い合わせ";
$menuurl["osaifu"] = "http://######.com/#####/";
// タグ生成関数の定義
function writeout($name){
print "<A href=\"".$menuurl[$name]."\">";
print $menuimg[$name]."</A>";
}
// タグ発行
writeout("login");
writeout("regist");
print "<BR>";
writeout("mail");
writeout("osaifu");
?>
writeoutの引数に書かれた文字を連想配列名として出力したいのです。どうかお力をお貸しください。
0493nobodyさん
2010/01/28(木) 22:06:22ID:???writeoutの中でvar_dump($menuurl);
あと期待する動作と実際の動作を書かないと片手落ちでは?次回からね。
0494nobodyさん
2010/01/28(木) 22:18:48ID:2KkwWo9K0495492
2010/01/28(木) 22:23:49ID:CVOGs3cZvar_dump($menuurl);
の結果は以下のようになりました。
Notice: Undefined variable: menuurl in /var/www/xxx/xxx.php on line 29
writeout(login);の結果
期待した動作:
<A href="./constr.htm"><IMG src="./img/top.login.gif" width="100" height="50" alt="ログイン"></A>
に対し、実際の動作が
<A href=""></A>
になります
0497nobodyさん
2010/01/28(木) 22:41:45ID:???<?php
$str="test";
function write() {
echo $str;
}
write();
?>
0498nobodyさん
2010/01/28(木) 22:45:09ID:???・var_dumpの結果を見て自分で判断してほしかった。
・次回からねというのは今回の質問の意図は分かるので次レスではなく次質問から(=次レスでいちいち説明すんじゃねーぞ)という意味だった。
で結論としては関数内はスコープが違うので引数で渡してあげれば良いです。
0499492
2010/01/28(木) 22:56:02ID:CVOGs3cZ>>497様
global $menuurl, $menuimg;
を追加することで期待した動作をしました。
ありがとうございました。
0500492
2010/01/28(木) 23:07:10ID:CVOGs3cZいろいろとすみません。
こんな初心者丸出しの私に丁寧にご教示いただき、ありがとうございました。
おかげさまで無事に解決しました。
0501nobodyさん
2010/01/29(金) 00:45:00ID:+kLxfVXG今回、ある相対パスで指定されているアドレスを絶対パスに変換したいと思い以下のように書いたのですが、
※$Srcは相対パスの場合は../pを必ず含む。$Srcが相対パスではない事もある。
$AbsSrc = ereg_replace("../p","http://絶対パス/p",$Src);
「http://piza/〜」 というアドレスも一緒に変換されてしまいました。
相対パスを絶対パスにする良い方法があれば教えてほしいのですが。
ちなみに、realpath()は使ってみましたが、元々$Srcは文字列から引っ張ってきているので、
絶対パスを知る方法がなく上手くいきませんでした。
よろしくお願いします。
0502501
2010/01/29(金) 01:08:31ID:+kLxfVXG他サイトを見ながらもう一度トライしてみます。
スレ汚し失礼しました。
0503nobodyさん
2010/01/29(金) 01:13:34ID:???0504nobodyさん
2010/01/29(金) 04:20:40ID:???<script type="text/javascript">
function zzz() {
setTimeout('aaa1()',1000);
setTimeout('aaa2()',2000);
}
</SCRIPT>
のsettimeoutの部分を、txtファイルの行数分だけ
count関数を使って入れたいのですが、
$count=0;
$res=fopen($logfile,"r");
while(!feof($res)){
$str=fgets($res);
$count++;
$count1000 = $count*1000;
$sall = "setTimeout('aaa$count()',$count1000);}";
}
とすると
<script type="text/javascript">
function zzz() {setTimeout('aaa2()',2000);
}</SCRIPT>
になります。希望の動作になるにはどうしたらいいか宜しくお願い致します。
0506nobodyさん
2010/01/29(金) 10:09:40ID:???$hoge="aaa";
$kage="bbb{$hoge}ccc";//$kage=bbbaaaccc
定数はおっぱい括弧でくくっても展開されないようです。
define("mage","mmm");
$kage="bbb{mage}ccc";//$kage≠bbbmmmccc
勿論
$kage="bbb".mage."ccc";とすれば望んだ値が入りますが
出来れば変数と同じく、ダブルクオーテーションを増やさずに参照したいです。
0508nobodyさん
2010/01/29(金) 10:29:54ID:???質問なら質問らしく、独り言ならチラシの裏にお願い致します。
0509nobodyさん
2010/01/29(金) 10:53:33ID:???これってどこかで設定するんでしょうか?
ローカルでやってると最初のフォルダの頭で実行すると0なんですが、
サーバーで実行させると1になってます。
0511509
2010/01/29(金) 18:59:02ID:xrxVmrZ0最初のフォルダじゃなくて、スクリプトファイルでした。
0512nobodyさん
2010/01/29(金) 19:47:29ID:56kcplo8【連携ソフトウェア】mysql
【質問内容】
文字化けの件について教えてください。
データベースから抽出したデータはきちんと書き出されますが
htmlの<? ?>で囲ったところ以外の全部 (ページタイトルも) が ????? になってしまいます。
mysqlでもhtmlのmetaタグ内でもutf-8を指定してあります。
htmlファイル自体の文字コードもutf-8です。
なにか解決の手がかりになるようなことをご存知でしたらお願いします。
0513nobodyさん
2010/01/29(金) 20:50:13ID:???ヘッダに文字コード指定するといいのでは?
header("Content-type: text/html; charset=utf-8");
0514nobodyさん
2010/01/29(金) 21:50:52ID:JATQlPdVフォームからテキストを受け取って、$text_dataに入れます。それをチェックしてマッチしなかったら、
$error文を表示するのですが、123、yes、その他日本語、何を入れても$error文が表示されてしまいます。
理由が解りません。教えて下さい。お願いします。
$text_data = $_POST['person'];
if (!preg_match("/^([一-龠][ァ-ヶー][ぁ-ん]){1,8}$/uD",$text_data)){
echo $error = '漢字、カタカナ、ひらがな以外の文字が使われてます。';
}
WinXP
PHP:5.2.6
Apache:2.2
MySQL:5.1
文字コードはUTF-8で保存してます。
0515512
2010/01/29(金) 22:19:29ID:56kcplo8ありがとうございます だめでした
極限まで短くしても
<?
header("Content-type: text/html; charset=UTF-8");
?>
<HTML>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<title>ねこ</title>
<BODY>
いぬ
</BODY>
</HTML>
いぬとねこが??になってしまいました
0518nobodyさん
2010/01/29(金) 22:31:37ID:???>>1
正規表現の書き方がまずいのでは?
あまり使ったことがないので詳しくはわからんが
preg_match('/[^一-龠ァ-ヶーぁ-ん$]{1,8}/uD', $text_data)
こんな感じだと思う。
0519nobodyさん
2010/01/29(金) 22:37:51ID:cGTMydf+2)ファイルの行を行番号を書いてボタンで削除
はどうすればいいですか?宜しくお願い致します。
2)について
$csv_file = file("test.csv");
print "<input name=\"sakujo\" type=\"text\" size=\"3\" maxlength=\"3\">番を<input type=\"submit\" value=\"削除\" />";
$sakujo = $_POST['sakujo'];
unset($csv_file[$sakujo]);
$fp = fopen("test.csv", "w");
foreach ($csv_file as $line) {
fwrite($fp, $line);
}
とすると、1行目を削除するのが0番を削除と指定することになります。
$sakujo = ++$_POST['sakujo'];
また
$sakujo = ++$sakujo;
などに指定すると、ファイル読み込みと同時に勝手に2行目を削除します。
0521nobodyさん
2010/01/29(金) 22:42:48ID:???POSTしてない状態では$_POST['sakujo']はnullだからunsetされてないだけでしょう
ちゃんと$_POSTで表示処理と削除処理を分けて、番号を1増やせばいいかと
0522nobodyさん
2010/01/29(金) 23:17:40ID:???回答ありがとうございます。
$sakujo = $_POST['sakujo']; のあとに
$sakujo = ++$sakujo;(若しくは$sakujo++,$sakujo+1等)
としても、2行目が勝手に削除されてしまいます。
0523nobodyさん
2010/01/29(金) 23:21:11ID:cGTMydf+$_POST['sakujo'] = ++$_POST['sakujo'];
$sakujo = $_POST['sakujo'];
も試しましたが、これも自動的に削除されます。
宜しくお願いします。
0524514
2010/01/29(金) 23:22:33ID:JATQlPdVありがとうございました。解決しました。
>>520
書き方を指摘して貰えて助かりました。
それをヒントに解決できました。ありがとうございました。
0526nobodyさん
2010/01/30(土) 05:42:04ID:obVWCfxQ<?php
class Test{
function hoge(){
return 'test';
}
}
?>
というファイルがあったときに、test.phpにアクセスできないようにしてもいいのですが、
あえて何もせずtest.phpにアクセスされた場合について質問です。
(ただし、test.phpのソースをローカルにダウンロードすることはできない)
例えば、http://〜〜/test.phpな感じでブラウザからアクセスがあった場合、
これだけではインスタンスも生成していないし何も表示されることはないので、
特に危険はないかなと思ったのですが自分なりに考えたところ、
少なくともそのファイルの存在がわかってしまうし、
ファイル名がサイト独特のものだと他にも似たようなファイルがあるなと予測されてしまうし、
くらいを思いつきました。他に何か危険は潜んでいませんでしょうかよろしくおねがいします。
0527nobodyさん
2010/01/30(土) 06:11:52ID:qAKPfLy/ありがとうございます。表示処理 削除処理 PHPでぐぐっても出てきません。
初心者ですいません。
0529nobodyさん
2010/01/30(土) 06:13:29ID:???フレームワーク使いたくなってしまうよな
0530nobodyさん
2010/01/30(土) 07:30:56ID:???ただフォームを表示するだけのページと実際に削除を行うページをif文で分けるって事だと思う。
$sakujo = $_POST['sakujo'];
if(ereg("^[0-9]{1,3}$", $sakujo)){
//実際に削除を行う
}else{
//削除フォームを表示する
}
0531nobodyさん
2010/01/30(土) 07:35:16ID:???呼び出し元にフラグ立てて、test.phpで条件分岐させるってのはどうだい?
if(isset(フラグ)){
処理する
}else{
header(HTTP 404);
}
0532nobodyさん
2010/01/30(土) 09:03:20ID:qAKPfLy/回答ありがとうございます。そのままコピペしてみたところ
フォーム部分が消えてしまいました。
http://uploader.sakura.ne.jp/src/up3233.jpg
http://uploader.sakura.ne.jp/src/up3234.jpg
[0-9]{1,3}$を$csv_fileに変えてみたんですが、消えないようです。
0533nobodyさん
2010/01/30(土) 12:17:31ID:???issetとかでいいじゃんw
0534nobodyさん
2010/01/30(土) 13:34:51ID:???$csv_file = file("test.csv");
print "<input name=\"sakujo\" type=\"text\" size=\"3\" maxlength=\"3\">番を<input type=\"submit\" value=\"削除\" />";
if (isset($_POST['sakujo'])) {
if (!is_numeric($_POST['sakujo'])) {
echo "数字ぢゃないがな( ゚Д゚)ヴォケ!!";
} else {
$sakujo = $_POST['sakujo']++;
if (isset($csv_file[$sakujo])) {
unset($csv_file[$sakujo]);
$fp = fopen("test.csv", "w");
foreach ($csv_file as $line) {
fwrite($fp, $line);
}
} else {
echo "行が無いぞ(#゚Д゚)ゴルァ!!";
}
}
}
0535nobodyさん
2010/01/30(土) 13:37:08ID:???それとファイルの「1行目」を削除する場合に"1"を入力する場合は
fileで読んだ配列の[0]が該当行なので
$sakujo = $_POST['sakujo']--; デクリね
0536nobodyさん
2010/01/30(土) 13:51:46ID:???0537nobodyさん
2010/01/30(土) 14:45:07ID:yMr7jIEh【連携ソフトウェア】mysql
【質問内容】 データベースからレコードをプルダウンで取り出したい
<form method="post" action="test.php">
<table>
<tr><td>地域</td><td>
<input type="text" name="pref" value="<?php print(htmlspecialchars($_POST['pref'])); ?>" /></td></tr>
<tr><td>性別</td><td><input type="text" name="sex" value="<?php print(htmlspecialchars($_POST['sex'])); ?>"/></td></tr>
</table><input type="submit" value="検索" /></form>
<?php
中略
// プリペアド・ステートメントの準備
$sql = 'select * from address where pref = ? and sex = ?';
$type = array('text', 'text');
$sth = $mdb2->prepare($sql, $type);
// プリペアド・ステートメントの実行
$data = array($_POST['pref'], $_POST['sex']);
$res = $sth->execute($data);
if (PEAR::isError($res)) { exit('selectに失敗しました');}
0538nobodyさん
2010/01/30(土) 14:45:51ID:yMr7jIEhprint("<table border=\"1\">\n");
print("<tr>");
print("<th>ニックネーム</th><th>地域</th><th>コメント</th><th>詳細</th>");
print("</tr>");
while ($data = $res->fetchRow()) {
print("<tr>\n");
print("<td>" . $data['name'] . "</td>");
print("<td>" . $data['pref'] . "</td>");
print("<td>" . $data['comment'] . "</td>");
print("<td>" . $data['mypage'] . "</td>");
print("</tr>\n");}
print("</table>\n");
?>
現在このようにテキストボックスに文字を入力して該当すれば出力
させるようにしているのですが、これをプルダウンで選択して、該当すれば
出力という用に変更したく試行錯誤しているのですが・・・
全く動かせる気配がありません。どなたか力を貸してください、よろしくお願いします。
0539nobodyさん
2010/01/30(土) 14:53:20ID:???<select name="sex">
<option value="1">男</option>
<option value="2">女</option>
</select>
でいいかと
0540nobodyさん
2010/01/30(土) 16:28:25ID:yMr7jIEhありがとうございます
でもそれだとプルダウンにはなっても検索が出来ない状態です
0541nobodyさん
2010/01/30(土) 16:32:41ID:???0543nobodyさん
2010/01/30(土) 20:39:54ID:qAKPfLy/(´;ω;`)やっとできました。
if (isset($csv_file[--$sakujo]))
にしたら動きました。ありがとうございます。
0544nobodyさん
2010/01/30(土) 21:56:00ID:???最近ガンブラーっての多いから怖いなー
しばらく辞めとくね
0545nobodyさん
2010/01/31(日) 00:03:50ID:A4bjb08C}
でページ分けしながらサイトを作成しているのですがあまり書きすぎると容量が多くなってしまうじゃないですか。
そこで考えたのですが文字だけならテキストファイルにぶち込んで外部呼び出しすれば少しはマシになるかななんて
思ったのですが何か良い方法があれば教えて下さい。
0546nobodyさん
2010/01/31(日) 00:10:58ID:???0547nobodyさん
2010/01/31(日) 00:12:40ID:A4bjb08C文字数の多いページはtest.txtに分けて呼び出せないかなと思いまして・・・。
0548nobodyさん
2010/01/31(日) 00:24:51ID:H20xeiLOif ($_POST['message'] && $_POST['name'] && $_POST['URLID']){
$message = $_POST['message'];
$name = $_POST['name'];
$message = "$name $message<br>\n";
//$cnt = count($lines);
$fp = @fopen($logfile , "w");
fputs ($fp, $message);
for($i = 0; $i < $logmax; $i++)
fputs($fp, $lines[$i]);
fclose ($fp);
echo $message;
}
for($i = 0; $i <= $max; $i++)
echo $lines[$i];
のとき、$lines[$i]の前に行番号を振るにはどうしたらいいでしょうか?
count関数を使ってみましたが、何も入っていない行として$max
の値まで出力してしまいます。
宜しくお願いしますm__m
0549nobodyさん
2010/01/31(日) 00:41:20ID:???いいと思うよ。何が分からんの?
>>548
よく分からんがecho $i . $lines[$i];ということ?
0550nobodyさん
2010/01/31(日) 00:59:21ID:A4bjb08Cいやその方法しかないのかーっと思いまして。
それとも300行ぐらいでもphpって重くなったりしませんかね?
0552nobodyさん
2010/01/31(日) 02:20:58ID:H20xeiLOecho $i . $lines[$i];やecho ++$cnt . $lines[$i];
で表示すると、$maxで指定した値まで表示されてしまいます。
0553nobodyさん
2010/01/31(日) 02:25:15ID:???$max に何が入ってるのかとかはわからないよ。
0554nobodyさん
2010/01/31(日) 03:13:53ID:???$i <= $max
になってるからじゃ?
$i < $max
にすればおk
0555nobodyさん
2010/01/31(日) 03:35:09ID:H20xeiLO説明不足でした。
ログの保存件数を指定しています。$max=200;です。
>>554
同じ動作になりました(´・ω・`)
0556nobodyさん
2010/01/31(日) 03:46:20ID:???なら$maxまで到達するわけないじゃん
0557nobodyさん
2010/01/31(日) 09:22:21ID:T8yUchyAよろしくお願いしますm(__)m
0558nobodyさん
2010/01/31(日) 12:31:37ID:???聞きたい部分に絞ろうよ ifの中、意味ないことしかしてないんだし。
if ($lines = file($logfile)){
for($i = 0; $i < count($lines); $i++)
echo $i+1,$lines[$i];
}
0560nobodyさん
2010/01/31(日) 22:15:48ID:wRz92uaA【PHPのバージョン】php5.3.1
【連携ソフトウェア】mysql
【質問内容】
コマンドプロンプトをまったく触らずに、MySqlを操作したい。
データベース「テーブル」を作れるPHP関数ってあるの?
速攻で回答願います。
0561nobodyさん
2010/01/31(日) 22:18:46ID:???0563nobodyさん
2010/02/01(月) 00:42:58ID:1FY3W001ログイン後のページを、そのユーザ個人に応じた内容を変えるには
どうすればいいでしょうか?
sessionを使って認証しています。
ID,PASSを入力して進みます。
宜しくおねがいします。
0564nobodyさん
2010/02/01(月) 00:58:31ID:???0565nobodyさん
2010/02/01(月) 00:58:50ID:???0567nobodyさん
2010/02/01(月) 01:51:12ID:6W20Cbxr ̄  ̄ . (;;)・(ェ)・`)
. ' ヽ ;;;、`;。;`ξ
/ //
/ //
,-( ヽ i /
/ メ、ヽ ヽ | /
/ ヽl | | /
/ // / ! ,
/∧_∧// /
/ ( ´Д/ /
/ γ / /
θ ヘ | / .;:*
) | , .;
/ |
/ ヘ | /
i / | | / / , ' _/ |l
/ / | | し',;;、'。.;;/ / ̄/
/ /. / | ;;ヾ#丶;;、;。;` ( / / 〃,
( / / l と と ) て ̄ /
し' /__) (_(_,J
0570nobodyさん
2010/02/01(月) 02:06:28ID:???0571nobodyさん
2010/02/01(月) 03:19:28ID:t1E2Bg3p<textarea></textarea>にて空欄でPOST受け取った場合、
htmlspecialchars(sqlite_escape_string($_POST[key]));
・Λ8Sというようなデータや、よくわからないバイトが入り込んで、ページに反映させるとレイアウトバグしてしまいます。どうしたら良いのでしょうか?
0572nobodyさん
2010/02/01(月) 03:20:33ID:???0573nobodyさん
2010/02/01(月) 03:31:43ID:t1E2Bg3p<textarea name="value"><?php echo $value[key];?></textarea>
↓
@database.php
$key = htmlspecialchars(sqlite_escape_string($_POST[key]));
データベース登録 sqlite
header("Location: page.php");
↓
@page.php
<textarea name="value"><?php echo $value[key];?></textarea>
ってな感じなんですが、、、基本的に間違ってますかね?
0574nobodyさん
2010/02/01(月) 03:37:23ID:1FY3W001宜しくお願いします。
ログインしたIDによって読み込むファイルを変えるということですか?
0575nobodyさん
2010/02/01(月) 03:42:42ID:t1E2Bg3p0576nobodyさん
2010/02/01(月) 04:14:38ID:???$key = sqlite_escape_string($_POST[key]);
<textarea name="value"><?php echo htmlspecialchars($value[key]);?></textarea>
0578nobodyさん
2010/02/01(月) 07:29:09ID:1FY3W0010579nobodyさん
2010/02/01(月) 08:47:03ID:qPPXPqzwが、でるってんて、対処法を聞いたら
<?
を
<?php
と、すると、治るよ! と言われ、実際、治りました。
<? と <?php は、全く同じと思っていたのですが、違うのですか?
普通に <? で書いてましたが...
0580nobodyさん
2010/02/01(月) 10:31:04ID:???0581nobodyさん
2010/02/01(月) 10:32:38ID:???0583nobodyさん
2010/02/01(月) 10:45:11ID:???0584560
2010/02/01(月) 11:25:08ID:czJgSBEV0585nobodyさん
2010/02/01(月) 11:48:31ID:45qXJ7z2<? 非推奨
0586nobodyさん
2010/02/01(月) 11:52:19ID:???0588nobodyさん
2010/02/01(月) 13:40:15ID:4LOdROLiif (($i == 10) or ($i == 20) or ($i == 30) or ($i == 40) or ($i == 50)){ echo "ぬるぽ";}
この式をもっとスマートに書くにはどうすればいいですか?
0589nobodyさん
2010/02/01(月) 13:41:48ID:???case 10:
case 20:
case 30:
case 40:
case 50:
echo "ぬるぽ";
}
0590nobodyさん
2010/02/01(月) 13:48:50ID:???0591nobodyさん
2010/02/01(月) 13:50:33ID:???0592nobodyさん
2010/02/01(月) 13:57:14ID:???if(in_array($i, array(10,20,30,40,50))) echo "ぬるぽ";
0593nobodyさん
2010/02/01(月) 13:58:16ID:???$value = array(10,20,30,40,50);
if (in_array($value, $i)) {
echo "ぬるぽ";
}
0595nobodyさん
2010/02/01(月) 14:10:22ID:???0596nobodyさん
2010/02/01(月) 14:14:08ID:???PHP Parse error: syntax error, unexpected T_STRING, expecting 〜
どうなおせばいいですか><
>>594
pearにBenchmarkってのがあるよ><
0598nobodyさん
2010/02/01(月) 14:37:34ID:???1、早い
2、ソースが簡潔
3、負荷がかからない
ソースが簡潔なら>>590や>>592だと思うし
早さならif分5回書いたほうが早いかもしれない
0600nobodyさん
2010/02/01(月) 14:42:41ID:???可読性を求める時は2
低負荷を求める時は3
0602nobodyさん
2010/02/01(月) 14:55:55ID:4LOdROLiif (($i > 0) && (($i % 10) == 0)) { echo "ぬるぽ";}
0603nobodyさん
2010/02/01(月) 14:59:52ID:???0604nobodyさん
2010/02/01(月) 14:59:53ID:???あと==0は!と同値
0605nobodyさん
2010/02/01(月) 15:06:07ID:???if (($i > 0) && !($i % 10)) { echo "ぬるぽ";}
将来的に60、70、80と続くんですが現実的に60あたりにしといたという条件です><
0606nobodyさん
2010/02/01(月) 15:09:08ID:???0607nobodyさん
2010/02/01(月) 15:13:21ID:???将来的に数値はファイルでもネットでも渡せるようになる
0608nobodyさん
2010/02/01(月) 15:25:49ID:???0609nobodyさん
2010/02/01(月) 15:27:33ID:???0610nobodyさん
2010/02/01(月) 15:30:30ID:???echo "ぬるぽ";
}
0611nobodyさん
2010/02/01(月) 15:30:49ID:???0612nobodyさん
2010/02/01(月) 16:47:47ID:???0613nobodyさん
2010/02/01(月) 20:40:52ID:???php -r "echo (array(1,2,3))[0]"
Parse error: syntax error, unexpected '[', expecting ',' or ';' in Command line code on line 1
0615nobodyさん
2010/02/02(火) 13:42:11ID:???あるスクリプトをステップ実行はできるのですが、
post先に実行ポイントが変遷してくれません。
どうすればいいでしょうか?
0618nobodyさん
2010/02/02(火) 23:57:45ID:???単にデバッガの中で、URL指定してスクリプト実行させただけとか?
変遷の意味がよく分からんが、画面遷移のこと?
リモートデバッグを行えば、画面遷移して、遷移先でブレークしてくれるよ
リモートデバッグについては>>258読んで
0619nobodyさん
2010/02/03(水) 16:29:12ID:f0FSXt8R1:測定スタート
2:命令A
3:測定エンド
みたいに1行ずつ上下に測定のコードを書けばいいんですが、
現実的じゃないので、
なんか命令を実行するたびフックできるようなものがあればいいんだけど・・・
0620nobodyさん
2010/02/03(水) 16:35:32ID:???PECL :: Package :: xhprof
http://pecl.php.net/package/xhprof
Particletree ≫ PHP Quick Profiler
http://particletree.com/features/php-quick-profiler/
0621nobodyさん
2010/02/03(水) 16:50:23ID:f0FSXt8Rお〜ありがとうございます。
0622nobodyさん
2010/02/03(水) 17:54:38ID:Rvv12jotでURLを開く時、
http://localhost/では開けないのですが、
http://127.0.0.1/では開きます。
開発環境はWindowsXPのApache2.0.47ですが、
fopenでlocalhost指定は駄目なのでしょうか?
0623nobodyさん
2010/02/03(水) 17:56:26ID:???ディフェンダーがlocalhostの項目消してるかもよ
0624nobodyさん
2010/02/04(木) 11:38:43ID:JFNwJ/uL【PHPのバージョン】php5.3.1
【質問内容】
php5.3.1でphp-eaccelerator-0.9.6-0.2.svn358.fc12.i686は対応してるんでしょうか?
php5.3系はeaccelerator0.96rc1以降対応とのことですが、上はrc1以降のものなのでしょうか?
ab -n 100 -c 5 http://localhost/phpinfo.php
[phpinfo.php]
<?php phpinfo(); ?>
eaccelerator導入するとRequestsPerSecondが2〜3倍になったのですが
同時接続数を増やすと最後まで行かなくなります
topコマンドで見てみるとhttpdだらけになってCPU使用率がほぼ100%になってしまっていました
wget http://localhost/phpinfo.phpでphpの詳細が出ていたのでURLは問題なさそうです
ちなみにeacceleratorはyum -y install php-eacceleratorでインストールしました
0625nobodyさん
2010/02/04(木) 17:42:56ID:afxeUOInそれともCみたくどんな値が入ってるか分からないっていう仕様でしょうか?
0626nobodyさん
2010/02/04(木) 17:51:08ID:???0627nobodyさん
2010/02/04(木) 18:20:35ID:uHwPquPNユーザによってcookieの有効期限を分けたい場合もしphp.iniが優先されるようですとini_setでユーザごとに秒数を変える感じになるんでしょうか?
0628nobodyさん
2010/02/04(木) 22:16:32ID:???$hogehoge_day="2009-12-24";
↑これを 2009年12月24日 と表示させるにはどうすればよいでしょうか?
0631nobodyさん
2010/02/04(木) 22:53:49ID:???0632nobodyさん
2010/02/05(金) 11:07:24ID:uO/7NXg2【PHPのバージョン】php5.2.6
【質問内容】
$Link = "../master00/master00.php?para1=1¶2=¶3=";
$tmp = sprintf("fncClick(\"%s\")",$Link);
printf('<input type="button" style="width:80px" value="戻 る" onclick =%s>',$tmp);
printf('<input type="submit" style="width:80px" value="新規登録" name="button" />');
printf('<input type="reset" style="width:80px" value="リセット" />');
<script type="text/javascript">
<!--
function fncClick(arg)
{
document.master01_main.action = arg;
document.master01_main.method = "POST";
document.master01_main.submit();
}
//-->
</script>
抜粋したのものですが、FireFoxだと"新規登録"のボタンが表示されますが、
IEだと表示されなくなってしまいます。"戻る"ボタンの後ろにinput type = hiddenなどの
別のものを配置すると"新規登録"のボタンが表示されます。
なにか原因がわかりますでしょうか?
0633nobodyさん
2010/02/05(金) 11:17:03ID:???0634nobodyさん
2010/02/05(金) 11:51:58ID:???0635nobodyさん
2010/02/05(金) 11:53:20ID:???糞運営が・・・
1ヶ月で3度も規制しやがって
さぁ暇だし何でも聞いてくれたまえ
0636nobodyさん
2010/02/05(金) 12:15:20ID:???0637nobodyさん
2010/02/05(金) 12:59:23ID:uO/7NXg2返信ありがとうございます。
ダブルもしくはシングルで囲んだ場合は反応しなくなります。
ブラウザで違いを確認したところ、Firefox、opera、safariは
正常に出ていますが、IEだけダメみたいです。
0638nobodyさん
2010/02/05(金) 13:06:16ID:???phpが出力しているhtmlの問題だから板違いだが
HTMLのソース(ブラウザでソース表示)はどうなってる?
0639nobodyさん
2010/02/05(金) 13:20:26ID:uO/7NXg2>>638
</tr>
<th colspan="4" class="Submit">
<input type="button" style="width:80px" value="戻 る" onclick=fncClick("../master00/master00.php?para1=1¶2=¶3=")>
<input type="submit" style="width:80px" value="新規登録" name="button" />
<input type="reset" style="width:80px" value="リセット" />
</th>
</class>
</tr>
<script type="text/javascript">
<!--
function fncClick(arg)
{
document.master01_main.action = arg;
document.master01_main.method = "POST";
document.master01_main.submit();
}
//-->
</script>
IEのブラウザソースは以上のようになってます。
0640nobodyさん
2010/02/05(金) 13:22:03ID:???0641nobodyさん
2010/02/05(金) 13:29:36ID:???他の人もいってるけど、onclick=の後を囲めば平気だと思うが?
>>637
>ダブルもしくはシングルで囲んだ場合は反応しなくなります。
反応しなくなるhtmlソースはどうなってる?
0642nobodyさん
2010/02/05(金) 13:32:42ID:???printf('<input type="button" style="width:80px" value="戻 る" onclick ="%s">',$tmp);
「囲め」「囲みました」「囲めっつってんだろ」が続きそうでめんどくさいから勝手に囲んだ。
0643nobodyさん
2010/02/05(金) 13:35:19ID:???0644nobodyさん
2010/02/05(金) 13:50:56ID:nqoHSqeHonclick属性使うなscript分離しろ
というかclassタグなんて無い
0645nobodyさん
2010/02/05(金) 13:54:54ID:uO/7NXg2>>641
>>642
>>643
$tmp = sprintf("'fncClick(\"%s\")'",$Link);
printf('<input type="button" style="width:80px" value="戻 る" onclick=%s>',"$tmp");
fncClick()の部分をシングルで囲んだら反応が返ってきました。
すいません。お騒がせしました。
>>644
classはどうやらソースのヘッダーでcssを読み込んでいるので
その関係で使用しているようです。
0646nobodyさん
2010/02/05(金) 14:00:03ID:uO/7NXg2classタグはないですね。
0647nobodyさん
2010/02/05(金) 14:01:58ID:???で、一番不思議なのはなぜこれがPHPスレで聞かれているかということなんだが
0648nobodyさん
2010/02/05(金) 14:34:01ID:???0649nobodyさん
2010/02/05(金) 14:34:37ID:???0650nobodyさん
2010/02/05(金) 14:36:32ID:???0651nobodyさん
2010/02/05(金) 15:12:41ID:DA4Lr89Q【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
たまにpostを指定したフォームからのリクエストデータがすっぽぬけ、ただのgetになってしまう事があります
オミトロンで見た所、コネクションが切れてしまっているのですが、これをPHPから制御する事は可能でしょうか?
0653nobodyさん
2010/02/05(金) 17:08:40ID:???0654nobodyさん
2010/02/05(金) 18:55:24ID:???0655nobodyさん
2010/02/05(金) 18:59:24ID:???0656nobodyさん
2010/02/05(金) 19:04:31ID:DA4Lr89Q携帯じゃなく、IEですね
getの場合、トップページに飛ばしてるのですが、ちょっと苦情が出てまして。
他人のブラウザだから余計にわけが分からないといったところなんです
0657nobodyさん
2010/02/05(金) 21:38:15ID:oeBfw5TE・PHPで日本語のフォルダに入ったファイルを読み込みにはどうすればいいでしょうか?
・Documents and Settingsのように半角スペースがある場合中のファイルを読むにはどうすればいいでしょうか?
PHPは5.2.6です。
0658nobodyさん
2010/02/05(金) 22:00:05ID:???phpでロードする際のwebdavの絶対パスは
非SSLではhttp
SSLではhttps
と振り分けをしないとダメでしょうか?
以下のようなソース書いてます。
<object classid="clsid:xxxx"
codebase="{$codebase}"
width="80%" height="40%">
$codebase="http://a/ieDAV.cab"
これをsslの場合は
$codebase="https://a/ieDAV.cab"
としないとダメですか?
0659IDがでていませんでした。
2010/02/05(金) 22:13:05ID:+ymZdpmAwebdavとsslについての質問です。
phpでロードする際のwebdavの絶対パスは
非SSLではhttp
SSLではhttps
と振り分けをしないとダメでしょうか?
以下のようなソース書いてます。
<object classid="clsid:xxxx"
codebase="{$codebase}"
width="80%" height="40%">
$codebase="http://a/ieDAV.cab"
これをsslの場合は
$codebase="https://a/ieDAV.cab"
としないとダメですか?
0660nobodyさん
2010/02/05(金) 23:54:19ID:???元からDBアクセスのためのメソッドが用意されてて
コントロール側でクラスを呼び出して実行すればOK?
モデルクラスは定義で使うのがメインって感じですか?
0663nobodyさん
2010/02/06(土) 02:40:53ID:???0664nobodyさん
2010/02/06(土) 02:54:24ID:???$pat = '(https?:\/\/[-_.!~*\'()a-zA-Z0-9;/?:@&=+$,%#]+)';
$rep = '<a href="\1">\1</a>';
$text = ereg_replace($pat, $rep, $honbun);
で$text内のリンクをハイパーリンクしてるんですが
ereg_replaceをpreg_replaceにすると置換してくれませんのはなぜなんです?
0666nobodyさん
2010/02/06(土) 03:51:30ID:GgnnWxHXforeach((array) $_POST["aaa"] as $bbb){
echo $bbb;//ちゃんと全部表示される
$ccc = $bbb;//最後のひとつしか代入されない
}}
$cccに全部代入させたいんですがどうしたらいいでしょうか
0670nobodyさん
2010/02/06(土) 13:44:22ID:2I3yM/uu$file = data.php;
$tmp = file($file);
〜
(処理)
〜
file_put_contents($file, $data);
とやると、元のdata.phpのデータはUTF-8で、処理するphpもUTF-8なのですが
処理後に書き出したdata.phpがs-jisになってしまいます。
(処理)の部分は$dataに入れるデータをいじっているだけで、文字コードの変換関係の処理は一切入っていません
UTF-8のまま書き出すにはどうしたらよいでしょうか?
0672nobodyさん
2010/02/06(土) 14:28:33ID:???http://hain.jp/index.php/tech-j/2007/02/13/p125#more125
0673nobodyさん
2010/02/06(土) 15:42:07ID:???って質問したら怒られるだろうなwwww
0675nobodyさん
2010/02/06(土) 18:05:37ID:???0676nobodyさん
2010/02/06(土) 20:26:31ID:???【PHPのバージョン】php5.26 セーフモード
【連携ソフトウェア】gdライブラリ
【質問内容】
フォームからアップロードされた画像ファイルを、
ajaxで指定されたx,y,width,heightの範囲で、切り貼り加工し、ダウンロードしたいと四苦八苦していたのですが、
imagecreatefromjpegでファイルをオープンできません。
ファイル パーミッション オーナー グループ
dir 777 10703 10000
├php 644 10703 10000
└jpeg 777 80 10000
というような構成で、phpファイルをphpファイルから出力し、オーナーを80にすればいいのかなと思ったのですがまだできません。
dirもphp上から出力しないとダメなのでしょうか。
このやり方自体があまりスマートでは無い気がしますし、できればもっと良い方法を、ご教授できればと思っています。
よろしくお願いします。
0677672
2010/02/06(土) 20:27:48ID:3D5nCXRt0679nobodyさん
2010/02/06(土) 20:47:07ID:3D5nCXRtと言ってます
0680nobodyさん
2010/02/06(土) 22:05:53ID:???0681nobodyさん
2010/02/06(土) 22:15:50ID:???0682666
2010/02/06(土) 22:29:36ID:???ありがとうございます、できました!
0684nobodyさん
2010/02/06(土) 23:44:42ID:???"SAFE MODE Restriction in effect."
が入るはず。鯖の設定によっては入らないのかな?
fopenのセーフモード制約は、スクリプトとディレクトリのUID。
開くファイルそのもののUIDは関係ない。
だからhttpdが作成したファイルをhttpd自身が読めるようにはなってる。
0685670
2010/02/07(日) 00:25:43ID:???>>672
ありがとうございます。mbstringやURL先の方法を設定してみたのですが、
phpの内部に書き込んでも変わらずSJISになり、さらに.htaccessは使えないのとでとん挫しました。
しかし、元の読み込むファイルにUTF-8で日本語の文字が一文字でも書き込まれていれば
読み込み→処理→書き込み処理後でも文字コードがUTF-8に保たれました。
なのでダミーデータを先頭に書き込むことで解決しました。
0686nobodyさん
2010/02/07(日) 00:43:12ID:EhH57Jprポータルサイトなどではログインをどのように管理しているか教えていただけると助かります。
0687nobodyさん
2010/02/07(日) 00:46:25ID:???0688nobodyさん
2010/02/07(日) 00:57:53ID:EhH57Jprセッションはサーバー、クッキーはユーザのPCに保存するものなので、
「ログインを維持する」みたいなときにはクッキーを使ってログインさせるという認識でいいでしょうか?
0689nobodyさん
2010/02/07(日) 01:14:19ID:???0690nobodyさん
2010/02/07(日) 01:29:14ID:EhH57Jpr0691nobodyさん
2010/02/07(日) 01:58:26ID:???0692nobodyさん
2010/02/07(日) 02:06:28ID:???どっちに情報を保持しとくかってことじゃないの?
サーバーは接続が切れたら情報が消えるけど
0693nobodyさん
2010/02/07(日) 02:11:46ID:lvWMAqKs追記はファイルの末尾になってしまうのですが、先頭に追加する方法はありますか?
よろしくお願いします
0694nobodyさん
2010/02/07(日) 03:46:20ID:???0695nobodyさん
2010/02/07(日) 04:26:28ID:???0696nobodyさん
2010/02/07(日) 08:41:49ID:???→追加したい文字列のあとに↑の変数をくっつける
→外部ファイルに↑でくっつけた文字列を新規書き込み
0697676
2010/02/07(日) 10:46:34ID:???誠に恥ずかしい限りですが、ログファイルから読み出す時にchopしていないというオチでした。
ありがとうございました。
0698お願いします
2010/02/07(日) 12:00:27ID:rDdEaSSw重複したリンク先のaタグを1つだけ表示させるにはどうすればいいですか?
初心者ですが宜しくお願い致します。
0700nobodyさん
2010/02/07(日) 13:53:32ID:???パンツも見えないんだぜ
0701nobodyさん
2010/02/07(日) 14:58:34ID:EhH57Jpr0702nobodyさん
2010/02/07(日) 15:01:21ID:???$sql = 'SELECT * FROM data WHERE time = ' . $input_time . ' AND code = ' . $input_code;
0703nobodyさん
2010/02/07(日) 22:09:52ID:EhH57Jprありがとうございます
mysql_query($sql)とすると常にfalseとなってしまいます。
0704nobodyさん
2010/02/07(日) 22:23:00ID:???なぜfalseが返るかはマニュアルに書いてありますよ
http://jp.php.net/manual/ja/function.mysql-query.php
・PHP内で生成されたSQL文が正常であるか
・DBへのコネクションが正しく行われてるか
まずはこの辺を調べてみましょう
0705nobodyさん
2010/02/07(日) 22:46:26ID:qbh8YQtKheader()で値を変えることはできるんですが。。。
0706nobodyさん
2010/02/07(日) 23:10:16ID:YNGHwsE+ここで使われているcURLってどこに行けばあるんでしょうか?
0707nobodyさん
2010/02/08(月) 03:51:28ID:???そんなの本人にきかないとわからない
cURL関数のユーザーノートに似たようなクラス作ってる人がいるからそれ使うか参考にして
自分で実装すればいいんでない?
メソッド名や流れからどういう処理かは想像できるだろうし
http://www.php.net/manual/ja/book.curl.php
0708nobodyさん
2010/02/08(月) 03:57:17ID:???サーバプログラム(Apacheとか)側をいじらないと
それに依存してるPHPでどうこうするのは無理じゃないかと
http://httpd.apache.org/docs/2.2/ja/mod/mod_headers.html
0709nobodyさん
2010/02/08(月) 09:34:24ID:0nwSZc19//連番の番号を打ち込んだテキスト読み込み
$fp = @fopen("count.txt","r+'");
flock($fp, LOCK_EX);
$count = fgets($fp, 256);
$count++;
rewind($fp);
fputs($fp, $count);
fclose($fp);
//htmlファイルの読み込み
$HTML = "C:/test/$count.html";
$HTML2 = file_get_html("$HTML2");
//ファイル番号を確認
echo "$HTML";
としたら、エラーが出てしまい、ソースを見ると
urlの$countの数値の前に?がついています。
対処法を教えてください。宜しくお願いしますm__m
0711709
2010/02/08(月) 11:54:25ID:0nwSZc19UTF-8Nで保存したら動きました!ありがとうございます!
0712nobodyさん
2010/02/08(月) 13:30:40ID:2kEGmSWr例)1129行目から20行分取り出す。とか。
いったん配列にすべてを入れてそこから取り出すことも考えたのですが負荷が大きいためなしにしました
0713nobodyさん
2010/02/08(月) 15:00:18ID:???ファイルのサイズが1MBぐらいなら全然問題ないよ
10MBぐらいになるとさすがにCPUやメモリに負荷かかってレスポンスも若干遅く感じるけど
ファイルの位置(何バイト目か)がわかってるならそこまでfseekして
そこから取り出したい行数分fgetsすれば10MBでもCPUもメモリもI/Oも問題ない
目的の行数の開始点が何バイト目かわかればいいんだけどなんかそんな関数あったっけ?
それを割り出すために配列使っちゃうようなら結局同じ結果になっちゃうんだけどね
まぁサイズがわからないからなんともいえないけど1MBぐらいなら問題ないよ
ログが増えるようなら定期的にローテーションしてログ切り替えればおk
0714nobodyさん
2010/02/08(月) 15:01:44ID:???0715713
2010/02/08(月) 15:04:43ID:???0716nobodyさん
2010/02/08(月) 15:26:59ID:???固定行なら
fseek($fp,開始行*行のバイト);
for (0から20){
$lines[]=fgets
}
固定じゃないなら
for (目的行まで回す)
fgets
}
for (0から20){
$lines[]=fgets
}
こんなもんじゃねーの
0717nobodyさん
2010/02/08(月) 16:24:12ID:???0718nobodyさん
2010/02/08(月) 16:31:32ID:???変更されないんならインデックス作っとくか
まーDBにでも突っ込んだほうが
0719nobodyさん
2010/02/08(月) 16:35:18ID:???さもなければ固定長にして正規化かけろと
0720nobodyさん
2010/02/08(月) 16:47:58ID:???書く時は末尾に追記して、読む時は末尾からリバース読み、みたいな。
0721nobodyさん
2010/02/08(月) 16:54:52ID:oaOBKDG6PHPは5.1.4 DBサーバーは mysql5.1
例
$pp = $db->prepare("insert into test (date)values(?)");
$pp->execute(array('2010-01-01'));
0722nobodyさん
2010/02/08(月) 17:06:27ID:???dateが関数名とかぶるからだと思う
バッククォートでかこってみ
$pp = $db->prepare("insert into test (`date`)values(?)");
0723nobodyさん
2010/02/08(月) 17:16:43ID:oaOBKDG60724nobodyさん
2010/02/08(月) 17:31:39ID:???0726721
2010/02/08(月) 17:47:39ID:???失礼しました
原因はよくわかりませんが…
0727nobodyさん
2010/02/08(月) 21:53:15ID:v0XTz3WCどこで質問すればいいのかわからなかったのですが
簡易ブログ(タイトルと内容のみ更新される)ようなスクリプトってありませんでしょうか?
口たらずなので考えてるものがこれで伝わるかわかりませんが
どうぞよろしくおねがいします
0728nobodyさん
2010/02/08(月) 22:04:01ID:???0729nobodyさん
2010/02/08(月) 22:10:56ID:v0XTz3WCレスありがとうございます
そういう凝ったものではなくて
ログインページでログインし
タイトル:[ブログ始めました]
内容:[てすとてすとてすとてすとてすと]
[送信] [リセット]
という感じでフォームに入力すると
<h2>ブログを始めました。</h2>
<p>てすとてすとてすとてすとてすと<br />
てすとてすとてすとてすとてすと<br />
てすとてすとてすとてすとてすと</p>
というような単純な文を新着情報みたく上に上にだんだんと追加されて行く感じのような物です
ほんとうに説明下手で申し訳ないです・・・
0730nobodyさん
2010/02/08(月) 22:14:38ID:v0XTz3WC自分で探していて近いものを見つけたので参考までに・・・
http://www.ortecweb.com/cgi/koukai/snews/
動作的には理想的なのですが一行ではなく
タイトルと内容で更新できるようなものを探しています
0732nobodyさん
2010/02/08(月) 23:08:56ID:???0733nobodyさん
2010/02/08(月) 23:42:00ID:v0XTz3WCこんな有名どころを見逃がしていたとは・・・・
まさに理想通りのものでした
本当にありがとうございます!
>>732
ガジェットじゃいまいち雰囲気が合わずで・・・
0734nobodyさん
2010/02/09(火) 00:02:25ID:HTi7WI020735nobodyさん
2010/02/09(火) 00:17:30ID:???SQLiteならファイル単位で扱えるし標準で使えるからちょうど良いよ
0736nobodyさん
2010/02/09(火) 00:25:53ID:???0737nobodyさん
2010/02/09(火) 00:32:54ID:???0738nobodyさん
2010/02/09(火) 00:34:42ID:???0739nobodyさん
2010/02/09(火) 02:41:31ID:???板、スレッド情報をDBに、レスをファイルにつっこんでる俺がいる
0740nobodyさん
2010/02/09(火) 02:48:57ID:???0741nobodyさん
2010/02/09(火) 02:54:38ID:???を受け取りたいのですが
通常、シェルスクリプトの場合以下のリターンコードの筈なのに
真:0
偽:1
失敗しても0が返ってきてしまいます。
スクリプトは以下のような感じです。
<?php
exec("/usr/sbin/useradd -s /sbin/nologin hoge 2>&1",$rCode);
echo `echo $?`;
?>
ちなみにコマンドラインから実行した場合は以下の様になります。
[root@usavich scripts]# useradd -s /sbin/nologin hoge 2>&1
useradd: ユーザ hoge は存在します
[root@usavich scripts]# echo $?
9
よろしくお願いいたします。
0742741
2010/02/09(火) 03:02:07ID:7vs+hwlZIDだします
0743nobodyさん
2010/02/09(火) 03:17:39ID:???って書いてあるけど
0744741
2010/02/09(火) 03:35:44ID:7vs+hwlZ例えば
<?php
exec("/etc/init.d/httpd restart",$rCode);
var_dump($rCode);
?>
array(2) {
[0]=>
string(28) "httpd を停止中: [成功]"
[1]=>
string(28) "httpd を起動中: [成功]"
}
とすれば、もちろん実行結果が配列として返ってくるのですが、正常に処理されたか
自分で判定作らなきゃいけないので、面倒くさいなぁと思いまして
シェルのリターンコードで何とかしたいのです
[root@usavich scripts]# /etc/init.d/httpd restart
httpd を停止中: [失敗]
httpd を起動中: grep: /etc/httpd/conf/httpd.conf: No such file or directory
httpd: Could not open configuration file /etc/httpd/conf/httpd.conf: No such file or directory
[失敗]
[root@usavich scripts]# echo $?
1
0745nobodyさん
2010/02/09(火) 04:45:32ID:???0746nobodyさん
2010/02/09(火) 06:59:49ID:???こういうときは一発で
exec("/etc/init.d/httpd restart > /dev/null 2>&1 ; echo $?",$rCode);
var_dump($rCode);
0747nobodyさん
2010/02/09(火) 10:48:00ID:CZAEoLHqこの移動先を複数箇所指定するにはどうしたらいいでしょうか?
よろしくおながいします
0748nobodyさん
2010/02/09(火) 10:51:44ID:???copy(元ファイル, 移動先);
copy(元ファイル, 移動先2);
しか無いし、駄目な理由もないと思うけど・・。
0749nobodyさん
2010/02/09(火) 10:58:43ID:CZAEoLHqやはり其れしかないですか
ありがとう
0750nobodyさん
2010/02/09(火) 11:08:26ID:???myCopy(String source, String[] dest)
0752nobodyさん
2010/02/09(火) 11:26:10ID:???0754nobodyさん
2010/02/09(火) 12:23:29ID:???組込みでない機能なんか使えねーよ
ってことでしょ
0757nobodyさん
2010/02/09(火) 14:47:19ID:qqG+/ley多次元配列のなかから、指定した構造部分だけ抜き出したいのです。
よろしくおねがいします
0758nobodyさん
2010/02/09(火) 14:54:34ID:???0759nobodyさん
2010/02/09(火) 14:58:57ID:???http://www.php.net/manual/ja/function.array-intersect-key.php#93720
0760nobodyさん
2010/02/09(火) 15:11:18ID:qqG+/leyお、ありがとうございます!
0761nobodyさん
2010/02/09(火) 18:26:17ID:???数行ですむ処理を関数で書いてどんなメリットがあるかっていう話でしょ。
もちろんもうちょっと複雑な処理も絡めて関数にするなら意味があるかもだけど。
そもそも>>747の質問の答としては「無い」で良いわけで蛇足。
0762nobodyさん
2010/02/09(火) 20:29:42ID:???0763nobodyさん
2010/02/10(水) 00:28:55ID:FNWat3EE間違ってますか?
ローカルでもxreaで借りてるサーバでもsession.save_pathがno valueなのに
普通にセッション使えてるんですが、なぜでしょう?
0764nobodyさん
2010/02/10(水) 00:37:34ID:???0765nobodyさん
2010/02/10(水) 10:42:03ID:J/EM4cEcCannot use output buffering in output buffering display handlers
ってエラーがでるんですが、これはどうやったら直せるんでしょうか?
0766nobodyさん
2010/02/10(水) 10:46:05ID:???http://codeigniter.com/forums/viewthread/84317/
0767nobodyさん
2010/02/10(水) 11:19:06ID:???preg_match()を使えって事なんだろうか・・・?
0769763
2010/02/10(水) 11:45:28ID:FNWat3EEありがとうございます
OSの一時ディレクトリっていうと/tmpのことですか?
ttp://sb.xrea.com/archive/index.php/t-11933.html
↑ここ見ると、デフォルトのsession.save_pathは/tmpになってるらしいんですが
phpinfo()確認すると、ローカルでもxreaで借りてるサーバでもno valueなんですよね。何も変更してないのに。
まぁ今のところ問題なく使えてるんでいいんですが、なんか気持ち悪いなぁと思って。。
0770nobodyさん
2010/02/10(水) 11:59:46ID:???公式のマニュアルにちゃんとのってる
PHP: 実行時設定 - Manual
http://www.php.net/manual/ja/session.configuration.php#ini.session.save-path
0771nobodyさん
2010/02/10(水) 12:08:58ID:fc0U4ClX【PHPのバージョン】php5.1.6
【連携ソフトウェア】無し
【質問内容】
渡される変数にはファイル名が入っておりますが、フルパスで格納されてます。
/var/www/html/example.dat
ファイル名だけをとりだしたいのですがexplodeで切ると階層が異なる場合はうまく取り出せません。
ファイル名だけを取り出すような方法があれば教えていただけないでしょうか?
0772763
2010/02/10(水) 12:18:33ID:FNWat3EEsession.save_pathがno valueだと/tmpに保存される
ということで良いんでしょうか?
理解が遅くてすみません
0774nobodyさん
2010/02/10(水) 12:25:46ID:???session.save_pathが空の場合の挙動はsession.save_handler次第。
session.save_handlerがfilesモジュールだと仮定する。
filesモジュールは、session.save_pathが空の場合にはphp_get_temporary_directoryというPHP内のAPIによってディレクトリを決定する。
php_get_temporary_directoryは、OSのAPIを呼んだり環境変数を読んだりしてデフォルトの一時ディレクトリを決定する。
Unixならほぼ/tmp。
0776763
2010/02/10(水) 12:49:22ID:FNWat3EEありがとうございます
大体理解できました
>>775
確認しましたが、no valueなので何も表示されません。
0778763
2010/02/10(水) 12:59:30ID:FNWat3EEGoogleでは検索しましたが、過去スレは特に見てないですね。
774さんのような明確な回答が見つけらなかったんで質問しました。
0780nobodyさん
2010/02/10(水) 16:17:18ID:SkjYm3w1それをValidなXHTMLに変換したいと思っています
PHPモジュールやライブラリ、あるいは他に何か方法があれば教えてください
0782nobodyさん
2010/02/10(水) 16:53:14ID:gNzUI44E0783nobodyさん
2010/02/10(水) 16:57:16ID:gNzUI44Eお前等糞の役にもたたねーな
0784nobodyさん
2010/02/10(水) 16:59:51ID:???サーバサイドならexecやsystemでいいが
何も考えずに使うとセキュリティ面で深刻な問題があるから注意
が態度がむかつくから教えない。
0785nobodyさん
2010/02/10(水) 17:05:43ID:???0786nobodyさん
2010/02/10(水) 17:49:58ID:SkjYm3w1ありがとう
0787nobodyさん
2010/02/10(水) 18:07:08ID:Xa4vEadUimagettftextとモナーフォントを使ったところ、ガタガタになってしまいました。
また、線の太さも実際にブラウザで見るよりも太くなってしまいます。
なにが原因なのでしょうか?
よろしくお願いします。
0789nobodyさん
2010/02/10(水) 23:25:49ID:gX/LcLaO$a[0] = "あいうえお";
$a[1] = "あいうえおかきくけこ";
$b[0] = 12345;
$b[1] = 67890;
$text = "あいうえおあいうえおかきくけこ";
とある時に、str_replace($a,$b,$text);
にすると、出力が
1234512345かきくけこ
になってしまいます。
どうしてそうなるかは理解できたのですが、解決方法がわかりません
よろしくお願いします。
0790nobodyさん
2010/02/10(水) 23:38:32ID:???$a[0] = "あいうえおかきくけこ";
$b[1] = 12345;
$b[0] = 67890;
0791nobodyさん
2010/02/10(水) 23:44:10ID:???$b= array_reverse($b);
これをかませろw
0792nobodyさん
2010/02/10(水) 23:57:13ID:gX/LcLaOやってみましたがダメでした。
順番関係なく、「あいうえお」が一致した時点で置換してしまっているようです。
0793nobodyさん
2010/02/11(木) 00:27:01ID:???$a[1] = "あいうえお";
$b[0] = 67890;
$b[1] = 12345;
でいいじゃん
0794792
2010/02/11(木) 00:38:31ID:qOD6LI8kありがとうございました
0795nobodyさん
2010/02/11(木) 06:33:53ID:Mcgu4g2hAページのheaderのLocationでBのページに飛んだとき、
Bで受けるリファラがZページになる気がするのですが、
このリファラをAページのものにできないでしょうか。
0796nobodyさん
2010/02/11(木) 08:23:46ID:???0797nobodyさん
2010/02/11(木) 09:20:58ID:???0798nobodyさん
2010/02/11(木) 12:41:08ID:SS8lyG7SText_Captchaを使ってるんですが、Index.phpの頭にブレークポイントを置いて観察してると、画像を表示した後、
また同じファイルにリクエストが来るんですが、原因は何が考えられるんでしょうか?
header( 'Content-type: image/png' );
echo self::$captcha->getCAPTCHAAsPNG();
exit;
と、最後にはexitを実行してるので、同じスクリプト内から呼び出されてるわけでもないんですが・・・
0799nobodyさん
2010/02/11(木) 12:47:42ID:SS8lyG7SIEではそんな現象はありませんでした。
Firefoxだけの現象っぽいです。
0800nobodyさん
2010/02/11(木) 12:54:12ID:Q23J+jON掲示板とかってもう枯れてるから需要ないと思うんですけど何作ればいいかアドバイスお願いします
0801nobodyさん
2010/02/11(木) 13:13:02ID:???PHP 検索
で上位表示されるスクリプト配布サイトがいくつかある。
そこのシェアウェアで人気のあるツールと、同等以上の物を安く作る。
大抵仕様は公開されてるから真似するのも簡単だろ?
そして、その後アフィリエイトツール作って、成果報酬で売る。
そうすれば金稼げるよ。
0802nobodyさん
2010/02/11(木) 14:03:58ID:???アフィリエイトでアクセス稼ぎたいなら
ジャンルを問わずとにかく数を作るべき
KENT WEBやレッツPHPとか掲示板設置しようと考えたやつで
名前を知らないやつはいない
とはいえ今じゃレンタルブログやSNSが主流だから時代の流れとは逆行してるけど
0803nobodyさん
2010/02/11(木) 14:17:48ID:???0804nobodyさん
2010/02/11(木) 14:43:48ID:???0805nobodyさん
2010/02/11(木) 18:15:57ID:lCIcQ7bp<?php echo $video->intid; ?>
この中の "->" ってところの意味が解かりません
検索してもどうしてもうまくヒットしないんで、キーワードだけでも教えてください
0806nobodyさん
2010/02/11(木) 18:16:45ID:???0807nobodyさん
2010/02/11(木) 18:20:52ID:lCIcQ7bp即レスどうもありがとうございます
これでなんとかやっていけそうです
0809nobodyさん
2010/02/11(木) 18:35:05ID:???0814nobodyさん
2010/02/11(木) 20:56:20ID:???0815nobodyさん
2010/02/11(木) 21:26:37ID:Fhh8ayIh【PHPのバージョン】 php5
【連携ソフトウェア】 無し
【質問内容】
写真撮影が趣味でして、自分のホームページで撮影した写真を公開しています。
その際写真1枚ごとに1つのページで
(a) 写真のタイトル
(b) 写真の説明文
(c) 【撮影した写真】
(d) EXIFデータ
のように表示したいと思っています。
写真の表示ページをPHPを使って動的に作ろうと思うのですが、その動的ページに(a), (b), (c), (d)の
データを渡すにはどうしたらいいでしょうか?CVSファイルにデータ一式を格納し、URLに写真のファイル名
を含めて渡した後、そのCVSファイルを読み込みに行ってその写真に対応する「タイトル」「説明文」を
取得させる、という方法がもっともスマートでしょうか?
他にもっといい方法がありましたらアドバイスをください。
0816nobodyさん
2010/02/11(木) 21:37:44ID:???sineyo
php5nodonoba-jondayoksg
php5.0php5.1php5.2php5.3toiroiroarudaroksg
0817nobodyさん
2010/02/11(木) 21:38:56ID:???atosonoyoutonaraphptukawanakuteok
javascriptnoraiburariwotukattahougaiizo
0819nobodyさん
2010/02/11(木) 21:52:23ID:???もっともスマートかどうかは自分の使いたい方法と量にもよるかと。
DBでもいいと思うけど。
大量にあるならCSVでいいんじゃないかな。
アップロードして後から入力するなら、似たようなWEBアプリはいっぱい転がってるから改造もアリかと。
EXIFは画像から取得するライブラリはあると思う。
よく分からないなら作ってから工夫するのが一番の近道。
問題点や改良点もやってみないと分からないでしょう。
0821nobodyさん
2010/02/11(木) 22:38:58ID:Fhh8ayIh実は事前にテストも兼ねて簡単なプログラムを作ってみたことがあります。
そのときはリンクに「タイトル」「説明文」「写真のファイル名」を格納して
表示専用PHPページに送るという力業をやってました(違うページにそれら
の変数を送るためセッションも使っています)。
ただおかげでリンクのURLは、表示専用PHPファイル、セッションID、タイトル、説明文、ファイル名、と
大変長ったらしいものになってしまいとてもスマートと呼べるようなプログラムではありませんでした。
ここはやはりCVSを使った方が遙かにスマートになりそうですね。
ありがとうございます。
0822nobodyさん
2010/02/11(木) 22:42:39ID:???0823nobodyさん
2010/02/11(木) 23:18:39ID:G22xqtqm自宅サーバーをもち、友人間で公開し使っています。
PHPをインストールすると、PHPが80portを使っている?のか、Apacheで80portを使えなくなります。
PHPが他のportを使用するように変更したいのですが、どうすればいいでしょうか?
0824nobodyさん
2010/02/11(木) 23:25:11ID:???うーん・・
apacheで80番が使えなくなるというのはどう判断した?
普通にインストールするとphpはapacheのモジュールとして動作するから
apacheの中にphpが組み込まれるようなイメージ
だからphpをインストールしてapacheが使えなくなることは無い
netstatで80番ポートを誰がLISTENしているか見てみなよ
0825nobodyさん
2010/02/11(木) 23:30:13ID:Fhh8ayIhいえ管理するのは私一人です。
ただ写真の量が多いので(1つのテーマあたり20〜30枚)リンクのURLに逐次それらの情報を埋め込むより
CVSで一元管理した方が楽かなと思いまして。
もっといい方法があれば知りたいですが。
0826nobodyさん
2010/02/11(木) 23:31:43ID:???80/tcp でweb鯖が複数待ち構えてるとか。
0827nobodyさん
2010/02/11(木) 23:33:11ID:G22xqtqmレスありがとうございます
>>apacheで80番が使えなくなるというのはどう判断した?
80だとApacheが起動せず、適当に変えたら起動したからです。
また、この現象がPHPをインストールしてから起こるためです。
netstat試してきます。
0828nobodyさん
2010/02/11(木) 23:40:39ID:G22xqtqmそのときに一緒にインストールしていたskypeが犯人でした
0829nobodyさん
2010/02/11(木) 23:49:36ID:???0830nobodyさん
2010/02/11(木) 23:54:00ID:???楽だろうね。
CSVなら、テキストエディタで書き換え可能だったり、エクセルで綺麗に一覧見れたり編集できたり。
写真に通し番号付けて、URLではその通し番号だけパラメータにすりゃすっきり。
で、いい加減にCVSじゃなくてCSVだと覚えようね。
まあ、いちおう何を指してるつもりなのかは判るけどね。
0831nobodyさん
2010/02/11(木) 23:58:45ID:???>>830
>>830
>>830
>>830
>>830
>>830
>>830
>>830
>>830
>>830
http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=CVS&num=50http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=CVS&num=50ttp://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=CVS&num=50
0832nobodyさん
2010/02/12(金) 00:05:46ID:???0833nobodyさん
2010/02/12(金) 00:06:20ID:???釣られてんだか釣ってんだか
0834nobodyさん
2010/02/12(金) 00:17:11ID:???ブログ程度の記事情報なら、CSVの方がいい気がする
0836nobodyさん
2010/02/12(金) 00:26:58ID:???0837nobodyさん
2010/02/12(金) 00:32:47ID:???けど、俺はCSVをDB風にカスタマイズして使ってる。
さすがにSQL文に対応させるのは骨が折れるので断念したけど。
0838nobodyさん
2010/02/12(金) 00:37:59ID:???0839nobodyさん
2010/02/12(金) 00:54:27ID:???0840nobodyさん
2010/02/12(金) 01:03:23ID:???0841nobodyさん
2010/02/12(金) 01:08:23ID:???フレームワークとか使えばSQLも書かなくて済むし。
0842nobodyさん
2010/02/12(金) 01:25:25ID:???これからはJSONだぜ
0843nobodyさん
2010/02/12(金) 01:50:48ID:ivOMV7p7具体的には200 OKが返ってきたらA();を206 Partial Contentが返ってきたらB();を呼び出すという処理をしたいです。
0844nobodyさん
2010/02/12(金) 01:56:20ID:???0845843
2010/02/12(金) 02:03:21ID:ivOMV7p7あるサーバにアクセスしてそのレスポンスによって処理を変えるといった感じです。
こういった感じです。
255.255.255.0から255.255.255.255まで(255.255.255.0/24)のIPアドレスを調査して、
206が返ってきたらbreakしてそこのIPアドレスを返す。
といったことをしたいです。
説明が下手で申し訳ありませんが宜しくお願いします。
0846nobodyさん
2010/02/12(金) 02:06:33ID:???0847846
2010/02/12(金) 02:12:52ID:ivOMV7p7Firefox+LiveHTTPHeadersでは206が返ってきたところが200になっていました。
しかし他のheader情報を見るとうまく判定できそうなので、
今回はこの関数を使いたいと思います。
>>846
どうもありがとうございます。
PEARは導入していないので、後でこちらも調べてみたいと思います。
0848nobodyさん
2010/02/12(金) 03:47:48ID:QttJtS9AわざわざテストのためにApacheインストールしてこれを稼働させるのは
面倒くさいだけでなくセキュリティ的にも不安。
できればPHPの仮想サーバーがあればいいんだけどね。
仮想サーバー上で書いたPHPスクリプトを実行して表示させると。
言ってみればエミュレーターみたいなものね。
0849nobodyさん
2010/02/12(金) 03:51:36ID:???わざわざポート開けてやるつもりか?
本番環境整えてやるのが普通だろ
0851nobodyさん
2010/02/12(金) 04:00:50ID:QVY7RqlhPHPで以下のコードを書くと
function tekitou(){
var count = 0;
<?php
for ($i=0;$i<10;$i++){
echo " hoge\n";
}
?>
}
こう展開されます
function tekitou(){
var count = 0;
hoge
hoge
hoge
hoge
hoge
hoge
hoge
hoge
hoge
hoge
}
なんで一番上だけタブが2個になるんですかね?
0852nobodyさん
2010/02/12(金) 04:02:31ID:QVY7Rqlh×全角
○全角スペース
0853nobodyさん
2010/02/12(金) 04:03:17ID:???0854nobodyさん
2010/02/12(金) 04:15:31ID:???0855nobodyさん
2010/02/12(金) 04:15:45ID:QVY7Rqlhおお、そのとおりですね ありがとうございます
なんで気づかなかったんだろう・・・
さらにくだらない質問になるけど
<?phpのあとで
echo "\n"みたいにするか
<?phpと?>をインデントせずに行頭に書くか
どっちがいいですかね?
0859nobodyさん
2010/02/12(金) 09:10:23ID:???ドッカン
m ドッカン
=====) )) ☆
∧_∧ | | / / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( )| |_____ ∧_∧ < おらっ!出てこい>>855
「 ⌒ ̄ | | || (´Д` ) \___________
| /  ̄ | |/ 「 \
| | | | || || /\\
| | | | | へ//| | | |
| | | ロ|ロ |/,へ \| | | |
| ∧ | | | |/ \ / ( )
| | | |〈 | | | |
/ / / / | / | 〈| | |
/ / / / | | || | |
/ / / / =-----=-------- | |
0860nobodyさん
2010/02/12(金) 12:02:00ID:OUidAsxlmbstring.language = neutral
としたほうがいいでしょうか?
mbstring.language = Japanese
としたほうがいいのでしょうか?
0862nobodyさん
2010/02/12(金) 12:08:39ID:+NaJbLGpこのパソコンにMySQL5.5(MSI形式インストーラー)、PHP5.3.1(VC6、スレッドセーフ、ZIP形式)、Apache2.2(OpenSSL対応、公式MSI形式インストーラ)の順番でインストールしました
MySQLとPHPはPathが通っているのでコマンドラインからも使える状態です
test.phpというファイルでデータベースに接続するだけのスクリプトを書いて
ブラウザでチェックしたのですが、MySQLが反応しません
PHP5.3でMySQL5.5以上は諦めたほうがいいのでしょうか?
そのままインストールした場合ですと正常に動かないと思うのですが、
もし正常に使われている方がいらしゃいましたら解決方法をご教示お願いします
0863nobodyさん
2010/02/12(金) 12:09:27ID:+NaJbLGp0865nobodyさん
2010/02/12(金) 12:22:09ID:+NaJbLGpこのエラーから何か分かることがございましたらご教示お願いします
Warning: mysql_connect() [function.mysql-connect]: [2002] ????????яo???悪??????????????????????????????? (trying to connect via tcp://localhost:3306) in D:\www\htdocs\test.php on line 2
Warning: mysql_connect() [function.mysql-connect]: ????????яo???悪 ?????????????????????????????????A????????????????B???????????z?X?g??????????????????A?m????? ????????s????????B in D:\www\htdocs\test.php on line 2
Fatal error: Maximum execution time of 60 seconds exceeded in D:\www\htdocs\test.php on line 2
test.phpの中身↓
<?php
mysql_connect("localhost", "root" , "qwas12") or die ("Connect Error!!");
echo "Connected";
?>
0867nobodyさん
2010/02/12(金) 12:31:51ID:???文字コード変えれw
0868nobodyさん
2010/02/12(金) 12:36:38ID:+NaJbLGp僕と同じやり方で検証していただける方いませんか?
0869nobodyさん
2010/02/12(金) 12:37:30ID:+NaJbLGpPHPの内部文字コードはUTF-8にしてます
0870nobodyさん
2010/02/12(金) 12:39:22ID:???0872nobodyさん
2010/02/12(金) 12:41:24ID:???ブログ借りてそこで書きますちょっと待っててください先生
0873nobodyさん
2010/02/12(金) 12:41:53ID:???0874nobodyさん
2010/02/12(金) 12:43:17ID:+NaJbLGp0876nobodyさん
2010/02/12(金) 12:47:45ID:???0878nobodyさん
2010/02/12(金) 14:17:29ID:ajCsRwoEzipに固めてダウンロードさせたいのですが、どういう方法と手順を踏めばよいのでしょうか?
0879nobodyさん
2010/02/12(金) 14:25:56ID:???DBから値を取得
text1.txt text2.txt text3.txtをfopen→取得した値をfwrite(もしくはfile_put_contents)
text1.txt text2.txt text3.txtをzip圧縮(ZipArchive)
headerでzipを出力
0880nobodyさん
2010/02/12(金) 17:22:39ID:???1,PHP設定ファイル(PHP.ini)の「;extension=php_mysql.dll」のコメントをはずします。
2,同じく、PHP設定ファイル(PHP.ini)のextension_dirにphp_mysql.dllの配置場所を追加します。(変更例:extension_dir = "c:\php\ext\")※「c:/php/ext/」だと上手くいかないことがあります。
3,PHPインストール先(例:c:\php)にあるlibmysql.dllをWindowsディレクトリ(例:c: \windows)にコピーします。
4,Apacheを再起動します。
0881nobodyさん
2010/02/12(金) 17:24:00ID:???0882nobodyさん
2010/02/12(金) 17:28:08ID:???php.iniのイジリ方も知らない人に、
環境変数の設定を説明すんのめんどい。
0883nobodyさん
2010/02/12(金) 17:32:16ID:???0884nobodyさん
2010/02/12(金) 17:58:48ID:???0885nobodyさん
2010/02/12(金) 19:00:16ID:???0886nobodyさん
2010/02/12(金) 19:08:05ID:???0887nobodyさん
2010/02/12(金) 19:57:24ID:???0888nobodyさん
2010/02/12(金) 22:06:17ID:???0889862
2010/02/12(金) 23:17:46ID:bY1Qlu48コマンドラインからMySQLもPHPも単体なら動作するんですが
PHPからMySQLを使うとどうしてもMySQLが応答しないのです
libmysql.dllのパスも通してますがphp5.2では大丈夫なんですがphp5.3ではダメみたいです
>>882
ご心配ありがとうございます
そのへんの説明は間に合ってます
とりあえずインストールをまとめました
設定ファイルをいじってないのでまだ使えませんが
続きは明日書くのでここが原因で動かないってところがあれば明日の夜行こうご指摘お願いします
ttp://hellosekaisan.blog97.fc2.com/
0890nobodyさん
2010/02/12(金) 23:30:09ID:???読み込まれているphp.iniが想定しているファイルかどうか
mysql関連のモジュールが読み込まれているかをいチェックしてみるといいかも
既にやってたらごめん
0891nobodyさん
2010/02/13(土) 02:19:54ID:???これをやりたいんですが、
110行目あたりにそれらしいものがないし
書き換えるのか、追加するのかも分からないので
詳しく教えてください
0895nobodyさん
2010/02/13(土) 13:46:22ID:q0PjUtVL【PHPのバージョン】5.2.12
【連携ソフトウェア】mysql
【質問内容】 おススメのO/Rマッパー教えて下さい。
友人に頼まれてSAKURAレンタルサーバーでDBを動かす必要が出てきて、
PHPあまり詳しくないので質問した次第です。
当方PerlなどでよくO/Rマッパーを使用しております。
0896nobodyさん
2010/02/13(土) 13:49:33ID:???0897nobodyさん
2010/02/13(土) 14:01:10ID:q0PjUtVL・接続設定が簡単
・DBの文字コードがSJISなんでSJISを問題無く扱える
・他ライブラリなどへの依存が少ない
・結果オブジェクトが扱いやすい
こんな感じです。
0898nobodyさん
2010/02/13(土) 14:35:36ID:???NetBeans や PHPEclipse など数種類あるようですが、
何がよいのでしょうか?
(軽快さ、習得の容易さ、開発しやすさ、安定性の面など)
当方最近PHPを覚え始め、現在エディタを使っていますが、
統合開発環境は早めに馴染んだほうがよいと思い、質問する
次第です。よろしくお願いします。
0899nobodyさん
2010/02/13(土) 14:38:40ID:???0901nobodyさん
2010/02/13(土) 15:09:45ID:???♪ ∧__∧ ∧__∧|l| ♪ ∧__∧
(´・ω・`)三三) (´・ω・`)| (´・ω・と_) ))
| / | / | ./
♪ U 〈 ♪ U 〈 U 〈 ♪
(__ノ^(___) (__ノ^(___) ♪ (__ノ^(___)
たまの失敗はスパイスかもね♪
0902898
2010/02/13(土) 15:11:56ID:???はんせいしてま〜す♪
0903nobodyさん
2010/02/13(土) 15:15:22ID:???この板さがしてみそんなスレあったから
0904898
2010/02/13(土) 17:22:03ID:???NetBeansで最高のPHPを製作できるように頑張ります。
0905898
2010/02/13(土) 17:33:16ID:???最高のPHPの作り方をおしえてくれませんか
0906nobodyさん
2010/02/13(土) 17:37:28ID:???ここ行って開発に参加する
0907nobodyさん
2010/02/13(土) 17:42:35ID:???0908898
2010/02/13(土) 17:52:55ID:???はんせいしてま〜す♪
0909nobodyさん
2010/02/13(土) 21:58:43ID:16IkPeoyひとつの送信ボタンを押して複数のPHPファイルにデータを送信することは可能でしょうか?
また、もし可能でしたらコードを教えていただけないでしょうか。
拙いですが画像を作ってみました。
http://www1.axfc.net/uploader/Sc/so/82635
皆様の叡智を拝借できれば幸いと存じます。
0911nobodyさん
2010/02/13(土) 22:54:51ID:???送信した結果、どんなレスポンスを受けたいのか分からないので、答えられない
File_02とFile_03を実行した結果をマージして返すだけなら、ob_start()でバッファリングしつつ、File_02とFile_03をinclude()してやればおk
File_02とFile_03を実行した結果を個々に取り出したいなら、クライアントサイドのJavascriptでXHRを使って、リクエストを飛ばしてやればおk
0912909
2010/02/13(土) 23:06:57ID:16IkPeoy当方の書き方にだいぶ不備があったようです。文言を整えて出直してまいります。
0913nobodyさん
2010/02/13(土) 23:53:29ID:???$b = file_get_contents("http;//example.com/File_03.php?day=0");
0915nobodyさん
2010/02/14(日) 10:54:12ID:tzGdzZbQ【PHPのバージョン】5.2.10
【連携ソフトウェア】なし
【質問内容】
a.htmlからp.phpを
<form action="p.php" method="post">
で呼び出しています。
p.phpを直接読んだ場合、a.htmlへ飛ばしたいのですが、
p.php内で、$_SERVER['HTTP_REFERER']で判別しています。
PCからの場合、うまくいくのですが、携帯からの場合は
REFERERが設定されていないので、うまくいきません。
なにか、良い手はありますでしょうか?
0916nobodyさん
2010/02/14(日) 10:56:08ID:???でぐぐる
0917nobodyさん
2010/02/14(日) 10:58:33ID:tzGdzZbQはい、ぐぐってみます。
0918nobodyさん
2010/02/14(日) 11:04:31ID:tzGdzZbQって書いてあるだけです。それは、知ってます。
0919nobodyさん
2010/02/14(日) 11:07:51ID:???0920nobodyさん
2010/02/14(日) 11:14:55ID:???0921nobodyさん
2010/02/14(日) 11:32:39ID:tzGdzZbQあっけなく出来ました。
ありがとうございました。
0922862
2010/02/14(日) 12:45:56ID:J4myOPGw規制中のためここにレスはできないかもしれませんが
お返事はブログで書こうと思います。
もしよろしければブログにコメントいただけると助かります
どなたかお助けください><
0923nobodyさん
2010/02/14(日) 14:13:07ID:RJDNM59A書き出すhtmlファイルのパーミッションを606に設定しております。
でもこれってやはり危険なのでしょうか・・・?
これまでフリーのcgiをいじってたくらいで、自分で書いたのが初めてなので、
パーミッションの正しい設定というものがいまいち判断がつかず。
作ったプログラムの概要
test.php内のフォームで "お知らせ:今日はいい天気"を入力して送信すると、test.htmlに"お知らせ:今日はいい天気"と書き出される。
test.phpは管理者が入力(実装時にはパスワード設定します)、test.htmlはたくさんの人が見る。
0924nobodyさん
2010/02/14(日) 14:22:44ID:???0925nobodyさん
2010/02/14(日) 14:34:19ID:???余計な権限は与えないべきだが与えるべき権限は与えなくてはならない
まぁようするに>>924
0926nobodyさん
2010/02/14(日) 15:43:04ID:???linuxもまだ3ヶ月、PHPにいたっては2日と日も浅く、もっと勉強しなければですね。
がんがります。
0927nobodyさん
2010/02/14(日) 15:58:35ID:rkEBs7TM元々の機能として、取得結果をキャッシュするのですが自動キャッシュ削除機能がないために
毎日手動で削除しています。
数が増えてきて面倒になってきたので、phpで自動キャッシュ削除機能付けたいのですが
どなたか良い方法がありましたらご教示ください。
0928nobodyさん
2010/02/14(日) 16:05:07ID:???今やってること(毎日手動で削除)を自動でできるようにすればいいんでしょ?
そんならキャッシュフォルダかなんかあるんだろうから
その中身を毎日削除するシェルスクリプト書いてcronでまわせばいいんじゃね
phpでやる必要はなっしんぐ
0929928
2010/02/14(日) 16:07:33ID:???その中身を毎日削除するシェルスクリプト書いてcronでまわせばいいんじゃね
↓
その中身を削除するチェルスクリプト書いて毎日cronでまわせばいいんじゃね
0930nobodyさん
2010/02/14(日) 16:08:49ID:rkEBs7TMありがとうございます。
レンタル共有サーバを利用しているので、cronを動かせない環境なので
なんとかphpでおこないたいと考えたのです。
調べた感じだとunlinkとかでできそうなのですが、あまり詳しくないために
自作でスクリプトを書くことは難しいそうなので、ヒントなどがあればと
思い、書き込みさせていただきました。
0931nobodyさん
2010/02/14(日) 16:08:50ID:???スレ汚しほんとスマン
ちょっと逝ってくる
0932nobodyさん
2010/02/14(日) 16:10:19ID:rkEBs7TMタイムスタンプを見て、「24時間以上経過したら削除」のような処理はphpではそもそも不可能なものでしょうか。
0933nobodyさん
2010/02/14(日) 16:11:05ID:rkEBs7TM不覚にもチェルでコーヒー吹きましたw
0934nobodyさん
2010/02/14(日) 16:18:23ID:???fileatime ― ファイルの最終アクセス時刻を取得する
http://jp2.php.net/manual/ja/function.fileatime.php
filectime ― ファイルの inode 変更時刻を取得する
http://jp2.php.net/manual/ja/function.filectime.php
filemtime ― ファイルの更新時刻を取得する
http://jp2.php.net/manual/ja/function.filemtime.php
0935nobodyさん
2010/02/14(日) 16:20:45ID:???もちろん可能だけどそのスクリプトにアクセスして実行しないと当然消されない
つまり24時間経過してもスクリプトにアクセスがないと消されない
なので削除用のスクリプトを新規に組むというよりは
lastRSS側のスクリプトにそういう機能を組み込んでlastRSSにアクセスした時点で24時間以上経過してるものを削除
という風にしたほうがいい
けど人のスクリプト改造するのもめんどくさいので(処理自体は簡単だけどどこのロジックに組み込めるか調査するのが面倒・・・)
やっぱ新規に削除用のスクリプトを組んでwebcronで毎日同じ時間にアクセスしてもらえばいいんじゃないかな
0936nobodyさん
2010/02/14(日) 16:20:51ID:rkEBs7TMありがとうございます。
参考にさせていただきます。
0937nobodyさん
2010/02/14(日) 16:20:54ID:???if ($updatetime < (time() - (60*60*24))) {
unlink($file);
}
0938nobodyさん
2010/02/14(日) 16:24:13ID:rkEBs7TMありがとうございます。
難易度はともかく実現自体はできるのですね。
実行のトリガーはLastRSSへのアクセスよりも深夜帯などの定時で決め打ちのほうがよさそうですね。
934さんの情報などを含め、もう一度調査&勉強してみます。
0939927
2010/02/14(日) 16:28:41ID:???>>937
ありがとうございます。
フリーのwebcronを探して利用させていただきます。
0940nobodyさん
2010/02/14(日) 16:31:12ID:???0941nobodyさん
2010/02/14(日) 17:02:06ID:???知らなかったわ
0942nobodyさん
2010/02/14(日) 17:40:32ID:???0943nobodyさん
2010/02/14(日) 18:37:14ID:???<remark>
<item>値</item>
</remark>
<remark>
<item>値</item>
</remark>
</remarks>
こんな感じのXMLファイルを開いて値を読み出すにはどうしたらいいですかね^^
0944nobodyさん
2010/02/14(日) 18:38:09ID:nDKxL4PZ【PHPのバージョン】5.2.10
【連携ソフトウェア】なし
【質問内容】
<remarks>
<remark>
<item>値</item>
</remark>
<remark>
<item>値</item>
</remark>
</remarks>
こんな感じのXMLファイルを開いて値を読み出すにはどうしたらいいですか^^
0945nobodyさん
2010/02/14(日) 18:50:46ID:HceFAq0z適切にエスケープするにはどういった方法がありますか
0946nobodyさん
2010/02/14(日) 18:57:45ID:HceFAq0z0947nobodyさん
2010/02/14(日) 20:09:01ID:???http://pear.php.net/package/XML_Serializer/
0948nobodyさん
2010/02/15(月) 00:17:17ID:???$contents = file_get_contents($file_name);
$xml = simplexml_load_string($contents);
値1 = $xml->remarks->remark[0]->item;
値2 = $xml->remarks->remark[1]->item;
0949nobodyさん
2010/02/15(月) 01:32:28ID:???$1の後に数値をおいただけでは機能しませんでした。
preg_replace('/./', '$10', 'a'); // a0とはならない
0951nobodyさん
2010/02/15(月) 09:22:58ID:hi3MtdSO【OS名】WindowsXP
【PHPのバージョン】5.2.10
【連携ソフトウェア】なし
【質問内容】
a.htmlからp.phpを
<form action="p.php" method="post">
で呼び出しています。
サイト名名をhttp://example.com/とします。
a.htmlをローカルに保存し、
<form action="p.php" method="post">
を
<form action="http://example.com/p.php" method="post">
と書き換えて、a.htmlを開くと、
p.phpが実行されて、結果が表示されます。
この様な外部サイトからp.phpを使う事を、
抑止したいのですが、よい方法はありますでしょうか?
0953nobodyさん
2010/02/15(月) 09:29:49ID:???0954nobodyさん
2010/02/15(月) 09:31:23ID:dO9qGZvqページの内容部分だけ外部ファイルを読み込んで更新するはどうしたら良いですか?
0956nobodyさん
2010/02/15(月) 09:39:11ID:hi3MtdSOセッションについて、勉強してみます。
>>953
携帯からのアクセスも想定しているので、
リファラは使えません。
0957951
2010/02/15(月) 09:47:52ID:hi3MtdSOa.html→p.phpのように読み込んでいるのですが、
a.htmlの中でsession_start();はできませんよね。
p.phpで、session_start();をして、
http://example.com/a.index.htmlから
飛んできているのか否かって判別できるのでしょうか?
0958nobodyさん
2010/02/15(月) 09:52:06ID:???htmlからか
リファもダメなら無理じゃね?
何を飛ばすかしらんけどp.phpでバリデーションをしっかりするしかないかな多分
0959951
2010/02/15(月) 10:02:01ID:hi3MtdSOなるほど。
一応、p.phpでは、入力の値のチェックはしているので、
変な挙動はしないのですが、なにか気持ちが悪いので、
この質問のようなことができないか悩んでいるところです。
0960nobodyさん
2010/02/15(月) 10:02:04ID:???a.htmlからimgタグかscriptタグでPHPファイルを読み込んでセッションセットすればいけると思うよ
0961nobodyさん
2010/02/15(月) 10:06:23ID:???別に意識するようなことじゃなかろう
0962951
2010/02/15(月) 10:22:41ID:hi3MtdSOa.html内に<img src="s.php">を記述する。
s.phpの中身は、session_start();を記述。
p.phpの中身は、
・session_start();を記述。
・
んんん???
で、p.phpでは、どのような判定をすれば良いのか???
a.htmlで設定されたsession_idと
p.phpのsession_id() を比べる?
p.phpの中で、a.htmlで設定されたsession_idを得るのは可能ですか?
私、トンチンカンな事、言ってますか?
0963nobodyさん
2010/02/15(月) 10:55:47ID:???s.php
session_start();
$_SESSION["check"] = 1;
p.php
session_start();
$checked = isset($_SESSION["check"]);
unset($_SESSION["check"]);
みたいな感じかな
0964nobodyさん
2010/02/15(月) 11:01:47ID:jrDRH19yどうにかならんかね。
0965951
2010/02/15(月) 11:08:48ID:hi3MtdSOありがとうございます。
少し、考えてみました。
セッションの変数名と値は、推測できなさそうな物を使えばいいかと。
s.phpを直接読まれても、ソースは見れないから。
で、どうしようかなぁ。。。
鯖特異な何かをMD5とかshaとかで暗号化すれば、いいのかなぁ〜
って思ってます。
0966951
2010/02/15(月) 11:09:49ID:hi3MtdSO0967nobodyさん
2010/02/15(月) 11:27:19ID:???csrf_token()で$csrf_tokenというランダム文字列つくってセッションにセット
飛んだページでcsrf_valid()でバリデートしてtokenを削除すれば暗号とか関係ない
0968nobodyさん
2010/02/15(月) 11:52:32ID:???0969951
2010/02/15(月) 11:56:47ID:hi3MtdSOcsrfなんたら、調べてみます。
ありがとうございます!
0970951
2010/02/15(月) 11:58:00ID:hi3MtdSOえ、無意味なんですか?
意味ある対処だと思って、考えていたんですが。
0971nobodyさん
2010/02/15(月) 12:03:36ID:CW5G1rtw【PHPのバージョン】php5.16
【連携ソフトウェア】連携はしてません
【質問内容】
example.php
exec("/usr/bin/php /var/www/html/err.php");
err.php
echo "error";
こういうのを作成しました。
元々1つのphpにまとめていたのですが、エラー内容が複雑になり分離しました。
この時にexample.phpを実行してもerrorと表示されないのですが、どのようにすれば表示されるようになるのでしょうか?
なにぶん経験がないものでおかしな質問になっているかもしれませんがアドバイスいただけると助かります。
0972951
2010/02/15(月) 12:03:48ID:hi3MtdSOcsrf_validで、ググると、Hit0件。
0974nobodyさん
2010/02/15(月) 12:08:42ID:???何がしたいのかわからんが、
require("err.php");でいいんじゃない?
どうしてもexecつかうなら
exec("/usr/bin/php /var/www/html/err.php", $result);
print_r($result);
0975nobodyさん
2010/02/15(月) 12:12:07ID:???echo exec("/usr/bin/php /var/www/html/err.php");
こんな書き方でも。
でも>>974さんがいうようにincludeしたほうがいい
0977971
2010/02/15(月) 12:34:15ID:CW5G1rtwerr.phpの中が
if($err_num == 1){
echo "error1";
}elseif($err_num == 2){
echo "error2";
以下略
というような内容になっていて、$err_numによって表示をわけている状態でした。
exec叩いた時に一緒に$err_numを渡して表示すればいいと思ったのですが
この場合はあくまでerr.phpでは表示しているけど、実行されているのはexample.phpなので
表示されてない状態だとアドバイスいただき気づきました。
echo exec〜が修正が少なくて良いかと思いますが、今後の事を考えてincludeを使用して対応してみたいと思います。
ありがとうございました。
0978nobodyさん
2010/02/15(月) 12:36:33ID:???ブラウザがやってる通りの手順でHTTP通信を真似されたら簡単に突破されるし、
それ以前にフォームのDOMをいじられても検出できないでしょう
改ざんを前提にして入出力の検証コードに時間を割くか、
可能ならセッションが途切れてしまう設計から見直した方が良いよ
0979nobodyさん
2010/02/15(月) 17:48:13ID:???a.htmlに
<img src="s.php" width="0" height="0">
を記述。
s.php
session_start();
$_SESSION["check"] = 1;
p.php
session_start();
$checked = isset($_SESSION["check"]);
unset($_SESSION["check"]);
とする場合、
a.htmlをローカルに保存し、
<img src="http://example.com/s.php" width="0" height="0">
と書き換え、アクセスすると、p.phpが動いてしまうことが分かりました。
拡張子.htmlでphpが動くように、変更すれば、解決かな。。。
0980951
2010/02/15(月) 17:49:23ID:hi3MtdSO0981951
2010/02/15(月) 17:54:37ID:hi3MtdSO> 改ざんを前提にして入出力の検証コードに時間を割くか、
> 可能ならセッションが途切れてしまう設計から見直した方が良いよ
難しくて理解できませんです。。。
0982951
2010/02/15(月) 19:13:49ID:hi3MtdSO<?php
session_start();
$_SESSION["check"] = "1";
?>
を記述。
p.phpの先頭に
session_start();
if( $_SESSION["check"] != "1" ) {
header("Location: http://example.com");
exit();
};
を記述すると、
PCからは、うまくいくけど、
携帯からでは、http://example.comに飛んでいってしまい、
うまく動作しない。。。
0983951
2010/02/15(月) 19:16:28ID:hi3MtdSO0984nobodyさん
2010/02/15(月) 19:22:18ID:???0985nobodyさん
2010/02/15(月) 19:27:22ID:???http://pc11.2ch.net/test/read.cgi/php/1266229386/
0986nobodyさん
2010/02/15(月) 19:53:10ID:hi3MtdSO乙
0987nobodyさん
2010/02/15(月) 19:55:51ID:???0988951
2010/02/15(月) 19:59:24ID:hi3MtdSOhiddenを調べてみます。
>>all
眠いので、明日に持ち越すかもしれません。
寝てしまったら、明日もよろしくお願いします。
0989951
2010/02/15(月) 20:05:50ID:hi3MtdSOソースをローカルに保存した場合、バレバレですよね?
0990nobodyさん
2010/02/15(月) 20:14:58ID:???セッションIDを持ち回す方法がcookieである必要は無いということを
>>987氏は言いたいんだと思うよ
0995nobodyさん
2010/02/16(火) 09:20:26ID:???どうせいつものチンピラだろ
0996nobodyさん
2010/02/16(火) 09:39:35ID:???俺様を馬鹿にするならPHP使うなよ。
0997nobodyさん
2010/02/16(火) 09:41:58ID:???0998nobodyさん
2010/02/16(火) 10:31:51ID:???0999nobodyさん
2010/02/16(火) 10:40:27ID:???1000nobodyさん
2010/02/16(火) 10:53:18ID:???1000
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。