【PHP】下らねぇ質問はここに書き込みやがれ 64
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2008/02/09(土) 14:51:11ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 61
http://pc11.2ch.net/test/read.cgi/php/1201425479/
◆質問する時の注意
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0002nobodyさん
2008/02/09(土) 14:52:07ID:???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プログラムとして実行された結果になる。
10. そもそもインストールの時点でうまくいかない
→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
0003nobodyさん
2008/02/09(土) 14:52:19ID:???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.を参照
0004nobodyさん
2008/02/09(土) 14:52:34ID:???21. 画像処理一般 or GDの限界
→ ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
→ 好きにしてください
0005nobodyさん
2008/02/09(土) 14:52:52ID:???■本家マニュアル 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://smarty.php.net/
■Zend本家 http://www.zend.com/
■Zend Framework http://framework.zend.com/
■php | architect http://www.phparch.com/
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0006nobodyさん
2008/02/09(土) 14:53:56ID:???【PHP】下らねぇ質問はここに書き込みやがれ 61
http://pc11.2ch.net/test/read.cgi/php/1201425479/
【PHP】下らねぇ質問はここに書き込みやがれ 62
http://pc11.2ch.net/test/read.cgi/php/1199956159/
【PHP】下らねぇ質問はここに書き込みやがれ 61
http://pc11.2ch.net/test/read.cgi/php/1198002831/
【PHP】下らねぇ質問はここに書き込みやがれ 60
http://pc11.2ch.net/test/read.cgi/php/1196511516/
【PHP】下らねぇ質問はここに書き込みやがれ 59
http://pc11.2ch.net/test/read.cgi/php/1195204145/
【PHP】下らねぇ質問はここに書き込みやがれ 58
http://pc11.2ch.net/test/read.cgi/php/1194084457/
【PHP】下らねぇ質問はここに書き込みやがれ 57
http://pc11.2ch.net/test/read.cgi/php/1193062236/
【PHP】下らねぇ質問はここに書き込みやがれ 56
http://pc11.2ch.net/test/read.cgi/php/1192092941/
【PHP】下らねぇ質問はここに書き込みやがれ 55
http://pc11.2ch.net/test/read.cgi/php/1191058556/
【PHP】下らねぇ質問はここに書き込みやがれ 54
http://pc11.2ch.net/test/read.cgi/php/1189309377/
【PHP】下らねぇ質問はここに書き込みやがれ 53
http://pc11.2ch.net/test/read.cgi/php/1188047468/
【PHP】下らねぇ質問はここに書き込みやがれ 52
http://pc11.2ch.net/test/read.cgi/php/1186794483/
0007nobodyさん
2008/02/09(土) 23:19:21ID:???/二ニ=‐-=ニ、\ ,>
,ムイ/ .}、 ヽ. ヽ ァ′ _人_人_人_人_人_人_
/ / ノ,ト、 ,ィ ,ハ. ∨ト、 )
(\ __ ∧ ;' ,ノlノj,ィ込ァ`! ,), V \ ) 下らねぇ質問は
. ,f\孑=ァ),__ | ! i,ァ示. ノ'ノ ゞr'リ リ ! | \)
〈ヾ、ム,. 》 :|| \ |!、ト、ト弋リ 、 l ,ノ※ ) ここに書き込みやがれ!
. `ー'─(,ムイ' \ ,. -'‐ \\ ア`ヽ _ムイi ! )
\ ` 7マ'7 | ヽ.≧ ゝ._ノ ,: ィ´|.※ | ) ですぅ!
. ` , i ,ハ} |.※ | >x、. イ ! i|. ! )
`7ぇxl/ , ! i 《 ,≫vヘ.)、i), ! ⌒Y⌒Y⌒Y⌒Y⌒Y
/ / |_ i.※ i. 《|{,//iヘ.∨), ∨ ,r- 、
/ / ! )`i !, 《!_/i |《ヘ.∨), ∨ ,Xヘ. }
/ ム._. !/ .|.※ |ヘ. 《 i | 《.ヘ.∨ヘ,.マ^ヽヽノ
‘ーx, i ! |. | ',. 《. ! i 《. | | メ.}i;xr≦
∨ ヽ. | |.※ | ∨《 Li 《 L! :|. | |
\. ∨ |. | 〈 》〜〜〜''〜 | i !
\/ .!.※ ! ,/」Lニ=- |!>X<| :| i !
// ¨¨¨’ >厂 K >' :| |、 ,ノ
0008nobodyさん
2008/02/09(土) 23:42:21ID:???まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 61
http://pc11.2ch.net/test/read.cgi/php/1201425479/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0009nobodyさん
2008/02/09(土) 23:43:59ID:???0010nobodyさん
2008/02/09(土) 23:56:56ID:???とりあえずつかうべ。
トリップは嫌われるしそれだけで荒らしだすやついるから非推奨。
0011nobodyさん
2008/02/10(日) 00:13:48ID:???IDIDって煩い奴は煽りがしにくくなるからとしか見えないのだが
>>10
トリップ嫌われるっつーのは変なコテが沸く所にあるんだろ
一時的なトリップは識別として使えるんだから問題ないと思うが?
それに変なコテ沸けばNG設定で終わりだし
0012nobodyさん
2008/02/10(日) 00:33:14ID:???別にトリップ使って聞くのはなんら問題ない。
それより質問者がちゃんとわかるほうが大事。
0013nobodyさん
2008/02/10(日) 01:04:04ID:???こういう奴には何を言っても無駄だな…。
0014nobodyさん
2008/02/10(日) 01:11:13ID:???もうちょっと何でトリップがダメなのか言ってくれ
0015nobodyさん
2008/02/10(日) 01:29:37ID:???もう少し煽り耐性をつけてください
0016nobodyさん
2008/02/10(日) 03:29:25ID:V6SpMkY1コードはUTF-8です
0017nobodyさん
2008/02/10(日) 04:01:26ID:???ttp://jp.php.net/manual/ja/function.mb-convert-kana.php
0018nobodyさん
2008/02/10(日) 04:03:23ID:???素直に mb_ereg 使った方がいいかも
0019nobodyさん
2008/02/10(日) 04:04:03ID:???正規表現でやるより速そう
ありがとうございました
0021nobodyさん
2008/02/10(日) 04:22:55ID:???0022nobodyさん
2008/02/10(日) 04:43:35ID:???でググッて自分で検証しろ
これぐらいやってから質問したほうが自分のためだよ
0023nobodyさん
2008/02/10(日) 12:40:04ID:???(\xe3(\x82|\x83)[\x80-\xbf])*
0024nobodyさん
2008/02/10(日) 19:37:02ID:XCnCYEX+OS:Red Hat系,SMTPサーバ:Postfix
PHPのソース
<?php
require_once("Mail.php");
$params = array(
"host" => "localhost",
"port" => 25,
"auth" => false,
);
$mailObject = Mail::factory("smtp", $params);
$recipients = "orenchi@mail.jp";
$headers = array(
"To" => "to",
"From" => "from",
"Subject" => "Test Mail"
);
$body = "This is test mail";
$mailObject -> send($recipients, $headers, $body);
?>
require自体はうまくいきました。25番ポートが開放されていることも確認しました。
恐らく$paramsのhost名が間違っているかPostfixの設定がダメなのか、のどちらかだと思われます。
PHPファイルとpostfixが同一サーバ内だからhost=localhostでいけると思ったのですが、main.cfのhostnameパラメで指定したFQDN
に合わせる必要があるのでしょうか。それとも他の設定ミス・・・?
0025nobodyさん
2008/02/10(日) 20:04:57ID:???前スレ埋めようぜ
0026nobodyさん
2008/02/10(日) 23:55:39ID:???>PEAR Mailがうまく動作せず
っておい
>>1の質問する時の注意の3番目を1000回復唱してから前スレに書き込め
0027nobodyさん
2008/02/11(月) 00:14:33ID:???0028nobodyさん
2008/02/11(月) 03:20:16ID:???プロとしてやるならソレはおかしい。
動的な画像もファイルに保存するというのは、少し考えればまずいってことが分かるはずだが。
0029nobodyさん
2008/02/11(月) 04:10:06ID:smM9I7ZN症状としてはphpinfoでmbstring関連のワードが出てきませんし、mb_language() でもFatal errorになってしまいます。
php.iniは;外したりなど行なってますし、以前使っていたphp5のphp.iniバックアップも試してみました。
また、以前は全く問題無く使えていました。ただ、php5だったのは確かですが、バージョンまでは分かりません。
使用OS:win98、Apeche2です。
WINDOWSフォルダ内のphp.iniは色んなサイトのを10種類くらい試してみました。現在は下記のようになっています。
extension=php_mbstring.dll
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8 などなど。
mysqlもinfoにないです。extension=php_mysql.dllコメントアウト済み。
他にチェックすべき点はありますでしょうか?
0030nobodyさん
2008/02/11(月) 04:13:00ID:???003129
2008/02/11(月) 04:22:13ID:???ありがとうございます。
バックアップ用php.iniなど検索して、windowsフォルダ以外全て消してみましたがダメでした。
0032nobodyさん
2008/02/11(月) 05:35:45ID:???1. 他に指定してる extension との絡み
2. php -i | grep Load での php.ini の読まれる所
3. extension_dir
とか、色々考えられるな。その程度の環境晒しじゃ何とも言いようがない。
0033nobodyさん
2008/02/11(月) 11:06:19ID:???パスを切るか、dllあるフォルダに移動するだけで正しく動いたらこれだろうな。
0034nobodyさん
2008/02/11(月) 11:14:05ID:???Configuration File (php.ini) Path を確認してみては?
あと apache経由と直に実行するのでは、使用される php.iniが違ったりするから注意。
具体的な情報もってるわけじゃないけど OSがwin98ってのは気になるなぁ。
0035nobodyさん
2008/02/11(月) 12:19:01ID:???これはサンプルが間違っているんでしょうか。
0036nobodyさん
2008/02/11(月) 12:19:47ID:???http://jonasjohn.de/snippets/php/rand-str.htm
0037nobodyさん
2008/02/11(月) 12:19:55ID:???$abc = $_POST['abc'];
$edf = $_POST['edf'];
$stock = array ($abc,$edf);
$fp = fopen('data.csv','a');
fputcsv($fp, $stock);
fclose($fp);
フォームから投稿された変数abcとedfを配列stockに格納し、
csvファイルに書き出したいのですが、
変数には日本語が入るためその中身を" "で括って保存したい場合、
もっともシンプルに行うにはどのような処理を追加したらいいでしょうか?
正規表現などでそれぞれの変数の文字列を置換しても出来ると思うのですが、
よろしくお願いします。
0038nobodyさん
2008/02/11(月) 12:33:18ID:mbEbK9iH0039nobodyさん
2008/02/11(月) 12:56:56ID:???文字コードに対応するの出すんなら122のが正しいだろうな。
それに記号だったら再計算とかかなり無駄なことしてる>>36のは。
0-9A-Za-zだけのテーブル作ってそこから拾えばいいのに。
0040nobodyさん
2008/02/11(月) 13:22:11ID:???こういうやり方はダメなの?
$fp = fopen('data.csv','a');
$line = '"' . $abc . '","' . $def . '"' . "\n";
fwrite($fp,$line);
fclose($fp);
004129
2008/02/11(月) 14:31:04ID:???ありがとうございます。今の状態は
http.conf に PHPIniDir "C:/php"で、php.iniをc:\phpに移動(他は全部削除)
Configuration File (php.ini) Path no value←これは不味いですか?Loaded Configuration File C:\php\php.ini
C:\>php -i | grep Load
File STDIN:
Loaded Configuration File => C:\php\php.ini
php.iniは
default_charset = UTF-8
extension_dir = "c:/php/ext" (php/ext内に下記dllファイル確認しました)
extension=php_mbstring.dll
extension=php_mysql.dll
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;
0042nobodyさん
2008/02/11(月) 14:48:37ID:???自分は、5.0 -> 5.2でそれをやったときに動作しなかった記憶がある。(原因は知らない)
004337
2008/02/11(月) 14:51:02ID:mbEbK9iHありがとうございます。
fputcsvを用いない場合はそれで希望通りの表示がされるようですね。
ただ配列の1変数として変換を行いたい場合の処理も教えて頂けると助かります。
その後色々試してみたのですが、
$abc = '"'.$_POST['abc'].'"'; //abcに「あ」を送信した場合
この時、$abcに"""あ"""が入ってしまうのですがこれは何故でしょうか。
'"'.で文字列を付加したことによって外側の""がつくようなのですが。
実際に文字列を付加しなくても、外側を""で括れる方法などありましたらお願いします。
0045nobodyさん
2008/02/11(月) 15:05:25ID:???php.ini の記述はほんとに *それだけ* か?
php_mbstring.dll の前に違う extension の指定とかないのか?
004729
2008/02/11(月) 15:27:44ID:???今は新しい方のiniファイルを使ってます。
>>45
extension=ほにゃららってところですよね?
extension=php_mbstring.dll
extension=php_mysql.dll
以外は全て「;」がついてます。
ところで、今mbstring使えるようになりました。
状況としては最初からやりなおそうと思って、Windows内php5ts.dllを削除しただけです。
phpのインストールサイトに、「php5ts.dll」をwindowsにコピペとありますが、まだしていません。でもphp infoは表示されます。
これって大丈夫なのでしょうか?いちおう今からコピペ&再起動しますが…
また、Configure Command cscript /nologo configure.js "--enable-snapshot-build" "--with-gd=shared"
となっているのですが、gdがあるのは普通ですか?あと、本当にmbstringが使える場合、上記にmbstringって出てきませんか?
昨日ググってたら、Configure Commandには出るのに、mbstring項目がないって書いてあるサイトがあったような気がします。
004829
2008/02/11(月) 15:45:56ID:???php自体はビクつきながら、このまま使ってみます。皆様、色々とありがとうございました。
004937
2008/02/11(月) 17:17:08ID:mbEbK9iH色々試したみたところ、変数内に"か半角スペースのある場合のみ自動的に"で括るようですね。
取り合えず全ての変数に$abc." "と半角スペースを付加して対応することにします。
ありがとうございました。
0051nobodyさん
2008/02/11(月) 17:35:23ID:???特定のアプリからしか使わないなら、アプリのフォルダでいい。
0052nobodyさん
2008/02/11(月) 17:55:09ID:???0054nobodyさん
2008/02/11(月) 19:15:16ID:???動作させるにはどうすればいいのでしょうか。
OS:windows xp、PHPのバージョン:5.2.5
目的:ファイルのアップロードの進捗を表示できるようにしたい
extensionディレクトリにphp_apc.dllが既にあったのでラッキー、
後はphp.iniだけと思ってextension=php_apc.dllのコメントアウトをはずして
apc.rfc1867 = Onを書き込み、apacheを再起動してサンプルを動かすと
なぜかエラーでapacheが終了。サンプル自体は問題なさそうなので
APCがうまくインストールできてないのが原因だと思うのですが・・・
0055nobodyさん
2008/02/11(月) 20:21:17ID:???0056nobodyさん
2008/02/11(月) 20:39:51ID:???使うのだけ入れることはあるけど、PHPのはえらい数あるからバージョン管理ややこしくなるし
extに入ったままにしといたほうが更新したときに勝手に最新バージョンになるんじゃないかい。
0057nobodyさん
2008/02/11(月) 22:12:41ID:bpntg1wU0058nobodyさん
2008/02/11(月) 22:47:39ID:bpntg1wU$_GET['Keyword']
て、入力されたキーワードは
$Keywordで表示できるんじゃないんですか?
$Keyword= $_GET['Keyword'];
とすれば表示されたからいいのですが
5時間悩みました
php5.2です
0060nobodyさん
2008/02/11(月) 23:43:18ID:???0061nobodyさん
2008/02/12(火) 00:07:29ID:wvmjAnmewhile(!flock($lockfp, LOCK_EX)){
usleep(250000);
}
$result = mysql_query("SELECT COUNT(no) as count FROM テーブル名");
if (!$result) {
die(mysql_error());
}
$row = mysql_fetch_assoc($result);
$i = $row['count'];
$i++;
$sql = "INSERT INTO $tselect (no, 内容) VALUES ('$i', '内容')";
$result_flag = mysql_query($sql);
if (!$result_flag) {
die(mysql_error());
}
flock($lockfp, LOCK_UN);
fclose($lockfp);
これで$iが重複することは無いのか教えてください
0062nobodyさん
2008/02/12(火) 00:13:38ID:???0063nobodyさん
2008/02/12(火) 00:18:43ID:wvmjAnme0064nobodyさん
2008/02/12(火) 00:27:13ID:???insertする$iが存在しないか確認しないと重複するかどうかわかるわけないし
ダメっていうのはすべてが問題外ってことやろ
質問する前にオナニーしておちつけ
0065nobodyさん
2008/02/12(火) 00:30:37ID:wvmjAnme説明不足だった
iは1から連番でつけていてcountで取得した番号=最終行という形になってる
データの削除はしたくないからテーブルにフラグをつけてデータが有効か無効か判断してるから番号の欠落とかはなしと考えてる
0066nobodyさん
2008/02/12(火) 00:32:14ID:???0068nobodyさん
2008/02/12(火) 00:41:37ID:wvmjAnmeテーブル名ということでお願いします
0069nobodyさん
2008/02/12(火) 00:44:54ID:???0070nobodyさん
2008/02/12(火) 01:02:47ID:???0071nobodyさん
2008/02/12(火) 01:05:47ID:???0072nobodyさん
2008/02/12(火) 01:07:30ID:wvmjAnmeデータの行数取得
↓
データの追加
という形でやってるのだが
同時にアクセスがあった場合取得と追加のタイミングで
iが10とすると
1が10という数値を取得して11を追加する
そのときに2も10という数字を読んで同じく11を追加することになるんじゃないのか?
そこでファイルで排他ロックをして終わったらロック解除で自分がロックできない場合は処理を中断というのを想像してたんだが
0073nobodyさん
2008/02/12(火) 01:18:43ID:???0074nobodyさん
2008/02/12(火) 01:19:51ID:???$tselectテーブルのnoにたいしてな
0075nobodyさん
2008/02/12(火) 01:21:35ID:???0076nobodyさん
2008/02/12(火) 01:24:11ID:???0077nobodyさん
2008/02/12(火) 01:25:09ID:???0078nobodyさん
2008/02/12(火) 01:26:25ID:???PHP側でINSERTでリトライさせるには普通に行数取得からINSERTをwhileループでいいのかな?
0079nobodyさん
2008/02/12(火) 01:28:44ID:???0080nobodyさん
2008/02/12(火) 01:29:00ID:???0081nobodyさん
2008/02/12(火) 01:30:06ID:???0082nobodyさん
2008/02/12(火) 01:31:59ID:wvmjAnmeもう一度調べなおしてから書き直してみる
いろいろアドバイスどうもです
0084nobodyさん
2008/02/12(火) 02:09:52ID:fBU5wm/gfile_exists()を使ってるんですけど、絶対に存在してるファイルを対象に
してもfalseが返ってきます
マニュアル見たらセーフモードが関連してるというのでそこも確認したら
OFFになっていて、問題なさそうです
何が原因でしょうか?
0086nobodyさん
2008/02/12(火) 02:59:11ID:???それ出したほうが下手に説明するより早い。
0087nobodyさん
2008/02/12(火) 03:21:03ID:???絶対に間違っていないなら、PHPが動くはず
つまりなにかおかしいか間違っているんだよ
試しにソースと同じところにあるファイルとかで試してみたら?
あとはOSとか環境書くとさらによし。
008884
2008/02/12(火) 03:22:15ID:fBU5wm/g$theFile="../../../sample.jpg";
if(file_exists($theFile)){
echo "ファイルあったよ";
}else{
echo "ファイルなかった";
}
これだけです。 指定したファイルが存在してるのは確認済みです。
0089nobodyさん
2008/02/12(火) 03:24:06ID:???ソースと同じ場所にsample.jpgを置いて。
$theFile="sample.jpg";
で試して味噌
0090nobodyさん
2008/02/12(火) 04:29:19ID:???echo mb_strcut("あいう",0,2,"UTF-8");
→何も表示されない
mb_substrだったら正常に動作した
php5.2.4だけど
0092nobodyさん
2008/02/12(火) 08:11:27ID:S5CbnauFどうするのがいいですか?
0093nobodyさん
2008/02/12(火) 08:28:24ID:???0094nobodyさん
2008/02/12(火) 08:46:22ID:???array_intersect
0095nobodyさん
2008/02/12(火) 08:59:36ID:uKoPznXF@ file:///c:/xampp/htdocs/Project/require.php
A c:/xampp/htdocs/Project/require.php
B c://xampp/htdocs/Project/require.php
どれが一番正しいのでしょうか。
BだとSmartyのテンプレートディレクトリまでのパスでエラーが生じたので、
Aに直すとうまくいきました
0097nobodyさん
2008/02/12(火) 10:42:23ID:???0098nobodyさん
2008/02/12(火) 10:43:56ID:uKoPznXF有賀と御座います。
確認してみたところ、
C:\xampp\htdocs\Project
でした。
009998
2008/02/12(火) 10:59:27ID:uKoPznXFところで、英数字の先頭のみを大文字にするような関数ってありませんでしたっけ・・・?
0100nobodyさん
2008/02/12(火) 11:00:52ID:r62/Kn46何か手掛かりがつかめればと思い投稿しました。
phpでサイトを構築しているのですが、
アクセスログを見ると、不審なログが不定期に記録されています。
たとえば、/foo/index.phpにアクセスがあると、その直後に
数秒間隔で、/index.phpへのアクセスログが数件残ります。
全てのユーザーではなく、全体の数パーセントの人です。
裏でアクセスするようなajaxのような仕組みはありません。
プログラムのミスなのかどうかよく分からないのですが、
どこ当たりがおかしいと思われますでしょうか?
宜しくお願いします。
0102nobodyさん
2008/02/12(火) 11:14:50ID:uKoPznXF有難う御座います。
それでできました〜。
0103nobodyさん
2008/02/12(火) 12:10:44ID:nhL1XBd5現在、PHP5が入ってます。
Tidy関数を使いたいと思っているのですが、PHP5の場合、
--With-tidy でコンパイルしたらOKとネットで情報を得たのですが、
いまいちやり方が分かりません。
telnetやSSH経由でサーバにログインして、コマンドを入力する訳ですが、
具体的にどのようなコマンド入力をすれば宜しいでしょうか?
0105nobodyさん
2008/02/12(火) 12:15:43ID:???0110nobodyさん
2008/02/12(火) 16:17:18ID:4oFdYGhc<?php
header("Content-Type: text/plain; charset=Shift_JIS");
print"<a href="http://www......jp">サイトへ戻る</a>\r\n";
print"END\r\n";
?>
<a href=></a>がリンクにならないでそのまま
<a href="http://www......jp">サイトへ戻る</a>がページにでてきてしまします。
リンクできるようにするにはどうしたらいいですか?
0112nobodyさん
2008/02/12(火) 16:27:35ID:4oFdYGhcに、するとエラーになります
0113nobodyさん
2008/02/12(火) 16:28:39ID:???てことで
0114nobodyさん
2008/02/12(火) 16:29:53ID:???すまん。途中で押してしもた
0115nobodyさん
2008/02/12(火) 16:30:31ID:???0117nobodyさん
2008/02/12(火) 16:33:41ID:rr+doGz+ダブルコーテーションの中にダブルコーテーションがあるからじゃ?
PEARのAuthについて質問です。
document見てやったんだけれどもこれってHTTPの内容見られたら
結局パスワード奪われてダメなんじゃないかと思ったんだが
俺なんか見落としてるんでしょうか?
SSLこれって必要だよね?
0119nobodyさん
2008/02/12(火) 16:36:38ID:rr+doGz+スマソ、HTTPヘッダなんだ。
0120nobodyさん
2008/02/12(火) 16:38:21ID:???SSL使ってやったことないからわかんないけど、
Sessionでの認証を簡略化したものだと思ってるんだけど違うのかな
0121nobodyさん
2008/02/12(火) 16:39:10ID:4oFdYGhcAUの携帯でアクセスしてます。
リクエストされたページは表示できません
と、エラーになります
0124nobodyさん
2008/02/12(火) 16:45:38ID:4oFdYGhcheaderのほかにどんな関数がありますか?
phpが無知識なのでわかりません
0125nobodyさん
2008/02/12(火) 16:45:59ID:???これでいいと思うが?ヒアドキュメントとか覚えた方がいいよ
<?php
header("Content-Type: text/plain; charset=Shift_JIS");
?>
<html><body><a href="http://www......jp">サイトへ戻る</a>
END</body></html>
0126nobodyさん
2008/02/12(火) 16:46:57ID:???> 携帯サイトなのでAUでみれなきゃ意味ないので。
意味理解しろ厨房
PHPのデバッグは基本PCブラウザでするんだよ
それすらできないならPHPなんか触るな
0127nobodyさん
2008/02/12(火) 16:47:02ID:???header("Content-Type: text/html; charset=Shift_JIS");
だな
0128nobodyさん
2008/02/12(火) 16:48:53ID:???ちょっと遅れてるから俺が説明しておく
Content-Typeをtext/htmlにしたところauで表示できない
↓
しかたなくtext/plainにするともちろんテキストなのでリンクが表示されない
↓
text/htmlにしてPCでエラー表示を確認しないといけないがそれをしない
こんな感じ
0129nobodyさん
2008/02/12(火) 16:50:39ID:4oFdYGhc試してPCでみてみます
0130nobodyさん
2008/02/12(火) 16:51:56ID:???headerなんかで出さないでも、自分で書けばよくない?
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<head>
<body>
<?php
print "<a href=\"http://www......jp\">サイトへ戻る</a>\r\n";
print "END\r\n";
?>
</body></html>
0132nobodyさん
2008/02/12(火) 16:59:49ID:4oFdYGhc130さんのをやってみます。
0133nobodyさん
2008/02/12(火) 17:01:16ID:???0134nobodyさん
2008/02/12(火) 17:02:06ID:???PHPだけでなくWebも初心者と見た
まぁ、わかるんですがね
0135nobodyさん
2008/02/12(火) 17:05:48ID:???0137nobodyさん
2008/02/12(火) 17:08:50ID:???0138nobodyさん
2008/02/12(火) 17:14:47ID:rr+doGz+俺もSSL使ったことなくてイマイチ理解してないんだ。
PEARのAuth使ってやったことある人はどのように
認証画面を作成してるんでしょうか?
md5とかで暗号化しても結局その暗号化したデータ送られたらダメな気がするんですが。
0139nobodyさん
2008/02/12(火) 17:14:50ID:4oFdYGhcいけないですよね?
いろいろやってもPCは○だけどdocomo、AUでもエラーでした。
そもそもphpがわからないのでどうにもなりそうもないかな。
ありがとうございますた
0140nobodyさん
2008/02/12(火) 17:20:17ID:???PEAR::Authは本当にテスト程度にしか使ったことないけど、
全画面にログイン認証を設置して、ログインできていなかったらログインページに飛ばすというシンプルなもの。
0141nobodyさん
2008/02/12(火) 17:20:27ID:4oFdYGhc130さんの方法でうまくいきました!まじありがとうです!
考えてくれた方々素人しつもんに混乱させてすんません。
0142nobodyさん
2008/02/12(火) 17:21:02ID:???sslはパケットが暗号化して流れるだけだよ。
使う際に特に意識する必要は無いけど、画像へのリンクをhttpsにしないと怒られるけど。
0143nobodyさん
2008/02/12(火) 17:25:35ID:???0144nobodyさん
2008/02/12(火) 17:27:33ID:Eov8TJU+逆に「3」のデータを「03」と表示させる事って出来ないでしょうか?
for($i=0;$i<20;$i++)の時に、10以下は0を付けて表示したいのです。
0145nobodyさん
2008/02/12(火) 17:29:15ID:???PEAR::AuthだろうがSSL使ってないと認証時のHTTP通信覗かれると
パスワード奪われるのは当たり前。
ちゃんとしたければ証明書ぐらい買え。
0148144
2008/02/12(火) 17:33:50ID:Eov8TJU+str_pad($i,2,0,STR_PAD_LEFT)
で、上手くできました。ありがとうございました。
0150nobodyさん
2008/02/12(火) 17:38:20ID:???日曜プログラマには自前で用意したやつで十分
0151nobodyさん
2008/02/12(火) 17:44:12ID:KacNwW2Gif( isset($HTTP_COOKIE_VARS["aaaaaa"]) )
{
setcookie ("bbbb", $HTTP_COOKIE_VARS["aaaaaa"], mktime(0,0,0,12,31,2020), './');
//または.aaaa.comと入れてみたり
}
で、移行する事が出来ませんでした
何か気になるところはありますでしょうか?
0152nobodyさん
2008/02/12(火) 17:57:38ID:rr+doGz+ですよね、やっぱり。
何でPEAR入門とか見ると結構Authが出てくるのか疑問。
これ不完全なセキュリティじゃん。
ありがとうございました。
0155152
2008/02/12(火) 18:17:44ID:???0156151
2008/02/12(火) 18:27:02ID:???簡単なカウンターすら動かないですね…あれぇ…
www.hoge.com/aaaa/のクッキーを
www.hoge.com/bbbb/で呼び出したいだけなんですが…ううーん
0157nobodyさん
2008/02/12(火) 18:29:52ID:???0160nobodyさん
2008/02/12(火) 19:06:03ID:???$array->each($hoge,"methodName");
→$arrayの各要素にHogeオブジェクトのmethodNameメソッドを適用
こういうことをしたいのですが、
SPLの拡張されたArrayにもそのようなものはないようです
こういうことができるようになるエクステンションなどがあれば教えて下さい
0163nobodyさん
2008/02/12(火) 21:09:29ID:???現在のセッションを新たに作り直したいのですが、下のコードでやると、
次のようなエラーができます。
session_start();
// セッションが不正だったので、新しいセッションを作成する
session_destroy();
session_start();
Fatal error: session_start() [<a href='function.session-start'>function.session-start</a>]: Failed to initialize storage module: user
0165nobodyさん
2008/02/12(火) 21:39:17ID:???0166nobodyさん
2008/02/12(火) 22:50:53ID:qqWX9YxW0167nobodyさん
2008/02/12(火) 23:20:27ID:???0168nobodyさん
2008/02/12(火) 23:30:22ID:???( ´・ω・)ノ
0169nobodyさん
2008/02/12(火) 23:35:27ID:qqWX9YxWドキュメントをコマンドラインから検索できる。
0170nobodyさん
2008/02/12(火) 23:40:19ID:???それならない
0171nobodyさん
2008/02/13(水) 00:06:31ID:54ukxXOgみんなドキュメントはブラウザで見てるのかなあ。
0172nobodyさん
2008/02/13(水) 00:30:36ID:???ってアクセスすれば出るから楽だよ
0173nobodyさん
2008/02/13(水) 01:15:39ID:mapjp2bHmaillog
localhost postfix/smtpd[3625]: connect from localhost.localdomain[127.0.0.1]
localhost postfix/smtpd[3625]: disconnect from localhost.localdomain[127.0.0.1]
0175nobodyさん
2008/02/13(水) 02:29:55ID:???0176nobodyさん
2008/02/13(水) 02:34:10ID:???システムコマンドを実行するか、再帰処理でゴリゴリやるかしかない。
0177nobodyさん
2008/02/13(水) 02:34:48ID:???0179nobodyさん
2008/02/13(水) 05:19:34ID:PSygS72Kキー名でなく、「n番目」と指定する形で取り出したいです
0180nobodyさん
2008/02/13(水) 07:02:12ID:???0181nobodyさん
2008/02/13(水) 07:47:56ID:???ある種のフォント(古いのとか、フリーで配布されているもの)が
imagettftextで文字化けしたり、エラーになったりします。
いろいろ調べたところ、
--enable-gd-jis-conv
のオプションを付けていないのが原因っぽいです。
これを有効にするには、yumで管理するのをあきらめて
ソースからインストールしなおすしかないでしょうか?
0182nobodyさん
2008/02/13(水) 07:51:22ID:???0183nobodyさん
2008/02/13(水) 08:35:43ID:???最新のをソースからインストールしたほうがいいとおもふ。
0184nobodyさん
2008/02/13(水) 08:51:05ID:s61mWt+C定数と変数の違いがよくわかりません。
解説サイトなどをみると、富士山は定数だなんていうのをよく見かけます。
しかし遠い未来にもしかしたら別名になってるかもしれないと考えると変数でもいいんじゃないかと思ってしまいます。
そんなこんなで両者の違いがよくわからず・・・
どなたかこんなバカな私が納得できる解説していただける方いらっしゃいませんか?
0186nobodyさん
2008/02/13(水) 09:20:15ID:???そんだけの違い。
富士山の名前も変えたければ変数にすればいい。
ただ、変わることが当分ないだろう名前を変数にする意味があるかどうかは知らない。
0187nobodyさん
2008/02/13(水) 09:25:49ID:???関数のオプション指定とかでよく定数を使う
例えば
define("TYPE-A", TRUE);
define("TYPE-B", FALSE);
function type($var, $type = TRUE)
{
if($type === TRUE)
{
return "TYPE-Aの{$var}です。";
}
if($type === FALSE)
{
return "TYPE-Aの{$var}です。";
}
return FALSE;
}
echo type("テスト", TYPE-A);
こんな感じで、オプション名を分かりやすくとかかな
0188nobodyさん
2008/02/13(水) 09:38:49ID:???0189187
2008/02/13(水) 09:50:51ID:???0190nobodyさん
2008/02/13(水) 10:37:39ID:???define("NG", 0);
define("OK", 1);
define("DELETED", 2);
define("CANCELED", 3);
なかんじ
0191nobodyさん
2008/02/13(水) 11:53:52ID:???0192nobodyさん
2008/02/13(水) 11:56:19ID:???0193nobodyさん
2008/02/13(水) 12:49:07ID:???0194nobodyさん
2008/02/13(水) 12:51:10ID:???必ずしも正しい情報が手に入るはずがないのは承知だろ
0195nobodyさん
2008/02/13(水) 13:27:43ID:???0196nobodyさん
2008/02/13(水) 15:42:39ID:???だから個人で書いてるとあまり存在意義が感じられないんじゃない。
0198nobodyさん
2008/02/13(水) 16:17:39ID:???SQL関係でダルくなった・・・
質問しようにもDB板過疎ってるしなぁ
0199nobodyさん
2008/02/13(水) 16:29:49ID:???たいと思っています。
1:ブログ的に簡単に記事を投稿できる機能
2:紹介した記事のサイトのURLを簡単にメールで閲覧者に送る
機能
3:拍手ボタン的なユーザー評価システム
の3つを必須要素としています。
これらを満たしたおすすめのBLOGやPHPなどがあれば教えてく
ださい。
更に下記機能が可能であれば理想です。
4:閲覧者が読者登録することによりログイン時はワンボタン
で気に入ったコンテンツのURLを送信できる機能
無料が理想ですが有料サービスでもかまいません。
よろしくお願いします。
0201nobodyさん
2008/02/13(水) 16:30:44ID:???ああ、俺もそんな時期あったよ
仕事でSQL詳しい奴と組んで色々教わってから、
よほど凝った設計やら最適化が要るサブクエリでも必要にならん限りは手間感じなくなったけど。
そういやDB板ってあるんだな。行った事ねえw
0202nobodyさん
2008/02/13(水) 16:35:13ID:???0203nobodyさん
2008/02/13(水) 16:37:58ID:???普段自分が使うDBだけでもいいんだけど。
0204nobodyさん
2008/02/13(水) 16:39:44ID:???複雑になりがちなのがつらい。
0205nobodyさん
2008/02/13(水) 17:26:21ID:w/tgHaTQdate("H:i:s", 秒)だと、1970/1/1からの時間になってしまいますよね
0206nobodyさん
2008/02/13(水) 17:34:48ID:???違う。
time(); とか mktime(); で返って来るのが1970年1月1日からの経過秒数。
だから、date("h:i:s",time()); とやれば、今の時間が返って来る。
てか、マニュアル読めよ。
0207nobodyさん
2008/02/13(水) 17:40:46ID:w/tgHaTQ2行目はなしにしてください
秒をカウントしていって、あと●時間と●分と●秒
みたいにしたいのですが、そういう関数はありませんか?
dateだと時間じゃなく日付になります
0208nobodyさん
2008/02/13(水) 17:59:59ID:???それを60で割れば分、更に60で割れば時間が出るが
0209nobodyさん
2008/02/13(水) 18:00:34ID:???0210nobodyさん
2008/02/13(水) 18:07:16ID:w/tgHaTQ$hour = floor($time / 3600);
$minute = floor(($time - ($hour * 3600)) / 60);
$second = floor($time - ($hour * 3600) - ($minute * 60));
今はこうしてますが、それを一発で変換するような関数があればと思いました。
自分で関数化させてみます、ありがとうございました
0211nobodyさん
2008/02/13(水) 18:47:11ID:euh5fNCJ本当にこれで十分なの?特にMySQLの場合。
マニュアルには確かに、
"データベースへの問い合わせなどに際してクォートされるべき 文字の前にバックスラッシュを挿入した文字列を返します。"
って書いてあるけど、いまいち不安で仕方がない。
0212nobodyさん
2008/02/13(水) 18:52:13ID:f/Ao3h5z0213nobodyさん
2008/02/13(水) 18:57:41ID:???addslashesだと一部のケースできちんとエスケープできない場合があるから不十分だよ。
DB毎に用意されたエスケープ用の関数(mysql_real_escape_stringとか)を使ったほうがいいよ。
0214nobodyさん
2008/02/13(水) 19:08:32ID:euh5fNCJありがとう。
おとなしく、専用関数使うことにします。
0216nobodyさん
2008/02/13(水) 19:43:11ID:???重複してエスケープされちゃう。
0217nobodyさん
2008/02/13(水) 19:47:49ID:???ぼくのさいとのプログラムがうごきなくなりました。助けてください
0220nobodyさん
2008/02/13(水) 21:55:05ID:???今まで動作していたものが動作しなくなりました。
どこで引っ掛かっているか確認したところ
どうやら
mb_send_mailやmb_language("Ja")など
mb_で始まるものが利用出来なくなっているようです。
mb_を利用するにはどうすればよいでしょうか?
もしくは
他に代替となるものがありますでしょうか?
宜しくお願いします。
0222nobodyさん
2008/02/13(水) 22:16:21ID:BLl4JBTgphp5.25にバージョンアップしたら
今まで動作していたものが動作しなくなりました。
どこで引っ掛かっているか確認したところ
どうやら
mb_send_mailやmb_language("Ja")など
mb_で始まるものが利用出来なくなっているようです。
mb_を利用するにはどうすればよいでしょうか?
もしくは
他に代替となるものがありますでしょうか?
宜しくお願いします。
0223nobodyさん
2008/02/13(水) 22:20:15ID:mapjp2bH0224nobodyさん
2008/02/13(水) 22:26:53ID:???多分>php.iniで組み込んでないせいだと思うけどこのへんが無いからわからん。
>・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
0226nobodyさん
2008/02/13(水) 22:33:44ID:???0227nobodyさん
2008/02/13(水) 22:35:10ID:mapjp2bHってことなんだけど、どうもエラーが出てしまう。<p>ならイケるのに。
0228nobodyさん
2008/02/13(水) 22:42:41ID:???面白い事してるね。
<a href="">を<a href=\"\">にしてみようか。
とりあえず、参考書を1冊買って熟読する事をオススメする。
0229nobodyさん
2008/02/13(水) 22:47:14ID:mapjp2bH0230nobodyさん
2008/02/13(水) 22:52:07ID:???0233nobodyさん
2008/02/14(木) 02:06:46ID:???自分でアクセスしたときはそうならないならPHPの問題ではないのでは?
特定のユーザというならUser Agentでも調べてみればいい。
スレチガイっぽいのでもう諦めてログなりアクセス解析なりで頑張ってくれ。
0234nobodyさん
2008/02/14(木) 02:17:29ID:???答えようがないと言ってるだろうに。
HTMLでサイト作ったんですがなんかエラーでますってレベルの質問だぞそれ。
0235nobodyさん
2008/02/14(木) 02:34:26ID:fWt27fIevalues以下をつなげて全ての行を同時にinsertする書き方がありますが
PDO(MySQLです)のプリペアードステートメントはどれだけSQL文が長くても問題ないんでしょうか?
0236nobodyさん
2008/02/14(木) 03:11:36ID:???0237nobodyさん
2008/02/14(木) 03:46:35ID:???PHPを置いてるサーバーにsrcで読み込んで、そのページの情報を取得して対応の
データをサーバーから返したいのですがどういった関数やライブラリを利用すればいいでしょうか?
0239nobodyさん
2008/02/14(木) 04:10:37ID:???javascriptしか使えないブログで表示したいってこと?
GETかPOSTか何かでトリガー作ってやって
それをサーバで受けてスクレイピングして結果をjsonか何かで返してやればいいんじゃねえの?
0241nobodyさん
2008/02/14(木) 07:33:04ID:1Zo3u+Bqサーバにsendmailとか入ってないんですが
メール送信にMTAは必須ですか?
0242nobodyさん
2008/02/14(木) 08:29:36ID:1Zo3u+Bqプロバイダのアウトバウンドポート25ブロッキングで送信不可でしたorz
メールを使うテスト環境ってみなさんどうやってますか?
今ほとんどのプロバイダがOP25Bやってますよね?
0244nobodyさん
2008/02/14(木) 09:35:01ID:???または外部のsmtpサーバをアプリケーションレベルで指定する。
0245nobodyさん
2008/02/14(木) 10:35:57ID:???PHPも型の指定必要ないし、MySQLもbool型を自動的にINT型に変えてくれるんだぜ?
PGSQLでやろうと思ったら独自で関数作成しなきゃいけないのにな
まぁ、それだから使いやすいんだけどあまりそういうのに頼るのはよくないな
0246nobodyさん
2008/02/14(木) 10:52:31ID:???0247nobodyさん
2008/02/14(木) 11:22:02ID:???ここは、phpのスレだからMYSQLのこと聞いても>>236のような何の価値もないレスしかかえってこない。
MYSQLなら「max allowed packet」がSQLの最大長だよ。
しかし、このスレに期待して2日も待ったのに、>>232-234って、全く何も役に立たなかった。
0248nobodyさん
2008/02/14(木) 11:47:30ID:???0249nobodyさん
2008/02/14(木) 11:59:58ID:???アクセスログって何?どういうどういう内容のログ?
PHPのサイトって何?PHPでどういう内容でどういうコードを走らせてるんだ?
自分の説明不足でスルーされてるのに気づいてくれ。
0250nobodyさん
2008/02/14(木) 12:13:47ID:???>どこ当たりがおかしいと思われますでしょうか?
プログラムは書かれたとおりにしか動かないので
自分で作ったならお前自身がおかしい
フリーなものなら設置の仕方がおかしいかそういう仕様
これでいいか?
0251nobodyさん
2008/02/14(木) 12:15:33ID:kPTFt31F!"#$%&'()-=^~\|,./\;:@[]<>?_+*`{}
が含まれていたら弾きたいのですが、
エスケープがめんどくさいです・・・。
質問じゃないね、ごめん。
0252nobodyさん
2008/02/14(木) 12:38:04ID:???0253nobodyさん
2008/02/14(木) 12:40:31ID:kPTFt31Fなかなか実行にうつせない
0254nobodyさん
2008/02/14(木) 12:45:52ID:???こんなところに書き込むほうがよっぽど手間
0256nobodyさん
2008/02/14(木) 12:53:28ID:???0257nobodyさん
2008/02/14(木) 12:57:37ID:???ここで聞くより「○○とは」でぐぐる方が早いはずなんだがなー
0258nobodyさん
2008/02/14(木) 14:43:31ID:YYm9cGRI0259nobodyさん
2008/02/14(木) 14:45:33ID:kPTFt31FPgSQLでも?
0260nobodyさん
2008/02/14(木) 14:47:40ID:???お前レベル低すぎだし言ってることが頭悪いからWebから離れたほうがいい
0261nobodyさん
2008/02/14(木) 14:49:07ID:???0262nobodyさん
2008/02/14(木) 14:49:52ID:???みんなこっち行けばいいよ
くだすれPHP(超初心者用)3
http://pc11.2ch.net/test/read.cgi/php/1193295871/
0263nobodyさん
2008/02/14(木) 18:07:34ID:ybagCdX8<p><?php print $hoge; ?>ホゲー</p>
hoge.php
$hoge = 'ほげ';
include('hoge.html'); // $hoge は展開されるが、ホゲーはホゲーにならない
$out = file_get_contents('hoge.html');
$out = mb_convert_kana($out,'k'); // ホゲーはホゲーになるが、$hogeは展開されない
のような<?php 〜 ?>を含むテキストファイルをインクルードしつつ
中の文字列を半角カタカナに変換する方法ってありますでしょうか?
0264nobodyさん
2008/02/14(木) 18:24:45ID:???何がしたいのかわからんが、
$hoge = 'ほげ';
ob_start();
include("hoge.html");
$contents = ob_get_contents();
ob_end_clean();
$contents = mb_convert_kana($contents, "k", "UTF-8");
echo $contents;
0265nobodyさん
2008/02/14(木) 19:01:27ID:???$contents = ob_get_clean();
で一発じゃね?
0266nobodyさん
2008/02/14(木) 20:34:50ID:HAPGXi1v<?
header("Location: index.php");
exit;
?>
を活用していたのですが
headerの前に出力を行なうことになり
使用できなくなりました。
他に2重投稿を防ぐ方法などありますでしょうか?
0267nobodyさん
2008/02/14(木) 20:36:29ID:???一定時間待たなければそのIPから登録することはできない。
こんなんでいいの?
0268nobodyさん
2008/02/14(木) 20:42:37ID:BZwPXo+uhtml記述部分の最初に、
<?xml version="1.0" encoding="UTF-8"?>
と書く必要があるんですが、
<? ?>部分がphp記述部分だと認識してしまうため、Parse errorになります
ここはhtml部分だよとわからせるためにはどうしたらいいでしょうか
0269267
2008/02/14(木) 20:42:48ID:HAPGXi1v重複したものは登録しない
そういえばその方法がありましたね。
IPに関しては社内のものなのであきらめます。
0270nobodyさん
2008/02/14(木) 20:50:21ID:???http://www.php.net/manual/ja/ini.core.php#ini.short-open-tag
0271nobodyさん
2008/02/14(木) 20:54:18ID:BZwPXo+uありがとうございます
助かりました
皆を楽しませるウェブプログラムを作って恩返しします
0273267
2008/02/14(木) 21:11:21ID:HAPGXi1vユーザが投稿後に更新ボタンを押した場合
「このページを再表示するには、以前送信した情報を再送信する必要があります。
何か購入した場合には、取引の重複を避けるため [キャンセル] をクリックしてください。
その他の場合は、[再試行] をクリックして Web ページを再表示してください」
と出るのですが
これを防いで元のページを表示する方法はありませんでしょうか?
header意外に方法があるといいのですが・・・
0274nobodyさん
2008/02/14(木) 21:20:00ID:???>>266で
>headerの前に出力を行なうことになり
って書いてるけど、その前に一度リダイレクトすれば?
0275nobodyさん
2008/02/14(木) 21:22:27ID:???>>273
えーと、リロードしたらそーゆーのは出るし、完全に防げるものじゃないから
同じ情報送られても二度目以降は蹴るようにしてればいいだけよ。
無理にLocationで飛ばさなくてもアンカーで戻るリンク出してるほうがいいかと。
0277nobodyさん
2008/02/14(木) 22:23:02ID:???どうせ見えないんだから。
0278nobodyさん
2008/02/14(木) 23:31:13ID:E6ZjZZkTソースは全てEUC-JPで記述されてます。なぜでしょうか…
0279nobodyさん
2008/02/14(木) 23:38:12ID:E6ZjZZkTPOSTだと文字化けしません。
0280nobodyさん
2008/02/15(金) 00:11:31ID:???日本語が英数文字みたいのになるって事?
何がどう化けるのか書いてごらん
0281nobodyさん
2008/02/15(金) 00:31:21ID:???受け取ったらデコードするだろ。
$myheart = urlencode("ココロにダムはあんのかい?");
で渡して
urldecode($_GET['myheart']);
でデコード。
あと、eucより utf-8で作ったほうがいいよ。色々と。
0282nobodyさん
2008/02/15(金) 00:49:32ID:???fgetcsvで不具合出るし、UTF-8使うか躊躇してるんだが。
0283nobodyさん
2008/02/15(金) 00:57:29ID:???処理速度が倍近くになったし、CPU使用率が導入前と比べて半分位になっている。
今までコードの最適化していたのが、馬鹿らしくなってくる。
こんな感じの最適化でまだありますか?
コードの最適化以外で。
0285278
2008/02/15(金) 09:01:30ID:n/8JdduI>>280さん
<a hlef="test.php?name=<?= $name ?>">
上記でガルルガブリンコという文字を送ると、送り先で文字化けします。 他の日本語も全て化けます。
>>281さん
試してみます!
あと、私も今までUTFを使ってました。EUCは今回初めてです。
なぜUTFが良いのでしょうか?
0287nobodyさん
2008/02/15(金) 09:04:15ID:???0289nobodyさん
2008/02/15(金) 12:41:38ID:???0290nobodyさん
2008/02/15(金) 16:55:03ID:???0291nobodyさん
2008/02/15(金) 16:56:46ID:???PHPで作れないシステムなどない
0292nobodyさん
2008/02/15(金) 16:58:03ID:???0294nobodyさん
2008/02/15(金) 17:09:55ID:???0295nobodyさん
2008/02/15(金) 17:18:55ID:???おまえみたいなサンデープログラマとは違うんだ。
0296283
2008/02/15(金) 17:19:24ID:???これを使うと言語間の処理速度って、どれくらいになるんでしょうね?
C言語>eAcceleratorでのPHP>>>>Java>>>>>>>>>>modulePHP>>Perl>>>>cgiPHP
位ですか?
0297nobodyさん
2008/02/15(金) 17:21:37ID:???0298nobodyさん
2008/02/15(金) 17:25:28ID:ySlHYddO0299nobodyさん
2008/02/15(金) 17:28:02ID:???0300nobodyさん
2008/02/15(金) 17:31:18ID:???0301nobodyさん
2008/02/15(金) 17:33:05ID:???0302nobodyさん
2008/02/15(金) 17:34:58ID:???0303nobodyさん
2008/02/15(金) 17:39:46ID:ySlHYddOアセンブリ?(´,_ゝ`)プッ
0304nobodyさん
2008/02/15(金) 17:49:52ID:???0305nobodyさん
2008/02/15(金) 17:54:12ID:???0306nobodyさん
2008/02/15(金) 17:58:33ID:???ここはPHPスレだ。
他の言語が素晴らしいなんてくだらないこと言ってる暇あったら学べ。
0308278
2008/02/15(金) 19:09:29ID:n/8JdduIありがとうございました。
0309nobodyさん
2008/02/15(金) 20:27:56ID:cmSPDLwZ0310nobodyさん
2008/02/15(金) 20:40:44ID:???エラーメッセージ、きちんと書きなよ。
クォーティングしなくていい。
echo $val["id"];
どうしてもクオーティングしたいなら、
echo "$val[id]"; とか。
0311nobodyさん
2008/02/15(金) 20:40:56ID:???みんな使わないの?理由を教えてください。!
0312nobodyさん
2008/02/15(金) 20:50:34ID:???0313nobodyさん
2008/02/15(金) 20:51:58ID:???ダブルはSQLでたまに使うくらい(最近は直接書くことすくないけど)
コーディング規約、クセなどなどで自由やけど
>>309みたいなやつにはとりあえずシングルメインで使えって言いたい
0314nobodyさん
2008/02/15(金) 20:57:14ID:???0315nobodyさん
2008/02/15(金) 21:05:57ID:???http://framework.zend.com/manual/ja/coding-standard.coding-style.html#coding-standard.coding-style.strings
0317nobodyさん
2008/02/15(金) 23:08:11ID:???0319nobodyさん
2008/02/15(金) 23:16:19ID:???パスワード付きのファイルを直リンのURLでダウンロードできないようにしたいのですがどうすればいいのでしょうか
ネットで無料サンプル探していろいろためしてみたのですが
DLパスワード機能付きのやつでも直接ファイルのURLをいれれば普通にダウンロードできてしまうもんで・・・
0320nobodyさん
2008/02/15(金) 23:19:38ID:???0321nobodyさん
2008/02/15(金) 23:20:04ID:???0322317
2008/02/15(金) 23:20:46ID:???0323321
2008/02/15(金) 23:21:07ID:???そんなことしたら、ダウンロードができなくなる。
スマソ。
0324nobodyさん
2008/02/15(金) 23:21:59ID:???まあそこまでいくと本末転倒だが
0325nobodyさん
2008/02/15(金) 23:22:36ID:???> DLパスワード機能付きのやつでも直接ファイルのURLをいれれば普通にダウンロードできてしまうもんで・・・
そんなの作って公開しているやつのレベルは所詮その程度だなw
0326nobodyさん
2008/02/15(金) 23:23:36ID:???0327nobodyさん
2008/02/15(金) 23:25:14ID:???てきとーにつくってやった
条件満たしてるかはしらんw
<?php
if (isset($_POST['hoge']) && $_POST['hoge'] != '') {
$filename = uniqid();
$data = '<html><head><title>'.$filename.'のページ</title></head><body>'.
htmlspecialchars($_POST['hoge']).'</body></html>';
$ret = file_put_contents($filename.'.html',$data);
if ($ret == false) {
echo '作成失敗';
exit;
}
echo $filename.'.htmlというページを作成';
exit;
}
?>
<form method="post">
<input type="text" name="hoge">
</form>
0328nobodyさん
2008/02/15(金) 23:25:26ID:???phpからストリームで返してやるとかどう?
0329nobodyさん
2008/02/15(金) 23:43:21ID:BJFOhqEp以下のようにしたのですが、削除されません。どこがおかしいのでしょうか?
$file = file_get_contents("test.html");
$file = str_replace("\t","","$file");
0331nobodyさん
2008/02/16(土) 00:39:28ID:???何かと"$file"んな感じに意味なくクヲートしていたことがよくあった。
間違いじゃないけど、見ると恥ずかしい
0332nobodyさん
2008/02/16(土) 01:18:58ID:???>>329 もうちょい具体的に。特に読み込んだデータと変換後のデータの内容。
0334nobodyさん
2008/02/16(土) 02:36:00ID:???クォートで括ったらそれは新しい文字列を生成するってことだ。
変数の内容を展開するオーバーヘッドも発生するし、
何よりそれは文字列リテラルになってしまう為に
参照渡しが必要な場合にはエラーになる。
間違いだし、好みの問題ではない。
0336nobodyさん
2008/02/16(土) 02:52:38ID:???0337nobodyさん
2008/02/16(土) 03:51:29ID:???それが成り立つほど、ゴロっと変わるものですか??
PHP4も、途中で大きく仕様が変わったみたいですが
今PHPで作っても、2〜3年で大規模な修正(=費用)が必要になる??
0338失礼しました。
2008/02/16(土) 03:52:17ID:mhfR9vmNそれが成り立つほど、ゴロっと変わるものですか??
PHP4も、途中で大きく仕様が変わったみたいですが
今PHPで作っても、2〜3年で大規模な修正(=費用)が必要になる??
0339nobodyさん
2008/02/16(土) 04:03:35ID:???0340nobodyさん
2008/02/16(土) 04:09:50ID:???PHPってHTMLに埋め込めますよね?
埋め込んだ場合 通常 index.html なのを index.php にする必要がありますね。
それで index.phpにした奴のソースを覗いてみると、 PHPのスクリプトが消えています。
仕様でしょうか?
0343nobodyさん
2008/02/16(土) 04:24:28ID:???ありがとうございます。
PHP4がサポート終了&既にPHP6が開発中(さらに仕様が変わる)
というのを見まして不安になった次第です。
そういったものを見越す力のある開発会社を見極める必要があるのでしょうが
なかなか難しいです。
機能追加を除けば、最低、2〜3年程度は手を入れずにいたいのですが。。
0344nobodyさん
2008/02/16(土) 04:36:02ID:???あんまり気にしないでいいと思うけどな。
0345nobodyさん
2008/02/16(土) 04:38:06ID:???0346nobodyさん
2008/02/16(土) 04:39:49ID:???0347nobodyさん
2008/02/16(土) 04:47:06ID:???0348340
2008/02/16(土) 05:29:23ID:???0349nobodyさん
2008/02/16(土) 05:39:11ID:???0350nobodyさん
2008/02/16(土) 09:14:28ID:???0351nobodyさん
2008/02/16(土) 09:57:27ID:???0352nobodyさん
2008/02/16(土) 10:35:14ID:???http://php.webmeister-jp.com/archives/2005/08/null.php
0353nobodyさん
2008/02/16(土) 10:59:48ID:???0354nobodyさん
2008/02/16(土) 11:03:18ID:???0356nobodyさん
2008/02/16(土) 11:44:19ID:???0357nobodyさん
2008/02/16(土) 11:48:39ID:???function gohan() {}
function ofuro() {}
function watashi() {}
}
0358nobodyさん
2008/02/16(土) 12:03:10ID:???0359nobodyさん
2008/02/16(土) 12:17:52ID:???0360nobodyさん
2008/02/16(土) 12:57:12ID:???0361nobodyさん
2008/02/16(土) 13:05:52ID:???0362nobodyさん
2008/02/16(土) 13:13:26ID:???function watashi($condom=false) {}
0363nobodyさん
2008/02/16(土) 13:25:20ID:???0364nobodyさん
2008/02/16(土) 15:25:08ID:K3pH787p$num = file("num.txt");としています。
別のファイルで
require("config.php");
$num1 = 〜$numの中に入っているデータの一つ〜
$key = arraysearch($num1,$num);
$title = $item[$key];
こう書いたのですが、$keyがうまく取得できてなくて、
$titleがうまく対応できてません。
どうすれば取得できるのでしょうか?
もしくはもっと良いコードがありますか?
-item.txt-
夏目漱石
樋口一葉
・・・
-num.txt-
natsume
higuchi
・・・
0365nobodyさん
2008/02/16(土) 15:39:40ID:???http://jp2.php.net/manual/ja/function.file.php
FILE_IGNORE_NEW_LINES でどう?
0367nobodyさん
2008/02/16(土) 16:23:15ID:a5LZnn6H0369364
2008/02/16(土) 16:37:33ID:Jf9OUGaE>>365
ローカルにあるPHPマニュアルにはそんなオプション無かった・・・
ありがとうございます。
オプション付けたそのままでは機能しませんでしたが、Emeditorで改行をCR+LFからLFに
変えたところ、うまく動作しました。
>>368
重ねてありがとうございます。
0370nobodyさん
2008/02/16(土) 17:00:04ID:???>このフラグは FILE_BINARY と同時に使用することはできません。 このフラグは PHP 6 以降でのみ使用可能です。
いやいいんだけど、なら早く出してよ!!
0371nobodyさん
2008/02/16(土) 17:08:47ID:???確かにいらないんだけど、PHP5ではデフォルトで onの機能がなくなるというのは、かなり衝撃的。
ほかにもこう言うのあるの?
0373nobodyさん
2008/02/16(土) 17:37:04ID:???0374nobodyさん
2008/02/16(土) 17:42:35ID:???http://jp2.php.net/manual/ja/ref.info.php
magic_quotes_gpc "1" PHP_INI_PERDIR PHP <= 4.2.3 では PHP_INI_ALL。PHP 6.0.0 で削除されました
PHP5.2の php.ini-distも
; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = On
ってなってるし。
0375nobodyさん
2008/02/16(土) 17:45:02ID:???0377nobodyさん
2008/02/16(土) 19:38:40ID:???0378nobodyさん
2008/02/16(土) 19:49:35ID:???コンストラクタで入れれば?
class hoge {
var $a;
function __construct() {
$this->hoge();
}
function hoge() {
$this->a = 10*10;
}
}
0380nobodyさん
2008/02/16(土) 21:08:53ID:???クラス外で普通に変数定義するときは演算もできるのに
0381nobodyさん
2008/02/16(土) 21:11:33ID:???0384nobodyさん
2008/02/16(土) 21:28:30ID:???PHP5では__constructが定義されてる場合、クラスと同名のはコンストラクタとは扱われない。
PHP4ではクラスと同名ののみコンストラクタとしてあつかわれる。
0386nobodyさん
2008/02/16(土) 21:37:41ID:???http://jp.php.net/manual/ja/migration4.initializers.php
0388nobodyさん
2008/02/16(土) 21:43:57ID:???PC2Mというスクリプトにあるr.phpにリンクする先のサイズを表示したいのですが、ネット上にあるWebpageに限らずなんでもファイルのサイズをゲットする方法が分かりません。
教えて下さいお願いします。
0390388
2008/02/16(土) 22:34:32ID:???$ary = get_headers($_url,1);
$size = $ary[Content-Length];
こんなかんじですか?
ありがとうございます。
0391nobodyさん
2008/02/16(土) 22:59:31ID:???php_value memory_limit 5M
php_value post_max_size 5M
php_value upload_max_filesize 5M
と書いてphpプログラムがあるフォルダにあげてプログラムを実行したら
サーバーエラー500になるのですが
この鯖ではこの設定はできないってことでしょうか?
0392nobodyさん
2008/02/16(土) 23:01:09ID:???↓
$size = $ary["Content-Length"];
だった。orz
0394nobodyさん
2008/02/16(土) 23:17:22ID:???0395nobodyさん
2008/02/16(土) 23:19:35ID:???無料のレンタルサーバーなんですが
0397nobodyさん
2008/02/16(土) 23:26:12ID:???0398nobodyさん
2008/02/16(土) 23:59:31ID:???$authobj = new("DB", $params, "funcLogin");
とした場合、
$authobj -> start();
でセッション管理&未認証ならfuncLogin()に適切な引数が与えられてログインフォームが表示されますが、
$authobj->start();
をhtmlの出力前に入れないとログイン時に当然ながら、ヘッダ弄れなかったよーってWarningが出るし、
出力後に書いたら書いたで、フォームの表示が<html>の前になり構造としておかしくなるので困ってます。
このため、start()でセッション管理のみ行い、メタタグなどの出力後に好きな場所でフォームを表示したいなーって思ってます。
0400nobodyさん
2008/02/17(日) 00:08:46ID:???> 出力後に書いたら書いたで、フォームの表示が<html>の前になり
ごめ、意味わからん・・・
どんなソース書いてるのよ?
0402nobodyさん
2008/02/17(日) 00:19:22ID:???「フォームの表示が<html>の前にな」るアナタの書き方が悪いだけじゃん。
PEAR::Authもstart()も関係ない。
0404398
2008/02/17(日) 00:53:47ID:???うぇwwまじすか。
<?php
print "<html> ・・・(略)・・・<body>";
$authobj->start();
・
・
・
?>
・・・
</html>
ってすれば表示自体は問題ないんですが、>>398に書いたようなheader already sentのWarningが出ちゃいます。
スマートな書き方があれば教えてください。。。
0405nobodyさん
2008/02/17(日) 01:00:42ID:???function funcLogin(){
echo '<form>〜</form>';
}
$authobj->start();
echo '<html>〜</html>';
て流れになって悩んでるのか?
function funcLogin(){
$flag_login = true;
}
$authobj->start();
echo '<html>〜';
if($flag_login) echo '<form>〜</form>';
echo '〜<html>';
で解決だと思うんだが?
0406nobodyさん
2008/02/17(日) 01:07:15ID:???要は なにもfuncLogin内でHTML出力する必要はない ってこと
0407398
2008/02/17(日) 01:16:07ID:???今のところ(Warningが出るほう)こんなかんじです
$authobj = new Auth("DB", $params ,"funcLogin");print "<html>・・・<body>";
$authobj->start();
if($authobj->getAuth){
$user = $authobj->getAuth();
print "ようこそ{$user}さん"
}
function funcLogin($username, $status) {
if ($status == AUTH_WRONG_LOGIN)
print "パスワード違うよー<br />";
print "<form ・・・ ユーザー名とパスワードフォーム・・・</form>";
}
こんな感じのサンプルでよくある感じのです。
0408398
2008/02/17(日) 01:22:04ID:???たびたび入れ違いになって申し訳ないです(´・ω・)
うぉ、まさにそれです!!
確かに関数内でフォーム出力する必要は無かったですね・・・
サンプルで凝り固まってました。この数時間は何だったんだぁ・・・!
本当にありがとうございます。
0409nobodyさん
2008/02/17(日) 01:32:21ID:???0411nobodyさん
2008/02/17(日) 04:11:57ID:yKIXzCES$ php -v
PHP 5.2.5 (cli) (built: Feb 16 2008 02:53:14)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
$ php -a
Interactive shell
php > foo();
PHP Fatal error: Call to undefined function foo() in php shell code on line 1
$
0413nobodyさん
2008/02/17(日) 04:21:14ID:yKIXzCESエラーはわかるよ。
それですぐ終了するのが嫌なの。
0414nobodyさん
2008/02/17(日) 04:25:21ID:???メッセージの意味わかってないんじゃないの
0415nobodyさん
2008/02/17(日) 04:27:58ID:yKIXzCES0417nobodyさん
2008/02/17(日) 04:40:00ID:???0418nobodyさん
2008/02/17(日) 06:57:38ID:???0420nobodyさん
2008/02/17(日) 11:17:26ID:yKIXzCESん?どういう意味?
0421nobodyさん
2008/02/17(日) 13:01:54ID:???プログラミングは初心者です。
普段はマカーなのですが開発はwinでやります。
無料のプログラムソフトをご存知でしたら伺いたいのですが、いかがでしょうか
0422nobodyさん
2008/02/17(日) 13:11:33ID:???個人的にはMacでも使えるしEclipseをおすすめしたいがあれは全くの初心者には何かと難しいと思う。
0423nobodyさん
2008/02/17(日) 13:18:14ID:???> 保守用の書き込みスクリプトを作ろうと思います。
それは止めてください。
でもプログラミングは頑張って下さい。
0424nobodyさん
2008/02/17(日) 13:19:38ID:???winやmacの出来合いのプログラム組み合わせて操作のマクロ作るほうがよっぽど簡単だよ
0425nobodyさん
2008/02/17(日) 13:21:00ID:???ありがとうございます。全くの初心者なので聞いたことのあるPHPスクリプトなどあさってみようと思います。
>>423 自重します><
週に一度圧縮のある日に使いたくて、、、
0428nobodyさん
2008/02/17(日) 14:35:35ID:???Proxy判定されて書き込めないんじゃね?
0429nobodyさん
2008/02/17(日) 14:41:41ID:???なんで、そこでproxyの話が出て来るんだよw
phpじゃ無理っていうのも完全に的外れだし、
知ったかはどっかいけよ。
0430nobodyさん
2008/02/17(日) 14:44:36ID:y+G7p60c<?php
header("Content-type: image/png");
$im = imagecreatetruecolor(200, 15);
$dummy = imagecolorallocate($im, 0, 0, 0);
$bg = imagecolorallocate($im, 0, 0, 0);
$c = imagecolorallocate($im, 0, 200, 200);
imagefilledrectangle($im, 0, 0, 199, 14, $bg);
$text = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$font = './slkscr.ttf';
imagefttext($im, 6, 0, 1, 10, ($c * -1), $font, $text);
imagepng($im);
imagedestroy($im);
?>
↓"M" と "N" だけが何故か崩れる…
ttp://sylphys.ddo.jp/upld2nd/pc3/src/1203226898796.png
↓使ってるフォントはコレ
ttp://www.kottke.org/plus/type/silkscreen/
0431nobodyさん
2008/02/17(日) 14:52:51ID:y+G7p60cPHP 5.2.5
bundled (2.0.34 compatible)
です
0434nobodyさん
2008/02/17(日) 15:12:04ID:???問題点が違う。
自動書き込みのスパム連投なら規制食らうだろうがそれもまた別問題だし。
0436nobodyさん
2008/02/17(日) 17:10:22ID:???0437nobodyさん
2008/02/17(日) 17:31:10ID:???わかってるから言ってる。
PHPに限らんがプログラムで投稿処理するのはブラウザがやってることを自動化してるだけだ。
お前さんこそなんでできないと言い切れるのか説明してみ。
0438nobodyさん
2008/02/17(日) 17:55:08ID:???> PHP使ってるヤツらって
> htmlspecialchars($_GET['text']);
> こんなコード書いてる!
> m9(^Д^)プギャー
とありますが、上のコードの何が問題なんでしょうか?
教えて下さい。
0440nobodyさん
2008/02/17(日) 18:04:20ID:???0441nobodyさん
2008/02/17(日) 18:05:52ID:???0442nobodyさん
2008/02/17(日) 18:48:47ID:???0443nobodyさん
2008/02/17(日) 18:52:02ID:???完璧な答えが返ってくるだろうよ
0444nobodyさん
2008/02/17(日) 18:53:40ID:???0445nobodyさん
2008/02/17(日) 19:10:39ID:???プロキシ判定がどうやって行われているか知っている?
知っているならいってみて。
0446nobodyさん
2008/02/17(日) 19:18:00ID:???0447nobodyさん
2008/02/17(日) 19:19:13ID:???いい加減あきらめろ。
0448nobodyさん
2008/02/17(日) 19:25:01ID:???0449nobodyさん
2008/02/17(日) 19:27:25ID:???0450nobodyさん
2008/02/17(日) 19:30:04ID:???http://akid.s17.xrea.com/
これみてどう反論するか見ものだw
0452nobodyさん
2008/02/17(日) 22:48:53ID:???Proxy特有の環境変数の有無
リモートホストが逆引の可否
0453nobodyさん
2008/02/17(日) 22:55:53ID:bioqKdBhsystemやexecで直接passwdコマンドを叩くわけにもいかない、というかいけないし。。。やはり、DBなんかでワンクッション置いた複雑な仕組みになりますか?
0454nobodyさん
2008/02/17(日) 22:57:48ID:???0455nobodyさん
2008/02/17(日) 22:59:13ID:???>ポート精査(80 3128 8080がオープンか)
ちょっと違う。決め打ちでポートをチェックするんじゃなくて、
アクセスしてきたリモートのポート番号でオープンかどうかをチェックするべき
0456nobodyさん
2008/02/17(日) 23:12:01ID:???0457453
2008/02/17(日) 23:13:30ID:bioqKdBhまたそうならば、サービスの中には、ネット上でパスワードの登録や変更ができるものがありますが、そういったサービスの仕組みってどうなっているのか少しでもよいので是非教えていただきたいです。
0458nobodyさん
2008/02/17(日) 23:19:42ID:???0459453
2008/02/17(日) 23:23:00ID:bioqKdBh0460nobodyさん
2008/02/18(月) 01:18:02ID:???Webサービスの1ユーザーのパスワード変更と、サーバのパスワード変更じゃ
危険性の度合いが桁違いってことは分かるだろ?
0461nobodyさん
2008/02/18(月) 01:28:14ID:???SSHでやれば安全で、httpdでやれば危険っていうのは安易すぎるだろ?
セキュリティーとプロトコルの問題を混同しないように。
0462nobodyさん
2008/02/18(月) 01:35:41ID:???確実にサーバの遠隔操作が可能だと思うんだが。
既存の確立した技術を使わずに、敢えてhttp(s)を選ぶならそれなりの
理由が必要だが、その理由は今のところ提示されていない。
だからSSHを勧めたわけでプロトコルに論点を移した覚えはないんだが、
君はhttp(s)でやったほうがいいと思うのかい?
0463nobodyさん
2008/02/18(月) 01:38:12ID:???0464nobodyさん
2008/02/18(月) 01:52:41ID:???OSレベルの物かワカラン。
0465nobodyさん
2008/02/18(月) 02:13:24ID:???俺がhttpsでやった方がいいと思うかじゃなくて、
元の質問者がweb上で何とかしてやりたいと言っているときに、
SSHでやればいいって全然答えになっていないだろ。
それでやれればそんな質問はしないわけだろうし。
俺もその手の仕様は客から言われたことがあるが、
客にSSH使ってやってくれとはいえないから、
"仕方なく"web上で簡単にユーザーの管理ができるようにしてやった。
web上でも安全に実装する方法はいくらでもある。
0466nobodyさん
2008/02/18(月) 02:26:34ID:???単に知らずに言ってるだけかもしれないから、客からの依頼だろうと
SSHをまず勧めるけどね。それでどうしてもWebでってのなら、君と
同じく「仕方なく」そういう機能作るだろうけど。
SSHのように仕組みが出来上がってるものと同程度のセキュリティを
Webサービスで実現するには時間やコストがかかるし、単に技量の
違いかもしれないけど、「web上でも安全に実装する方法はいくらでもある」
なんてことは言えないもんでね。
0467453
2008/02/18(月) 02:33:20ID:otM/IOKBWebからlinuxユーザをサーバに追加したいのですが、その過程でのユーザのパスワードを設定について質問したのです。
今のところPHPでSSHを使うとなると右のような関数を想定しています。ttp://jp.php.net/manual/ja/ref.ssh2.php
ただ、これとは別の問題になるのですが、例えばssh2_execのような関数を使ってpasswdコマンドを打つと、対話形式の入力になるのでうまくいかないという問題もあります。
0468nobodyさん
2008/02/18(月) 02:34:09ID:???話を進めましょうか?
0469453
2008/02/18(月) 02:39:06ID:otM/IOKB0470nobodyさん
2008/02/18(月) 02:50:25ID:???http://www.nabble.com/-PHP-users-32869--CentOS%2BPHP-%E3%81%A7%E3%81%AE%E3%80%81%E3%83%A6%E3%83%BC%E3%82%B6%E7%99%BB%E9%8C%B2(%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E5%AE%9F%E8%A1%8C%E3%81%AE%E5%8F%AF%E5%90%A6)-td13744873.html
0471453
2008/02/18(月) 02:59:50ID:otM/IOKB0472nobodyさん
2008/02/18(月) 05:22:19ID:bug4h3noif(!$kekka){$mes = 'error';}
は
isset($var) or $mes = 'error';
って書けるのに
$kekka = isset($var);
if(!$kekka){return false;}
は
isset($var) or return false;
だと
Parse error: syntax error, unexpected T_RETURN
ってなるのはなぜですか?
ちなみに
isset($var) or (return false);
isset($var) or return(false);
でもダメでした
0473nobodyさん
2008/02/18(月) 05:27:44ID:???0474472
2008/02/18(月) 05:34:37ID:bug4h3no0475nobodyさん
2008/02/18(月) 05:43:36ID:???0476nobodyさん
2008/02/18(月) 07:11:58ID:???調べると0が返ってきます。
fopenを使用すると大丈夫でした。
何か設定が必要なのでしょうか。
0478nobodyさん
2008/02/18(月) 07:53:32ID:???0479nobodyさん
2008/02/18(月) 07:57:45ID:???returnはそもそも関数などから抜けされるものなのに
returnを何かと比較しようとして扱うのが間違いなんじゃない?
0480nobodyさん
2008/02/18(月) 08:10:22ID:???でいいじゃん
0482nobodyさん
2008/02/18(月) 10:54:23ID:???いろいろ原因を探ったところ、ヘッダー内の各ヘッダを区切る\r\nという改行を\nにすればよいようなのですが、
これはどこの設定に起因するものなのでしょうか?
phpの設定が以前と何か違うからなのでしょうか?それともpostfix側の設定の問題なのでしょうか?
あるいはOSの設定に変化があったからなのでしょうか?
0483nobodyさん
2008/02/18(月) 10:56:44ID:???if (isset($var) == false) {
return false;
}
$kekka = $val;
0489nobodyさん
2008/02/18(月) 12:33:45ID:Ja8roiz2all-in-oneのものをインストールして、それに日本語化パッチを当ててみたのですが、
対応していないらしく、2割くらいしか日本語化されませんでした。
どなたか、all-in-oneで日本語化にも対応しているものが落ちているurlを教えて頂けないでしょうか・・・
0490476
2008/02/18(月) 12:38:55ID:dc24Ag74>>476
サーバーOS:Linux
PHP:5
test.php
<?
if(file_exists("http://yahoo.co.jp/index.html")) print "OK";
?>
エラーメッセージ:無し
0492nobodyさん
2008/02/18(月) 12:46:17ID:???http://jp.php.net/manual/ja/function.file-exists.php
0493nobodyさん
2008/02/18(月) 12:51:06ID:???FTPもできるっぽい。
http://jp2.php.net/manual/ja/wrappers.ftp.php
ファイル名が使えるところにURLが使えるんじゃないかって自然に発想できる人が
ある意味うらやましい。fopenで httpとか書かれてると、本能的に身構えてしまう。
>>492
httpラッパは statファミリをサポートしていない。
0494nobodyさん
2008/02/18(月) 13:24:52ID:???http://mergedoc.sourceforge.jp/
0495nobodyさん
2008/02/18(月) 13:28:59ID:???0496nobodyさん
2008/02/18(月) 13:34:08ID:???> ファイル名が使えるところにURLが使えるんじゃないかって自然に発想できる人が
> ある意味うらやましい。fopenで httpとか書かれてると、本能的に身構えてしまう。
知ってるか? メモ帳だってファイル名にURL使えるんだぜ。
EXCELもな。
0498nobodyさん
2008/02/18(月) 13:54:54ID:???0499nobodyさん
2008/02/18(月) 14:03:01ID:???0500nobodyさん
2008/02/18(月) 15:09:19ID:???0501nobodyさん
2008/02/18(月) 16:11:34ID:???0502nobodyさん
2008/02/18(月) 16:30:39ID:???Zend Frameworkで苦しんでるが社用物だからコード晒せないしなあ
問題切り分け中だが、切り分け終わったら自分で対応するしなw
お暇ならなんかエスパーしてくれ 「この辺が落とし穴だze」とか
0503nobodyさん
2008/02/18(月) 16:34:55ID:???メール送信とDBインサート周りでコケてたのだが、
無駄なクオートがあったのでzend_validationに書き換えたらいけた
スレ汚しすまそ
0505nobodyさん
2008/02/18(月) 16:44:22ID:F3LP+Vno2chのbbsmenu.htmlからカテゴリと板名を分けて抽出したいんだが、
うまい方法が思い付かん。
カテゴリリスト→板名リストと遷移するのが前提。
0506nobodyさん
2008/02/18(月) 16:52:58ID:???0508nobodyさん
2008/02/18(月) 17:48:16ID:???つhttp://www.php.co.jp/
0509nobodyさん
2008/02/18(月) 19:05:43ID:???$aaa{0}
ってどういう意味ですか??
$aaa[0]ならわかるのですが。
perlならハッシュのことだというのは分かるのですがPHPでもそうなんでしょうか?
0510nobodyさん
2008/02/18(月) 19:06:46ID:LoQffYNU自分のPCの画面では一分間何も表示されなくて、その後、6回書き込まれた掲示板が表示されます。
別に自分の画面は表示されなくていいんですが、
他の人のPCでこの1分間の間に掲示板にアクセスした場合、表示されるんでしょうか?
あとこの1分間の間に閲覧者が書き込みを行うこともできますか?
その時の書き込みの順番は、自分が6回書き込んだ後に閲覧者の書き込みになるのではなく
ちゃんと割り込んで書き込みできますか?
多分大丈夫だとは思うんですけど心配になったので一応聞いてみました。
0511nobodyさん
2008/02/18(月) 19:14:41ID:O2zzThQYカスタム関数のdefaultを空白('')にして、かつ、もし値があればstring_format(%0.1fなど)して表示するにはどうすればいいですか?(できればif文を使わずに)
現状では、値が無い場合に0.0という表示が必ず出てしまいます。
defaultを先にしても後にしても同様です。
どなたかお願いします。
0512nobodyさん
2008/02/18(月) 19:22:26ID:???>$aaa{0}
>ってどういう意味ですか??
>$aaa[0]ならわかるのですが。
デバッグしてみればわかるでしょうに。
一緒。
0513509
2008/02/18(月) 19:33:04ID:???ありがとうございましたm(_ _)m
0514nobodyさん
2008/02/18(月) 19:59:27ID:???まず何からしたら良いのか徹底的に指導願いします
0515nobodyさん
2008/02/18(月) 20:00:09ID:???0517nobodyさん
2008/02/18(月) 20:16:36ID:???何から、ねえ。
別に公開しなけりゃ好き勝手に遊べばいいんじゃねーの。
てことでローカルホストでwebサーバ走らせる勉強から。レンタルサーバで馬鹿やると恥ずかしいだろうからね
公開サービスを目指すなら、危険性のある事をある程度は把握しといた方がいいな
ttp://www.atmarkit.co.jp/fsecurity/index/index_hoshino.html
なんかがまとまってて判りやすい方かな。
0518nobodyさん
2008/02/18(月) 20:21:20ID:???0519nobodyさん
2008/02/18(月) 20:22:46ID:???0520nobodyさん
2008/02/18(月) 20:22:55ID:???まずプログラム基礎を理解するために、
ブラウザ以外の特別な環境が必要ないJavaScriptでちょっとしたもの書きながら勉強するのがお勧め。
JavaScriptがある程度理解できれば、その他の言語もある程度わかるはず。
とくに目標がないなら、PHPからはじめることはないからね。
0521nobodyさん
2008/02/18(月) 20:32:05ID:???このテキストのこの単語がわからないとか、この機能がわからないってのなら説明できる。
でも全部教えては無理よ。とりあえず>>1-8のテンプレ読んで、
あとは「PHP 初心者」あたりでぐぐって出たサイト一通り見てはどうだろ。
0522514
2008/02/18(月) 20:34:12ID:???テンプレをじっくり読んできます。
0523514
2008/02/18(月) 20:38:02ID:YSts7gLU失礼しました。
0524nobodyさん
2008/02/18(月) 21:56:26ID:???そのまま使うのではなく、自分で考える事が重要だ。
考えずに使ってたらおにいたんがハッキングしちゃうからな。
0526nobodyさん
2008/02/18(月) 22:00:21ID:???0527nobodyさん
2008/02/18(月) 22:08:27ID:???$HENSU[$a] = "".$_POST["$HENSU[$a]"]."";
↑の様に記述したのですが取り込むことが出来ません
具体的にどのようにすれば解決できるのかご教授お願いいたします
(※$aは1〜30まであります)
0528nobodyさん
2008/02/18(月) 22:10:05ID:???正しくは
$HENSU[$a] = "".$_POST["HENSU[$a]"]."";
↑で取り込めません
0529nobodyさん
2008/02/18(月) 22:10:32ID:Cm9tgJOR0531nobodyさん
2008/02/18(月) 22:21:55ID:xGg4BipF確実にstrlenがコールできるなら良いのですが
strlenはmb_strlenに置換されてたりする場合があるかと思うので、
とても不安です。
0533nobodyさん
2008/02/18(月) 22:29:16ID:YSts7gLUマニュアルをコピペしてそれを使うなという事でしょうか?
0534nobodyさん
2008/02/18(月) 22:37:00ID:???0535nobodyさん
2008/02/18(月) 22:56:36ID:???JavaScriptとPHPどっちが難しいと言われればJSのが難しかったなw
あれ色んな記述ができすぎるからプログラム初心者には向かないんじゃね?
0536nobodyさん
2008/02/18(月) 23:02:24ID:???言語の難易度はポインタとオブジェクト指向で決まる
0538nobodyさん
2008/02/18(月) 23:07:59ID:???ActionScriptじゃないのかそれ
0540nobodyさん
2008/02/18(月) 23:19:00ID:Ez7ZH7Qxnewがあるとか関係無いから。
0541nobodyさん
2008/02/18(月) 23:23:05ID:???所謂現状のJavaScriptはプロトタイプベース言語であってクラスベースじゃねーよ
もちろん仕様三版にもクラスって言葉は出て来るけどクラスベースな言語で言う「クラス」としてじゃない。
classって言葉自体は単なるFuture Reserved。
2.0仕様がクラスベース言語として生まれ変わるバージョン。
タマリンや、ある意味での先行実装であるActionScriptが参考になる
0542nobodyさん
2008/02/18(月) 23:24:55ID:???JavaScriptはオブジェクト指向言語なんだけど。
0543nobodyさん
2008/02/18(月) 23:26:53ID:???0544nobodyさん
2008/02/18(月) 23:30:47ID:???ブラウザによっては動かなかったとしても、おおまかなことが学べればいいんだし。
変数の使い方、関数やオブジェクトの使い方、条件処理、ループ処理なんかの基礎的なことができれば。
0545nobodyさん
2008/02/18(月) 23:35:35ID:xGg4BipFstrlenを確実に呼び出すにはどうしたらいいの?
っていうか
$foo="まこ"
$cnt=0;
while($foo as $dummy) { $cnt++;
0546nobodyさん
2008/02/18(月) 23:38:51ID:???0547nobodyさん
2008/02/18(月) 23:40:29ID:???0549nobodyさん
2008/02/18(月) 23:46:03ID:???0551531
2008/02/18(月) 23:50:28ID:???お邪魔したし真下
<?php
function strbyte($str) { $cnt=0; while($str[$cnt]) {$cnt++;} return $cnt; }
$foo="マ○コabdアの川流れ"; $encs = array('sjis-win', 'eucjp-win', 'utf-8');
foreach ($encs as $enc) { var_dump(strbyte(mb_convert_encoding($foo, $enc, 'sjis-win'))); }
0552514
2008/02/19(火) 00:05:59ID:OsGt77+r次から次へと新しい事を発見してキリがないなっ!と思いました。
某所でアップロードプログラムはセキュリティに気をつけてくださいってのがいまいち理解できなかったです。
今日は寝ます。ありがとうでした。
でわ
0554nobodyさん
2008/02/19(火) 00:25:27ID:???>>531 じゃないけど、そうらしい。
http://jp2.php.net/manual/ja/ref.mbstring.php#mbstring.overload
0555nobodyさん
2008/02/19(火) 00:26:17ID:???http://jp2.php.net/manual/ja/ref.mbstring.php#mbstring.overload
0556531
2008/02/19(火) 00:31:38ID:???これでいいっぽいです
失礼しました
http://jp2.php.net/manual/ja/ref.mbstring.php#55832
function str_sizeof($string) {
return count(preg_split("`.`", $string)) - 1 ;
}
0557553
2008/02/19(火) 01:15:18ID:???知らなかった。ありがとう。
0558nobodyさん
2008/02/19(火) 01:28:40ID:???return count(preg_split("`.`", $string)) - 1 ;
rerurnの後のいろいろ処理を付け加えるのは美しくない!
見にくい!
count関数の中に関数いれるのは
処理が重くなる、美しくない
何でもかんでも1行プログラミングにするな!
コーディングで考える優先順位
1.負荷
2.見やすさ
俺ならこう書く
$string = preg_split("`.`", $string);
$string_count = count($string)-1;
return $string_count;
0559nobodyさん
2008/02/19(火) 01:33:35ID:???公式に書いてあるのはそれがシンプルだってことじゃない?
いちいち変数に入れる方が無駄だと思うし、処理を一括できるほうが美しいと思う。
処理の意味も関数名でわかるし。
0560nobodyさん
2008/02/19(火) 01:33:39ID:???0563nobodyさん
2008/02/19(火) 01:50:02ID:???実際の実行時は同じってことはないのかね??
といいつつも、複雑な1行だと却って構文解析?の時間がかかりそうな気がする
オレがいる。
0564nobodyさん
2008/02/19(火) 01:59:27ID:???括弧連鎖が嫌なら複数行に開くし。
スコープ次第では実行時解釈で縮まるんだろうかね。
0565nobodyさん
2008/02/19(火) 02:03:15ID:???0566558
2008/02/19(火) 02:15:19ID:???低脳土方職人にはわかるまい
わかりやすい変数にいれて、みやすくしても処理速度は0.000001秒くらししか変わらん
見にくいコードにによる全体的な作業ロスを考えろ
俺はチーム作業が多いから
見易さ重視になってるし
みにくいコードにわかりやすくコメントまで付けてるよ
0567nobodyさん
2008/02/19(火) 02:15:48ID:???そのために正規表現で分割してその数カウントしてバイト出すするなんて無駄にも程がある。
0568558
2008/02/19(火) 02:18:32ID:???最高でも2個くらいまでにしてくれ
0569nobodyさん
2008/02/19(火) 02:19:04ID:???そんなことはいちいち言うことじゃない。基本だ。
そして、>>558は可読性の面においてもあんまり必要ないんじゃないの?って話だ。
自分のルールに反論されたからって喧嘩腰で返すのは子供だ。
0570nobodyさん
2008/02/19(火) 02:22:53ID:???返り値が一目で判断できる変数名にして欲しい
0571558
2008/02/19(火) 02:26:46ID:???簡単にいえばバカでも、すぐわかるようなコードじゃないと
作業効率は落ちるんだよ
0572nobodyさん
2008/02/19(火) 02:28:42ID:???そーゆー書き方もアリだけど、一行で書くのもアリなの。
んなことでむきになってどうすんの。
0573558
2008/02/19(火) 02:32:31ID:???複数人で共同作業すれば、どこでも同じ
ベストは誰が見ても一目でわかるコード
負荷がかからないなら、できるだけわかりやすいコードにした方がいいよ
0574nobodyさん
2008/02/19(火) 02:38:33ID:???return の後を変数にするか関数で一行で書くかは場合によりけり。
一行で書けるコードをわざわざ代入連発するより、一行で書いてコメント添えるだけでも通じる。
負荷が少ないからといってリソース使いまくっていいわけでもない。
俺ルールの押し付けもほどほどに。あともうこの話題はスレ違い。
0576nobodyさん
2008/02/19(火) 02:41:14ID:???同意。全然汚くない。
これが汚いのならPEARのソースは悲惨なことになる。
百歩譲って見にくいというなら、俺ならpreg_match_countとか新しい関数を定義し
return preg_match_count($str, "`.`");
とする。
チームがどうとか上司がどうとか誰も聞いていないし聞きたくない。
そんなに見にくいならLispでも覚えるか、新しい眼鏡買ったらいいんじゃね
0577558
2008/02/19(火) 02:48:05ID:???趣味でサイト作りするなら
オナニーコード書いてる方がいいかもね
他人から見たオナニーコードほどきもいもんんはないよ
俺は相手を気遣ってコードを書いてるから
どうしても複雑なコードになってしまうときは
かなりわかりやすくコメントを書くよ
0578nobodyさん
2008/02/19(火) 02:50:39ID:???0580558
2008/02/19(火) 02:52:03ID:???0581nobodyさん
2008/02/19(火) 02:53:32ID:???0582558
2008/02/19(火) 02:54:39ID:???0583nobodyさん
2008/02/19(火) 02:55:25ID:???まあ放置だ。今回はNGしやすい。
0584558
2008/02/19(火) 02:56:58ID:???しかも俺俺関数で返しやがったら最悪
0585nobodyさん
2008/02/19(火) 03:14:28ID:???0586558
2008/02/19(火) 03:49:50ID:???$string_count = count($string)-1;
return $string_count;
1.見やすい
2.コード拡張しやすい
return count(preg_split("`.`", $string)) - 1 ;
1.見にくい
2.コード拡張しにくい
ちょっとしたコード拡張のために
わざわざ分解しないとけいない時間ロス
0587558
2008/02/19(火) 03:59:21ID:???function str_sizeof($string) {
$string = "";
$string_count = 0;
$string = preg_split("`.`", $string);
$string_count = count($string)-1;
return $string_count;
}
0588558
2008/02/19(火) 04:00:51ID:???function str_sizeof($string) {
$string_count = 0;
$string = preg_split("`.`", $string);
$string_count = count($string)-1;
return $string_count;
}
0589nobodyさん
2008/02/19(火) 04:32:57ID:???0590nobodyさん
2008/02/19(火) 07:13:14ID:???短く書いたら処理速度も速くなると勘違いする初心者が多くて困る。
0591nobodyさん
2008/02/19(火) 07:20:51ID:???$string = preg_split("`.`", $string);
$string = count($string)-1;
return $string;
$string = preg_split("`.`", $string);
return count($string) - 1 ;
0592531
2008/02/19(火) 07:35:36ID:???すまん
スレだから短くしてただけで
普段はわかりやすい名前の変数に代入しまくりだよ
あと、>>556のコードはコピペだ
0593514
2008/02/19(火) 08:00:00ID:OsGt77+r0594nobodyさん
2008/02/19(火) 08:27:59ID:???0595nobodyさん
2008/02/19(火) 09:26:39ID:???returnにはあんまり書きたくないな
0596nobodyさん
2008/02/19(火) 10:15:05ID:???0597nobodyさん
2008/02/19(火) 10:27:12ID:???ループ処理する場合は代入した方がはやいけどね。
0598nobodyさん
2008/02/19(火) 10:38:21ID:???本当に仕事でやってる人がチームだの上司だのもっともらしい言葉使ってるけど出してる技術は低レベルだし
低脳土方、オナニーコード、他の方法全否定、暴言連発で仕事でやってる人の言葉じゃないのは丸わかりでしょ。
0599nobodyさん
2008/02/19(火) 10:44:02ID:???0600nobodyさん
2008/02/19(火) 11:02:23ID:???returnにあれこれ長い処理してるコードは
あまりみないよ
ルールとして決まってるわけではないけど
returnのあとの処理は1関数(オブジェクト経由あり)、1変数が多いね
0601nobodyさん
2008/02/19(火) 11:03:45ID:???0602nobodyさん
2008/02/19(火) 11:07:29ID:???0603nobodyさん
2008/02/19(火) 11:11:56ID:???変数を使わないとコードはみにくい(関数の中に関数が深く入り込むコードになる)
↑
if文の中にif文が何個も深く入りこむコードと同じ。みにくい
0604nobodyさん
2008/02/19(火) 11:13:03ID:???当人も負荷の増加が小さいから無視していいと言ってるだろ。
逆に言えば、増えることはあっても減ることはない。
コードすべてに1行で済むのを5行10行と増やしてどうなるかは言うまでもないでしょう。
0605nobodyさん
2008/02/19(火) 11:15:16ID:???負荷と生産性どっちを優先するかは
プロジェクトによって違う
生産性の高いコードなら可読性
PHP使うくらいだから生産性の高いプロジェクトでコード書くことが多いだろう
0606nobodyさん
2008/02/19(火) 11:20:11ID:???解析時間が短縮される
毎度毎度、1行プログラミングに自己満足されるコードは勘弁
0607nobodyさん
2008/02/19(火) 11:22:09ID:???0608nobodyさん
2008/02/19(火) 11:23:35ID:???>>558
>count関数の中に関数いれるのは 処理が重くなる
って書いてあるけど、これは間違ってことでOK?
0609nobodyさん
2008/02/19(火) 11:26:33ID:???ループ処理のこといってるんじゃない?
for($i=0;$i<=count($a);$i++)
重い
$a = count($a);
for($i=0;$i<=$a;$i++)
軽い
見やすい
0610nobodyさん
2008/02/19(火) 11:27:31ID:???それに >>588 のコードが否定されてるんじゃなく「それもあり」という前提になってんのに
自分のだけを認めろと連投で大騒ぎする588自身が否定されてるだけだしな。
0612nobodyさん
2008/02/19(火) 11:31:18ID:???この時にgetenv('SERVER_NAME')を取得するとコンピュータ名が返るのは仕様ですか?
後、スクリプトのパス自身を取得したい場合は
"http://".getenv("SERVER_NAME").getenv("SCRIPT_NAME") でいい大丈夫でしょうか。
0613nobodyさん
2008/02/19(火) 11:33:20ID:???それは「count関数を何度も呼び出せば遅くなる」であって
「count関数の中に関数いれるのは 処理が重くなる 」からではないよね。
単に >>558が間違ってるだけなら、それで良いです。どうもありがと。
0615612
2008/02/19(火) 11:35:35ID:uMI3ux4Sそれは今回の挙動に関係あるんですか?
0617nobodyさん
2008/02/19(火) 11:38:36ID:???って結論前に出てなかったっけ?デジャブ?
処理を軽くする10の方法みたいなところで取り上げられてていろいろ突っ込み入って
結局有意な差は出ないってなってた気がするんだけど
0619617
2008/02/19(火) 11:40:44ID:???ループの「中身の」中に入れたら毎回コールされなきゃだ
0622nobodyさん
2008/02/19(火) 11:44:07ID:???でも実際そんなにパフォーマンスは変わらん。何万回も回すなら別だけど。
0623nobodyさん
2008/02/19(火) 11:47:56ID:???rubyの方がいいんじゃない
わかりやすい変数つかわなくても、いりくんだ関数も一目でわかるよ
0624617
2008/02/19(火) 11:52:50ID:???ttp://www.moskalyuk.com/blog/php-optimization-tips/1272
とその日本語訳がらみでツッコミ入ってた気がするんだよ。思い出せないけど。でも
パフォーマンスのためにPHPのfor文でcountを使うべきではない
ttp://paranoid.dip.jp/kaworu/2008-01-28-2.html
ってのも見つけたし俺の勘違いだったみたい
0625nobodyさん
2008/02/19(火) 11:56:33ID:???rubyみたいに
関数.関数
で呼べれば見やすい
0627nobodyさん
2008/02/19(火) 12:01:07ID:???下のURLのやつ、個数が増えると何で差が少なくなるんだろうね。不思議。
$array[$i] で $i の値が大きくなるとアクセスが遅くなるのかな。
0628nobodyさん
2008/02/19(火) 12:04:21ID:???↑
常識
0629617
2008/02/19(火) 12:08:30ID:???http://www.php.lt/benchmark/phpbench.php
こっちだと事前に計算しておけば9倍速い ってなってるけどね
0630nobodyさん
2008/02/19(火) 12:10:41ID:???0631nobodyさん
2008/02/19(火) 12:24:36ID:???$_SERVER見るのが定石。
とりあえず var_dump($_SERVER) してみれば
http://jp.php.net/manual/ja/reserved.variables.php#reserved.variables.server
0633nobodyさん
2008/02/19(火) 12:46:21ID:???0634nobodyさん
2008/02/19(火) 12:48:50ID:???0635nobodyさん
2008/02/19(火) 12:54:42ID:???0638nobodyさん
2008/02/19(火) 14:25:30ID:rf+/c0h3$uho[0] = array("A","B","C");
print $uho[0][1];//B
のように現在記載していますが
$uho = array("アルファベット","ひらがな","漢字");
$uho[0][] = "A";
$uho[0][] = "B";
$uho[0][] = "C";
print $uho[0][0];
のように記述したいのですが何も出力されません。
何か他に記述法はありますか?
0639nobodyさん
2008/02/19(火) 14:30:52ID:???>$uho = array("アルファベット","ひらがな","漢字");
の意味がよくわからんけど
$uho[0] = array();
$uho[0][] = "A";
$uho[0][] = "B";
$uho[0][] = "C";
print $uho[0][0];
ではだめなん?
0640nobodyさん
2008/02/19(火) 14:33:55ID:???ini_set('display_errors', 'on');
$uho = array("アルファベット","ひらがな","漢字");
$uho[0][] = "A";
$uho[0][] = "B";
$uho[0][] = "C";
print $uho[0][0];
0641nobodyさん
2008/02/19(火) 14:39:24ID:???低級な議論を持ち出す奴は中の人が低レベルということでFA出ている
0642nobodyさん
2008/02/19(火) 14:41:09ID:???0643514
2008/02/19(火) 14:44:42ID:OsGt77+r$stop_word=array('ボケ','死ね','馬鹿');
$num=count($stop_word);
for($i=0;$i<$num;$i++){
if(strstr($message,$stop_word[$i])==true){
print("禁止語が含まれています。");
exit;
上から4行目のstrstrってのが何の働きをするのか理解できません。
マニュアルを見たら 文字列が最初に現れる位置を見つける なんのことやらさっぱり
よろしくお願いします。
0644nobodyさん
2008/02/19(火) 15:19:37ID:???>文字列が最初に現れる位置を見つける
これは多分書いた人がstrposの説明と混同してる。
print strstr('親馬鹿子馬鹿', '馬鹿');
で帰ってくるのは「馬鹿子馬鹿」。1つめの馬鹿が見つかった位置以降の文字列を返してる。
つまり「最初に現れた位置以降の文字列を返す」のがstrstrの機能。
これで禁止ワードがあったときに strstr($message,$stop_word[$i])==true が真になる。
文字列発見するだけならstposのがいいけどまあそれはあとでいい。
0645nobodyさん
2008/02/19(火) 15:23:28ID:???文字列==ture
という比較の不思議さじゃないかと推測
0646nobodyさん
2008/02/19(火) 15:24:19ID:???日本語の説明をしろってことならしねよ
0647nobodyさん
2008/02/19(火) 15:32:26ID:???確かに真偽値は最初は混乱するわな。
FALSEになるのは何も代入されてない変数、空文字列、文字の0、数字の0あたりかな。
TRUEがその逆。何か代入されていて、中身が0ではなく、空文字列でもない。
つってもいきなり始めたらわからんよなー
>>646
おつかれさん。
0648nobodyさん
2008/02/19(火) 15:48:05ID:???この辺楽に構築できる方法ありませんか?
smartyとか持ってそうなんだけど見つからない。
0649638
2008/02/19(火) 15:53:16ID:rf+/c0h3>>639
複数行ログがあるファイルから一度のループでアルファベット、漢字、ひらがなのデータを分類するスクリプトを作成しています。
書いていただいた方法では駄目でした。
>>640
エラーは出ませんでした。念のためarray_pushを利用してみましたがやはり駄目でした。
0650638
2008/02/19(火) 16:09:29ID:rf+/c0h3お騒がせしました。
ありがとうございました。
0651nobodyさん
2008/02/19(火) 16:12:48ID:???>$uho = array("アルファベット","ひらがな","漢字");
これじゃ $uho[0] は "アルファベット" っていう文字列型なのにそれを配列として扱おうとしてんだし
$uho[0] を配列として定義しないと通らんよ。
0652638
2008/02/19(火) 16:17:14ID:rf+/c0h3勉強になりました。
$uho = array("1","2","3")のように数字だけの場合は動いてしまっていたので勘違いしていました。
0653nobodyさん
2008/02/19(火) 17:11:42ID:p5AS/DW/SQLiteからデータベースのテーブルを呼び出すところで、参考にしている書籍の
スクリプトの書き方がわからなかったので、教えていただけませんか?
下の、3行目なのですが、
$rs=sqlite_query("SELECT * FROM schedule ORDER BY s_date",$db);
では、駄目なのでしょうか?
ORDER BY のあと、何故にクエリが2つも(s_date,s_time)あるのか不思議に思いました。
<?php
$db=sqlite_open("schedule.sqlite",0666,$err);
$rs=sqlite_query("SELECT * FROM schedule ORDER BY s_date,s_time",$db);
?>
<h1 style="background:#cccccc">簡易スケジュール帳</h1>
<table border="1">
<tr>
<th>日付</th><th>時刻</th><th>予定名</th><th>備考</th><th>削除</th>
</tr>
<?php while($row=sqlite_fetch_array($rs)){ ?>
<tr>
<td><?php print($row['s_date']); ?></td>
<td><?php print($row['s_time']); ?></td>
<td><?php print($row['title']); ?></td>
<td><?php print($row['memo']); ?></td>
<td><input type="button" value="削除" onclick="location.href='schedule_delete.php?sid=<?php print($row['sid']); ?>'" /></td>
</tr>
<?php
}
sqlite_close($db);
?>
</table>
0654nobodyさん
2008/02/19(火) 17:16:40ID:???http://www.net-newbie.com/sqlite/lang.html#select
0655nobodyさん
2008/02/19(火) 17:16:48ID:???0656nobodyさん
2008/02/19(火) 17:19:47ID:???0657653
2008/02/19(火) 17:20:09ID:p5AS/DW/失礼しました。
PHP5に付随する質問でしたので、こちらでよいものと思っていました。
>>655
早速のご回答ありがとうございます。
sort的と言っては、まずいかもしれませんが
優先度を決める為の書き方なのですね!参考になりました。
0658653
2008/02/19(火) 17:23:01ID:p5AS/DW/即レス、感謝です。
ありがとうございました。今後の参考になります!
0660nobodyさん
2008/02/19(火) 18:31:10ID:???0661nobodyさん
2008/02/19(火) 18:42:06ID:UiHW3K4+こういった画像掲示板サイトはどう作ればいいのでしょうか?
HTMLとCSSのみでは、このようなサイトの製作は難しいと思います。
掲示板に画像を投稿するシステムや
こういったサイトに最適なサーバなどありましたら教えてください。
よろしくおねがいします
0662nobodyさん
2008/02/19(火) 18:46:19ID:bsmDlf5I0664nobodyさん
2008/02/19(火) 19:01:10ID:???0665nobodyさん
2008/02/19(火) 19:04:56ID:UiHW3K4+お返事ありがとうございます。
PHPまたはCGIで製作しようと考えております。
HTML、CSSは一通り理解しているのですがPHPに関しては無知に等しいです
アドバイス等、いただけると幸いです
0666nobodyさん
2008/02/19(火) 19:05:26ID:???0667nobodyさん
2008/02/19(火) 19:08:38ID:???相当なやる気があるなら作れるだろうけど
普通の人がHTMLとCSSは一通り、PHPは無知な状態から作れるものではない。
手ごろなWebアプリ作成から始めることをお勧めするよ
0668nobodyさん
2008/02/19(火) 19:08:40ID:???皆無ですか。
そんな貴方に私から出来るアドバイスは、少なくともシステム部分に関しては
システム屋へ外注なさるのが早いかと存じます。
0669nobodyさん
2008/02/19(火) 19:09:04ID:???インクルードパスのc:/php/pearに存在するふぁいるのなかでも
インストールしたpear関連のファイル(DB.phpとかMail.php)だけ読み込めないんだけど
この現象何が原因なのでしょうか
0671nobodyさん
2008/02/19(火) 20:10:49ID:???初心者〜中級者入り口手度のやつしかいねぇ・・・
0672nobodyさん
2008/02/19(火) 20:13:45ID:???0673nobodyさん
2008/02/19(火) 20:16:40ID:???0674nobodyさん
2008/02/19(火) 20:18:52ID:???0675nobodyさん
2008/02/19(火) 21:22:43ID:???ただいまCakePHP慣れきたとこで
symfonyに覚えてます
フレームワーク乱立のおかげで覚えること沢山で困ります
昔はそんなに覚えることなかったのにな
0677nobodyさん
2008/02/19(火) 22:01:09ID:???PHPに限らないが、
覚えることが少ない言語は
自分で作らないといけないものが多く、
覚えることが多い言語は
自分で作らないといけないところが少ない。
0678nobodyさん
2008/02/19(火) 22:27:37ID:bDEijUkuPerlと比べてパーミッションを気にする必要がないようですが、
普段のphpファイルのパーミッションはいくつに設定しておいた方が宜しいでしょうか?
とりあえず、現在は全て777に設定しています。
宜しくお願いします。
0679nobodyさん
2008/02/19(火) 22:27:42ID:???既製品で済む場合はそれの使い方覚えないといかんからな。
0680nobodyさん
2008/02/19(火) 22:42:39ID:???そのままでいいよ。644とか。
phpを通してファイルに書き込むなどといったことをするときは、
当然そのファイルを666とかにしないといけないけど。
0681nobodyさん
2008/02/19(火) 23:01:36ID:???普通に
include 'DB.php';
とかしてもincludeできないって事?
>>671
ここにスキル高い質問なんて無いだろ
0682nobodyさん
2008/02/19(火) 23:37:20ID:???0683nobodyさん
2008/02/19(火) 23:48:52ID:???0684nobodyさん
2008/02/20(水) 00:34:07ID:???0685nobodyさん
2008/02/20(水) 00:45:40ID:???0686nobodyさん
2008/02/20(水) 01:29:19ID:mRMNoFj0前から疑問に思ってた事です。
「PHP」の正式名称は「PHP: Hypertext Preprocessor」
つまり「PHP」は「PHP: Hypertext Preprocessor」の略語ですよね。
でも正式名称である「PHP: Hypertext Preprocessor」の先頭にも略語の「PHP」の文字がありますよね。
じゃあこの先頭の「PHP」はさらに正式名称があるわけですか?
0687nobodyさん
2008/02/20(水) 01:35:46ID:???0688nobodyさん
2008/02/20(水) 01:42:34ID:???0689nobodyさん
2008/02/20(水) 01:44:48ID:mRMNoFj0有難う御座います。
php3.xあたりから入ってたもんですから
php1.xの頃の話なんて全然知りませんでした。
0690nobodyさん
2008/02/20(水) 01:57:55ID:???0691nobodyさん
2008/02/20(水) 02:10:15ID:???ttp://ja.wikipedia.org/wiki/%E5%86%8D%E5%B8%B0%E7%9A%84%E9%A0%AD%E5%AD%97%E8%AA%9E
PHPも入ってるな。
0692nobodyさん
2008/02/20(水) 08:06:43ID:???$time = date("現在の日時は、Y年m月d日 H時i分s秒です。");
print($time);
?>
と書くと現在の日時は、M2008・02月20日 08時05分28秒です・03
って表示されます。大文字のMと です・のあとの03ってのが邪魔です。
どうすればいいんでしょうか?
0693nobodyさん
2008/02/20(水) 08:25:08ID:???0694nobodyさん
2008/02/20(水) 08:30:20ID:???0695nobodyさん
2008/02/20(水) 08:30:26ID:???いつの時代?w
0696nobodyさん
2008/02/20(水) 08:51:09ID:???ケータイなら出力はShiftJISだし、その流れでソースもShiftJISで書く初心者は多いだろ。
0697nobodyさん
2008/02/20(水) 09:05:08ID:???PHPユーザは携帯サイト作成から入ることが多いという意味か?
0698nobodyさん
2008/02/20(水) 10:26:11ID:???0699nobodyさん
2008/02/20(水) 11:34:03ID:0elSO0M+array_shiftやarray_popは先頭・末尾でしたので・・・
Array
(
[Red] => ringo
[Blue] => budou
[Yello] => banana
)
関数("Blue")
Array
(
[Red] => ringo
[Yello] => banana
)
0700nobodyさん
2008/02/20(水) 11:39:27ID:???http://jp.php.net/manual/ja/function.unset.php
0701nobodyさん
2008/02/20(水) 12:22:49ID:0elSO0M+サンクス
0702nobodyさん
2008/02/20(水) 13:17:42ID:???キーの順番は変えたくありません。
Array
(
[Red] => ringo
[Blue] => budou
[Yello] => banana
)
関数("Blue","Green")
Array
(
[Red] => ringo
[Green] => budou
[Yello] => banana
)
0704nobodyさん
2008/02/20(水) 13:26:09ID:???0707nobodyさん
2008/02/20(水) 13:35:11ID:???0708nobodyさん
2008/02/20(水) 13:44:51ID:???少しは考えようぜ
http://jp.php.net/manual/ja/ref.array.php
使えそうなもの探して自分なりに作ってみ
0709nobodyさん
2008/02/20(水) 13:54:54ID:0elSO0M+を
mb_splitの[都道府県]で分解すると
「大阪」と「大阪市」になりますが、
「大阪府」と「大阪市」に分けることって可能でしょうか?
区切り文字消さないオプションとかないですよね・・・orz
0710nobodyさん
2008/02/20(水) 14:02:12ID:???0711nobodyさん
2008/02/20(水) 14:23:35ID:???配列に入れる段階で順番にこだわる理由がわからない。
実際に配列を操作するときは特定のアルゴリズム下で行われるべきなので、
最終的にソートして表示したときなり、検索して取り出したときの結果は変わらない。
0712nobodyさん
2008/02/20(水) 14:34:38ID:???0713nobodyさん
2008/02/20(水) 14:40:34ID:???可読性とかそういう問題じゃない。というか配列の順番に可読性も何も・・・
DBから取り出して配列にいれた段階で、その配列を実際眺めるなんてことしないだろ。
膨大なデータになればなるほど、そんなこと考えたりしない。
配列というのは、どういうグループでどういう値が配列に入っているかを理解していればいい。
あとは配列を操作する段階でどうにでもなる。
0714nobodyさん
2008/02/20(水) 15:03:20ID:0elSO0M+サンクスです
とりあえず都道府県47個は個別対応してみます。
あー、まだ質問あるけど流石に自重しなきゃ('A` )
0715nobodyさん
2008/02/20(水) 15:14:46ID:???都道府の4つ+それ以外でいいような?
0716nobodyさん
2008/02/20(水) 15:18:37ID:0elSO0M+大阪府東大阪市→大阪 東大阪市
になるので、そこから「大阪」で検索かけて「府」を取得しようかと・・・
0717nobodyさん
2008/02/20(水) 15:20:46ID:???さて
0718nobodyさん
2008/02/20(水) 15:21:04ID:???0719nobodyさん
2008/02/20(水) 15:23:14ID:0elSO0M+も・・・もしかしたら、他に都道府県が増えるかも・・・
ないよね、うん、ありがと
0720nobodyさん
2008/02/20(水) 15:23:36ID:???本当に下らない質問だな。
0721nobodyさん
2008/02/20(水) 15:24:16ID:0elSO0M+本当にくだらない答えだ
0723nobodyさん
2008/02/20(水) 15:25:04ID:???0725nobodyさん
2008/02/20(水) 15:27:38ID:0elSO0M+住所最適化のために住所データベースより該当する行を取得しているんだけど、
京都府京都市大阪〜みたいな変な住所があったorz
複数キーワードを用意して、一番多くマッチした行の順番で返しているから、
「大阪」だけだと、「京都府京都市大阪」も「大阪府大阪市」も返ってくる。
0726nobodyさん
2008/02/20(水) 15:28:56ID:???0727nobodyさん
2008/02/20(水) 15:30:23ID:0elSO0M+見事に岐阜県岐阜市芥見海戸山が一番上に\(^o^)/
ハァ・・・
0728nobodyさん
2008/02/20(水) 15:35:10ID:???0729nobodyさん
2008/02/20(水) 15:39:48ID:???0730nobodyさん
2008/02/20(水) 15:48:12ID:???そうやるのが定石だよね。
ちなみに住所名データは郵便番号との対応表という形で日本郵便からDLできる。参考まで。
http://www.post.japanpost.jp/zipcode/download.html
遷都したら東京府になる(戻る)のかな?
0731nobodyさん
2008/02/20(水) 15:48:30ID:???0732nobodyさん
2008/02/20(水) 15:50:19ID:???0733nobodyさん
2008/02/20(水) 15:56:52ID:???0734nobodyさん
2008/02/20(水) 16:24:42ID:???0735nobodyさん
2008/02/20(水) 17:12:38ID:???0737nobodyさん
2008/02/20(水) 17:21:14ID:???0738nobodyさん
2008/02/20(水) 17:21:19ID:???0739nobodyさん
2008/02/20(水) 17:25:24ID:???俺は4万件だったけど、おおよそ郵便番号使って分けた後、
入力ミスや合併前等は人海戦術だった。
0740nobodyさん
2008/02/20(水) 18:04:32ID:???都道府県
市町村
それ以下
の三つで入れてもらえば良くね
って後処理の話だっけ?
0741nobodyさん
2008/02/20(水) 18:23:15ID:???0742nobodyさん
2008/02/20(水) 18:33:27ID:0elSO0M+memory_limitの無制限は可能ですか?
0743nobodyさん
2008/02/20(水) 18:51:43ID:6Ca7eWC6というのがあって、この値を1, 2に入れ替えたいのですが、
直感的に、
$array[0] = $array[1];
$array[1] = $array[0];
という風に書いてしまうと、両方1になっていまいます。
それで記憶用の変数を用意し、
$i = $array[0];
$array[0] = $array[1];
$array[1] = $i;
のようにすると思ったとおりになってくれるのですが、
もっと適切な書き方はありませんか?
他言語でも応用するので、PHP特有の書き方やPHP関数の使用ははなしの方向でお願いします。
0744nobodyさん
2008/02/20(水) 18:53:12ID:0elSO0M+0745743
2008/02/20(水) 18:56:21ID:???それはPHPのネイティブ関数なので・・・
それと説明足りませんでしたが、ただ単に逆順にいれかえるというわけではないです。
0746nobodyさん
2008/02/20(水) 18:58:43ID:???アセンブラとかするならもっと細かく書くけど、
ってか関数かしちゃえばいいんじゃない?
0747nobodyさん
2008/02/20(水) 18:58:48ID:???0748743
2008/02/20(水) 19:04:59ID:???JavaとVBです。
各言語の関数等をつかうか、作るかしかないですかね。
左辺と右辺を交換できるような、どの言語でも実装されてる演算子みたいのがあれば一番いいのですが。
$array[0] ⇔ $array[1]みたいな。ないですよね、そんなの。
>>747
すみません。一応PHPでやっていたので。
質問に書き方の制約がついても問題ないかと思いまして。
0749nobodyさん
2008/02/20(水) 19:06:10ID:???0751nobodyさん
2008/02/20(水) 21:13:53ID:???本当の馬鹿に対する可読性が心配になるので避けがちだな
>ただ単に逆順にいれかえるというわけではない
の内容が分からん事にはなんとも
0753nobodyさん
2008/02/20(水) 22:18:57ID:???0754nobodyさん
2008/02/20(水) 22:22:07ID:???コマンドラインから実行するときに、
メインで実行される暗黙のメソッドはないのでしょうか?
javaでいうmainメソッドみたいなものです。
アドバイス宜しくお願いします
0755754
2008/02/20(水) 22:22:29ID:KIJWvRfX0757754
2008/02/20(水) 22:32:39ID:KIJWvRfX無いですか...
class_Cというクラスがあり、コマンドラインから
$ php ./class_C.php
と実行すると、
class_C内の特殊なメソッドが呼ばれるようなイメージです。
$ java ./classC
とやると、自動的にclassC内のstatic void mainが呼ばれるようなイメージです。
コマンド内からphpクラスのコードを実行する方法が思いつかないので。
0759nobodyさん
2008/02/20(水) 22:36:29ID:???public static function mainでも作って書いておけば?
無理にjavaのマネする必要なくね?
0760754
2008/02/20(水) 22:40:26ID:KIJWvRfXやっぱりないですか...
既に作ってあるクラスがありまして、
それをシェルから呼びたいのですが、
何かいい方法がないかと思いまして。
クラスを作り直すのはできれば避けたいのですが、やっぱりダメそうですね。
ありがとうございました。
0762nobodyさん
2008/02/20(水) 22:53:15ID:???0763754
2008/02/20(水) 23:02:54ID:KIJWvRfXイメージ的には、これをcronデーモンから実行させるイメージでした。
-----------------------------------------------------------
#!/bin/sh
/usr/local/bin/php /public_html/hogehoge/MainClass.class.php
exit
-----------------------------------------------------------
クラスではなくベタ書きならうまくいくのですが、
そのクラスは既にテスト済みで、そのファイルだけクラスじゃないのは、ちょっとと思いまして。
>>762
すみません、それはどういうような機構でしょうか?
宜しければ、その方法をアドバイスいただけないでしょうか?
0764nobodyさん
2008/02/20(水) 23:06:04ID:???だからそのMainClass.class.phpでどのように
そのクラスを実行する設計を?
定義して放置プレイ?
0765754
2008/02/20(水) 23:33:51ID:KIJWvRfXMainClass.class.phpは、実行するクラスではなくて、
実装される側のクラスのことです。
実行主体はcrondです。できれば、MainClass.class.php内部はいじらずにできればいいのですが、厳しいそうですね。
0766nobodyさん
2008/02/20(水) 23:40:54ID:???球技(言語)が変わったらその言語の基本くらいは勉強しろカス
ってことで>>8
0767nobodyさん
2008/02/20(水) 23:46:42ID:???しかし、今更zlibが必要になってしまったのですが、再インストールするしかないのでしょうか?
バージョンはPHP5.2.5です。
よろしくお願いします。
0768nobodyさん
2008/02/21(木) 00:11:51ID:vEZx6YzIphp -r 'require "MainClass.class.php"; MainClass::main();'
みたいにしたら駄目なん?
0769743
2008/02/21(木) 00:14:20ID:???>>750
ありがとうございます。ではその方法でやることにします。
>>751
ビット演算子ですか。あれは難解なので避けてます・・・
でも参考になります。ありがとう。
>>758
もちろんJavaで配列のようなことはコレクション使いますけどね。
ただどうしても今回必要だったので…
というわけで>>750さんのアドバイスどおりにしたいと思います。
0770nobodyさん
2008/02/21(木) 00:14:30ID:???たしかCLIの時だけ、というかCLiで実行した事を判定できる変数かなんかがあるから。
その時だけ実行するロジックを組めばいいんじゃね
それすらも変更できないんなら知らん
0775nobodyさん
2008/02/21(木) 00:48:42ID:???0776nobodyさん
2008/02/21(木) 01:24:48ID:rvNkXnTF配列は連想でも多重でもない単純な形のものだとしてお願いします
0777nobodyさん
2008/02/21(木) 01:26:46ID:???0778nobodyさん
2008/02/21(木) 01:28:56ID:???0779nobodyさん
2008/02/21(木) 01:32:24ID:???PHPにmain関数などない
メソッドからはみ出たとこがmain関数だと思え
クラス。メソッド以外のすべてがmain関数でもある
main関数の中でクラスやメソッドを定義してるのと同じだ
0780nobodyさん
2008/02/21(木) 01:37:10ID:???クラスなんて使うなや?非効率もいいもんだ
なんの為のスクリプト言語やと思ってんだ
0781nobodyさん
2008/02/21(木) 01:39:01ID:???なんでクラス使うん?
0782nobodyさん
2008/02/21(木) 01:51:42ID:???PHPでなんぼ稼いだんや?
0783nobodyさん
2008/02/21(木) 01:57:25ID:???0784nobodyさん
2008/02/21(木) 02:14:34ID:???0785nobodyさん
2008/02/21(木) 03:20:41ID:???Example#2 再帰的な count() の例 (PHP >= 4.2.0)
<?php
$food = array('fruits' => array('orange', 'banana', 'apple'),
'veggie' => array('carrot', 'collard', 'pea'));
// 再帰的なカウント
echo count($food, COUNT_RECURSIVE); // output 8
// 通常のカウント
echo count($food); // output 2
?>
何故6でないのか謎すぎる。
0786nobodyさん
2008/02/21(木) 03:55:02ID:uBvv/k1HXAMPPをインストール後に以下の手順でエラーがでてしまうのですが、何が原因なのでしょうか???
1. Terminal shellに行って、システム管理者ルートでログインします。
sudo su
2. XAMPPをスタートするには、このコマンドをコールしてください:
/Applications/xampp/xamppfiles/mampp start
ここで、このような感じのエラーメッセージがでていまいます。
(No such file or directory, errno = 2)
XAMPP: Error 133! Couln't start ProFTPD!
ちなみにこの段階でXAMPP Control Panelを起動しようとすると「このシステムとは互換性がないためアプリケーションを起動できません」とメッセージが出てしまいます。
OSはMacOSX.2.8で、インストールしたのがXAMPP Mac OS X 0.7.2です。とても困っていますのでどなたかよろしくおねがいします。
0787nobodyさん
2008/02/21(木) 08:03:59ID:???あっちで答えちまった・・・
0788nobodyさん
2008/02/21(木) 08:38:59ID:???おまいら頑張って技術磨いとけよ!!俺の金の成る木なんだからな
0789514
2008/02/21(木) 09:16:22ID:FrueJpz5ある程度理解できました。
次は何をすればいいんですかね?
0791nobodyさん
2008/02/21(木) 10:25:29ID:v3nyJWBc40%ほど処理したところで
Fatal error: Out of memory (allocated 2001731584) (tried to allocate 37 bytes) in C:\xampp\php\PEAR\PEAR.php on line 863
のようなエラーが出ます。
これは何か変数に格納していって、それが溜まっているのでしょうか?
0792nobodyさん
2008/02/21(木) 13:53:21ID:mkhVTZDngetdateの引数に同じものを入れると更に9時間進んだ時間が取得されてしまいます。
getdate関数は自動的に国別の時間のずれを計算してくれるということでしょうか?
0794nobodyさん
2008/02/21(木) 13:58:06ID:mkhVTZDnということはgetdateはサーバの設定を見て東京標準であればそれで計算して
gmdateの場合はサーバの設定関係なくグリニッジ時間で計算するということですか?
0795nobodyさん
2008/02/21(木) 14:04:19ID:???http://www.php.net/manual/ja/function.gmdate.php
っていうかマニュアル読もうよ。
俺はfirefoxの検索プラグインに公式マニュアルの関数検索入れてるよ。
opensearchfoxって拡張使うと簡単に出来る。
0796nobodyさん
2008/02/21(木) 14:10:34ID:mkhVTZDnスレ汚し失礼しました。
0798514
2008/02/21(木) 15:11:30ID:FrueJpz5配列と関数と制御は理解しました。
本持ってないので買うのがいいですか?
お勧めの本とかございましたら教えて頂けると幸いです
0800514
2008/02/21(木) 15:21:07ID:FrueJpz5そうですね。 自分で見て自分にあった物を買うのがいいですね。
失礼しました
0801nobodyさん
2008/02/21(木) 15:30:12ID:???0802nobodyさん
2008/02/21(木) 16:05:44ID:???本読むよりPHP 配布とかでぐぐって配布してるフリーのPHPのコード読んだほうがためになる。
最初はさっぱりわからんだろうが関数が実際どういう用途で使われるかもわかってくる。
0803nobodyさん
2008/02/21(木) 16:15:51ID:???これはやめたほうがいい。
公開されている多数の日曜プログラマコードは糞。
phps○otとかは害悪。
0804nobodyさん
2008/02/21(木) 16:33:42ID:???市販の入門本やオライリーにいたっても、PHPのソースはベタコードでgeekなものだし
お手本作法的なフォーマットが知りたいぜ
0805nobodyさん
2008/02/21(木) 16:37:00ID:???あと、ソースって言っても好き嫌い(書き方)もあるから一概に綺麗なソースとは言えないぞ
中国産のソースなんて何が入ってるもんかわからないし
0806nobodyさん
2008/02/21(木) 16:42:27ID:???量産してるうち、最近はもう、動きゃいいかになりつつある。
0807nobodyさん
2008/02/21(木) 16:44:06ID:???Eclipseで書いても結局プラグイン次第。
インデントされてればなんでも綺麗に見えるマジック。
実際は補完機能も本場Javaのものより劣ってるし、そこまで綺麗なものでもない。
結局は書き手次第だな。
0808nobodyさん
2008/02/21(木) 18:02:50ID:???最初は綺麗なソースを作ろうと頑張っていたけど、
仕事で汚い理不尽なやり方を教わって、
とりあえず売れればいいかという思考になりつつあるのか
0809806
2008/02/21(木) 18:15:20ID:???いや違うな。教わったというより、自分で知ったんだ。
綺麗に書きたいのは本音だが、変な事に頭を使う暇があったら、設計やテストに時間を割くべき、と。
客の求めてるものは綺麗なソースでは無い。所詮はプログラマのオナニーなのかな、とね。
0810nobodyさん
2008/02/21(木) 18:22:15ID:???そのソースを変更してシステムを作り変えたりしたなら、
少しはその恩恵にあずかってると思うがな。
あと共同のプロジェクトで使う場合なら他人は喜ぶ。
0811nobodyさん
2008/02/21(木) 18:27:55ID:???売上げさっぱりでプロマネが腐ってるからなー
「将来の効率化のための仕事」はサボってるに等しいんだとさ。
どうせ書き直す日には古臭いだけのコードになっているだろうとかなんとか。経験則だかなんだかしらんが、反論しにくいのよなー
ウチも先長くねえな。俺も含めて。
0812nobodyさん
2008/02/21(木) 18:28:39ID:???どうだろうね、SIの現場じゃソースコードの再利用なんてほとんどされないし、
「再利用してます」っていうのもせいぜいコピペ改変。
ソースコードを修正したときに影響範囲が狭いほうが「保守性が高い」ということに
なるだろうし、ベタなコードの方が良い場合も多いだろ。
0813nobodyさん
2008/02/21(木) 18:35:37ID:???一番の再利用はフレームワークを使うことに他ならないだろう。
まあたいていは自作じゃなくて、外部のフレームワークを
再利用することになるが。
0814806
2008/02/21(木) 18:35:53ID:???俺だってプロジェクトで仕事してるし、保守も多いから他人のソースはよく見るが、
クラス化しときゃ余程長いソースで無い限り、どう書いたって追ってけば分かる。
それとも、綺麗さってのはインデントとかそんなレベルの話?
0815nobodyさん
2008/02/21(木) 18:38:22ID:???使いまわしの自作関数は持ってるもんじゃない?
0816nobodyさん
2008/02/21(木) 18:43:25ID:???客のどんな要望にもすぐに耐えうる「シンプルで柔軟性のある設計」
テスト漏れで客に迷惑をかけない「テストがしやすい設計」
バグが客が迷惑をかけない「バグが発生しにくい設計」
綺麗っていうことは、客の為にあるんだよ。
0817nobodyさん
2008/02/21(木) 18:57:40ID:???0818nobodyさん
2008/02/21(木) 18:59:04ID:???経営者にしろ、営業にしろ、エンジニアにしろ信用できないのばっかり。
考える事をやめてる人間がよく言う。
0820nobodyさん
2008/02/21(木) 19:02:43ID:???0821nobodyさん
2008/02/21(木) 19:40:14ID:???0822514
2008/02/21(木) 20:11:14ID:FrueJpz5ありがとうございます。とにかくプログラム書きまくります。
>>802
はい。他の人のコードを読んでもっと勉強します。
>>803 あそこのコード糞なんですか・・ 分かりやすいと思ったんですが。
僕の知識不足ですかね・・
0823nobodyさん
2008/02/21(木) 20:15:16ID:jJmAtctQ最近、インターネットにおいてブログやホームページ製作の分野に興味があり
HTMLとCSSの技術をある程度身につけることができました。
ttp://blog.with2.net/
そんななかこちらのブログランキングとであったのですが
こういったランキングサイトはCGIかPHPで成り立っているのでしょうか?
自分もランキングサイトを製作してみたいのですが
どういった言語で成り立っているのかわからず、言語に関して無知の状態です
なにかアドバイスいただけると幸いです。
よろしくおねがいします
0824nobodyさん
2008/02/21(木) 20:20:53ID:???404見るとapache1.3.34でmodule表記ないな
0825nobodyさん
2008/02/21(木) 20:34:57ID:???バックグラウンドでjava/servlet使ってるかもしれないし。
意表をついて静的htmlかもしれないし。
0826nobodyさん
2008/02/21(木) 20:46:36ID:wtHgKY9Fらしいけど別にPHPでなくても作れるし、好きなの選べばいいと思う。
0828nobodyさん
2008/02/21(木) 21:03:34ID:jJmAtctQみなさん、ご回答ありがとうございます。
ランキングのin、outの仕組みをつくるには
PHPが基本となっていると判断してよろしいでしょうか?
PHPに関しては無知に等しいです。
これからPHPに学ぶことに対してオススメの学習方法
およびサイト等、ありましたらご教授いただけると幸いです
よろしくおねがいします。
0829nobodyさん
2008/02/21(木) 21:16:06ID:???とりあえずPHPとか関係なくプログラムのいろはを勉強しろ。
ゆとり丸出しの質問してるようじゃあ完成する前に挫折するぞ!
もう来るなよ
0830nobodyさん
2008/02/21(木) 21:22:41ID:???PHPに限らずWeb言語なら何使っても作れる。
長所と短所を調べて自分に合った言語を選べばおk。
その上でPHPを選ぶなら、まず公式マニュアルを一読すること。
次に、紙ベースが好みであれば書店で手ごろな入門書を1冊買って全て試してみる。
紙ベースにこだわらないなら、Web上の入門サイト、blog、技術系ニュースサイトの特集なんかを見てやれば十分身に付く。
基本を覚えたら、日記帳でも掲示板でも適当なシステムを自分で作ってみる。
ここまで順調にこなせたならば、またこのスレに来て次のステップを聞くとよろし。
ついでに言うと、件のサイトほどのデータ量を扱うシステムならDBも使ったほうが楽かと。
0831nobodyさん
2008/02/21(木) 22:01:50ID:???君は若い。もしかしたら将来プログラマになる可能性も秘めているかもしれない。
もし将来的に〜ってことを考えて、今Web関連技術を勉強しているのであれば、
WebアプリケーションはPHPではなくJava(Servlet/JSP)を用いたものを作れるといいだろう。
Javaは幅広い分野で応用もきくし、PHPのような曖昧言語ではないので、
初心者からやるにはぴったりの言語だ。
もしPHPからはじめてしまって、新たな言語をやる場合、
俺のように型シラネ(゚听)、OOPシラネ(゚听)となって苦労するぞよ。
0832nobodyさん
2008/02/21(木) 22:16:53ID:???0834nobodyさん
2008/02/21(木) 22:26:09ID:jJmAtctQ目的を明確にし、日常生活の中で合間を縫って学びたいと思います。
たくさんの意見を聞くことができて光栄です。
本当にありがとうございました。
0837nobodyさん
2008/02/22(金) 00:55:43ID:???PHPはWEBに特化した言語だから
WEB言語では王様みたいなもの
豊富なライブラリとフレームワークとドキュメント量からみてもNo1
0839nobodyさん
2008/02/22(金) 01:42:30ID:???THTTPDとかそういうのにノータッチだが大丈夫だろうか、俺。
0840nobodyさん
2008/02/22(金) 01:44:12ID:???NO1とかベストとか絶対的な物のわけない
まずはメジャーなphpとJavaどっちもやってみればいい
なんならperlもやってみればいい
0841nobodyさん
2008/02/22(金) 01:58:11ID:hL86toCQ携帯メールの改行コードってなんなのでしょうか?
\nとかじゃないんですか?
0842nobodyさん
2008/02/22(金) 02:03:56ID:???ほんとイチからやる人にお勧めできるようなサンプルコードって何があるだろねー。
お題はBBSとか、実際に設置して遊べるようなのが良いのかな。
フレームワークとかOOPとかいうのをいきなりそこをやるよりは
いくつかベタベタなものを経験してからのほうが
それが必要な意味がわかるって思うんだ。
0843nobodyさん
2008/02/22(金) 02:23:32ID:???アルゴリズムやってから、UMLを勉強しつつオブジェクト指向を学ばせて
フレームワークのソースでいいんじゃね?急がば回れってね。
クズコードみてもなんの勉強にならない。
ところでみんなは何でValidationしてる?
PearとかFW使わないで手書きとか?
0844nobodyさん
2008/02/22(金) 02:35:58ID:???0845nobodyさん
2008/02/22(金) 07:38:00ID:???0846nobodyさん
2008/02/22(金) 09:56:31ID:???今考えれば、面倒くさい作業だった
0847nobodyさん
2008/02/22(金) 09:57:46ID:???これも面倒くさい作業のひとつ
0848nobodyさん
2008/02/22(金) 10:43:28ID:FaBFLjCt長らく疑問なのですが、ニコニコ動画のアマゾンで
どれがどれだけ買われているとか
どのアカウントが買ったなんて、どうやって集計しているのでしょうか?
アマゾンのリンクはAタグ直行なので、ニコニコの手を離れていますよね?
0849nobodyさん
2008/02/22(金) 11:23:42ID:???0850nobodyさん
2008/02/22(金) 12:33:14ID:UcDd6kU9を,で区切って配列に取り込もうとしてるのですが
define("DELIMITER", ",");
$count = 0;
$token = strtok($str, DELIMITER);
while ($token) {
$data[$count] = $token;
$token = strtok(DELIMITER);
$count++;
}
↑のようにしても、$dataの各々にデータが入らず困っております
なにかよい解決手段はありませんでしょうか
0851nobodyさん
2008/02/22(金) 12:35:49ID:???0852nobodyさん
2008/02/22(金) 12:36:02ID:???0854852
2008/02/22(金) 12:37:53ID:???0855nobodyさん
2008/02/22(金) 12:39:10ID:euN/fpJD> $str ="3,1,1,2,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,";
> を,で区切って配列に取り込もうとしてるのですが
>
>
> define("DELIMITER", ",");
> $count = 0;
> $token = strtok($str, DELIMITER);
> while ($token) {
> $data[$count] = $token;
> $token = strtok(DELIMITER);
> $count++;
> }
>
> ↑のようにしても、$dataの各々にデータが入らず困っております
> なにかよい解決手段はありませんでしょうか
0856nobodyさん
2008/02/22(金) 12:40:01ID:???0858848
2008/02/22(金) 14:47:56ID:FaBFLjCtonmousedown="return ichibaB.item_click('azB000X3UUFY')"
href="http://www.amazon.co.jp/gp/redirect.html%3FASIN=B000X3UUFY%26tag=nicovideojp-22
%26lcode=xm2%26cID=2025%26ccmID=165953%26
location=/o/ASIN/B000X3UUFY%253FSubscriptionId=1N1JNYM5DVFTMHFYD902"
target=_blank>
↓
263人が購入しました
この動画で680人 全体で5,097人がクリック
うーん…
0859nobodyさん
2008/02/22(金) 15:03:25ID:2HT47OiYjavascriptスレよりこちらのがいいと思ったのでこちらで質問させてください。
javascriptでonmouseしたら何かを呼び出すというのを
phpの処理から呼び出して表示する処理にしたいです。
例
東京を押したらデータベースからカテゴリが東京の町が出る。
これはどのような流れでするのでしょうか?
0860nobodyさん
2008/02/22(金) 15:05:00ID:???onmouseクリック
↓
JavaScriptからPHPにGET送信
↓
レスポンスをXMLで受け取る
↓
処理
0861nobodyさん
2008/02/22(金) 15:15:22ID:???static $hogehoge='mogemoge';
}
echo ParentClass::$hogehoge; //1.これはOK
$className = 'ParentClass'
echo $className::$hogehoge; //2.syntax error
色々試してみたけど、これは無理ですよね・・・
親クラスから子クラスのstaticにアクセスできないかなーとか色々試した結果。
0864nobodyさん
2008/02/22(金) 15:22:01ID:2HT47OiYすいません。
javascriptからphpにデータを送る方法がわかりません。
http://www.openspc2.org/JavaScript/Ajax/Ajax_study/chapter04/002/index.html
このページとかに書いてある
xmlhttp.jsが必要なのでしょうか?
できればxmlhttp.jsは使わないで作ってみたいです。
0865nobodyさん
2008/02/22(金) 15:23:28ID:KCNtJbN0Parse error: syntax error, unexpected T_VARIABLE in /var/www/test.php on line 28
PHP Version 5.2.0
これでいいのかな?
まぁ、サポートしてない構文って事だと思うけど。
0868864
2008/02/22(金) 15:29:37ID:2HT47OiYこのWebSiteちゃんと見てませんでした。
ありがとうございました。
0870nobodyさん
2008/02/22(金) 15:34:13ID:KCNtJbN0了解。
でもクラス名のところを変数にしてダブルトークンくっ付けてもメンバにアクセスできないって事で。
変数にアクセスするならgetHogehogeとか作ってメソッド通せってことなんだろうけど・・・
0871848
2008/02/22(金) 16:14:26ID:FaBFLjCtしかし購入結果なんてどこから集計しているんだろう…
0872nobodyさん
2008/02/22(金) 16:46:33ID:SvFBqeTuIE6のみ飛びません。(というよりIE6利用時のみ有効にならない)
header()関数で飛ばすときってなんか指定とかいるんですか?
0873nobodyさん
2008/02/22(金) 16:47:08ID:???もしかしたら管理画面にログインして自動で拾ってるのかもね。
出来るかは知らんけど。
あとは大口用になにかインターフェースがあるのか・・。
どっちにしろもうスレチガイなので他であたってください。
0875nobodyさん
2008/02/22(金) 16:51:19ID:SvFBqeTuheader("Location: ".$_SERVER['HTTP_REFERER']);
exit;
こんな感じです。
header()関数を実行する前は上でごにょごにょ処理をしています。
header()関数を実行する前でechoしてみたりしたら普通に出力できます。
Firefox2.0やIE7では普通に飛ぶんです。
0876nobodyさん
2008/02/22(金) 16:55:33ID:???値がある事はきっちり確認してるんだよね?
あとは「header location 絶対URL」でぐぐってみるといいかも。
0877nobodyさん
2008/02/22(金) 16:56:23ID:???0878nobodyさん
2008/02/22(金) 16:58:02ID:???PEARで予期せぬエラーが発生するようになったから、自前で接続しようと思ったがこんなにもめんどいとは・・・
0880nobodyさん
2008/02/22(金) 17:00:37ID:SvFBqeTuecho $_SERVER['HTTP_REFERER'];
を実行したらURLは入っています。
0881nobodyさん
2008/02/22(金) 17:04:17ID:???最小ソースでテストしる。
phpのエラー表示はしている?
環境を一応書くと多少参考になるかも。
0882nobodyさん
2008/02/22(金) 17:11:59ID:SvFBqeTuどもです。
display_errorsはOnにしています。
環境はLAMP環境で、Apache2.0,PHP4,MySQL4です。
今試したんですが、最小ソースでも動作しませんでした・・・・・。
これはもうテスト機の問題なのかな。
0883nobodyさん
2008/02/22(金) 17:12:45ID:???0884nobodyさん
2008/02/22(金) 17:24:34ID:???0885nobodyさん
2008/02/22(金) 17:58:55ID:SvFBqeTuan unknown filter was not added: PHP
これってどこ直せばいいんでしょ?
0886nobodyさん
2008/02/22(金) 17:59:16ID:???とあるスクリプト内のコメントアウトに
# シャープが使われていました
PHP のコメントアウトは
// スラッシュを2つ
だと理解しているのですが、上記のようにシャープでも有効なのでしょうか?
0888nobodyさん
2008/02/22(金) 18:02:13ID:SvFBqeTuちなみにerror_reportingはE_ALLにしてあります。
0889nobodyさん
2008/02/22(金) 18:13:05ID:vRTrnQEHご指摘ありがとうございます
冒頭にあります汚い言葉がNG処理のため>>8が見えませんでした、すみません…orz
あらためまして、質問させてください
・FreeBSD
・Apache 1.3.x
・PHP 5.x
質問内容は >>886 になります
よろしくお願いいたします
0890nobodyさん
2008/02/22(金) 18:23:38ID:vRTrnQEH「コメントアウト」では見つからなかったのですが、
「コメント」という項目を見つけて自己解決できました
お騒がせしてすみませんでした…orz
PHPのコメントアウトについての説明があるページ
http://www.php.net/manual/ja/language.basic-syntax.comments.php
後々の方のために簡潔に記してみます
一行だけのコメントアウト
(1) // ...
(2) # ...
複数行のコメントアウト
/* ...
... */
0891nobodyさん
2008/02/22(金) 19:17:32ID:INKr73LKPHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20060613/mysqli.so' - Cannot open "/usr/local/lib/php/20060613/mysqli.so" in Unknown on line 0
PHP Warning: Module 'bz2' already loaded in Unknown on line 0
PHP Warning: Module 'calendar' already loaded in Unknown on line 0
PHP Warning: Module 'ctype' already loaded in Unknown on line 0
PHP Warning: Module 'pcre' already loaded in Unknown on line 0
PHP Warning: Module 'SimpleXML' already loaded in Unknown on line 0
PHP Warning: Module 'SPL' already loaded in Unknown on line 0
...................
...................
こんな感じでエラーがたくさん出力されますが、phpの実行には支障がありません。
このエラーメッセージを出なくするためには、どの辺の設定をいじるべきでしょうか?
環境はphp5,CentOSです。宜しくお願いします。
0892nobodyさん
2008/02/22(金) 19:30:21ID:???エクステンションが読めない、とかじゃないの?
あと、多重存在してたり存在しないとかだとオモ。
centosは具体的にどうするかわからんが、apt同等のモノでエクステンション突っ込むか、php.iniをextensionで検索してその近辺。
0893nobodyさん
2008/02/22(金) 20:01:19ID:???それに display_startup_errors を on にしてるんだろ。
0895nobodyさん
2008/02/23(土) 01:16:43ID:5YrQuqb+0896nobodyさん
2008/02/23(土) 01:21:40ID:???そのデータを加工してテキストで出力するプログラムを
作っているんですが
php側のすべての処理が終わって
ブラウザがすべてのデータを受け取ったあとでも
IEやFirefoxのクルクル(って言うんですかね?アクセス中にクルクルする奴です)
がとまりません
コードの最後には exit(); を書いているのでそこで終了している認識なのですが
どのようなことが考えられるでしょうか?
この辺を見れば?というようなヒントでもいただけると助かります
環境は
apache2.0系
mod_php
php4.2
それで何が起きるかといえば特に障害とはなっていないのですが
ちょっと気持ちが悪いので
0897nobodyさん
2008/02/23(土) 01:59:24ID:???PHPを暗号化するソフトがあると知りまして調べたところ
下記の3つを見つけました、暗号化するほどたいそうな物は作ってはおりませんが興味がありますので
是非、このスレの先輩方にこれらの暗号化ソフトの評判を聞きたいです
PHP Screw
ionCube Encoder
コードロック
0898nobodyさん
2008/02/23(土) 02:00:06ID:5YrQuqb+exitの直前にデバッグ出力して本当にexitまで到達してるか
調べてみたら?
0899nobodyさん
2008/02/23(土) 02:00:26ID:A6pWBnk90900nobodyさん
2008/02/23(土) 05:33:41ID:???デバッグ出力したところ、"exit"命令の"exi"で止まってました。どうやったら"t"までたどり着けますか?
0901nobodyさん
2008/02/23(土) 05:37:07ID:???0902nobodyさん
2008/02/23(土) 05:49:03ID:???0903nobodyさん
2008/02/23(土) 06:03:00ID:???0904nobodyさん
2008/02/23(土) 06:57:24ID:???0905nobodyさん
2008/02/23(土) 10:23:06ID:???簡潔な表現で日本以外のアクセスをブロックできませんでしょうか?
フリーのPHP掲示板を使用しているのですが、中国人に荒らされて困っています。
0906852
2008/02/23(土) 10:31:17ID:???0907nobodyさん
2008/02/23(土) 10:32:20ID:???0909nobodyさん
2008/02/23(土) 12:03:10ID:???0910nobodyさん
2008/02/23(土) 12:19:28ID:???0911nobodyさん
2008/02/23(土) 12:51:03ID:???0912nobodyさん
2008/02/23(土) 12:59:46ID:???もうちょっとましなアドバイスがあるだろw
0913nobodyさん
2008/02/23(土) 13:28:02ID:QK8bgtUEご教授お願いします
0914nobodyさん
2008/02/23(土) 13:37:24ID:???・ファイルの内容を全部読み込んで、先頭に内容を追加してファイルの書き込み
0915nobodyさん
2008/02/23(土) 13:42:25ID:???どうもありがとうございました
0916nobodyさん
2008/02/23(土) 14:04:14ID:???0917nobodyさん
2008/02/23(土) 14:13:19ID:???新しいファイルを作る必要はない。
元のファイルをfileで読み込んで配列内で追加してソートして書き出せばいい。
で、>>913は、チャットかなんかでログをそのままの順番で表示したいんだろうけど、
追記したものを、一度fileで配列に読み込んで逆ソートすれば同じものになる。
0919nobodyさん
2008/02/23(土) 14:24:24ID:???917 は文盲なのか?
0920nobodyさん
2008/02/23(土) 16:40:19ID:???0921nobodyさん
2008/02/23(土) 16:45:06ID:???【例】
携帯⇒
Do[$id]
AU[$id]
SB[$id]
PC⇒
PC[$id]
よろしくお願いします。
0925905
2008/02/23(土) 17:49:46ID:Zm4gWLCuすみません。
id.datファイルにある数値を$idとして読み込み
DoCoMoの場合は$agent = "Do"
AUの場合は$agent = "AU"
Softbankの場合は$agent = "SB"
echo "{$agent}{$id}";
として表示したいです。
稚拙な説明申し訳ありません
0926nobodyさん
2008/02/23(土) 17:55:49ID:???0927nobodyさん
2008/02/23(土) 18:51:04ID:???正確さを求めるならやはり各キャリアの技術情報からIPアドレスで判別
または回線が余裕ならDNS引いて判別もあるがリソースを食うからなぁ。
0928891
2008/02/23(土) 19:00:14ID:DpvE5W4rアドバイスありがとうございました。
ご指摘のphp.iniのextension_dirを見直しました。
> PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20060613/mysqli.so' - Cannot open "/usr/local/lib/php/20060613/mysqli.so" in Unknown on line 0
と出力されているいうものについては、php.iniのextension_dirで指定したところに、
soファイルを置きました。
そうすると、今度は、
> PHP Warning: Module 'mysqli' already loaded in Unknown on line 0
と出てしまいます。
逆に、
> PHP Warning: Module 'bz2' already loaded in Unknown on line 0
と出ているモジュールをextension_dirで指定されているディレクトリから削除すると、
今度は、
> PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20060613/bz2.so' - Cannot open "/usr/local/lib/php/20060613/bz2.so" in Unknown on line 0
と出てしまいます。
find / -name bz2.so
で全検索しましたが、ファイルの実体は一つしかありません。
再起動も掛けて症状に変化がありません。もう訳分からない状態です。
他に、試してみることありますか?宜しくお願いします。
0929891
2008/02/23(土) 19:04:51ID:DpvE5W4rApacheの起動ログや、コマンドラインからphpを使う際に、このWarningメッセージができます。
この際は、Warningが発生してもいいので、
コマンドラインから使う場合にこのエラーメッセージを標準出力に出さないように出来ればそれでも構いません。
どうか宜しくお願いします。
0930nobodyさん
2008/02/23(土) 20:00:31ID:???alreadyなモジュールをコメントアウトすればど?
0931nobodyさん
2008/02/23(土) 20:18:41ID:???もうひとつ、alreadyなので既にそのモジュールはLoadされてるってことじゃないかと。
$ php -m
でモジュール一覧
$ php -m -n
で*.iniを使わないときのモジュール
$ php --ini
がどの*.iniを見てるか
で、考えてみ
0932891
2008/02/23(土) 20:33:24ID:DpvE5W4r本当にどうもありがとうございました。
解決しました。
> Additional .ini files parsed: /usr/local/etc/php/extensions.ini
こんなファイルを定義ファイルとして指定したつもりはなかったのですが、
勝手に定義ファイルに指定されていました。この中の重複モジュールをコメントすることで対応しました。
本当に助かりました!!!!
0933nobodyさん
2008/02/23(土) 20:36:49ID:dbEYiTanhairetu[0]→2
hairetu[1]→5
hairetu[2]→6
hairetu[3]→7
これをこんなふうに
変数 中身
hensuu→ 2,5,6,7
変数に取り込む方法を何卒教えてください
0934nobodyさん
2008/02/23(土) 20:37:53ID:???0935nobodyさん
2008/02/23(土) 20:38:37ID:???0936nobodyさん
2008/02/24(日) 01:14:18ID:???暴れている馬鹿に天誅を下す為に、phpでクラックする方法を模索しているが、
phpそのものがクラックされているwww
0937nobodyさん
2008/02/24(日) 02:06:44ID:???0938nobodyさん
2008/02/24(日) 02:08:07ID:???0939nobodyさん
2008/02/24(日) 02:15:25ID:aMeZTtDm「%」を使うと、割った余りが出るんですよね?
しかし「$amari=30%5;」を実行させると「1」が出るのですが、
なぜでしょうか・・・?「30÷5=6…0」のはずでは?
0940nobodyさん
2008/02/24(日) 02:21:42ID:???echo 30 % 5;
出力結果:0
0941nobodyさん
2008/02/24(日) 03:57:22ID:???コードのどっかで代入間違えてる可能性あるから
答え格納してる変数をechoとかでトレースしてみれ。
あんま長いコードでないならそのままこっちに書いたほうがはやいけど。
0942nobodyさん
2008/02/24(日) 04:07:25ID:i4ew7RJV一度狂うとApacheを再起動しない限り直りません。
タイムゾーンが狂う場所は突き詰めたのですが、この先が解決できません。
なお、Apacheのログは正常なタイムゾーンで記録されています。
Win2kSP4+Apache2.2.8+PHP5.2.5の環境で、php.iniには
「date.timezone = "Asia/Tokyo"」の設定をしてあります。
具体的には、以下のスクリプトの出力が
08/02/24 3:57
08/02/23 18:57
というようになります。
echo date("y/m/d G:i");
$params = array(
'mail' => 'mail@example.com',
'password' => 'pass',
'next_url' => 'hogehoge'
);
$ch = curl_init('http://example.com/');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
$output = curl_exec($ch);
curl_close($ch);
echo "\n".date("y/m/d G:i");
0943nobodyさん
2008/02/24(日) 05:38:42ID:???ふぉろーろけーしょんでGMTなのか?
システム時刻に上乗せして足してるはずないし。
0944nobodyさん
2008/02/24(日) 13:21:33ID:FbW8idviもう一つの値xが、$data内の値いずれでもないことを調べるのに簡単な方法ってありますか?
if($data[0] == x)のように一項目ずつ入れて判定していくと記述が冗長になってしまいます。
よろしくお願いします。
0945nobodyさん
2008/02/24(日) 13:22:46ID:???0946nobodyさん
2008/02/24(日) 13:29:33ID:???いちいちここで聞くの効率悪くね?
0947nobodyさん
2008/02/24(日) 13:31:10ID:???0949nobodyさん
2008/02/24(日) 13:36:19ID:???名前が分かってれば調べられるけど、「こんな機能の関数」って感じでは調べられないでしょ。
ググルのもありだとは思うけど。
0950nobodyさん
2008/02/24(日) 13:42:15ID:???この手の質問が出るのなんてほとんど配列か文字列の関係だから、
http://jp2.php.net/manual/ja/ref.array.php
http://jp2.php.net/manual/ja/ref.strings.php
ぐらいは、ざっとでも眺めたほうが良いとは思う。
それにしても >>942 が気になる...。
0951nobodyさん
2008/02/24(日) 13:46:26ID:???もちろんマニュアルを読むのは推奨だよね。
ただ初心者が機能から探すにはちょっと不便だと言っているだけです。
>>1はまず読んでいるという前提で、分からなければ質問者のためにはなるかなと。
0952nobodyさん
2008/02/24(日) 13:48:49ID:???単語でページ内検索もできるし、関数ページには関連関数のヒントも出てる。
0953nobodyさん
2008/02/24(日) 13:53:33ID:???関数名分かっているときはマニュアルで、機能から逆引きは逆引き本使っているな俺は。
各自自分にあった方法でやればいいだけ、いちいち人のに反論する理由が良く分からん。
0954nobodyさん
2008/02/24(日) 13:56:56ID:???0955942
2008/02/24(日) 14:17:55ID:???接続先からは、今の時間でしたらSun, 24 Feb 2008 05:12:49 GMTと返ってきました。
FollowLocationのFollow先も、同じ鯖内です。
すべての行にecho dateを挿入したところ、curl_execで狂うことが分かりました。
CURL関係でタイムゾーン周りの設定があるのでしょうか。
ぐぐってみましたが見あたりませんでした。
0956nobodyさん
2008/02/24(日) 14:33:04ID:???初心者は初心者であることを言い訳に楽したがる傾向があるな。
初心者ならphpのウリである標準関数のチェックくらい厭わずに地道に努力しろよと。
0957nobodyさん
2008/02/24(日) 16:09:39ID:???942のソースコピペで確認。同じ時刻が表示されるなー
08/02/24 16:03
08/02/24 16:03
---
cURL Information => libcurl/7.16.0 OpenSSL/0.9.8e zlib/1.2.3
PHP 5.2.5 (cli) (built: Nov 8 2007 23:18:51)
Microsoft Windows XP [Version 5.1.2600]
0958942
2008/02/24(日) 16:21:10ID:???942のソースだと私も同じ時刻になりました。
接続先はニコニコ動画です。
アカウント持っている方は試してみていただけますか。
942のソースの以下の部分を変更してください。
$params = array(
'mail' => 'メールアドレス',
'password' => 'パスワード',
'next_url' => '/api/getflv/sm9'
);
$ch = curl_init('https://secure.nicovideo.jp/secure/login?site=niconico');
0959nobodyさん
2008/02/24(日) 16:55:39ID:???デフォルトがGMTに変更されてしまうね。最後のとこで
echo "\n".date("y/m/d G:i")." ".date_default_timezone_get();
するとGMTになってますな。
とりあえず最初に
$default_tz = date_default_timezone_get();
......
......
最後に
date_default_timezone_set($default_tz);
とかしたらどう
0960nobodyさん
2008/02/24(日) 17:32:45ID:???0962nobodyさん
2008/02/24(日) 17:49:10ID:???GET値処理したいのですが、
$_GET['hoge']値を処理したい場合、
$hoge = str_replace("\0", "", $_GET['hoge']);
$contenst = file_get_contents($hoge);
で問題なくなりますか?
もしくは
if (mb_eregi("\0", $_GET['hoge'])){ exit(); }
とかで良いのでしょうか?
ヌル文字というやつがイマイチ分からなくて。。。
0963962
2008/02/24(日) 17:50:24ID:???0964nobodyさん
2008/02/24(日) 18:26:00ID:WLGwl6jq5秒〜300秒かかる場合があります。
前後で時間計測してやっと特定したのですが、ここから先が複雑で原因は分かっていません。
$smarty->display($tmplatePath);
このメソッド内で処理が遅くなりそうなところってどこでしょうか?
漠然としてしますが、ヒントだけでも頂戴できれば嬉しいです。
お願いします。
0966942
2008/02/24(日) 18:52:52ID:???959の方法でいけたと思ったのですが、二度目以降はGMTになってしまいます。
ソースの最初と最後にecho date_default_timezone_get();を入れると、
一度目
Asia/Tokyo
…
Asia/Tokyo
二度目
GMT
…
GMT
となるので、サーバーの設定自体が変わってしまっているように思えます。
PHPのインストールでタイムゾーンに関する設定は、php.iniのdate.timezone以外にありますか?
0968nobodyさん
2008/02/24(日) 19:43:07ID:???0969nobodyさん
2008/02/24(日) 21:05:23ID:???【PHP】下らねぇ質問はここに書き込みやがれ 65
http://pc11.2ch.net/test/read.cgi/php/1203854597/
0972nobodyさん
2008/02/24(日) 21:29:46ID:???0973nobodyさん
2008/02/24(日) 23:16:30ID:???早漏れかよ
0975nobodyさん
2008/02/24(日) 23:44:34ID:???0977nobodyさん
2008/02/25(月) 00:17:16ID:???0978nobodyさん
2008/02/25(月) 01:53:56ID:slLlRgiK{
static public function a()
{
self::b()
}
private function b()
{
echo 'test';
}
}
test::a();
$test = new test;
$test->a();
両方で使えるようにこうするのは正しいですか?
0979nobodyさん
2008/02/25(月) 01:54:29ID:???0980942
2008/02/25(月) 02:08:25ID:x26foiks対処しようとしましたが、何故か動かなくなるスクリプトが出たためこれも断念。
何かいい方法ないですかね・・・
というか、さすがにこれはPHPのバグを疑ってもいいような気がします。
>>971
質問する側にとっては分かりにくい。
なぜ質問後にID表示やトリップなのか。意味がない。
今回初めてこのスレに来ましたが、初めての人に分かりにくいので立て直してもいいかと思います。
0981nobodyさん
2008/02/25(月) 02:28:29ID:???質問後ってのはテンプレ変えた奴が間違ってんだろ
前スレではIDとトリップをOKにという意図でこのスレを立てた筈
0983nobodyさん
2008/02/25(月) 11:05:51ID:qI4PW04VPHPとMySQLを使ってWEBサイトを構築したいのですが
お勧めのサイトや書籍はありますか?
商品の情報をDBにCSVなどで読み込ませてPHPで検索結果を表示させるサイト
を勉強してみたいです。
0984nobodyさん
2008/02/25(月) 11:11:22ID:???意味わかってねーだろ
とりあえずAmazonにショップングカートやそういった関連の本が結構あるから調べてみるといい
0989nobodyさん
2008/02/25(月) 16:48:15ID:???配列から重複しない複数の要素を選び出す関数を作ってた俺乙過ぎ。
0990nobodyさん
2008/02/25(月) 17:01:10ID:???0991nobodyさん
2008/02/25(月) 17:31:31ID:???0992nobodyさん
2008/02/25(月) 18:08:10ID:srndQzeuTCPDFを使用したのですが、内容がほとんど無い一ページでも5メガ近くになってしまいます。
どうも日本語フォントのイメージを全部持っているようなので、もうちょっと軽くしたいんです。
0993nobodyさん
2008/02/25(月) 18:23:16ID:hDqzyK/W}
csvファイルから全ての行を配列$fooに読み込むコードを書いてたら、
処理の中身がない歪なコードになったけど、こんな書き方していいんでしょうか?
もっとスマートな書き方があれば教えて下さい。
0995nobodyさん
2008/02/25(月) 19:12:48ID:srndQzeu自己解決しました、お目汚し失礼しました。
0996nobodyさん
2008/02/25(月) 19:17:28ID:???参考にしたページのリンクだけでも良いから。
0997nobodyさん
2008/02/25(月) 19:19:07ID:???-''":::::::::::::`''> お断りします!!! <
ヽ::::::::::::::::::::: ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
|::::::;ノ´ ̄\:::::::::::\_,. -‐ァ __ _____ ______
|::::ノ ヽ、ヽr-r'"´ (.__ ,´ _,, '-´ ̄ ̄`-ゝ 、_ イ、
_,.!イ_ _,.ヘーァ'二ハ二ヽ、へ,_7 'r ´ ヽ、ン、
::::::rー''7コ-‐'"´ ; ', `ヽ/`7 ,'==─- -─==', i
r-'ァ'"´/ /! ハ ハ ! iヾ_ノ i イ iゝ、イ人レ/_ルヽイ i |
!イ´ ,' | /__,.!/ V 、!__ハ ,' ,ゝ レリイi (ヒ_] ヒ_ン ).| .|、i .||
`! !/レi' (ヒ_] ヒ_ン レ'i ノ !Y!"" ,___, "" 「 !ノ i |
,' ノ !'" ,___, "' i .レ' L.',. ヽ _ン L」 ノ| .|
( ,ハ ヽ _ン 人! | ||ヽ、 ,イ| ||イ| /
,.ヘ,)、 )>,、 _____, ,.イ ハ レ ル` ー--─ ´ルレ レ´
0998nobodyさん
2008/02/25(月) 19:23:40ID:hDqzyK/Wありがとうございました。一瞬つまづきましたが、正確には!feof($fp)ですね。
1000nobodyさん
2008/02/25(月) 19:43:31ID:???10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。