【PHP】ID出さんでも質問OKなスレ【初心者歓迎】2
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2009/09/10(木) 22:52:33ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
姉妹スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 80
http://pc11.2ch.net/test/read.cgi/php/1233479457/
0002nobodyさん
2009/09/10(木) 22:53:48ID:???■本家マニュアル 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/
0003nobodyさん
2009/09/10(木) 22:55:01ID:???0004nobodyさん
2009/09/10(木) 22:55:06ID:???http://pc11.2ch.net/test/read.cgi/php/1233590976/l50
0005nobodyさん
2009/09/10(木) 22:56:39ID:???0007nobodyさん
2009/09/10(木) 23:00:23ID:???0008nobodyさん
2009/09/10(木) 23:02:21ID:???ID出したくない理由ってなんだろうな
単にめんどいというならそういうやつには向いてないし門前払い審査には最適なんだがな
どうせテンプレもよんじゃいねえよ
0009nobodyさん
2009/09/10(木) 23:07:20ID:???0010前スレ 970
2009/09/10(木) 23:12:36ID:???0011nobodyさん
2009/09/10(木) 23:13:32ID:???0013nobodyさん
2009/09/10(木) 23:16:05ID:???0014nobodyさん
2009/09/10(木) 23:20:13ID:???0015前スレ 970
2009/09/10(木) 23:23:45ID:???すみません、別のことしているうちに次のスレが立っていたもので・・・
>>14
Loaded Configuration Fileの欄には(none)と書かれています
コレがまずいのでしょうか?
0016nobodyさん
2009/09/10(木) 23:34:00ID:???apacheのhttpd.confのPHPInDirで指定したパスに置かれたphp.iniが読み込まれます。
もう一度確認したほうが良いと思います。
以下回答者の愚痴です。
スレが立っていたから回答を無視するって何様?
999以前にも2回ほどphp.iniがロードされてないって言われてなかった?何を確認したの?
やることやってないってのは、「正しい修正をやってない」ということではなく「回答されたことをやってない」という意味だよ?
いい加減にしてほしい。
0017nobodyさん
2009/09/10(木) 23:36:03ID:???0019前スレ 970
2009/09/10(木) 23:47:34ID:???ありがとうございました
無事に解決しました!!
3時半から8時間かかりましたが、理由は>>16さんの教えてくれた、
>apacheのhttpd.confのPHPInDirで指定したパスに置かれたphp.iniが読み込まれます
この部分でした
『PHPを伝授する』スレの設定をそのまましていたもので、PHPIniDir "c:/php"が自分の設定では、PHPIniDir "c:/WINDOWS"でした
いやぁ、ほんと良かったです
>>16さんを含め、その他教えてくれた方々皆さんに本当に感謝します
ありがとうございました
今日中にはどうしても終わらせたくて、もし今日出来なかったら暫くふてくされてPHPから離れようと思っていたところでした
本当に皆さんありがとうございました
0020nobodyさん
2009/09/10(木) 23:50:31ID:???次からは改善してくれよ。
設定コピペとかは最高に馬鹿な行為だからね。身をもって実感できたかと。
0021前スレ 970
2009/09/10(木) 23:54:43ID:???いやぁ、マジでありがとうございました
自分の使ってる参考書にはPHPIniDirの記述が無くて、コレが何なのか分からないまま『PHPを伝授する』スレの通り設定していました
ほんと助かりました
非常に疲れましたが、良かったです
0022nobodyさん
2009/09/11(金) 09:00:57ID:???同じ日付の予約が出来ないように、予約フォームからPOSTされたときに
同じ日に予約が既にある場合は、新たな予約を受け付けないように処理していますが、
予約後にブラウザの戻るボタンでフォームに戻り、同じ日付で再度予約を入れると受け付けてしまいます。
こういう場合はどのように対処すればいいんでしょうか?
0023nobodyさん
2009/09/11(金) 09:03:29ID:???0024nobodyさん
2009/09/11(金) 10:02:25ID:???これがうまくいってない。
実行されるSQL文をvar_dumpなりで表示させて確認したほうがいい
0026nobodyさん
2009/09/11(金) 10:37:14ID:???0027nobodyさん
2009/09/11(金) 10:40:09ID:???0028nobodyさん
2009/09/11(金) 17:34:22ID:???処理の長い処理に、順次 printing... を出したくて
http://jp2.php.net/manual/ja/function.ob-flush.php#90529 などを参考に
function flush_buffers(){
ob_end_flush();
ob_flush();
flush();
ob_start();
}
for($i=0;$i<10;$i++){
flush_buffers();
echo 'printing...<br />';
usleep(300000);
}
としてみましたが、結局、全部まとめて出てしまいます。
何かアドバイスをいただけませんか。
0032nobodyさん
2009/09/11(金) 19:34:57ID:???0033nobodyさん
2009/09/12(土) 22:40:15ID:???class aaa{
public $b;
}
$c = new aaa;
$c->b=1;
print $c->b;
?>
----------------------------
オレ様が華麗にOOPに挑戦
0034nobodyさん
2009/09/12(土) 22:51:03ID:???()つけような
0035nobodyさん
2009/09/12(土) 22:56:05ID:???直接フィールド($b)を操作するのはよくないからアクセサを用意してください。
継承しないフィールドは基本的に全てprivateでOK。
<?php
class aaa {
private $b;
public function setB($value) {
$this->b = $value;
}
public function getB() {
return $this->b;
}
}
$c = new aaa();
$c->setB(1);
echo $c->getB();
?>
0036nobodyさん
2009/09/13(日) 17:37:11ID:???pdo.dsn.samples="sqlite:C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\samples\samples.sqlite"
と書き加えろと参考書に書かれているのですが、別にどこに書き加えてもいいのでしょうか?
特にpdo.dsn=と言う様な行も見当たらないのですが
0038nobodyさん
2009/09/13(日) 18:59:27ID:???俺ならD:\Apache2.2\htdocsだぞ
0040nobodyさん
2009/09/13(日) 19:09:45ID:???0041nobodyさん
2009/09/13(日) 22:36:14ID:???\x
ってのを入れると、\xがなんか、
特別な意味に解釈されてしまって
うまく動かない、ってのを本で読んだんだが、
そうなの?
\xampp\sample\...
とかってパス名を使う場合。
0042nobodyさん
2009/09/13(日) 23:27:01ID:???0044nobodyさん
2009/09/14(月) 14:33:45ID:???同じ処理をメール受信トリガーで起動させるとfopenでエラーが出ます
具体的には
function csv_write($email){
$result = "rslt";
$date = date('Y/m/d');
$word = $email.",".$date."\n";
$pointer=fopen("./csv/test.csv", "a");
if($pointer == FALSE){
$result = "fopen失敗";
mail("$email", "check01", "$result");
return;
}
flock($pointer, LOCK_EX);
fputs($pointer, $word);
flock($pointer, LOCK_UN);
fclose($pointer);
mail("$email", "check02", "$result");
}
これをそのまま呼び出したPHPにブラウザからアクセスすると書込成功するのですが
メール受信で起動させるとcheck01のエラーメールが届きます
この原因は何が考えられるのでしょうか?
0045nobodyさん
2009/09/14(月) 14:48:08ID:???004644
2009/09/14(月) 15:49:02ID:???dirname(__FILE__)かましたら無事にできました!
ありがとうございました。
どーもこのカレントがちょろちょろ変わるのが慣れないですね
脳内エラーパターンリストに早く刷り込まないと
0047nobodyさん
2009/09/14(月) 17:21:41ID:???0048nobodyさん
2009/09/14(月) 17:24:41ID:???0049nobodyさん
2009/09/14(月) 17:56:27ID:???0050nobodyさん
2009/09/14(月) 18:01:44ID:???http://pc11.2ch.net/pc/
0051nobodyさん
2009/09/14(月) 19:04:31ID:???やりたいことは、ライブラリやフレームワークが提供する関数を上書きしたいということです。
素直に再定義するとエラーになるので、関数をいったん削除できないかと思い、質問しました。
よろしくお願いします。
0052nobodyさん
2009/09/14(月) 19:29:28ID:???0053nobodyさん
2009/09/14(月) 19:32:51ID:???0054nobodyさん
2009/09/14(月) 19:57:56ID:???0055nobodyさん
2009/09/15(火) 00:09:33ID:???0056nobodyさん
2009/09/15(火) 10:19:15ID:???それともSQLやデータベースの分野になるのでしょうか?
0057nobodyさん
2009/09/15(火) 10:20:51ID:???0058nobodyさん
2009/09/15(火) 11:11:20ID:???0059nobodyさん
2009/09/15(火) 11:13:16ID:???SQL,MYSQL,SQLLite,・・・
データベースと一口にいってもいろいろある
プログラミング言語と一口に言ってもいろいろあるのと同じ
分野と言うなら全部別
0060nobodyさん
2009/09/15(火) 11:14:18ID:???それともおにぎりやツナマヨの分野になるのでしょうか?
変だろ?
0061nobodyさん
2009/09/15(火) 11:49:37ID:???一種のプログラミング言語と考えていい
0062nobodyさん
2009/09/15(火) 15:37:41ID:???0063nobodyさん
2009/09/15(火) 15:51:29ID:???0064nobodyさん
2009/09/15(火) 16:31:07ID:???0065nobodyさん
2009/09/15(火) 16:38:30ID:???ただSImple Query Languageもあっている
0066nobodyさん
2009/09/15(火) 19:54:37ID:???どっちも同じような所で使われていて、本3冊を読んでみたりしたのですが分かりません
0067nobodyさん
2009/09/15(火) 20:09:58ID:???query →基本 初心者はこれを使え
prepare/excute → 上級者用
SQLインジェクション対策でこれを使う
はじめのウチは無視してOK
0068nobodyさん
2009/09/15(火) 20:37:26ID:???マルチと言うかは微妙だけどさ
0070nobodyさん
2009/09/16(水) 11:04:34ID:???俺は良く分かっていないからそうしてるんだけどw
0071nobodyさん
2009/09/16(水) 11:29:53ID:???sqlインジェクションの危険は同様にあるぞ
0072nobodyさん
2009/09/16(水) 12:18:18ID:???0075nobodyさん
2009/09/16(水) 12:37:40ID:???>変なデータ入れられることはないが
「;」をエスケープしなきゃupdateでもdrop tableでもし放題だよ
0077nobodyさん
2009/09/16(水) 12:47:21ID:???0078nobodyさん
2009/09/16(水) 12:50:19ID:???0079nobodyさん
2009/09/16(水) 12:57:15ID:???0080nobodyさん
2009/09/16(水) 13:05:30ID:???http://www.thinkit.co.jp/cert/tech/7/5/2.htm
このあたりが参考になる
0081nobodyさん
2009/09/16(水) 13:42:34ID:???「'」を無効化できるから
で、それだとコードが冗長になるって言うんでprepare/executeメソッドを使うんだよね?
でもそれでも「;」をエスケープしなきゃ駄目だって事?
じゃぁ対策はどうすればいいの?
他にメソッドとかあるの?
0082nobodyさん
2009/09/16(水) 13:57:05ID:???レスを順によく読め
;を使ったマルチプルステートメントのリスクは、prepare/executeを使わなかった場合の話だ
0083nobodyさん
2009/09/16(水) 14:01:53ID:???プリペアドステートメント使っていれば「;」も平気だよ。
SQLインジェクションへの対策はmysql_real_escape_stringなどを使う
これは\n\rや'";等をエスケープする。
プリペアドステートメントはそもそもインジェクション対策ではなく
クエリのパースの回数を減らしDB側の負担を軽く(リソース消費量を少なく)させるのが目的。
プレースホルダを使うのでインジェクション対策にも有効というだけ。
冗長だから使うというモノではない。
0084nobodyさん
2009/09/16(水) 15:07:06ID:72D7UAj5出来ればmessagesとかに一緒に出力出来ればと思ってるんですが
権限の問題かmessagesには出すことが出来ませんでした。
ログを出すさいにmessagesなどに出す方法があれば教えてください。
0085nobodyさん
2009/09/16(水) 15:20:48ID:???1.独自のログに出力させ、そのログをlogrotateでローテートさせる
2.loggerを使う
例)exec("logger -i -t TEST -p kern.warning 'TEST message from php'");
3.messagesの権限を変える。
好きなの選んで。
俺なら1を選ぶが。
0086nobodyさん
2009/09/16(水) 15:21:07ID:???messagesだとOKなのは、ローテーションされるから?
だったら、自前のログファイルもlogrotate等でローテーションすれば良いのでは
> 権限の問題かmessagesには出すことが出来ませんでした。
syslog()を使ってもダメだったってことかな
008784
2009/09/16(水) 16:23:03ID:72D7UAj5ログ関係いままで触ったことがなかったからloggerなんてものがあったの知らなかったです
ちょっと調べてみます。
>>86
logger同様にsyslogも知りませんでした。
使い方は調べてみて良さそうなほうを使ってみようと思います。
messagesだとOKっていうわけじゃないんですが、ログをフォルダ単位(/var/log)でとっているので
散らばるのはよくないかな〜という漠然とした考えでした。
0088nobodyさん
2009/09/16(水) 16:24:59ID:???include_path=".;c:/php/includes;C:/php/Pear;"と参考書やネットを見て設定したのですが、
自分のc:/phpフォルダを見ると、includesというフォルダやファイルが見当たりません
コレで大丈夫なのでしょうか?
殆どがこのような設定になっていますが、皆さんのphpフォルダの中にはincludesというファイルやフォルダが入っているのでしょうか?
008985
2009/09/16(水) 17:02:10ID:???syslog()なんてあったのか。
ならexecでloggerなんて呼ばないでsyslog()を使った方が良い。
ただ、syslog()は/etc/syslog.confに書かれたログにしか出力しないので注意
/etc/syslog.confの設定はスレ違いなので調べて。
で、そこまでやるならやっぱりlogrotateの方が良いと思うぞ
0090nobodyさん
2009/09/16(水) 18:31:51ID:???試したこと:
・「localhost」で自分のサーバーのMySQLに接続できる。
・「127.0.0.1」で自分のサーバーのMySQLに接続できない。
・別のサーバーのIPアドレスでそのMySQLに接続できない。
・別のサーバーのホストアドレスでそのMySQLに接続できない。
接続できないとき、mysql_connect、mysqli_connectともに、エラー2003、
「Can't connect to MySQL server on 'サーバー' (13)」のエラーが出ます。
また、mysqlコマンドで上記いずれも接続できることは確認しています。
なのでサーバーが起動していないとか、ポートが空いてない、
ユーザー権限・パスワードの設定ミスではありません。
宜しくお願いします。
0091nobodyさん
2009/09/16(水) 19:26:33ID:???009290
2009/09/16(水) 19:35:53ID:KVXgimyySELinuxが有効になっていて、それがmysqlの接続をブロックしていたためでした。
参考:ttp://www.media.t-kougei.ac.jp/~nagae/?p=2350
ありがとうございました。
0093nobodyさん
2009/09/16(水) 19:46:58ID:???0094nobodyさん
2009/09/17(木) 00:51:33ID:GtJThGz3コンストラクタがいまいちどのタイミングで使うのか理解出来ない
のですが、誰か教えてください。
0096nobodyさん
2009/09/17(木) 01:05:29ID:???Hogeクラスがあるとする。
このクラスのオブジェクトを作成する場合、
$obj = new Hoge(引数);
と記述する。
このとき、function __construct(引数)が定義されてると、自動的に実行される。
どのタイミングで使うかを気にしているみたいだが、
コンストラクタを関数として直接呼ぶ必要は無い。
009794
2009/09/17(木) 01:29:07ID:GtJThGz3>>96
えと・・・クラスを書いた後、オブジェクトを関数の中に書かなくても
最初に実行されるメソッドって事でいいんですかね?
0098nobodyさん
2009/09/17(木) 01:46:08ID:???日本語でおk
http://jp2.php.net/manual/ja/language.oop5.decon.php
0099nobodyさん
2009/09/17(木) 09:11:08ID:???もういい加減ネット調べるのもめんどくさくなってきた・・・
本でバッと見た方が早いし
IT後進国の我が県で一番大きな本屋に売ってなかったんですけど、何かいい本ないですか?
アマゾンで買います
0100nobodyさん
2009/09/17(木) 09:14:33ID:???http://pear.php.net/manual/ja/package.database.db.php
0101nobodyさん
2009/09/17(木) 10:54:41ID:aZjknirCネットでサクっと見るほうが効率よさそうな気もするけどな。
0102nobodyさん
2009/09/17(木) 11:25:54ID:???IDEならHELP内包してるし、PHPエディタだって関数位ならF1一発で検索できる。
まぁ紙媒体で持っておきたいというのもわかるけどね。
0104nobodyさん
2009/09/17(木) 11:48:42ID:???それを表示っていうのはあるな
0105nobodyさん
2009/09/17(木) 12:24:55ID:???の、次にコマンドライン版PHPを用いて以下のように実行する。
# php /usr/lib/php/DB/DataObject/createTables.php example.ini
という部分とか、
http://hikatu.sblo.jp/article/2916423.html
のphp C:\server\php\PEAR\DB\DataObject\createTables.php example.ini
という部分をWindowsのコマンドプロンプトで実行したいのですが、
どのようにすればいいのでしょうか?
そのまま打つだけではコマンドプロンプトが受け付けませんし、
> php /usr/lib/php/DB/DataObject/createTables.php example.ini
とかいう記述方をとる場合、先頭の「>」の前にはいったい何を書けばいいのでしょうか?
コマンドプロンプト実行時はC:\Documents and Settings\メイン>となっていますが、この後に上記の
php /usr/lib/php/DB/DataObject/createTables.php example.ini
など記載しても受け付けられません
ただ単にC:\>の後に記述しても受け付けられず、混乱しています
0106nobodyさん
2009/09/17(木) 12:54:59ID:???phpにパスが通って無いだけじゃないの?
とりあえず、受け付けませんじゃなくて画面に表示されるエラーを記述しなよ
あと「>」の前は書くモノじゃなくて、今いるパスが表示されているだけ。
0107nobodyさん
2009/09/17(木) 13:25:03ID:???すみません、受け付けないじゃなかったです
今実行したら、別ウィンドウで、
「このファイルは開けません:ファイル createTables.php このプログラムを開くには作成元のプログラム名が必要です。
インターネットで自動的にプログラムを検索するか、又はコンピュータにあるうろグラム一覧から手動で選択してください」
とまぁ、よくあるエラーが出てきました
本当ならばココでpear.iniとかテーブルベース上のテーブルに対応したデータアクセスクラスが作成されるはずなのですが・・・
何か表記方法をまちがっているのでしょうか?
0108107
2009/09/17(木) 13:29:19ID:???cd c:\を書いて、C:\>という風にいつもしています
0109nobodyさん
2009/09/17(木) 13:38:59ID:???実行したコマンドも”全て”コピペして。
createTables.phpを直接実行したら、.phpという拡張子が関連づけされていなければそうなる
ってこれはphp関係無くwindowsの初歩的な事だよ
0110nobodyさん
2009/09/17(木) 13:51:03ID:???C:\>C:\php\PEAR\DB\DataObject\createTables.php "C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\samples\chap6\myConfig.ini"
と入力しました
.phpの後の「"」の記号は付けたり外したりしました
ごめんなさい、構文の方はまぁ分かるのですが、こういうコマンドプロンプトのようなコンピューターの中の方はからっきしで駄目でして
コマンドプロンプトの弄り方の載ってるサイトを4つほど見たのですが、良く分からなくて・・・
0111nobodyさん
2009/09/17(木) 14:49:41ID:???>>105でitproのサイトのってるけど、そこには↓↓こう書いてあるでしょ?
# php /usr/lib/php/DB/DataObject/createTables.php example.ini
>>110 では先頭の「php」が抜けているよね?
C:\>php C:\php\PEAR\DB\DataObject\createTables.php "C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\samples\chap6\myConfig.ini"
↑こんな感じで先頭にphpをつけて実行して。
0112nobodyさん
2009/09/17(木) 21:11:33ID:???確かに・・・
phpって付いていました
で、
C:\>php C:\php\PEAR\DB\DataObject\createTables.php "C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\samples\chap6\myConfig.ini"
としたら、「'php'は、内部コマンド又は外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません」と出て、
C:\>C:\PHP\php PEAR\DB\DataObject\createTables.php "C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\samples\chap6\myConfig.ini"
としたら、「Could not open input file:PEAR\DB\DataObject\createTables.php」と出てしまいました
確かにエラーにはなりましたが、コマンドプロンプトが動作しただけでも進展で嬉しかったです
しかし、createTable.phpが動作してくれないと、PEAR::DB_DataObjectは作動しないようで困りものです
もうココに10時間程かけてしまいました(苦笑)
0113nobodyさん
2009/09/17(木) 21:15:13ID:???最初の部分よく見て!createTables.phpへのパスが
「C:\php\PEAR\DB\〜」じゃなくて「PEAR\DB\〜」になってるよ!
C:\PHP\php C:\PHP\PEAR\DB\DataObject\createTables.php "C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\samples\chap6\myConfig.ini"
↑これでいけると思う
0114nobodyさん
2009/09/17(木) 21:19:28ID:???うわぁぁぁぁぁぁぁぁぁ!!!!!
行った!!
動いた、動きました・・・涙
感激です。
>>113さん、あなたへの感謝の気持ちは一生忘れません。
また、こんな質問にずっと付き合っていただき、まことにありがとうございました
本当に嬉しいし、感謝しています
ありがとうございました!!
0115nobodyさん
2009/09/18(金) 00:33:31ID:???マニュアル読んでもしっくりこない
どなたかお願いします><
0116nobodyさん
2009/09/18(金) 01:02:03ID:???0117nobodyさん
2009/09/18(金) 01:04:31ID:???インスタンス化(new)したときに一番はじめに呼び出されるメソッド(≒関数)
0118nobodyさん
2009/09/18(金) 01:12:05ID:???0119nobodyさん
2009/09/18(金) 01:22:05ID:???あきらめてください
0120nobodyさん
2009/09/18(金) 09:41:00ID:???う〜ん、基本中の基本だからなぁ・・・
逆に説明するのが難しい
自分はJavaScriptから始めたんだけど、JavaScriptの方がいい説明があったような気がする
0121nobodyさん
2009/09/18(金) 10:04:25ID:???これ以上に簡単にどう説明しろと
0123nobodyさん
2009/09/18(金) 10:58:11ID:???0124nobodyさん
2009/09/18(金) 11:02:37ID:???0125nobodyさん
2009/09/18(金) 11:08:07ID:???ガンダムとドムが合体して子供が産まれた、こういう事だよ
0126nobodyさん
2009/09/18(金) 11:13:39ID:???0127nobodyさん
2009/09/18(金) 11:13:45ID:???アムロがハンバーガーを食べて痛風になったって話だろ?
0128nobodyさん
2009/09/18(金) 11:17:30ID:???機動戦士ガンダム 第22話
【女性を襲う恐怖!赤い彗星のお触りテクニック】
じゃなかった?
0129nobodyさん
2009/09/18(金) 11:18:40ID:???JoJoでたとえてくれ
0130nobodyさん
2009/09/18(金) 11:21:26ID:???0132nobodyさん
2009/09/18(金) 11:23:52ID:???i|:!ヾ、_ノ/ u {:}//ヘ | あ…ありのまま 今 起こった事を話すぜ!
|リ u' } ,ノ _,!V,ハ | < 『おれはクラスからインスタンスを作成したと
fト、_{ル{,ィ'eラ , タ人. | 思ったらいつのまにか初期化されていた』
ヾ|宀| {´,)⌒`/ |<ヽトiゝ | 催眠術だとか超スピードだとか
ヽ iLレ u' | | ヾlトハ〉. | そんなチャチなもんじゃあ 断じてねえ
ハ !ニ⊇ '/:} V:::::ヽ. │ もっと恐ろしいものの片鱗を味わったぜ…
/:::丶'T'' /u' __ /:::::::/`ヽ \____________________
0133nobodyさん
2009/09/18(金) 11:25:15ID:N3PcKfh3exec('rpm -ivh ./ntp-4.2.2p1-9.el5.centos.i386.rpm');
rpmファイルの権限と所有は
-rwxrwxrwx 1 apache apache
としrpmとphpは同じフォルダに置きました。ブラウザからアクセスして実行してみましたが、rpm -qa | grep ntpで見ても入っていないようです。
上記のコマンドを入力して実行するとちゃんとインストールされるのでコマンドはあっていると思います。
うまくいかない原因があれば教えてもらえないでしょうか。
0136nobodyさん
2009/09/18(金) 11:29:56ID:???0137nobodyさん
2009/09/18(金) 11:30:24ID:???たぶんパスが通って無いと思う。「rpm -ivh」の部分を「/bin/rpm -ivh」にしてみて
あとexecじゃなくてsystemにして出力と戻り値を拾ったほうがいい
$last_line = system('rpm -ivh ./ntp-4.2.2p1-9.el5.centos.i386.rpm 2>&1',$retval);
var_dump($last_line);
var_dump($retval);
0138nobodyさん
2009/09/18(金) 11:31:17ID:???echo exec('whoami'); のユーザーで rpm使える?
しかし、こんなスレでよく質問する気になるね。
0139nobodyさん
2009/09/18(金) 11:32:26ID:???何このスレwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0140137
2009/09/18(金) 11:33:56ID:???0141nobodyさん
2009/09/18(金) 11:36:29ID:???カビルンルンそのままじゃねぇか!!
0142133
2009/09/18(金) 11:39:36ID:N3PcKfh3パスが通ってなかったみたいです。でも
error: can't create transaction lock on /var/lib/rpm/__db.000
と出てきましたので一般ユーザーでは無理みたいです。
でも原因がわかりましたので助かりました。
ありがとうございます。
sudoあたりで権限あげれば出来るのかな。
0143142
2009/09/18(金) 14:46:04ID:N3PcKfh3apache ALL=(ALL) ALL
とかやってもダメでした
試しにsudoに
%wheel ALL=(ALL) ALL
を追加して
/etc/groupに
wheel:x:10:root,apache
してみましたがダメでした。
PHPでrpmコマンド叩く事って無理なんでしょうか。
実は商用のものでブラウザ上からrpmファイルを指定して実行するものがあったので
便利だと思いちょっと似たようなの作ってみたかったのですが。
0145nobodyさん
2009/09/18(金) 14:54:43ID:???0147nobodyさん
2009/09/18(金) 15:05:27ID:???0148143
2009/09/18(金) 15:38:45ID:N3PcKfh3シェルからはまだ試しておりません。
>>145
ちょっと見てみます。
申し訳ない。
>>146
当初は
apache ALL=(ALL) ALL
としてましたが、その後に
apache ALL=(ALL) NOPASSWD:ALL
と変えております。
rpm.phpは
$last_line = system("sudo /bin/rpm -ivh ./ntp-4.2.2p1-9.el5.centos.i386.rpm 2>&1" ,$retval);
と変更して
ブラウザ上で実行すると
string(9) "Password:"
int(1)
という感じで表示されます。
NOPASSWDにしているのでパスは聞かれないような気もしますが。
0149nobodyさん
2009/09/18(金) 16:32:23ID:???$_SERVER['REMOTE_ADDR']の値ってどんな風になりますか?
0150nobodyさん
2009/09/19(土) 06:59:45ID:???$client_ip = $_SERVER["REMOTE_ADDR"];
$client_hostname = gethostbyaddr($_SERVER["REMOTE_ADDR"]);
$client_hostname2ip =
gethostbyname(gethostbyaddr($_SERVER["REMOTE_ADDR"]));
echo $client_ip."->".$client_hostname."->".$client_hostname2ip;
実行結果
IPv4: 10.11.12.13->server.domain.de->10.11.12.13
IPv6: 3ffe:1::1->server.ipv6.domain.de->server.ipv6.domain.de
gethostbynameはipv4にしか対応していないからipv6の3つ目の結果が想定してたものと違うというのが
このバグレポートでのお話
0151nobodyさん
2009/09/19(土) 16:30:15ID:???あるウェブサービスAPIを取得して、XSLT処理をしたあと、XML出力するという
PHPのコードを書いています。
このコード自体問題なく動いているのですが、問題はこのXMLのある文字列を
置換したいのですが、その場合のstr_replaceの書き方がわかりません。
XSLT処理後XMLが格納されている変数 = $result
置き換えたい文字列 = hiropon
置き換え後の文字列 = <iframe src="xxxx" border="0"></iframe>
xxxにはURLが入ります。
そのまんま、str_replace('hiropon',置き換え後の文字列,$result)でやっても
うまくいかんのです。
変数にHTMLのタグを丸ごとつっこんでも駄目でした。どうしたらいいでしょうか?
0153nobodyさん
2009/09/21(月) 18:54:50ID:???0154nobodyさん
2009/09/21(月) 21:38:33ID:???この場合、SQLiteはアンインストールしたり、php.iniにてsqlite部をコメントアウトしたりした方がいいのでしょうか?
0155nobodyさん
2009/09/21(月) 21:41:27ID:???普通はそんな事しなくて平気
0156nobodyさん
2009/09/22(火) 15:23:45ID:kzOpjiPMexec('top -i -n1 -b | grep "load average"', $ret);
$ave = substr($ret[0], strrpos($ret[0], ":")+1, 5);
$ave;
echo $ave とすると *.** " と表示されて"が入ってきます。
これはどこから入ってくるんでしょうか?
0157nobodyさん
2009/09/22(火) 18:34:19ID:???基礎を習得したくらいなので、今後実践的な事を書いていきたいのですが、学習に役立つサンプルのあるいいサイトありませんでしょうか?
自分でも探しているのですが、例えばクライアントサイドの場合はFireBug等で勉強出来ましたが、流石にサーバサイドは無理だと思いまして
0158nobodyさん
2009/09/22(火) 19:04:03ID:???掲示板なりアクセス解析なりショッピングカーとなり好きなの見てみればいいんじゃない
0159nobodyさん
2009/09/22(火) 19:46:01ID:rnxaS1Zpむろんサイトも参考になると思うが、ソースがきたないのもあるし
0160nobodyさん
2009/09/22(火) 22:57:28ID:???$config=parse_ini_file(dirname(__FILE__).'/myConfig.ini',TRUE);
$options=&PEAR::getStaticProperty('DB_DataObject','options');
$options=$config['DB_DataObject'];
ごめんなさい、この$optionsは上書きされないのでしょうか?
自分にはちょっと分かりませんでしたので質問させていただきました
0161nobodyさん
2009/09/23(水) 00:27:15ID:???0162160
2009/09/23(水) 00:55:25ID:???では、上書きされるのであれば、下から2行は何の為に記述しているのでしょうか?
DB_DataObjectクラスの変数$optionsの部分だけを$config['DB_DataObject']で書き換えているという意味なのでしょうか?
ちなみに、PEAR::DB_DataObjectのサンプルコードの一部です
0163nobodyさん
2009/09/23(水) 01:00:05ID:???0164160
2009/09/23(水) 01:07:20ID:???サンプルコード全部書いておきますが、何かDB_DataObjectを利用する場合、この4行は定型的な記述だと思っておけば良いと書かれています
<?php
require_once('DB/DataObject.php');
$config=parse_ini_file(dirname(__FILE__).'/myConfig.ini',TRUE);
$options=&PEAR::getStaticProperty('DB_DataObject','options');
$options=$config['DB_DataObject'];
$book=DB_DataObject::factory('book');
$book->selectAdd();
$book->selectAdd('title');
$book->published='翔泳社';
$book->orderBy('isbn ASC');
print($book->find().'件が検索されました。<br />');
while($book->fetch()) {
print($book->title.'<br />');
}
?>
0165nobodyさん
2009/09/23(水) 01:18:24ID:???0166nobodyさん
2009/09/23(水) 01:48:40ID:???0167164
2009/09/23(水) 13:59:59ID:???Fatal error: Call to undefined method DB_DataObject_Error::selectAdd() in C:\Program Files\〜
となってエラーが出ました
う〜ん、コレはどうなっているのでしょうか?
何故オーバーライドされているのにどちらとも作用しているのでしょうか???
0168nobodyさん
2009/09/23(水) 14:21:23ID:???0169164
2009/09/23(水) 14:50:44ID:???このselectAdd()で取得カラムをクリアするのは分かります
しかし何故オーバーライドしないと作用しないのかが自分には分かりません
$a = ’aaa’;
$a = 2;
で$aをprint出力すると2と出ると思いますが、このaaaと2はオーバーライドされた後も互いにまだ影響はあるのでしょうか?
オーバーライドされているのであれば、上書き前のものは別に必要ないのかと思っていたのですが・・・・・・
ごめんなさい、エラー文の意味が分かっていないかもしれません
どういうことなのでしょうか?
0170nobodyさん
2009/09/23(水) 15:46:57ID:???0171164
2009/09/23(水) 16:04:21ID:kQ5zUYAtで、それをこの構文内の$optionsに代入していると
もしselectAdd()がこの文の後にあり、で、4行目の$optionsの文がその後にあるというのならば何となく分かるのですが、3行目の後すぐに4行目で$optionsに別の値を代入しているという事がサッパリ理解できません
例えば、
$a = ’aaa’;
print $a;
$a = 2;
print $a;
は分かりますが、
$a = ’aaa’;
$a = 2;
print $a;
は何の為に1行目を書く必要があるのかという風な疑問です
しかも質問のコードはこの1行目がなければ作動する事がないというので更に訳がわかりません
3行目でクラスをロードしてすぐに別の式で上書き代入した場合は、ロードはそのまま作用するのでしょうか?
このサンプルコードの上4行がDB_DataObjectを利用する場合、定型的な記述だと思っておけと書かれているので分からないままでは実践で使えないだろうなと思いこだわっているのですが・・・苦笑
0172164
2009/09/23(水) 16:17:08ID:???PEARマニュアルの「デフォルトオプションの設定」にも同じような$optionsが書かれていました
自分には即座にオーバーライドしているように見えます
0173nobodyさん
2009/09/23(水) 16:22:15ID:???$a = 2;
print $a;
print $c;
は、分かりますか?
0174164
2009/09/23(水) 16:32:10ID:???単純なところで迷っていたみたいですね、お恥ずかしい限りです・・・
0175nobodyさん
2009/09/23(水) 16:37:42ID:???0176nobodyさん
2009/09/23(水) 16:42:04ID:???class myClass {
function setValue( $set)
{
$foo = &PEAR::getStaticProperty('myClass', "foo");
$foo = $set;
}
function view()
{
print PEAR::getStaticProperty('myClass', "foo");
}
}
myClass::setValue('value = foo');
myClass::view();
0177nobodyさん
2009/09/23(水) 17:36:20ID:???あっ、ほんとですね
メソッドの場合は意味が違うのですか?
失礼ですが、意味の違いが分かりません
>>176
すみません、初心者なのでいまいち分からなかったのですが、文をそのまま実行したら、
3行目がParse error: syntax error, unexpected T_STRING, expecting T_FUNCTION in C:\Program Filesとなりました
>>176のコードは、まずmyClassというクラスを定義し、中身はsetValueとviewという2つの関数を内包
setValue関数はまずmyClassというクラスからfooという変数を取得、次にsetValue関数の引数$setを$fooに代入
view関数はそのままprint()
で、メソッド呼び出しという考えでいいのでしょうか?
('value = foo')は$setにfooを代入
で、上の方でも書いている問題点なのですが、自分がこうじゃないのかなぁと思ったのは、
$foo = &の文でコピーした変数fooと$foo = の下の文は独立して・・・ってアレ?
どっちとも同じ式に・・・???
ごめんなさい、やっぱ分かりません
0178nobodyさん
2009/09/23(水) 18:05:26ID:???getStaticPropertyが返してるのは参照なので、 'myClass'と"foo"という文字列で参照できるようにした変数の参照を返してるんだと
思います。 実際どうなってるのかは知らないけど、たとえば
$foo = &$proparty["myClass"]["foo"]; みたいな感じで。
なので、 $foo = $set; は
$proparty["myClass"]["foo"] = $set; をしてることになりますよね。
0179nobodyさん
2009/09/23(水) 18:07:13ID:???0180164
2009/09/23(水) 18:16:35ID:???$optionsという変数がオーバーライドされているわけではなく、
PEAR::getStaticProperty('DB_DataObject','options') = $config['DB_DataObject']
と代入しているという事でしょうか?
となると変数$optionsというものは意味が無く、形だけのものだという事なのでしょうか?
それがメソッド時の「&」の意味だと言うのならば分かります
>>176の例では
PEAR::getStaticProperty('myClass', "foo") = $setという意味で、PEAR::getStaticProperty('myClass', "foo")がオーバーライドされて消えたのではないと言う意味になるのですね
0181nobodyさん
2009/09/23(水) 18:31:13ID:???0182nobodyさん
2009/09/23(水) 18:39:17ID:???ソースのコメントに、
// おまじない
だの
// ↓消すと何故か動かなくなる
だのが書かれてるコードはたまに上がってくるしな。
0183nobodyさん
2009/09/23(水) 20:53:59ID:???たとえば、
2009/09/23
って入れたら、
「その日は水曜日」
ってわかる?
0184nobodyさん
2009/09/23(水) 21:03:36ID:???0186nobodyさん
2009/09/23(水) 21:08:23ID:???0187nobodyさん
2009/09/23(水) 21:16:22ID:???0188nobodyさん
2009/09/23(水) 22:18:05ID:???0189nobodyさん
2009/09/23(水) 23:05:30ID:???一個づつ取ってきて、
画面に表示する、
ってプログラム、
forとforeachではできたんだけど、
こんどwhileでやってみるかな?って思ったんだけど、
どうやって組むかな?
0190nobodyさん
2009/09/23(水) 23:06:28ID:???$banban[] = "HTML";
$banban[] = "XHTML";
$banban[] = "XML";
$banban[] = "CSS";
for($i=0;$i<=3;$i++){
print $banban[$i] . "<br>";
}
?>
-------------------------------------
↑これがforのバージョン。
0191nobodyさん
2009/09/23(水) 23:07:15ID:???$banban[] = "HTML";
$banban[] = "XHTML";
$banban[] = "XML";
$banban[] = "CSS";
$banban[] = "PHP";
foreach($banban as $aaa){
print $aaa;
print "<br>";
}
?>
------------------------------------------
↑これがforeachのバージョン。
0192nobodyさん
2009/09/23(水) 23:14:21ID:???0193nobodyさん
2009/09/23(水) 23:32:42ID:???0194nobodyさん
2009/09/24(木) 00:18:42ID:???<?php
$banban[] = "HTML";
$banban[] = "XHTML";
$banban[] = "XML";
$banban[] = "CSS";
for($i=0;$i<array_count_values($banban);$i++){
print $banban[$i] . "<br>";
}
?>
0195nobodyさん
2009/09/24(木) 00:26:16ID:???$banban[] = "HTML";
$banban[] = "XHTML";
$banban[] = "XML";
$banban[] = "CSS";
array_walk($banban, create_function( '$v','print $v."<br>";' ));
?>
0196nobodyさん
2009/09/24(木) 00:37:53ID:???while ($val = each($banban)) {
print $val[1] . "<br>";
}
0197nobodyさん
2009/09/24(木) 09:14:12ID:???読んでいて自分も疑問に思ったので調べてみたのですが、>>176のような『&』の事を何と呼ぶのでしょうか?
ネットで調べても、&だけでは色々とあって自分では辿り着きませんでした
何か、何とか演算子とか名前があると調べやすいと思ったものですから
0198nobodyさん
2009/09/24(木) 09:32:16ID:???0199nobodyさん
2009/09/24(木) 11:46:01ID:???0200nobodyさん
2009/09/24(木) 11:47:06ID:???0201nobodyさん
2009/09/24(木) 12:17:44ID:???0202nobodyさん
2009/09/24(木) 12:19:14ID:???あるじゃん
0203nobodyさん
2009/09/24(木) 15:48:25ID:???や本でphp.iniの中で、include_path=".;c:/php/includes;"とありますが、自分のPHPフォルダ内にはincludesというフォルダもファイルも存在していません
で、上記のようにphp.iniを設定していますが、意味が無いように思えます
コレは自分で勝手にincludesというフォルダを作ればいいのでしょうか?
それとも、その中に何か必要な(or重要な)ファイルとか入っているのでしょうか?
どうすればいいのでしょうか?
0204203
2009/09/24(木) 15:50:47ID:???0205nobodyさん
2009/09/24(木) 15:53:46ID:???インクルードパスっていうのは、php本体ではなく、phpの拡張パーツが入るディレクトリの場所。
なので拡張パーツが特になければ、 include ディレクトリはなくていい。
必要になったら、設定ファイルのその箇所に書いたディレクトリを作ればいい。
0206nobodyさん
2009/09/25(金) 00:54:56ID:???PHP経験者になりたいのですが
どんなwebアプリケーションを作れば
PHP経験者として採用されるレベルになれますか?
0207nobodyさん
2009/09/25(金) 01:02:08ID:???たぶん、経験者を募集している企業の本音は、
「業務で携わったことがある」ことが条件だと思う。
とりあえず、
・サイト画面から入力ができる
・データベースと連携できる
・W3Cチェックを通るHTMLでそれらができる
・環境を作れる(PHPやDBの設定など)
というところは押さえておいたほうがいいかも
0208nobodyさん
2009/09/25(金) 01:02:18ID:???0212nobodyさん
2009/09/25(金) 09:56:56ID:???批判というより初心者の回答者を正してるだけなのにな
求人での経験ってのは業務で作業したことがある経験の事で趣味での経験ではない
>>207が書いてあるのは経験ではなくてただのスキル
0213nobodyさん
2009/09/25(金) 10:03:27ID:???そうじゃないところはわざわざ経験者とは書かないで、
初心者歓迎や独学でやってる人歓迎みたいな風に書いてあるでしょ。
経験者になりたいのならアルバイトでも経験者になるので、
初心者でアルバイト募集してるとこで下積みするといいよ。
もしかしたらそこから正社員登用されるかもしれないし。
0214nobodyさん
2009/09/25(金) 10:14:56ID:???0215nobodyさん
2009/09/25(金) 10:16:17ID:???0218nobodyさん
2009/09/25(金) 12:35:09ID:???WEBゲームとか
ブラウザゲームとか作ってみれば?
あれは基本が全部つまっている。
0219nobodyさん
2009/09/25(金) 14:57:24ID:???数百のディレクトリ名を法則にそって変更しないといけないので、手作業でやるにはちょっと時間がかかるので・・・。
0220nobodyさん
2009/09/25(金) 15:05:23ID:???やったことないから知らないけど
http://jp.php.net/manual/ja/ref.filesystem.php
この中に該当する関数がなさそうなら
exec関数とかを使ってコマンドで操作するしかないんじゃないかな
0221nobodyさん
2009/09/25(金) 15:34:35ID:???0222nobodyさん
2009/09/25(金) 17:18:49ID:JtFu9Epkwhile( $file_name = readdir( $dir_file ) ){
echo "$file_name";
}
closedir( $dir_file );
とやっても何も表示されないんですが何か間違ってますか?
0224222
2009/09/25(金) 17:28:40ID:JtFu9Epkすいません。
ttp://php.benscom.com/manual/ja/function.readdir.php
ですかね。
試しにコピペで
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
echo "$file\n";
}
}
closedir($handle);
貼り付けてみましたが何も表示されませんでした。
0225nobodyさん
2009/09/25(金) 17:30:18ID:???0226222
2009/09/25(金) 17:41:49ID:JtFu9Epkopendir.php <- このファイルに224のスクリプトを書いてます
index.php
test.php
up.php
こんな感じで10個ほどあります。一応権限も777にしてみましたがダメでした。
0227nobodyさん
2009/09/25(金) 17:50:19ID:???0228226
2009/09/25(金) 18:10:44ID:JtFu9Epkすいません。
特に何もしてないのでエラー表示の設定などはしてないです。
どのようにすれば出るようになるのでしょうか・・・
0229nobodyさん
2009/09/25(金) 18:15:40ID:???0230nobodyさん
2009/09/25(金) 18:18:23ID:???0231226
2009/09/25(金) 18:29:18ID:JtFu9Epk試しに
echo "1hoge";
if ($handle = opendir('.')) {
echo "2hoge";
while (false !== ($file = readdir($handle))) {
echo "3hoge";
echo "$file\n";
}
echo "4hoge";
closedir($handle);
}
echo "5hoge";
こういうの書いてみたら1hogeと5hogeのみ表示されました・・・
>>230
php.iniのsafe_modeですよね?Offとなっておりました。
ますます意味が分からない・・・
0232nobodyさん
2009/09/25(金) 18:35:16ID:???>path が有効なディレクトリでないかまたは権限が 制限されているかファイルシステムのエラーによりディレクトリが
>オープンできない場合、opendir() は FALSE を返し、 E_WARNING エラーが発行されます。 opendir()
>のこのエラー出力は、 関数名の前に '@' を付けることにより抑制できます。
カレントディレクトリがオープンできない理由てのは俺には分からん。
warningエラー出てるんじゃないの?
var_dump(ini_get('display_errors'));
var_dump(ini_get('error_reporting'));
を実行した際の結果は?
0233nobodyさん
2009/09/25(金) 18:45:08ID:???SQLで検索ワード見つからない場合にnot foundを表示する事自体は分かったので
すが、
それ以降のHTMLの表記を中止する事は可能ですか?
<?php
if ( ○○==0 ) {
echo "not found";
}
?>
<font>TEST</font>
これ以降下にズラ〜〜っとHTMLが続くのですが、それを途中で止めて
not foundだけをページに表示するにはどうすれば良いでしょうか。
0234nobodyさん
2009/09/25(金) 18:47:16ID:???0235226
2009/09/25(金) 18:47:21ID:JtFu9Epk馬鹿な勘違いしててすいませんでした。
実行した結果は
tring(0) "" string(4) "2047"
となっておりました。
0237nobodyさん
2009/09/25(金) 18:48:53ID:???<?php
if ( ○○==0 ) {
echo "not found";
} else {
?>
<font>TEST</font>
ズラ〜〜っと
<?
}
?>
</html>
0238nobodyさん
2009/09/25(金) 18:52:04ID:???display_errorsが0ってことはエラーが表示されてない設定になってると思うお
php.iniを書き換えればいいお
0239226
2009/09/25(金) 19:08:16ID:JtFu9Epkくだらない質問につきあっていただきありがとうございます。
php.iniを
display_errors = On
error_reporting = E_ALL & ~E_NOTICE
に変更してみましたが、変化は見られませんでした。
変更するところ間違ってるのかな。よく分からなくなってきた。
0242226
2009/09/25(金) 19:32:14ID:JtFu9Epk2回ほど再起動しました。
う〜ん・・・
0243226
2009/09/25(金) 19:34:04ID:JtFu9Epkすいません。
一応サーバごと再起動してみたらうまいこといきました。
ログを見るとどうやらapache様が挙動不審になってたようです。
設定を修正して見れるようになりました。
Webは普通に動いてたのでピンポイントでおかしくなってたようです。
こんなくだらない事にながながとつきあっていただき本当にありがとうございました。
0244sage
2009/09/25(金) 20:36:02ID:???date("Ymd H:i:s.", filemtime($file))
をwihleで回して更新日を取得する事が出来るようにはなったのですが
これをどのようにすればよいのでしょうか?
ヒントをいただけないでしょうか
0245nobodyさん
2009/09/25(金) 20:38:26ID:???その差が、削除したい差以上であれば、削除
てな感じでよくない?
0246nobodyさん
2009/09/25(金) 20:40:26ID:???更新日って一度そのファイルが作成されたら更新はもうされないの?
とりあえず3ヶ月更新なかったものを削除とすると
取得した更新日と現在日時の差で90日分あいていたら
そのファイルにたいしてunlinkかけるとかでいいんでない?
0247sage
2009/09/25(金) 20:43:14ID:???残りの2個は削除したいという意味です。
説明不足申し訳ない。
0248nobodyさん
2009/09/25(金) 20:44:07ID:???てな感じでよくない?
0250sage
2009/09/25(金) 21:18:20ID:???while (false !== ($file = readdir($dir))) {
$filetaime[] = date("Ymd H:i:s.", filemtime($file));
$filetime[] = sort($filetime);
unlink($file[$i]);
というのを思いついたのですが、ファイル名と時間が連動してないですね。
きっとアホなことしてると思われてるんでしょうけど、複数の変数を連動させるような事はできますか?
0251nobodyさん
2009/09/25(金) 21:26:04ID:???0252249
2009/09/25(金) 21:41:52ID:???touch($new_file); //新しいファイルを作成する
file_put_contents("log.txt", $new_file."\n", FILE_APPEND | LOCK_EX); //新しいファイル名をログファイル(log.txt)に追記
$list = file("log.txt"); //ログを配列に読む
$tmp_log = ""; //新しいログ
for ($i = count($list) - 1; $i >= 0; $i--) { //後ろから回す
if ($i > 5) {
unlink($list[$i]); //ファイル削除
} else {
$tmp_log .= $list[$i]."\n";
}
}
file_put_contents("log.txt", $tmp_log, LOCK_EX);
動作確認もしてないし細かいとこが違ってるかもしれんけど
イメージとしてはこんなかんじのことをいった
0253252
2009/09/25(金) 21:48:57ID:???眠くて頭が回らない・・・
0254nobodyさん
2009/09/25(金) 21:49:56ID:???252は忘れてちょうだい・・・
0255nobodyさん
2009/09/25(金) 23:10:04ID:???0-0000-0001-2 ガリの穴 25,000円 山田のおばさん
コレをあなたのデータベースに登録してみて下さい
0256nobodyさん
2009/09/25(金) 23:22:36ID:???0257nobodyさん
2009/09/25(金) 23:26:38ID:xPOnPJfWfopenしてLOCK_EXしてfputsで書いてLOCK_UNしてfloseしてるんだけど
やっぱりfile_put_contents1行で書いたほうがいいものなんかね?
0258nobodyさん
2009/09/25(金) 23:45:05ID:???0261sage
2009/09/26(土) 00:07:25ID:???file_put_contentsでもパイプでLOCK_EXすればいいんじゃないの?
file_put_contents($file, "hogehoge", FILE_APPEND | LOCK_EX);
こんな感じ。
0262nobodyさん
2009/09/26(土) 00:21:08ID:???0263sage
2009/09/26(土) 00:24:43ID:???0264nobodyさん
2009/09/26(土) 00:39:16ID:???> FILE_APPEND | LOCK_EX
これは有効なのか?
マニュアルを見ると、
フラグを組み合わせる際には、論理 OR (|) 演算子で連結します。
FILE_APPENDはLOCK_EX と同時には使用できません。
と読めるのだが...。
「追記はアトミックに行われるためロックは不要」とあるので、
FILE_APPENDの指定だけでログ追記するのに問題はなさそうではあるが。
0265sage
2009/09/26(土) 00:50:03ID:???0266nobodyさん
2009/09/26(土) 01:35:35ID:???アトミック(=不可分の)とあるので、一連の操作が邪魔されることがないということなんだろうね。
マニュアルを信じるならば。
古い版のマニュアルでは、
file_put_contents($file, $person, FILE_APPEND | LOCK_EX);
という例が載っているが、
http://bugs.php.net/bug.php?id=49329
で修正されたようだ。
0267sage
2009/09/26(土) 01:40:05ID:???file_put_contentsの1行で済むというわけか。
0268nobodyさん
2009/09/26(土) 01:42:11ID:???0269nobodyさん
2009/09/26(土) 05:54:34ID:???0270nobodyさん
2009/09/26(土) 17:49:56ID:???配列ってシングルクオート入れないと、
正式にはダメみたいだね。
0271nobodyさん
2009/09/26(土) 18:27:03ID:???正式?
0272nobodyさん
2009/09/26(土) 18:36:08ID:???0274nobodyさん
2009/09/26(土) 19:13:58ID:???0275nobodyさん
2009/09/26(土) 19:41:50ID:???0277nobodyさん
2009/09/26(土) 19:48:22ID:???0278nobodyさん
2009/09/26(土) 19:51:12ID:???0280nobodyさん
2009/09/27(日) 00:01:22ID:???定数keyStringを先に探して、なければ文字列'keyString'とみなす。
クオートで囲わなくても動くかもしれないが、それはたまたまだってこと。
>>278はこれを説明している
$anArray[1]
1番の要素。
1は番号であって文字列ではないのでクオートで囲わない。
これで判るかい?
0281nobodyさん
2009/09/27(日) 00:05:28ID:???0283nobodyさん
2009/09/27(日) 00:27:37ID:???意義
1. 順序だてたものの中で順序が到来すること。
0284282
2009/09/27(日) 00:55:21ID:???1番と書いてるんだから最初の要素のつもりだろ、っていう意味かな?
背番号1番=1番目の打者ではない、という説明で判ってもらえるだろうか
0285nobodyさん
2009/09/27(日) 00:58:56ID:???ほのめかすような書き方だと2chでは攻撃されたと思う人が多いから。
0287nobodyさん
2009/09/27(日) 02:44:45ID:???何番目というのはあまり意味が無い。
$ar[2]=2 ;
$ar[0]=0 ;
$ar[1]=1 ;
print_r($ar) ;
結果
Array
(
[2] => 2
[0] => 0
[1] => 1
)
0288nobodyさん
2009/09/27(日) 02:57:34ID:???0290nobodyさん
2009/09/27(日) 08:57:46ID:???0292nobodyさん
2009/09/27(日) 12:17:21ID:???順序が関係ないって上で言ってるのに矛盾してるぞ?
0296nobodyさん
2009/09/27(日) 19:31:27ID:???外れ引いたっぽ・・・orz
0297nobodyさん
2009/09/27(日) 19:38:36ID:???買わないほうがいい
0298nobodyさん
2009/09/27(日) 19:40:51ID:???0299sage
2009/09/28(月) 10:47:22ID:???flock($file, LOCK_EX);
fputs($file, $hoge."\n");
flock($file, LOCK_UN);
fclose($file);
こういうの使い回してるんですが、これってもっとシンプルには出来ないでしょうか?
0300nobodyさん
2009/09/28(月) 11:33:09ID:???コードを単に短くしたいのならfile_put_contents()使えばいい
file_existsやis_readableなどチェック機構を組み込んだ関数を作るのもよい
0301sage
2009/09/28(月) 11:37:10ID:???いちいちfopenとかfcloseしなくてもfile_put_contentsで充分なんじゃないかな
0303sage
2009/09/28(月) 11:52:15ID:???0304nobodyさん
2009/09/28(月) 11:56:28ID:???0305sage
2009/09/28(月) 12:11:34ID:???負荷ツールで負荷かけてもデッドロックが起きる前に別の問題で落ちそうだし
そういう環境作るのってけっこう難しいな
0307sage
2009/09/28(月) 18:54:01ID:???touch("hoge.txt")
とするのはアリですか?
なにか他にクリア方法が思いつかないのですが、代替案とか普通はこうするだろってのがあったら教えてください。
0308nobodyさん
2009/09/28(月) 19:00:13ID:???0309sage
2009/09/28(月) 19:17:12ID:???でもクリア出来るんじゃね?
0310sage
2009/09/28(月) 21:28:13ID:???2000年問題みたいに扱える桁数の制限から使えなくなったり変な値を返したりすることが出てくるでしょうか?
0313sage
2009/09/29(火) 07:46:18ID:???環境はCentOS5.3のPHPは5.1.6です。
検索してみましたが30年近く先の話なので気にしなくてもよさそうですね
>>312
確かに気にしなくてもよさそうです
0314nobodyさん
2009/09/29(火) 10:10:17ID:???まぁそんなにシビアなシステムでないならいいんだが
「2038年にコード使って無いから関係無い」というのは間違い
日付の計算した時に2038年1月19日を超えたらおかしくなる。
2004年にATMで誤動作をおこしたのもコレ(内部で2倍にしていたため)
だからコーディングの仕方、運用の仕方では今すぐ起こる問題。
例えば、開始日・終了日などを設ける場合に、
「終了日は(事実上無期限で)決まってないから3000年にしとけ」とかした場合に
当日が終了日を超えているかどうかチェックしたりするとおかしくなる。
頭の片隅にでも2038年の事は入れておいた方が良いよ
0315nobodyさん
2009/09/29(火) 10:56:12ID:???0316sage
2009/09/29(火) 11:30:05ID:???0317314
2009/09/29(火) 11:35:18ID:???0318nobodyさん
2009/09/29(火) 11:36:40ID:???0319sage
2009/09/29(火) 11:46:08ID:???0320nobodyさん
2009/09/29(火) 11:47:19ID:???他スレでも2038年については何度も話題になってるんだよ
毎度、2038年まで後30年もあるから問題無いっていう本質を理解できていない馬鹿がでてくる
0322nobodyさん
2009/09/29(火) 11:53:56ID:???0323nobodyさん
2009/09/29(火) 11:59:56ID:???お前は何をやってるんだw
wikipediaのアニメーションgifでも眺めてろよ
http://ja.wikipedia.org/wiki/2038%E5%B9%B4%E5%95%8F%E9%A1%8C
0324nobodyさん
2009/09/29(火) 12:29:04ID:???解決策もあるし既に過去スレで回答もでてる
http://phpspot.org/blog/archives/2007/02/php2038.html
0325nobodyさん
2009/09/29(火) 12:33:47ID:???>>321
CentOS使ってるなら64bit版使えば気にしなくていい
0326nobodyさん
2009/09/29(火) 13:17:25ID:???http://www.php.net/manual/ja/book.datetime.php
0327nobodyさん
2009/09/29(火) 13:22:14ID:???0328nobodyさん
2009/09/29(火) 13:24:04ID:???0330nobodyさん
2009/09/29(火) 13:36:12ID:???0332nobodyさん
2009/09/29(火) 14:00:30ID:???0333nobodyさん
2009/09/29(火) 14:11:50ID:???ちゃんと書くと、
RHELをH/Wベンダ経由で800ライセンス買っている
redhatのサポートもH/Wベンダ経由で受けているが、
redhat networkで落とせるパッケージ以外のモノを入れるとサポートが受けられなくなる。
うちは大部分がjavaのシステムだけど、一部phpを使ってる(余談だがpythonも使ってる)
そのphpのためにサポートで揉めるのは勘弁。
スレ汚しスマンかった。
0334nobodyさん
2009/09/29(火) 14:19:54ID:???OSバンドルは5.1みたいなので、みな自分でインストールしてるって事かな?
0335nobodyさん
2009/09/29(火) 14:25:29ID:yA+gFAaj項目例の1行目を非表示(2行目からのデータ部分のみ)にして表示したいのですが
どのように記載すればよいのでしょうか?
for( $i=0 ; $i<count( $data ) ; $i++ ) {
print "$shop[$i],$priceA[$i],価格:$priceB[$i] $place[$i]<br>\n";
}
現在の表示部分はこのような感じです。
初心者な質問ですが
ご教授お願いいたします。
0336nobodyさん
2009/09/29(火) 14:30:25ID:???0338nobodyさん
2009/09/29(火) 14:48:22ID:???csv読込み部のソースは?
$shopとか$priceAに既に格納されているなら$i=1で
>>336
昔はソースから入れていたけど、最近はyumで済ませてる。
0339nobodyさん
2009/09/29(火) 14:53:59ID:???ふるいのがだけど
最新のはソースからビルドしないといかんから
ちょっといじってみよう程度にはじめたにわかUnix使いだとちょっと大変かもな
0340nobodyさん
2009/09/29(火) 15:39:59ID:???プログラミング初心者の学生です。
今のアルバイト先で自分が関わっているパッケージでは、
各ファイルのPHPコードが膨大な自家製ライブラリを、そのページで
使う、使わない関わらず全てインクルードしてしまっています。
このおかげでパフォーマンス(特にメモリ周り)が残念なことになっています。
なんとかしてPHPコード中の不要なrequireを取り除きたい
(そのファイルのPHPコードが参照していないインクルードを取り除きたい)
のですが、自動的にPHPコード間の依存関係を解決して、
参照していないrequireファイルをリストしてくれるようなツールはないでしょうか?
もし無いようであれば、自分で簡単なツールを作ってしまおうと思うのですが、
プログラミング初心者でもカスタマイズしやすいPHPパーサーはありませんか?
なければ言語処理研究室の人にyaccの使い方を教えてもらうので
PHPのBNFを教えてください。
0341nobodyさん
2009/09/29(火) 17:26:26ID:???難しい事に挑戦するんだね、がんばって
http://www.php.net/manual/ja/book.tokenizer.php を使ってもいいし
BNF周りを知りたければソース一式チェックアウトしてre2c/bison用ファイル
Zend/zend_language_parser.y
Zend/zend_language_scanner.l
を読んだらいいんじゃないかな
最適化はいいんだけど、動的言語で参照していない事を証明するのは大変そうね
eval('require_once "foo.php";'); とか
require_once true ? 'foo.php' : 'bar.php'; とか意味解析するの?面倒そう
オートローダを使用するよう書き換えたほうがよかったりしてね
0342340
2009/09/29(火) 17:56:16ID:???tokenizerで字句解析はできるのですね。
現状のソースをみる限り、完全な構文解析は必要ないし、
http://sourceforge.jp/projects/sfnet_phpparser/
を参考に、簡易パーサーを作ろうかなあ・・・
>BNF周り
PHPは文脈自由文法じゃないぽいですね。
死ぬかもorz
>require_once true ? 'foo.php' : 'bar.php';
>eval('require_once "foo.php";'); とか
うわあああああああああああああああ
!イ´ ,' | /__,.!/ V 、!__ハ ,' ,ゝ
`! !/レi' (◯), 、(◯) レ'i ノ
,' ノ !'" ,rェェェ、 "' i .レ
真面目に作ったら余裕で卒研になりそうだ・・・orz
0343nobodyさん
2009/09/29(火) 18:38:14ID:bssRjC3K1.hoge.phpでのrequireしてるものは確かdebug的なものでだせたはず
2.hoge.phpでのメソッド呼び出ししてる箇所から必要なライブラリを検索して一覧を作成
3.1−2で無駄なもの一覧作成完了
でいいんじゃないの?
動的関数は面倒ぽいが・・・そんなに難しくないと思う
0344nobodyさん
2009/09/30(水) 00:32:55ID:???IMAPサーバーにあるメールをGmailにコピーしたくて次のようにしました。
$overview_list = imap_fetch_overview($src, "1:{$srcs->Nmsgs}", 0);
foreach ($overview_list as $overview) {
$head = imap_fetchheader($src, $overview->msgno);
$body = imap_body($src, $overview->msgno);
imap_append($dst, "{" . $DST['host'] . ":993/imap/ssl}INBOX", $head.$body);
}
メールそのものは追加されるのですが,Gmail側では,
メールの送信日時が,コピーされた日時になってしまいます。
元メールの送信日時を反映させるにはどのようにすればうまく行くでしょうか。
0345nobodyさん
2009/09/30(水) 00:35:19ID:BlvWBTQCIMAPサーバーにあるメールをGmailにコピーしたくて次のようにしました。
$overview_list = imap_fetch_overview($src, "1:{$srcs->Nmsgs}", 0);
foreach ($overview_list as $overview) {
$head = imap_fetchheader($src, $overview->msgno);
$body = imap_body($src, $overview->msgno);
imap_append($dst, "{" . $DST['host'] . ":993/imap/ssl}INBOX", $head.$body);
}
メールそのものは追加されるのですが,Gmail側では,
メールの送信日時が,コピーされた日時になってしまいます。
元メールの送信日時を反映させるにはどのようにすればうまく行くでしょうか。
0346nobodyさん
2009/09/30(水) 10:57:57ID:7ZBUopvTecho $hoge1 . "<br>";
}
ってやると
最初の1個目はちゃんと出るけど2個目以降は先頭にArray〜って出る。
なぜ?何か間違ってる?
0347nobodyさん
2009/09/30(水) 11:07:17ID:???0348nobodyさん
2009/09/30(水) 11:09:54ID:???0349346
2009/09/30(水) 11:10:20ID:7ZBUopvTarray(24) { [0]=> string(5) "hoge1" [1]=> string(5) "hoge2" [2]=> string(5) "hoge3"
こんな感じで24個入れてます
0350nobodyさん
2009/09/30(水) 11:14:51ID:???可能性があるとしたら隠してる部分。
0351346
2009/09/30(水) 11:25:12ID:7ZBUopvThoge24まで書いたほうがよかったでしょうか?
変数自体は
$data[] = $data . "hoge$i" . "\n";
で入れてます。
0352nobodyさん
2009/09/30(水) 11:26:36ID:???で
>array(24) { [0]=> string(5) "hoge1" [1]=> string(5) "hoge2" [2]=> string(5) "hoge3"
にならんでしょ。
先頭に$data付いてるもの。
0353nobodyさん
2009/09/30(水) 11:28:28ID:???これ設置したんだけど、メールに添付する画像によって、
「更新」押すと結果が反映されず、
メールサーバから当該のメールが削除されることがある。
画像リサイズしてPCからメール送信すると反映されたりする。
何が原因か分かりますか?
0355346
2009/09/30(水) 11:28:42ID:7ZBUopvTすいません。
var_dump貼り付けてるだけなんでそのままコピペしてるんですが
本当は違うものがvar_dumpされてないといけないってことなんですよね?
0358nobodyさん
2009/09/30(水) 11:39:25ID:???すみません、エラーログがどこ見れば良いか分からなかったのですが、
よく調べたらconfig.phpに「最大添付量」という項目があり、
100kbで制限されていたようです。ここを変えたら無事投稿できました。
お騒がせしました。
0359nobodyさん
2009/09/30(水) 11:52:22ID:sh5fr2N4mail()で送信するのが正しいと言われたのですが
mail()でのメール送信の正しい書き方を教えてください
0363nobodyさん
2009/09/30(水) 12:04:02ID:???0365nobodyさん
2009/09/30(水) 12:15:13ID:???だったら自前でエンコードしとけって話だな。
0367nobodyさん
2009/09/30(水) 12:43:06ID:???そんなのも知らないのかなここの自称回答者ってのは
0368nobodyさん
2009/09/30(水) 12:44:05ID:???それ具体的にRFCの何に違反する話ですか?
bug報告が見あたらないんですが、devにも流れてませんよね?
0369nobodyさん
2009/09/30(水) 12:53:49ID:???文字化けするからmb_send_mail使わないって理由は無いな
適切にエンコード指定すればいいだけだろ?
0370nobodyさん
2009/09/30(水) 12:53:52ID:???違反しないと思うなら無批判に使っとけばいいんじゃね?
0373369
2009/09/30(水) 13:12:00ID:???俺が悪かった。
たぶんホッテントリ入りしてるblogの事を言ってると思うが、
はてブで俺もコメントしてるのにすっかり忘れてた。
また文字化けごときでぐだぐだ言ってると思い脊髄反射してしまった。
0374nobodyさん
2009/09/30(水) 13:26:24ID:???0375nobodyさん
2009/09/30(水) 13:34:12ID:???PEARなんて時代遅れのモノを使うなと言われたのですが
PEARを使う事に問題ってあるのでしょうか??
今後、PEARは衰退していくのでしょうか??
自分で作るよりは、PEARのpdoとか使う方が良いと思うのですが…
0377nobodyさん
2009/09/30(水) 13:50:00ID:???ありがとうございます。
開発現場ではSymfonyも使っているのですが
うまく言えませんが、ちょっとした画面を作るのにいくつもディレクトリ・ファイルが存在する事になり
一言で大げさだなという印象を持ちました。
小規模の開発の場合もフレームワークを使っていくのが普通なのでしょうか?
そうなるとPEARまさに用無し(洋梨)という事ですね!
0378nobodyさん
2009/09/30(水) 13:50:03ID:???ようするにそういうことだ
低速なPEARより高速なPECLに置き換わってるということ
なんでPECLが高速なのかはぐぐればすぐにわかるのでぐぐってくれ
クラスライブラリの話なのでフレームワークの話をしてるやつはスルーで
0379nobodyさん
2009/09/30(水) 13:57:14ID:???あぁそうでした、pdoはPECLでしたすみません。
PEARはphpで書かれ、PECLはC言語で書かれているのでPECLの方が速度が速いという認識です。
あと言葉足らずでした。
具体的には、ちょっとした管理画面をPEARのHTML_QuickFormを使って作ったら
PEARなんて時代遅れの〜と言われてしまいました…
0380nobodyさん
2009/09/30(水) 14:03:58ID:???PECLがPEARのモジュールすべてを置き換え可能なものなら
そういう言い様もあるのかもしれんが・・・
0381nobodyさん
2009/09/30(水) 14:06:06ID:???「差別を取り締まる」強力な権限「人権委員会」という組織を設置する法律です。
人権委員会が差別と認定したら、一般人はもちろん警察官も罰せられます。
おそらく「差別を受ける側」の在日朝鮮人や部落解放同盟が人権委員になります。
そうなると警察は朝鮮人を事件の容疑者にすることができなくなります。
容疑者が「俺が朝鮮人だから疑うのか!」と人権委員会に訴えれば、
差別と認定される可能性が高く、警察官が処罰されます。
レイプ事件の容疑者が「俺が朝鮮人だから拒否したのか!」と訴えれば、
被害者の女性が処罰される可能性もあります。
人権委員会の権限は非常に強固あり「簡単に悪用」できる非常に危険な法律です。
しかし民主党は、この危険な法律を「こっそり成立」させようとしています。
その背景には「朝鮮人は差別されて可哀相な人種。日本人は差別する悪い人種。」という
偏った考えがあります。
すなわち「日本は悪い国」という、いわゆる「反日思想」です。
日本人が日本を嫌いになるのは異常なことですが、現実には大勢います。
反日思想の日本人を作り出したのは「日教組」です。
日教組は戦後GHQの指導で設立されましたが、当時の共産党員と在日朝鮮人が運営にあたりました。
彼らはごく自然に日本の教育現場に反日思想を持ち込みました。
戦後70年近く日本人に反日教育をやり続けた結果、多くの反日思想の日本を作り出しました。。
今では「日本人が日本を嫌い」を異常と感じないほど洗脳が進んでいます。
朝日新聞やNHKや電通など主要なマスコミも反日団体です。
小泉安倍政権が北朝鮮に対して否定的な政策を打ち出して以降、
反日団体である「民主党」に政権を取らせるべく世論の誘導に本腰を入れました。
サブプライム問題に端を発する世界的な不況と重なり、自民党は支持率を落とし、
遂に反日団体「民主党」が政権を取りました。
民主党が進めようとしている反日政策は他にもたくさんあります。
・在日外国人に日本の参政権を与えるのもそのひとつ。
・受給者の7割以上が在日朝鮮人と言われている生活保護を手厚くするのもそのひとつ。
日本は働かないで日本に寄生する朝鮮人の楽園になります。
0382nobodyさん
2009/09/30(水) 14:08:03ID:???htmlに直接フォームを記述して自分でバリデーションロジックもかいてるからじゃない?
その部分に関してはバリデーション機能豊富なフレームワークつかえというのもあながち間違ってないな
0383nobodyさん
2009/09/30(水) 14:50:11ID:???そういう意味で時代遅れというならそいつはアンチかマジキチ
0384nobodyさん
2009/09/30(水) 14:54:01ID:???0385nobodyさん
2009/09/30(水) 14:57:18ID:???適材適所って事ですね。
0387nobodyさん
2009/09/30(水) 23:09:52ID:yTlYrHgD<?
include("test.conf");
$ans = $a + $b;
echo $ans;
?>
test.conf
$a = "10";
$b = "20";
だと実行結果は
$a = "10"; $b = "20"; 0
ですがtest.conf内を<?php ?>で囲えば意図した結果が返ります。
include先がPHPである必要があるけどファイルの拡張子などは別のものでもよいという考えで大丈夫?
0388nobodyさん
2009/09/30(水) 23:15:31ID:???http://jp2.php.net/manual/ja/function.include.php
0389387
2009/09/30(水) 23:37:49ID:yTlYrHgDこちらの説明には
読み込むファイル中のPHPコードとして実行する必要がある コードは、 有効なPHPの開始タグおよび終了タグで括る必要があります
とあるのでやはり拡張子はphpでなくても良いという判断で大丈夫なようです。
ありがとうございました。
0390sage
2009/10/01(木) 11:29:37ID:???これを指定の場所に送りたいのですがどういった関数を使えば指定の場所へヘッダーを送信できますか?
0392390
2009/10/01(木) 13:46:22ID:???なるほど。
そうなると他の関数を使わないといけないという事でしょうか。
それともPHPではヘッダーを任意の場所に飛ばすという事自体無理なのでしょうか。
引き続き調べてますがなかなかそれらしいのがみつからない状態です。
0393nobodyさん
2009/10/01(木) 14:03:52ID:???ただやろうと思ったことがないのでやり方はわからないなぁ
0394nobodyさん
2009/10/01(木) 14:06:23ID:???何がやりたいのかよくわからんが
他サイトにhttpヘッダ飛ばしたいならcURLでできる
PHP: cURL - Manual
http://www.php.net/manual/ja/book.curl.php
0396nobodyさん
2009/10/01(木) 17:33:27ID:???さっぱり意味がわからなくて、みんな良く回答してるなと関心します。
指定の場所 とは何でしょう。
あなたのいうヘッダというものが送られる先はサーバー?ブラウザ?
で、どうなってほしいんでしょうか。
0397390
2009/10/01(木) 17:42:45ID:???header("hoge: test");
というヘッダーを特定のサーバー(例:192.168.1.1)に送信したいと思ってます。
ヘッダを受け取ったサーバーはその内容をひたすら記録していくというものです。
0399nobodyさん
2009/10/01(木) 19:48:07ID:???そもそもそれってheader()できるのか?
普通にPEAR:HTTP_Requestでも使って好きにヘッダ追加すりゃ5分も
かからないだろうに
0400nobodyさん
2009/10/01(木) 20:59:14ID:???0401nobodyさん
2009/10/02(金) 13:18:06ID:???「おまえんとこのページ見せて〜〜」
って、firefoxから、WEBサーバーに送る手紙?
0402nobodyさん
2009/10/02(金) 13:25:52ID:???PHPでブラウザのようなものを再現するのかと思った
0403nobodyさん
2009/10/02(金) 14:03:39ID:???これってどういうこと?
バイトカウントって何?
0404nobodyさん
2009/10/02(金) 16:10:04ID:Zilzfd9c0405nobodyさん
2009/10/04(日) 05:56:16ID:???掲示板のリンクと名前を抜き出すものを作りたいです。どのように書くべきでしょうか?
正規表現を使って書こうとしましたが挫折しています。
0406nobodyさん
2009/10/04(日) 06:44:05ID:???こういうのは大抵誰かやってるのでぐぐるほうが早い
http://smilejapan.net/wiki/index.php?%E3%82%B8%E3%83%A3%E3%83%B3%E3%83%AB%E3%81%A8%E6%9D%BF%E3%81%AE%E3%83%87%E3%83%BC%E3%82%BF%E5%8F%96%E5%BE%97
0408nobodyさん
2009/10/04(日) 16:25:22ID:???モニターは横長の買ったほうがいいよね?
0409nobodyさん
2009/10/04(日) 16:49:38ID:???PHPの性にするな池沼が
0410nobodyさん
2009/10/04(日) 17:18:51ID:???コードの右端が切れて見えなくなるよね?
0411nobodyさん
2009/10/04(日) 17:26:10ID:???0412nobodyさん
2009/10/04(日) 17:59:22ID:???0413nobodyさん
2009/10/04(日) 18:40:48ID:WZQEMB6D使い方が分からずググったら、こういう感じで設定すれば良いとあり
$matrix = array(array(-1, -1, -1), array(-1, 16, -1), array(-1, -1, -1));
imageconvolution($img, $matrix, 8, 0);
実際シャープはかかったのですが、もう少し弱くかけたいのです
それで値を変更してみると真っ黒になってしまいます
どのように調整すればよいのでしょうか?
0414nobodyさん
2009/10/04(日) 20:55:02ID:???Zendとかcakeとかいう名前は知っているのですが、何を、また何からやればいいのか分かりません
好きなものをやれというのは勘弁してください
0415nobodyさん
2009/10/04(日) 20:58:40ID:???0416nobodyさん
2009/10/04(日) 21:06:42ID:???その次にpear
その次にsmarty
0417nobodyさん
2009/10/04(日) 21:09:43ID:???0418414
2009/10/04(日) 21:34:11ID:???何かzendの方がcakeよりも難しそうですが、自分の作りたいようなフレームワークを使いたい場合はzendの方がいいような事を聞きました
将来的な事を考えるとzendの方がいいように思えますが、cakeの決められたレール(ルール)だけで特にPHPで不都合を感じないというのであればcakeでもいいように思います
>>416
一応基本的なことはですが、PEARとSmartyは学習しました
その後に学ぶフレームワークという場合は、やはりcakeの方がいいのでしょうか?
0420414
2009/10/04(日) 21:56:24ID:???0422nobodyさん
2009/10/04(日) 22:58:53ID:???(実際使ってみるといろいろ段取りが必要なこともあって)特に楽になってない
0423nobodyさん
2009/10/04(日) 23:08:31ID:???まぁ、それはそうかもね
それに、PHP学習してもまた各フレームワークの記述方法に慣れないといけないとかあるし
Smartyもそうだけど
例えばforeachにしても書き方が少し変わるとか
で、>>422はフレームワークは使ってないの?
0424nobodyさん
2009/10/04(日) 23:16:25ID:???あんなのドキュメント見れば初見でも3分で理解できるレベルだろ
0425nobodyさん
2009/10/04(日) 23:19:11ID:???何の事だ???
知らんけれど、俺はただ最初にSmartyで出てきたのがforeachだったから記憶にあっただけで
別に他の構文述べても良かったんだけど
0426nobodyさん
2009/10/04(日) 23:41:57ID:???0427nobodyさん
2009/10/04(日) 23:58:04ID:???symfonyは日本では人気が無いからまぁ別としても、Zendではなくcakeをそこまで強調する理由は?
0428nobodyさん
2009/10/05(月) 07:33:37ID:???Fatal error: Call to undefined function n12br() in E:\xampplite\htdocs\guestbook.php on line 100
*で囲った下のような書き換えをネット上で見かけたので、その下のecho文を
書き換えてみましたが、どうもうまくいきません。
***********
.n12br($row['body']).
以下に書き換える。
.12br(htmlspecialchars($row['body'],ENT_QUOTES)).
*************
echo "<p>" . n12br($row["g_mes"]) . "</p>";
echo "<p>" . 12br(htmlspecialchars($row['g_mes'],ENT_QUOTES)) . "</p>";
結果>Parse error: parse error, expecting `','' or `';'' in E:\xampplite\htdocs\guestbook.php on line 101
0429nobodyさん
2009/10/05(月) 09:09:03ID:???0430nobodyさん
2009/10/05(月) 10:33:56ID:???0431nobodyさん
2009/10/05(月) 10:43:01ID:???n12brで覚えてる人はfunction名がなぜその名前なのか考えないのかな?
0432nobodyさん
2009/10/05(月) 11:50:16ID:???0433nobodyさん
2009/10/05(月) 13:29:28ID:???0434nobodyさん
2009/10/05(月) 14:11:14ID:???session.save_path の値が設定されていない(=空文字列)の場合、session_save_path() も空文字列を返すようですが、
そのような場合はセッションファイルを置く場所というのはどうやって決まるのでしょうか。
0435nobodyさん
2009/10/05(月) 14:42:18ID:???0436nobodyさん
2009/10/05(月) 14:52:54ID:???ありがとうございます。もう少し詳しく教えていただけないでしょうか。
現在、session.save_pathは未設定、環境変数$TMPDIRも未設定の状態で、
セッションファイルが /var/tmp に格納されます。
この /var/tmp という値はどうやって決まったのでしょうか。
なおPHP5.2.10です。
0438nobodyさん
2009/10/05(月) 15:36:27ID:???Mac と Linux です。
で、PHPのソースコードを追ったところ、
ext/session/session.c の php_session_initialize() で PS(mod)->s_open() を呼んでいる。
けどこれは関数ポインタで、その実体はデフォルトでは ext/session/mod_files.c の PS_OPEN_FUNC() であり、
その中で php_get_temporary_directory() を呼んでいる。
そして main/php_open_temporary_file.c の php_get_temporary_directory() で、環境変数 TMPDIR があればそれを使い、なければ P_tmpdir を使っている。
この P_tmpdir は stdio.h で定義されており、
grep P_tmpdir /usr/include/stdio.h すると
#define P_tmpdir "/var/tmp/"
となりました。
P_tmpdir なんていうのがあるんですねー。知りませんでした。
しかしこれだと、PHPレベルではデフォルトのセッションファイル保存ディレクトリが取得できないということですよね。困りました。
0440nobodyさん
2009/10/05(月) 16:14:17ID:???仕様です
0442nobodyさん
2009/10/05(月) 17:21:45ID:???434ですでに書いている。
セッションファイルの保存場所が知りたいけど、session_save_path() が空文字列で困っているという状況。
0443nobodyさん
2009/10/05(月) 17:31:29ID:???ごめんなさい。
なぜ「セッションファイルの保存場所が知りたい」のかを知りたかったのです。
返答によっては問題解決のために違ったアプローチの仕方もあるかもしれないと思いまして。
0444nobodyさん
2009/10/05(月) 17:32:06ID:???$_ENV['tmp'] を使っている気配。
0446nobodyさん
2009/10/05(月) 17:45:27ID:???更にphp_get_temporary_directoryでgrepしてみなよ
sys_get_temp_dir()がまんま呼んでるだろ
今のところは実装依存という条件付きでやっつけて、
php.internalsにクレクレしておくといい
0449nobodyさん
2009/10/05(月) 18:47:52ID:???0451nobodyさん
2009/10/05(月) 18:51:36ID:???生まれ持った能力配分が、
暗記力 ■■■■■■■■■■■■■■■
思考力 ■
↑こーんな人も実際いるから、
そういう人は暗記だけでゴリ押ししちゃう。
0452nobodyさん
2009/10/05(月) 19:32:19ID:???>>429-431
ありがとうございました。
さっき、本を見てて気づきました。
Σ(´゚д゚`)・・・!?ハッ
0453nobodyさん
2009/10/05(月) 19:33:38ID:???0455nobodyさん
2009/10/05(月) 20:30:53ID:???実装が仕様ですと強弁したとしても
どう実装されているかを答えらてない
もう質問者は自分で答え>>438見つけちゃったようだし
対策も>>446で出てるんだから黙っとけ
0456nobodyさん
2009/10/05(月) 20:38:12ID:???無いファイルが消えるようになってるから。
といえば良かったのだろうか?
0458nobodyさん
2009/10/05(月) 22:27:49ID:???0460nobodyさん
2009/10/05(月) 23:59:23ID:???>>434は過程を聞いてるんでしょ
Q. どう決めているのですか?
A. ソース読め
ならいいが、OSのテンポラリ君は結果だけ言って
答えたつもりになってるからスルーされたんじゃね
回答する事は良いことだが
何を聞かれているか理解できないのを質問者のせいにするのは良くねぇなぁ
0461nobodyさん
2009/10/06(火) 08:50:50ID:???0462nobodyさん
2009/10/06(火) 09:51:03ID:T6gAVcs1復号化のパスをPHPにそのまま書いております。復号化するには必ずパスが
必要になりますが、こういったものを保持するにあたって少しでも安全性の高い
保持方法というのはありますでしょうか?
0464nobodyさん
2009/10/06(火) 11:24:04ID:???0465nobodyさん
2009/10/06(火) 11:34:11ID:T6gAVcs1最近のサーバには人間の脳が載っているのでしょうか。
残念ながら使用しているサーバには人間の脳は載っておらず、apacheやphpといったものしか積んでおりません。
可能であればPHPで出来ることでお願いできればと思います。
0466nobodyさん
2009/10/06(火) 11:43:25ID:???>>460
ソースにマジックナンバーを書いておくと中間コード上にプロセスの最初っから最後まで保持されるが
それを見られる状態ならなんでも出来るって話で、何をしても無駄に終わりそうよね
OSとHTTPサーバ(Apacheならモジュール,CGIどちらで動かしているかも)書いたら
もっといい返事貰えるかもよ
0468465
2009/10/06(火) 12:00:46ID:T6gAVcs1OSはCentOS5.3です。
Apache 2.2.3
PHP 5.1.6
openssl 0.9.8e
動作として
自動受信したメールに添付されている暗号化ファイルを特定フォルダへ移動
特定フォルダにて復号化
復号化ファイルを自動で所定の場所へ移動
となっております。
使用しているのは表に出ているapacheと処理を行うPHPとOpenSSLのみで他の言語やDBなどは使用しておりません。
0469nobodyさん
2009/10/06(火) 12:07:34ID:???0470nobodyさん
2009/10/06(火) 13:46:39ID:???0471nobodyさん
2009/10/06(火) 14:02:25ID:???$a = a^^^^^;だとずれませんでした
0472nobodyさん
2009/10/06(火) 14:03:23ID:???復号←→暗号化
0473nobodyさん
2009/10/06(火) 14:29:58ID:???ビットシフトの事ならこれ
http://jp.php.net/manual/ja/language.operators.bitwise.php
0474nobodyさん
2009/10/06(火) 18:53:04ID:???[book__keys]
isbn = K
の「K」って何なのでしょうか?
他にも、http://pear.php.net/manual/ja/package.database.db-dataobject.intro-autobuilding.php
「N」とかあるようです
スキーマ定義ファイルを調べても出てきません
これら「K」や「N」の意味と、他にどんなのがあるのか教えていただけませんでしょうか?
0475nobodyさん
2009/10/06(火) 19:01:37ID:???むかし、指導教官に【活性化】の反対語は【抑制化】だと主張されて
閉口したことを思い出した。
でもなぜそれでいけないのかを合理的に説明できなかった。
いまでも夢に見る。
0476nobodyさん
2009/10/06(火) 19:34:23ID:???ずらした文字から元の文字に直すことって出来ますか?
0477nobodyさん
2009/10/06(火) 21:38:31ID:???KEYやNULLの意味じゃない?
>>476
473に
>PHP のシフト処理は算術シフトです。両端からあふれたビットは捨てられます。
って書いてるよ
0478nobodyさん
2009/10/06(火) 23:17:11ID:???0479nobodyさん
2009/10/07(水) 00:28:18ID:???0480nobodyさん
2009/10/07(水) 11:58:02ID:???php 5.1.6
ファイルを読み込む時に、3行目から(1、2行目は無視)読み込みたいのですが
こういった時は普通はどのように記述しますか?
$contents = file('hoge.txt');
foreach($contents as $line){
if($i > 1) echo $line;
$i++;
}
一応上記の記述で動くのですが、
そもそもfile()で読み込む時に2行無視とかできれば
$iがいらなくなりもっとスマートかなと思いました。
でもこんなの↓↓↓しか思いつきませんでした・・・
$contents2 = explode("\n",shell_exec('/bin/sed 1,2d hoge.txt'));
foreach($contents2 as $line){
echo $line . "\n";
}
0481nobodyさん
2009/10/07(水) 12:35:25ID:???@fgets($fp);
@fgets($fp);
while( !feof($fp)){
echo fgets($fp);
}
スマートさは無いな。
0482nobodyさん
2009/10/07(水) 12:37:04ID:???0483480
2009/10/07(水) 12:49:43ID:???ありがとうございます。
あと思いついたのはfor使う方法です。
$contents = file('hoge.txt');
for($i=2 ; $i < count($contents) ; $i++){
echo $contents[$i];
}
プログラム経験が無いので定石みたいなものがわからないんですよね。
0484nobodyさん
2009/10/07(水) 13:07:51ID:???2 はマジックナンバーじゃなくて定数にして、
なんで 3 からはじめたいかの理由を書くけど。
0485nobodyさん
2009/10/07(水) 13:35:09ID:???0486nobodyさん
2009/10/07(水) 13:52:03ID:???$file = file_get_contents($filename);
preg_match("/[.*\n]{2]/","",$file);
echo $file;
0487nobodyさん
2009/10/07(水) 13:55:38ID:???$file = file($filename);
unset($file[0],$file[1]);
implode("\n", $file);
echo $file;
0489480
2009/10/07(水) 14:06:55ID:???ファイル名とか行数とかは定数にします。
>>486さんや>>487さんの書き方は一般的なのでしょうか??
同じ事を実現するのに色々な方法があり、結局ケースバイケースなのかもしれませんが
私の>>483の書き方はイレギュラーな書き方でしょうか??
0490nobodyさん
2009/10/07(水) 14:09:32ID:???0492480
2009/10/07(水) 14:17:55ID:???プログラム歴1週間で、まだ自分の書き方が正しいのかどうかわかりません。
>>480の場合、目的の事はできているのですが
このコードがあまりにもとんちんかんなコードだったら困ると思い、
普通はどう書くのか質問しました。
私の記述の仕方で問題無ければ良いのですが・・・
0493nobodyさん
2009/10/07(水) 14:19:32ID:???用途を満たしているか、セキュリティは大丈夫か、負荷は大丈夫か、などで判断したほうがいいかと
0494nobodyさん
2009/10/07(水) 14:29:31ID:???とりあえず>>480に関しては問題無い
あとはネットに転がっているサンプルソースをたくさん見ていればどういう書き方をするのが良いのかわかってくると思う
そして、>>493氏が言うことを頭にいれておけば平気
0495nobodyさん
2009/10/07(水) 14:56:01ID:???echo implode("", $file);
ってやんないと、結果出力しないうえに、改行が2個入るよ。
0496nobodyさん
2009/10/08(木) 09:43:52ID:???addruleのcompareについてなのですが、
http://pear.php.net/manual/ja/package.html.html-quickform.intro-validation.php
を見ると、compareの$formatパラメータにNULLというものがありません
しかし、http://pear.php.net/manual/ja/package.html.html-quickform.html-quickform.addrule.php
ココのサンプルだとcompareの$formatパラメータにNULLが入っています
コレはどういう事なのでしょうか?
このNULLを設定すると何を意味するのか教えて下さい
0497nobodyさん
2009/10/08(木) 09:49:42ID:???0498nobodyさん
2009/10/08(木) 10:09:53ID:???$form->addElement('password', 'cmpPasswd', 'パスワード:');
$form->addElement('password', 'cmpRepeat', 'パスワード(もう一度):');
$form->addRule(array('cmpPasswd', 'cmpRepeat'), 'パスワードが一致しません', 'compare', null, 'client'); //�@
つまりコレは、cmpPasswdと'cmpRepeatを比較(compare)しているのだという事は分かるのですが、compareの$formatパラメータをnullの部分に入れるのではないのですか?
例えばmaxlength等はaddule()のstring $format部にパラメータを入れますよね?
コレは自分ではパラメータを入れてると思ってたのですが違ったのでしょうか?
もしコレがPHPのnullだとしたら更に分からなくなりました
�@の文のnullはどういうことを意味しているのですか?
0499nobodyさん
2009/10/08(木) 10:13:12ID:???0500nobodyさん
2009/10/08(木) 10:31:26ID:???$form->addRule('email', 'E-Mail is required', 'required', null, 'client');
のnullはhttp://pear.php.net/manual/ja/package.html.html-quickform.intro-validation.php に載っている$formatパラメータ欄が何も書かれていないのでnullなのは分かりますし、
$form->addRule('email', 'サイズでかすぎ', 'maxfilesize', 1280,);
は$formatパラメータ欄にファイルの最大サイズを表す整数値をと書かれているので1280が入っているのは分かります
で、そのうえで上記のnullの意味が分からないのです
compareには$formatパラメータ欄にいくつかパラメータが入っているので
0501nobodyさん
2009/10/08(木) 10:33:06ID:???マニュアル君久しぶりね
出てこなくていいよ^^
答えわからないんでしょ^^
無理にレスしなくても誰も困らないよ^^
0503nobodyさん
2009/10/08(木) 10:53:24ID:???>string $format
> (オプション) 追加の検証データのために必要。
追加のオプションを指定しない事を明示的に「null」と書いてると思ってくれ。
オプションが無い(=null)とデフォルトの動作になるので、
マニュアルの「(デフォルト) 両方の要素が同じ値でなければなりません」の部分になる。
つまり2つの値が同じ値かどうかのチェック。
だからこの場合、「null」と書くのと「eq」と書くのが同じって事。
0504nobodyさん
2009/10/08(木) 10:56:35ID:???E-Mailの確認などでcompareを使う場合、曖昧なままだと使えないなぁと思いまして
例えばパラメータに載っている、”eq”や”neq”等が書かれていれば分かったのですが、nullが何を意味するのか分からないもので、コレを使っていいものなのかと・・・
色々調べたのですが、出てきませんで
0505nobodyさん
2009/10/08(木) 10:57:59ID:???ありがとうございます
自分が>>504書き込んでいる間のレスでした
>>503のように理解します
答えてくれて有難うございました
0506nobodyさん
2009/10/08(木) 11:03:05ID:???俺もそう思った
俺はわからなくて何も書けなかったんだが、>>499みたいなのは答えわかってないんだと思う
そもそもマニュアルリンクしてるんだから、マニュアルは読んでるんだと普通は判断できるけれどもな
0507nobodyさん
2009/10/08(木) 11:14:06ID:???$formatの省略値は '' だな。
マニュアルを素直に読むと、デフォルト動作を指定するには、
''を渡すのが正解ということになる。
で、マニュアルにちゃんと説明されて無いんだから素直に''か'eq'か'=='
を使っとけ、という事になる。
例でnullを渡してるのは「ああ、その場合も動くんだな」くらいに思って
おくのが吉。
0508nobodyさん
2009/10/08(木) 11:39:32ID:???正規表現クン・・・・専用のdate関数使ったほうが楽なのにわざわざpreg_matchで自己満コードを書く人生を無駄に過ごしている人
マニュアルクン・・・回答者ぶりたいけど答えが分からないのでとりあえずマニュアル嫁としか言えない素人
0509nobodyさん
2009/10/08(木) 11:50:32ID:???分からなければ何も書かなきゃいいのに
それか、「こういうことかもね」とか、「俺にはわからないから他の人に頼む」とか
0510nobodyさん
2009/10/08(木) 11:51:43ID:???何言ってんだ
Pearのマニュアル読む前にPHPのマニュアル読め
引数のデフォルト値なんて基本中の基本だろ
0511nobodyさん
2009/10/08(木) 12:04:22ID:???| ヽ ゙、 、 \ \ヽ ヽl/ / // // / //イ //-‐'"
\ヽ、 | ヽ 、、\ \ \ヽl l l/ // // ///‐ /‐彡-‐
\ヽ、 | \ \\、ヽ、\ヽ ヽ/// / /// ヽ
\ \、 \ \\ ヽ'' ヽ、 | / /////ヽヽ
\\\、、ヽ, ゙゙゙ ゙ ヽゝ、 / /ヽ|////ヽ ||
\、\\| / ノ/~' ヾ"' '|、ヽl |//-‐イ| ||
\、\| __ ヽ // / ゞ / ノ / -‐ | ||
\ ヽ \ ヽl // /,.. イ ┌ノ // / | |
/フ ハ ヽ\ l /、ノ / -‐ / / / / |
___┌‐| | `、、ヽゝヽヾ、‐''ヽ-''"-‐'" /''" | /‐/ |
| ミ | |ミ| \、 ̄‐ヽ/ '''" ,.-、 ,.' | | ,.‐" / /|
|::::、、 | |│ ヽ |_,.- / ,-| / | |/ / /::::::/ /::
ヽミ::::::: ヽ l| ゝ、  ̄、"-‐'",,ノ /:::: l| |‐" /::::::/ /:::
/\ ::::: \| | | ヽ、ヽ''"-‐ /:::: 、 |,.'' =@/::::/ /:::::
0512nobodyさん
2009/10/08(木) 12:15:48ID:???0513nobodyさん
2009/10/08(木) 14:24:26ID:???エラーレベル最強にしてると
Noticeとかでまくるよね。
みんなどうやって対処してるの?
0516nobodyさん
2009/10/08(木) 16:25:18ID:???それが出来たら初心者じゃないよねー
ってことで生暖かく回答してやれ
0517nobodyさん
2009/10/08(木) 16:29:54ID:???正規表現を使うまでもないならさらりと他のコード出せばいいだけなのに
たいていケチつけるやつはコードも出さずに文句しか言わないからな
マニュアルクンは答えになるようなURLを張ってマニュアル嫁ならいいけど
ただマニュアル嫁はゴミ
0519nobodyさん
2009/10/08(木) 16:50:20ID:???0520nobodyさん
2009/10/08(木) 16:57:10ID:???0521nobodyさん
2009/10/08(木) 19:15:32ID:???煽るだけの奴のほうが圧倒的に多い
それがPHP(笑)スレクオリティー
0522nobodyさん
2009/10/08(木) 19:56:54ID:???絶滅しかけのパーラーらしいよ
0523nobodyさん
2009/10/08(木) 20:04:21ID:???49 名前:nobodyさん[] 投稿日:2009/03/23(月) 10:24:31 ID:8ptTuCbS
2009-04-01 08:40:00
↑の時間の30分後を取得する方法。
↑に対して正規表現クンは↓の回答
$date= '2009-04-01 08:40:00';
preg_match("/(\d{4})\D(\d\d?)\D(\d\d?)\s+(\d\d?):(\d\d?):(\d\d?)/s", $date, $d);
$d= localtime(60*30+mktime($d[4], $d[5], $d[6], $d[2], $d[3], $d[1]));
printf("%d-%02d-%02d %02d:%02d:%02d", $d[5]+1900,$d[4]+1,$d[3],$d[2],$d[1],$d[0]);
↑の回答に対して罵倒してる人たちは↓の回答
echo date("Y-m-d H:i:s",(strtotime("2009-04-01 08:40:00") + 60*30));
や
date_default_timezone_set("Asia/Tokyo");
$time = 60*30;
$data = "2009-04-01 08:40:00";
$st = strtotime($data)+$time;
echo date('Y-m-d H:i:s',$st);
0525nobodyさん
2009/10/08(木) 21:18:30ID:???$date= '2009-04-01 08:40:00';
preg_match("/(\d{4})\D(\d\d?)\D(\d\d?)\s+(\d\d?):(\d\d?):(\d\d?)/s", $date, $d);
$d= localtime(60*30+mktime($d[4], $d[5], $d[6], $d[2], $d[3], $d[1]));
printf("%d-%02d-%02d %02d:%02d:%02d", $d[5]+1900,$d[4]+1,$d[3],$d[2],$d[1],$d[0]);
・・・コレはひどい・・・
0526nobodyさん
2009/10/08(木) 21:18:55ID:???マニュアル等どこかで見れる所ありませんか?
0527nobodyさん
2009/10/08(木) 21:34:39ID:???0528nobodyさん
2009/10/08(木) 21:46:55ID:B5gIBP6Oマニュアルのどこで見れるのか教えてくださいませんか?
マニュアルにあるのが分かってるんですから勿論書けるはずですよね
0529nobodyさん
2009/10/08(木) 21:52:14ID:???0530nobodyさん
2009/10/08(木) 22:00:29ID:???http://pc11.2ch.net/test/read.cgi/php/1158647441/
スレ違いなのでこちらでどうぞ
0531526
2009/10/08(木) 22:15:41ID:???0532nobodyさん
2009/10/09(金) 02:42:58ID:???コードは出してもセンスのない無駄なコードという噛み付き方が悪い
こういうこと書くからお前の方がセンスないみたいなガキの喧嘩が始まって面倒なことになる
正規表現使わなくても書けるよとだけツッコミを入れてコードをさらりと書けばそれで終了
そこらへんが分からないからPHPスレ住人は質が低い
正規表現クンだけを悪者にしたいようだが第三者から見ればどっちもどっち
0533nobodyさん
2009/10/09(金) 02:57:07ID:???0536nobodyさん
2009/10/09(金) 09:59:34ID:???某スレで二人池沼がIP出して言い合いしてたが、片方がたまに現れて叩いてるのと同じ現象。
池沼同士仲良くしろよ。周りに迷惑だけはかけんなよな。
0537nobodyさん
2009/10/09(金) 10:03:28ID:???>汚いコードを書く回答者は叩かれて当然
この発想が餓鬼なんだよwwwなんでわざわざ叩くわけ?
気に入らないなら放置するか「自分ならこうする」って言って他のコード書けばいいじゃないか。
0540nobodyさん
2009/10/09(金) 10:46:50ID:???別に複雑に書いたつもりはないけど、処理の過程が明確で日時の場合月日だけとか
時分秒だけとか副次的に利用することがおれの場合は多いからこう書くクセがついてるだけ
と本人は言っているわけだ。
0541nobodyさん
2009/10/09(金) 10:51:10ID:???0542nobodyさん
2009/10/09(金) 10:51:34ID:???最初に、副次的に利用する事を考慮してこういう書き方もある
と前置きがされていれば叩かれないのに。
0543nobodyさん
2009/10/09(金) 10:53:03ID:???0544nobodyさん
2009/10/09(金) 10:54:43ID:???えっと書式に'm月d日'って書けば月日だけとかできるのに
0545nobodyさん
2009/10/09(金) 10:56:27ID:???こっちに統合じゃだめなのか?
http://pc11.2ch.net/test/read.cgi/php/1253061577/
0546nobodyさん
2009/10/09(金) 10:58:33ID:???0547nobodyさん
2009/10/09(金) 11:02:46ID:???意見を言うだけに叩きの要素はいらないだろ
ちゃんと自己主張するやつは他人と意見があわない可能性があることを自覚してるやつ
そんなやつがわざわざ煽り合いに参加するんだろうか?
0548nobodyさん
2009/10/09(金) 13:59:33ID:???ttp://labs.cybozu.co.jp/blog/akky/archives/2007/10/phpspot-bad-regex.html
0549nobodyさん
2009/10/09(金) 16:37:55ID:tKqousLRexample.txt
example0 "on"
example1 "on"
example2 "off"
example3 "on"
example4 "on"
という内容のファイルがあります。
それぞれを$example0=onというように左側のexample*を変数として右のon/offを
代入したいと思ってますが何か効率の良い方法はありますでしょうか?
現在は
$hoge = file("./example.txt");
foreach($hoge as $hogehoge){
$hoge_val = explode(" ", $hogehoge);
$hoge_val = str_replace("\"", "", $hoge_val);
}
で$hoge_val[0]に変数で$hoge_val[1]に代入の値という風に出来たのですが
$hoge_val[0]に入っている値そのものを変数にする方法が思いつきません。
どのようにすれば変数に出来るのかヒントもらえないでしょうか?
0552nobodyさん
2009/10/09(金) 16:44:10ID:???echo $txt;
echo eval($txt;echo $text;);
0553nobodyさん
2009/10/09(金) 16:50:23ID:???extractかな
PHP: extract - Manual
http://jp.php.net/manual/ja/function.extract.php
0555553
2009/10/09(金) 16:59:04ID:???こんなんでどうだろ?
$hoge = file("./example.txt");
foreach($hoge as $hogehoge){
$foo = explode(" ", $hogehoge);
$hoge_val[$foo[0]] = trim($foo[1],"\n\"");
}
extract($hoge_val);
var_dump($example0);
var_dump($example1);
var_dump($example2);
var_dump($example3);
var_dump($example4);
0558549
2009/10/09(金) 17:12:29ID:tKqousLRこんな駆け出し初心者の質問に答えてくれてありがとうです。
>>550
使い回してた部分なのでそのまま"を消すものが入ってました。
"がなくても動いてたので気にしてなかったのですが、あまりよくないので消し説きます。
>>551-552
eval自体知りませんでした。
駆け出しなのでまだまだ知らない関数たくさんありますが勉強になりました。
>>553 >>555
extractも知りませんでした。
eval同様に非常に便利そうですので使っていきたいと思います。
>>556
こんな書き方あるんですね。
ぱっと見るとシェルっぽい書き方に見えなくもないですが凄く便利そうです。
みなさんこんなアホな質問に速攻で答えてくれてありがとうございました。
055926
2009/10/09(金) 17:25:06ID:???0560nobodyさん
2009/10/09(金) 20:29:43ID:???全部preg_match使っておk?
0561nobodyさん
2009/10/09(金) 20:50:57ID:???スクリプトってどこかで公開されてませんか?
イメージとしてはこんな感じなのですが
http://blog-lvup.com/utility/feed_finder/
0563nobodyさん
2009/10/09(金) 21:31:35ID:???それをWindows上で動かすのと、Linux上で動かすのと、
何か違いはある?
0564初代認定回答者
2009/10/09(金) 22:13:53ID:???fopenみたいにOSによって仕様が同じでないものがありますよ
0566nobodyさん
2009/10/10(土) 19:51:32ID:???phpで指定した番号のレコードを取得し、各フィールドを配列に格納したいです。
どのように書けばいいのでしょうか?
0568nobodyさん
2009/10/12(月) 14:49:35ID:???の意味がいまいち分かりません。
どうして宣言してもいないのに急に出てくるんですか?
初心者過ぎる質問で申し訳ありません。
どなたか教えてください
0569nobodyさん
2009/10/12(月) 15:05:44ID:???http://jp2.php.net/manual/ja/language.oop5.basic.php
これで気づいたけどoop5のページが少し更新されてたんだね
入門用としてより詳しい解説になってる
0570nobodyさん
2009/10/12(月) 15:37:36ID:???Javaの勉強をかじり程度でもすることをオススメする
PHPじゃオブジェクト指向というものを理解するのは難しい
0571nobodyさん
2009/10/12(月) 19:03:16ID:???ありがとうございます
>>570
バイト先で使っているので横道にそれる余裕がないのです
急がば回れかもしれませんが・・・。
this->
はクラス内で宣言された変数を同じクラス内で宣言された関数内で使用する際に頭につけるルール
のような認識で合ってますでしょうか?
0576nobodyさん
2009/10/12(月) 23:36:44ID:???0577nobodyさん
2009/10/12(月) 23:51:40ID:???ありがとうございました
>>576
プログラミングメインではないのでいけたのかと思います。
本来はプログラマー募集でもなかったですし
0578nobodyさん
2009/10/13(火) 00:15:16ID:???デザイナーがプログラムまでやらされるような残念な会社か・・・
大変そうだがガンガレ
0579nobodyさん
2009/10/13(火) 00:18:05ID:???PHPエディタ で、
F2押して出すマニュアルで、
マニュアル自体は起動するんだけど、
「無効なWEBの検索」
とかって出て、左側のフレームは
とかって出てるんだけど、
右側のフレームには、
そのprintの内容(関数の説明とか)が
でてこなくて、対処、URLを再入力する、
とかって出てきてしまうのですが、
できてる人いますか?
0581nobodyさん
2009/10/13(火) 10:14:20ID:???0582580
2009/10/13(火) 10:22:54ID:???あれ?ここって公式じゃないの?
http://www.php.net/download-docs.php
0583nobodyさん
2009/10/13(火) 10:29:04ID:???0584nobodyさん
2009/10/13(火) 10:34:56ID:???日本語の検索が出来ない
0585nobodyさん
2009/10/13(火) 10:38:57ID:???でも俺のは文字化けしないな
と思ったらいつも俺はchmをリコンパイルしてたんだったわ
0586580
2009/10/13(火) 10:45:27ID:???「php_manual_ja.chm」で検索するとリコンパイル方法が色々でてくる。
俺は誰かがリコンパイルしてくれた奴を過去に落としたが、今は無いみたいだ。
ということで、今リコンパイルしてみたが
KeyToolsでデコンパイルして、HTML Help Work Shopでリコンパイルすれば文字化け解消するよ
その際に、特にエディタで書換える必要も無かった。
0587nobodyさん
2009/10/13(火) 11:57:08ID:???まじでわからん
0588nobodyさん
2009/10/13(火) 16:45:52ID:???ひとつのディレクトリにセッションファイルを書いていったとして、だいたいどのくらいの数まで実用的に動作しますか。
たとえばLinuxなら/var/tmp以下に1万個ぐらい作ってもへっちゃらとか、10万ぐらいで遅くなったとか、
そういう経験談があれば教えてください。
なおOSはLinuxで、ファイルシステムはext2かext3です。
0589nobodyさん
2009/10/13(火) 17:09:18ID:???0590nobodyさん
2009/10/13(火) 17:38:40ID:???0591nobodyさん
2009/10/13(火) 18:52:50ID:???0592nobodyさん
2009/10/14(水) 13:18:33ID:???memcache とか使えばいいのに
0593nobodyさん
2009/10/14(水) 14:42:06ID:???てっきりwarn()とかいう関数が標準であるのかと思ったらありませんでした。
0594nobodyさん
2009/10/14(水) 14:43:20ID:???0595nobodyさん
2009/10/14(水) 15:15:53ID:???0597nobodyさん
2009/10/14(水) 16:46:14ID:???てっきりこっちかと思った。
ttp://php.net/manual/ja/errorfunc.configuration.php
・error_reporting
・display_errors
>>596
そう思うんなら、いちいち反応するなよ。
0600nobodyさん
2009/10/14(水) 18:46:32ID:???0601nobodyさん
2009/10/15(木) 11:27:15ID:IJjjUaJiそしてそのCentOS上でLighttpdとPostgreSQLとPHP5.3を動かしています。
NetBeans6.7.1ではSFTPを使いCentOS上に*.phpファイル保存時に自動的に書き込むようにしています。CentOS上のphp.iniではXdebugの設定をしたのでNetbeansを用いてPHPのコードを一行一行実行して行く事ができるようになりました。
ここまでは上手く行きました。NetBeansのメニューで「プロジェクトのデバッグ」を選択するとブラウザーが立ち上がり、ブレークポイントを付けた行で停止して1行ずつコードを実行して行けます。
しかし、NetBeansのメニューで「プロジェクトの実行」を選択するとブラウザーが立ち上がる所までは同じですが、その後それ以上何も進展しない状況になります。(ブラウザーは「読み込み中」と表示されたままです。)
これって正常でしょうか?
0603nobodyさん
2009/10/15(木) 17:04:49ID:???class Foo {
function f1() {
// ここで Foo という名前を取得したい
}
}
Foo::f1()
0604nobodyさん
2009/10/15(木) 17:08:40ID:???0606nobodyさん
2009/10/15(木) 18:25:13ID:???バンバンバンバンバンバンバンバンバン゙ン
バンバン /⌒ヽ バンバンバンバンバン
バンバン∩#^ω^)動けお
/_ミつ / ̄ ̄ ̄/__
\/___/
ドゴォォォォン!!
; ' ;
\,,(' ⌒`;;)
(;; (´・:;⌒)/
/⌒ヽ(;. (´⌒` ,;) ) ’
Σ(;^ω^)((´:,(’ ,; ;'),`
⊂ ⊂ / ̄ ̄ ̄/__
\/___/
0607nobodyさん
2009/10/15(木) 18:29:06ID:???ID出すほうで質問したらちゃんと俺が答えてやったが
ここは管轄外なのでスルーさせていただくよ
0608nobodyさん
2009/10/15(木) 18:37:31ID:???自己レスです。
継承しないならget_class()または__CLASS__でうまくいったのですが、継承があるとだめでした。
class Foo {
function f1() {
echo get_class(), "¥n";
echo __CLASS__, "¥n";
}
}
class Bar extends Foo {
}
Bar::f1(); // Foo Foo
継承したときのクラス名(この例ならBar)をとってこれないでしょうか。
0610nobodyさん
2009/10/15(木) 18:53:51ID:???さすが低レベルなスレだな
0611nobodyさん
2009/10/15(木) 20:04:40ID:???http://jp.php.net/manual/ja/language.oop5.late-static-bindings.php
0612nobodyさん
2009/10/15(木) 22:53:54ID:???5.3からの新機能で可能ということですね(つまりそれ以前のバージョンでは不可能)。
ありがとうございました。
0614nobodyさん
2009/10/16(金) 01:42:29ID:???PHP入門講座、はじめたよー
0615nobodyさん
2009/10/16(金) 02:28:04ID:???ていうか最初と最後に文字いれしてるんだから
わざわざタイプで時間使わないで文字いれしろよ
そうすりゃこんな意味のない動画を3分も見せ続けられなくてすむし
CM1本分ぐらいに収まるだろ
0616nobodyさん
2009/10/16(金) 02:43:44ID:???えらそうに、、、
0617nobodyさん
2009/10/16(金) 02:45:06ID:???あんな無駄なものを3分も見せられるほうの気持ちも考えろ
0618nobodyさん
2009/10/16(金) 10:42:03ID:???$array = array();
はしたくないので
foreach (array_keys($array) as $key) { unset($array[$key]); }
としているんですが、
array_clear($array);
みたいなのが標準であれば教えてください。
ぐぐったら $array = array() ばかりが出てくるんですけど、array_clear()みたいなのはないんでしょうか。
0619nobodyさん
2009/10/16(金) 10:43:00ID:???0621nobodyさん
2009/10/16(金) 10:52:22ID:???何これ?連想配列?
まぁただの配列にしても連想配列にしてもunsetやれば全部NULLになるでしょ
$a = array(1, 2, 3, 4);
unset($a);
var_dump($a); //NULL
$b['foo'] = 1;
$b['bar'] = 2;
unset($b);
var_dump($b); //NULL
0622621
2009/10/16(金) 10:55:18ID:???嗚呼・・・クリアってそういうことか
変数割り当てをクリアじゃなく配列の値をクリアするってことね
>>621は無視してちょうだい
0623nobodyさん
2009/10/16(金) 11:15:42ID:???ありがとうございます。array_splice()で出来ました。
ただ、これって連想配列でも動作が保証されているのでしょうか。
連想配列ではない通常の配列でなら、array_splice()でいいと思いますが、連想配列でも動作が保証されているのか、マニュアルを読んでも分からなかったので、もしご存知なら教えてください。
0624nobodyさん
2009/10/16(金) 11:17:00ID:???kyomo-iitenki-1.2.3.exe
というファイルがあって1.2.3がバージョンになります。
バージョンだけ取り出したいんですがまず
$test_val = "kyomo-iitenki-1.2.3.exe";
$test_num = strrpos($test_val, "-");
$hogera = str_split($test_val, $test_num+1);
$hogera = ereg_replace(".mid", "", $hogera[1]);
こんな感じで1個ずつやってみたのですが、何かもっと効率よさそうな方法がありそうな気がします。
PHP始めたばかりなので最初から効率を求めるわけではないのですが、後学のためにこれをもっと
効率よくする書き方があれば教えてください。
0625624
2009/10/16(金) 11:46:37ID:???テストでmidiファイルとかやってたので最後の行が.midになってました。
正確には.exeの間違いです。
0626nobodyさん
2009/10/16(金) 11:51:28ID:???PHPのarrayは配列も連想配列も同じ順序付きハッシュだから動く
つうか array_splice($array, 0) も内部で $array = array() と同じ事やってんだが、これでいいのか?
>>624
正規表現がまさにそういう用途のためにある
http://jp.php.net/manual/ja/function.preg-match.php
$test_val = "kyomo-iitenki-1.2.3.exe";
preg_match('/([^\-]+)\.[^.]+\z/', $test_val, $matches);
echo $matches[1];
0627nobodyさん
2009/10/16(金) 11:52:29ID:???正規表現をうまく使えればもっとシンプルにできるよ
俺はあまり正規表現は得意じゃないんでもっと最適なものがあるとは思うけど
$test_val = "kyomo-iitenki-1.2.3.exe";
echo preg_replace("/[^0-9]+[^0-9]/", "\\1", $test_val);
0628624
2009/10/16(金) 11:55:18ID:???正規表現ですか。
まだ本当に記号の羅列にしか見えないですね。
でも正規表現使えればあの汚いものがこんなにシンプルな1行になるわけですね。
ちょっと正規表現勉強してみます。
ありがとうございます。
0629nobodyさん
2009/10/16(金) 12:05:20ID:???preg_match("![0-9][\._-0-9]*!",$str,$match);
print_r($match);
0631nobodyさん
2009/10/16(金) 12:20:37ID:???0634nobodyさん
2009/10/17(土) 13:36:36ID:???\n のような特殊な文字(エスケーッぷ?)の一覧を教えて。
あと、\nが CR+LFになるのかLFになるのかを
プログラム中から知る手段も教えてほしい。
0635634
2009/10/17(土) 13:43:17ID:???0636nobodyさん
2009/10/17(土) 20:14:28ID:???調べてみたのですが、「クライアント電話番号」と書かれている部分だけ分かりません。
どのように取得すれば良いかご存知の方がいらっしゃれば、ご教授いただけないでしょうか。
以下は、他の欄に使われていると思われる変数です。
--------------------------------------------------
情報を取得した時間:date("Y年\nm月\nd日\n A \nH時 i分\n s秒\n")
現在接続しているホスト名:$_SERVER['SERVER_NAME']
現在接続している場所(現IP):$_SERVER['REMOTE_ADDR']
現在接続している場所(元IP):$_SERVER['FORWARDED_FOR']
クライアント電話番号:不明
プロバイダー名:gethostbyaddr($_SERVER['REMOTE_ADDR'])
サポート言語:$_SERVER['HTTP_ACCEPT_LANGUAGE']
ポート番号:$_SERVER['REMOTE_PORT']
クライアントの場所:$_SERVER['HTTP_FORWARDED']
クライアントID:$_SERVER['REMOTE_USER']
ユーザ名:$_SERVER['REMOTE_IDENT']
クッキー:$_SERVER['HTTP_COOKIE']
使用ブラウザ:$_SERVER['HTTP_USER_AGENT']
どこのURLから来たか:$_SERVER['HTTP_REFERER']
proxyのバージョン等:$_SERVER['HTTP_VIA']
proxyの効果:$_SERVER['HTTP_PROXY_CONNECTION']
FORMの情報:$_SERVER['REQUEST_METHOD']
FORMのタイプ:$_FILES[...]['type'] ← 自信無し
FORMのバイト数:$_FILES[...]['size'] ← 自信無し
HTTP_X_LOCKING:$_SERVER['HTTP_X_LOCKING']
HTTP_FROM:$_SERVER['HTTP_FROM']
データ取得の手段:$_SERVER['REQUEST_METHOD']
エンコードの仕様:$_SERVER['HTTP_ACCEPT_ENCODING']
MIMEの仕様:$_SERVER['HTTP_ACCEPT']
--------------------------------------------------
0637nobodyさん
2009/10/17(土) 20:54:10ID:???0638nobodyさん
2009/10/17(土) 23:00:26ID:???「php whole」などで検索してみたのですが、どういうことか分かりません…。
もう少し詳しく教えていただけないでしょうか。
0640nobodyさん
2009/10/17(土) 23:42:00ID:???0641636
2009/10/17(土) 23:47:19ID:???解決したありがとう
0644nobodyさん
2009/10/18(日) 00:25:07ID:???「phone」と言う項目がありました。
これは、
PCの場合、登録に関する連絡の担当者(もしくは技術的な連絡の担当者)の電話番号
携帯電話の場合、クライアントの電話番号(使用者の電話番号)
になると考えて良いのでしょうか。
0645nobodyさん
2009/10/18(日) 09:38:00ID:???0648nobodyさん
2009/10/18(日) 10:20:56ID:???0649nobodyさん
2009/10/18(日) 10:24:15ID:???641から642
レス早いだろ
0651nobodyさん
2009/10/18(日) 10:45:08ID:???だから、番号を通知する設定にするとリクエストに番号が載るキャリアがあるんじゃね?
もしくはダイアルアップの場合のみ、とか。
0652nobodyさん
2009/10/18(日) 10:53:44ID:???0653nobodyさん
2009/10/18(日) 14:26:46ID:???サブスクライバIDとか、UIDとか、端末識別暗号とかEZ番号とか、
呼び方は色々だけど、つまりはそういうことです。
0654636
2009/10/18(日) 16:52:42ID:???つまり、「クライアント電話番号」というのは、携帯の電話番号というわけではなく、
「携帯端末ごとに決められているユニークな番号」という意味だったんですね。
ようやく理解することができました。
最後に、>>653さんの単語から検索した結果、色々な情報が出てきたので、まとめておきたいと思います。
--------------------------------------------------
・ドコモの場合
個体識別情報:<a>タグや<form>タグに「utn」という文字を入れると、$_SERVER[’HTTP_USER_AGENT’]の後ろに付加される
iモードID:GETやPOSTで引数に「guid=ON」を入れると、$_SERVER['HTTP_X_DCMGUID']から取得できる
・auの場合
個体識別情報(=EZ番号=サブスクライバID):auは固体識別子を毎回送信しているので、$_SERVER['HTTP_X_UP_SUBNO']から取得できる
・ソフトバンクの場合
個体識別情報:ソフトバンクの固体識別番号は、常にユーザーエージェントに含まれているので、$_SERVER[’HTTP_USER_AGENT’]から取得できる
個体識別情報:httpのページからhttpsへ遷移するようなケースであれば、$_SERVER['HTTP_X_JPHONE_UID']からも取得可能
・イーモバイルの場合
個体識別情報:HTTPリクエストヘッダの「x-em-uid」($_SERVER[’HTTP_X_EM_UID’]?)から取得できる
・ウィルコムの場合
現時点では取得不可能?
--------------------------------------------------
長い間、レスを使ってしまい申し訳ありません。とても勉強になりました。
答えてくださった方、本当にありがとうございます。
0655nobodyさん
2009/10/18(日) 17:06:22ID:???0656nobodyさん
2009/10/18(日) 17:49:47ID:mL8oRkmgプレースホルダに設定する値が数値"0"のとき、
空文字に自動変換されてしまって困ってます。
解決策わかる型いらっしゃいませんか?
環境は
DB:MySQL5.0.45
PHP:php5.2.8
PEAR:1.9.0
です。
0657nobodyさん
2009/10/18(日) 18:11:30ID:mL8oRkmg自己解決しました。
自動変換によるものではなく、
変換メソッドが悪さをしていたようです。
0659nobodyさん
2009/10/18(日) 19:27:11ID:???ネットショップ立ち上げのために先日oscommerceをインストールしてみたのですが
しょっぱなからちゃんと動作しないなどの不具合が。
oscommerceはデータベースサーバなどと連携している分、不具合やエラーが出やすいかなと
思い、perl言語のみのルミーズカートcgiに興味を持ちました。
以前、perl言語のクイズ作成cgiを設置して何のトラブルもなくずっと使えていたのでcgi単独だと
安定して使えるのかなというイメージがあります。
ずばりルミーズカートならoscommerceよりも安定して管理できるでしょうか?
多少機能が劣っていてもシンプルな構成でトラブルが少なく扱いやすい物が一番と考えております。
個々の環境にもよるとは思いますが一般論でお答えいただければ幸いです。
0660nobodyさん
2009/10/18(日) 19:30:45ID:???0661nobodyさん
2009/10/18(日) 20:28:40ID:???phpなんかよりperl使うべきですね。
0662nobodyさん
2009/10/18(日) 20:38:15ID:???0663nobodyさん
2009/10/18(日) 20:52:19ID:???そして己が人に教える時のことも考えてもコストが安い
0664nobodyさん
2009/10/18(日) 20:55:30ID:???軽量FWもたくさんでてるし時代遅れって事は無いと思う
0665nobodyさん
2009/10/18(日) 21:08:54ID:???まだまだPerlはUnixなんかのシステムにはよくつかわれてるんだぜ
0666nobodyさん
2009/10/18(日) 21:13:10ID:???0667nobodyさん
2009/10/19(月) 11:22:19ID:???条件分岐を $hogehoge == "" としててもうまく機能せず $hogehoge == "NULL" とするとうまくいくのでどうなのかな?と。
CとかVBは数年使ってたのでプログラム自体は素人ではないのですがPHPは使い始めて1週間です。
0668nobodyさん
2009/10/19(月) 11:24:56ID:???0669nobodyさん
2009/10/19(月) 11:42:48ID:???とPHPを初めて1ヶ月の俺が適当に答えてみるテスト
0670nobodyさん
2009/10/19(月) 11:44:28ID:???と呼び出しているphpに、呼び出し時に値を一緒に渡したいのですがどうすればいいでしょうか?
0671nobodyさん
2009/10/19(月) 12:05:24ID:???本当にただのNullの場合、緩い比較である==演算子を使っても文字列としては通らない。
よって$hogehoge == "NULL";で通るということはNULLという文字列が入っていると考えられる。
ためしに$hogehoge == "null;"と小文字にして確かめてみるとよい。
0672nobodyさん
2009/10/19(月) 12:50:51ID:6KYWXDe7何が危ないのでしょうか?
0673nobodyさん
2009/10/19(月) 12:55:31ID:???0675nobodyさん
2009/10/19(月) 13:04:20ID:???var_dump(0 == "NULL");
0677nobodyさん
2009/10/19(月) 13:39:05ID:???何がいいたいかわからん
ていうかvar_dumpをそんな使い方してる人ははじめてみたな
$a = null;
var_dump($a);
if ($a == "null") {
echo 1; //nullはStringではないので表示されない
}
0680nobodyさん
2009/10/19(月) 14:01:26ID:???empty()でチェックしたり、intval()とかで変換したりしろ
0681nobodyさん
2009/10/19(月) 14:22:30ID:???だから・・
言ったやつがどういう意図で言ったか根拠を本人に聞いてないとここで答えようがないだろつってんだよ
0682680
2009/10/19(月) 14:26:31ID:???>>668で終わりなんだけどね
http://jp.php.net/manual/ja/reserved.variables.files.php
ファイルが送られなくても$_FILESは空にはならない
$hogehogeはそれが何なのかわからないのでなんとも
http://jp.php.net/manual/ja/language.operators.comparison.php
>>674
boolとstringとの比較なのでboolに変換され、true == true
>>675
numberとstringとの比較なので数値に変換され 0 == 0
>>677
nullとstringとの比較なので""に変換され "" == "null"
0683nobodyさん
2009/10/19(月) 14:40:52ID:???http://www.php.net/manual/ja/reserved.variables.argv.php
0685nobodyさん
2009/10/19(月) 17:55:34ID:???この$hogeの中身を1文字ずつずらしてbcdとしたいのですが1文字ずらすのはどうすればいいんでしょうか?
文字コード拾ってきて1個ずらすとかでしょうか?
0686nobodyさん
2009/10/19(月) 18:18:28ID:???$hoge = "abc";
foreach (str_split($hoge) as $eachVar ) {
print ( chr ( ord( $eachVar ) + 1 ) );
}
0687nobodyさん
2009/10/19(月) 19:08:07ID:???$hoge = "abc";
foreach (str_split($hoge) as $eachVar ) {
print (++$eachVar);
}
0689nobodyさん
2009/10/19(月) 20:11:26ID:???$hoge = "abc";
$hoge = ++$hoge;
echo $hoge // bcd;
0691nobodyさん
2009/10/19(月) 20:16:01ID:???$hoge = --$hoge;
$hoge = $hoge + 1;
echo $hoge // bcd;
0694nobodyさん
2009/10/19(月) 20:20:33ID:???0695nobodyさん
2009/10/19(月) 20:33:24ID:???自分自身を消した後に指定アドレスにlocationするという事をしたいです。
ore.php
include_once("hogehoge.php");
いろんな処理〜
exec("rm -rf ore.php");
header("Location: yahoo.co.jp");
このような事なのですがlocationする前に消しているせいか、locationしてくれません。(当たり前ですが)
かと言ってlocationを先にするとファイルが消されません。
ファイルを消してなおかつlocationするにはどうすればいいのでしょうか?
馬鹿な私に知恵をお貸し下さい。
0696nobodyさん
2009/10/19(月) 20:46:53ID:???ファイルが使用中だから消せないとか?分からんけど。
別な方法としてはGETやリファラでファイル名を渡して遷移先で消すとか。あるいは間に1ページ挟むとか。
0697nobodyさん
2009/10/19(月) 22:37:55ID:???なんでそういうことをしたいのか分からないので最適な方法はどれになるかわからんけど
消したいファイルのリストを生成しておき(exec使ってるらへんに)
次回アクセス時にリストにあった場合それらを消すというのはいかがだろう?
0698nobodyさん
2009/10/19(月) 23:32:01ID:???ID出さないスレで質問してるから後ろめたい悪意を背後から感じられる
0701nobodyさん
2009/10/20(火) 10:58:33ID:???0702nobodyさん
2009/10/20(火) 11:38:40ID:???unlinkだと中身あると面倒だしな
0703nobodyさん
2009/10/21(水) 10:49:18ID:???<?php
require_once("../MySmarty.class.php");
$o_smarty=new MySmarty();
$o_smarty->assign("data",array(1,2,3,4,5,6,7,8,9,10));
$o_smarty->display("fnc_capture.tpl");
?>
/* fnc_capture.tpl */
{capture name="exp"}
{include file="fnc_section2.tpl"}
{/capture}
{if $smarty.capture.exp|strip:""!=""} // ココの "" != "" の意味が分かりません
結果)<br />
{$smarty.capture.exp}
{/if}
/* fnc_section2.tpl */
{section name="loopName" loop=$data start="2" step="2" max="3"}
{$smarty.section.loopName.rownum}.
{$data[loopName]} <br />
{/section}
すみません、上の3つのファイルで、fnc_capture.tplの『"" != ""』の意味が分かりません
strip修飾子で繰り返された空白・改行・タブを、1つの空白または与えられた文字列によって置き換えたものが空白ではない???
って感じで理解が出来ません
簡単な事だとは思うのですが、どなたか教えて下さい
0704nobodyさん
2009/10/21(水) 12:01:18ID:???{if ($smarty.capture.exp|strip:"")!=("")}
ということではないかと
0705nobodyさん
2009/10/22(木) 10:03:21ID:h4MlR9Snしらねえなら今から調べて来い
12時に飯食うからそれまでにとっととggってこいや
時間がねえからさっさとしろよksども
0706nobodyさん
2009/10/22(木) 10:12:13ID:???0708nobodyさん
2009/10/22(木) 15:02:17ID:???使おうと思っているのですが、PEARでインスコ出来ません。
pear install --alldeps Spreadsheet_excel_writer
というコマンドをターミナルから実行するのですが、しばらくすると
No releases available for package "pear.php.net/Spreadsheet_excel_writer"
と出て終わってしまいます。
何か違う方法でインストールするのでしょうか?
0709nobodyさん
2009/10/22(木) 15:39:17ID:???0710703
2009/10/22(木) 15:55:36ID:???つまり、 ($smarty.capture.exp|strip:"") != ("")と言う事は、取得した配列から空白文字を取り除いたものが、
空文字でなければ{$smarty.capture.exp}を出力するという事でしょうか?
>>707
風邪でブッ倒れていました
体調悪いです・・・
0711708
2009/10/22(木) 16:14:33ID:???ping pear.php.net を行うと、pingが帰って来ないのでpear.php.netにアクセス出来ない感じです。
どうしたらいいんでしょうか・・・?
0712nobodyさん
2009/10/22(木) 16:21:16ID:???0713708
2009/10/22(木) 16:57:33ID:???pear.php.netはping帰ってこないのに、
pecl.php.netはpingが帰ってくる・・・。
当然 pear installは出来ないけど、pecl installはOK。
困ったぞ・・・
0714nobodyさん
2009/10/22(木) 23:29:06ID:???php.ini にその設定追加してあげれば動くはず
つーか、昔のExcelWriter/Reader 使っているサイト改修したときはそうした。
0715nobodyさん
2009/10/23(金) 02:43:19ID:???フォントの大きさを14より
大きくするにはどうしたらいいの?
0716708
2009/10/23(金) 08:58:03ID:???ローカルインストールして解決しました。
de.pear.php.netには接続出来るので、チャンネルのURLを変更しようとしても
pear.php.netに一旦アクセスしないといけないので変更出来ず・・・。
ずっとこのままだとちと面倒だなぁ・・・。
0717nobodyさん
2009/10/23(金) 10:51:39ID:???しっかりしたエディタをカスタマイズしろよ!!!!!!!!!!!!
0718nobodyさん
2009/10/23(金) 14:33:10ID:TDVXUmCb【PHPのバージョン】php5.21
【質問内容】
PHPで画像を表示させ、「何秒か経過したら他の画像を表示させる」
プログラムが作れません。グーグル先生は俺の日本語が下手すぎて回答内容
も僕を導いてはくれませんでした。そもそもhtmlに結果のみを表示するPHPで
質問内容が出来るものなのか?と正直自分は思っています。
出来るのでしたらどなたかやり方を教えてください。
よろしくお願いいたします。
0720nobodyさん
2009/10/23(金) 14:35:42ID:???JavaScriptスレにおいで
http://pc11.2ch.net/test/read.cgi/hp/1255424883/
0722nobodyさん
2009/10/23(金) 15:19:18ID:EL5fculY空白ができてしまいます。
PHPファイルの文字コードをANSIに変えてやると問題ないのですが...
現在は、UTF-8を使用していますが、やはりANSIに切り替えるしかないでしょうか?
アドバイスよろしくお願いします。
0723nobodyさん
2009/10/23(金) 15:20:38ID:???0724722
2009/10/23(金) 15:20:44ID:EL5fculYUTF-8のBOMをとってやればOKでした
0725nobodyさん
2009/10/23(金) 20:19:55ID:???そうなります。広告のポップやフォトフレームみたいに
「自動で画像が変える」為のプログラムがわかりません。
一度きりの表示はわかるんですが。
>>720
この問題はJavaScriptスレで聞けば良いということなのでしょうか?
0726nobodyさん
2009/10/23(金) 20:23:09ID:???JSでやったほうが楽だけど
PHPでやるならランダムで画像を出力するページをインラインフレームで表示してrefleshで定期的に更新させるとか
0728nobodyさん
2009/10/23(金) 20:26:10ID:???使い方としては、カウンタ本体のスクリプトファイルがあり、それを他ファイルからincludeして使うような形です。
何らかのエラーが出た場合、適当なエラーメッセージを吐いて終了(include元のページに制御を戻す)したいのですが、exitで終了してしまうと、その後、ページの内容が出力されません。
どうしたら良いのでしょうか。
ファイルの末尾にgotoする、というもの考えたのですが、もっとスマートが方法があれば教えてください。
0729728
2009/10/23(金) 20:32:27ID:???0730nobodyさん
2009/10/23(金) 20:34:31ID:???0731nobodyさん
2009/10/23(金) 20:36:38ID:???0732nobodyさん
2009/10/23(金) 21:29:52ID:???0733nobodyさん
2009/10/23(金) 22:01:50ID:EonHv/nO0734728
2009/10/23(金) 22:19:00ID:???他ファイルからカウンタ本体のスクリプトをincludeして使うようなカウンタだと説明したのですが、
この場合、変数や関数の名前が被ってしまう場合の対策というのは何か無いのでしょうか。
0735nobodyさん
2009/10/23(金) 22:27:03ID:???0736nobodyさん
2009/10/23(金) 23:00:02ID:4v117FRKDBに入っている画像データのバイナリから、
ファイルを介さず直接サムネールを生成する方法はないでしょうか。
画像そのものを出力したり、ファイルやURLからサムネールを
生成する方法はあちらこちらに書いてあるのですが、
バイナリを直接GDに食わせる方法の記述を見つけられません。
Perlでは簡単にできるのに、PHPではできないということなのでしょうか。
0737nobodyさん
2009/10/23(金) 23:04:28ID:???がそれじゃないの?
0738nobodyさん
2009/10/24(土) 00:46:14ID:???Content-Typeヘッダを、JpegならJpegの、GIFならGIFのものを与えて投げてあげればおk
0739nobodyさん
2009/10/24(土) 01:02:45ID:???これだとタイプミスしたときに見つけにくいよね。
class Foo {
}
$obj = new Foo();
$obj->x = 111;
$obj->y = 222;
var_export($obj); #=> Foo::__set_state(array('x' => 111, 'y' => 222,))
宣言してないインスタンス変数に代入しようとしたらエラーになるよう、設定できませんか?
0740nobodyさん
2009/10/24(土) 01:27:37ID:???0741nobodyさん
2009/10/24(土) 11:41:45ID:???どこかのサイトで数えてた気がするけど、見つからないので教えてください。
0742nobodyさん
2009/10/24(土) 11:57:31ID:???関数全部コピペしてプ改行のぞいてA-Zと_の27をひけばそんくらいなんじゃね
0743nobodyさん
2009/10/24(土) 12:03:33ID:???そこのページ、クラスも入ってる
>>741
http://php.net/manual/ja/indexes.php
このページの総ワード数5900単語の内の半分ぐらいだと思えばいい
0744nobodyさん
2009/10/24(土) 12:19:32ID:???>>743のから::か->を含む行をぬいてみた。
http://www.dotup.org/uploda/www.dotup.org296354.txt.html
4199個。
0745nobodyさん
2009/10/24(土) 12:20:51ID:???・・・
http://jp2.php.net/manual/ja/function.get-defined-functions.php
0746nobodyさん
2009/10/24(土) 12:23:16ID:???0748nobodyさん
2009/10/24(土) 12:25:27ID:???0749nobodyさん
2009/10/24(土) 12:26:44ID:???パスワードに使おう。
0750nobodyさん
2009/10/24(土) 12:27:20ID:???それなら継承とかを学んだ方がいいぞ
0751nobodyさん
2009/10/24(土) 12:32:43ID:???0754nobodyさん
2009/10/24(土) 13:49:14ID:???マジksだなwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
それだとオプションなしでのlinuxとエクステンションdllを読み込んでないでのwinで比べてもハッキリと違うだろがwwwwwwwwwwwww
その方法だとlinuxでないと使えない関数はwinでは取れねえだろwwwwwwwwwwwwwww
顔真っ赤でIDも真っ赤になって幸せだなwうぇwっうぇうぇwwwwwwwwww
0755nobodyさん
2009/10/24(土) 14:50:02ID:???0756nobodyさん
2009/10/24(土) 15:47:12ID:???草の数が物語ってる
0757nobodyさん
2009/10/24(土) 16:50:30ID:???0758nobodyさん
2009/10/24(土) 19:06:33ID:???すべてのクッキーを受け付けない
って設定にしてたら、
セッションクッキーも
はじかれるの?
0759nobodyさん
2009/10/24(土) 19:09:26ID:???ブラウザからは、クッキーのそれぞれの意味は判別不可能。
0760nobodyさん
2009/10/24(土) 19:15:14ID:???セッションクッキーを発行したとして、
それが、必ず受け入れられている、
って勝手に自分で前提を組んでしまって、
その前提でアプリを設計するのは
まずい、ってことだよね。
0761nobodyさん
2009/10/24(土) 19:22:28ID:???いう症状になるんだろうね。
心配ならチェックすればいいと思う。
なにかエラー出たら「クッキーonにしてね」って
表示するだけのサイトも多いけど。
0762nobodyさん
2009/10/24(土) 19:50:17ID:???「IDとパスワードをいれているのになぜかログインできない」
ってクレームになるわけね。
0763nobodyさん
2009/10/24(土) 20:34:31ID:???0766nobodyさん
2009/10/27(火) 16:36:12ID:???http://file.mootoko.blog.shinobi.jp/img20090813163317.jpg
0767nobodyさん
2009/10/27(火) 19:35:56ID:???0768nobodyさん
2009/10/28(水) 21:49:18ID:???アクセスやコメント書き込みが集中したときのための対策は何か必要?
大勢が閲覧したときに処理が重くならないようにするためには、サーバを2台にしたりするのかな。
それに、2人の人がまったく同時に書き込もうとしたらどうなるんだろ。
そもそも、どのくらい集中したら重くなるの?
1分間に100人とか?
詳しい人、どうぞ教えてください。
0769nobodyさん
2009/10/28(水) 22:11:54ID:???CLI版(コマンドライン版)で、
MS-DOSプロンプト上で動かすとき、
キーボードからの
入力を受け付けて、
文字列とか数値とかの
入力をキーボードから受け付けて、
変数で受け取るにはどうしたらいいの?
0770nobodyさん
2009/10/28(水) 22:13:46ID:???フォームで
<input type="text" name="aaa">
とかってやって、
$bbb = $_POST['aaa'];
とかってやればいいんだけど、
これをMS-DOS上で
CLI版でやるのはどうしたらいいの?
0771nobodyさん
2009/10/28(水) 22:16:23ID:???PHP: PHP をコマンドラインから使用する - Manual
http://php.net/manual/ja/features.commandline.php
引数でいいなら$argvで取得できる
0772nobodyさん
2009/10/28(水) 22:23:54ID:???キーボードから入力して
それを取得したい
0774nobodyさん
2009/10/28(水) 22:25:54ID:???じゃあこっちか
PHP: readline - Manual
http://www.php.net/manual/ja/function.readline.php
0775nobodyさん
2009/10/28(水) 22:29:15ID:???$line = trim(fgets(STDIN)); // STDIN から 1 行読み込む
print $line;
?>
なんかこれを実行すると
すげー改行されるんだけど、なんで?
0777nobodyさん
2009/10/28(水) 22:33:01ID:???int main(void)
{
int counter=0;
while(1){
int c = getchar();
if(c=='\n'){
counter++;
}
system("clear");
printf("counter:%d\n", counter);
}
return 0;
}
※windowsならsystem("cls");
ようはこれをやりたかった
だけなんだけど。
0778nobodyさん
2009/10/28(水) 22:39:15ID:???DOS窓で>>775を実行しても無駄な改行などはでてこないな
0779nobodyさん
2009/10/28(水) 22:39:44ID:???$c=0;
while(1){
$c = fgets(STDIN);
if($c=='\n'){
$c++;
}
system("cls");
print "counter:" . $c ."\n";
}
?>
だめだぁ〜
これだとなぜかうごかない〜
たすけてえろいひと〜
0780nobodyさん
2009/10/28(水) 22:52:54ID:???fgetsは改行を含む1行を読み込む関数だぞ
ttp://jp.php.net/manual/ja/function.fgets.php
<?php echo strlen(fgets(STDIN)) ?>
というスクリプトに対して、
qwertyと打って、リターンキー押すと、7が出力される
0781nobodyさん
2009/10/28(水) 23:23:12ID:???カウンターがカウントアップ
されないんです
0782nobodyさん
2009/10/28(水) 23:24:50ID:???$c=0;
while(1){
$a = fgets(STDIN);
$c++;
system("cls");
print "counter:" . $c ."\n";
}
?>
これでできた
だが一歩前進、といったところだ
なぜなら、カウントアップは
するようになったが、
clsが効いていない
0783nobodyさん
2009/10/28(水) 23:51:28ID:???もしかして、できないの?
command.comのオプションとして
実行する、ってのが
ググったらでてきたが、
ソースをこぴぺして試してみたが、
消えなかったよ
0784nobodyさん
2009/10/28(水) 23:52:17ID:???PHPではCLSはできない
(CとC++ではできる)
ので、代わりにニューラインを30行
出力すればよい
って書いてあるが、そうなの?
0785nobodyさん
2009/10/28(水) 23:54:42ID:???$c=0;
while(1){
$a = fgets(STDIN);
$c++;
for($b=0;$b<40;$b++){
print "\n";
}
print "counter:" . $c ."\n";
}
?>
たしかに、これで、希望の動作に
近い物はできた。
だが、しかし、何かが違う。
やはりCLSのほうがいい。
CLSはどうやったら使えるんだ?
0786nobodyさん
2009/10/29(木) 00:36:57ID:???0787nobodyさん
2009/10/29(木) 00:37:53ID:???$c=0;
while(1){
$a = fgets(STDIN);
$c++;
for($b=0;$b<40;$b++){
print "\n";
}
print "counter:" . $c ;
for($b=0;$b<24;$b++){
print "\n";
}
}
?>
これでかなり近いものができた
しかし画面のちらつきがある
CLSとまったく同等のものは
できないのか?
ていうか、なんでできないの?
0789nobodyさん
2009/10/29(木) 20:19:34ID:???0790nobodyさん
2009/10/29(木) 20:46:34ID:???コマンドプロンプトはcommand.comじゃないのにな。
0791nobodyさん
2009/10/29(木) 20:52:55ID:???0792nobodyさん
2009/11/03(火) 18:29:33ID:???0794708
2009/11/05(木) 00:26:10ID:???0795nobodyさん
2009/11/05(木) 01:07:53ID:???0796nobodyさん
2009/11/07(土) 01:42:56ID:???HTMLとCSSとJavaScriptとPHPとCGIとFlashとJavaとSQLと……
どんだけ覚えさすねん!!
おまいらどうやって覚えた?
0797nobodyさん
2009/11/07(土) 02:04:19ID:???0798nobodyさん
2009/11/07(土) 02:05:55ID:???0799nobodyさん
2009/11/07(土) 02:12:53ID:???0800nobodyさん
2009/11/07(土) 04:32:43ID:???PerlはCGIではない。
とか言うと「ホームページ」論争みたいな事になる。
きょうび、CGIと言われたらまずPerlの事だな。
そう思わないと話が通じない場合が多いし。
0803nobodyさん
2009/11/07(土) 11:34:20ID:???HTML>CSS>PHP>SQL>Javascript>Java>Flash かな。
今の新規プロジェクトでCGI使う物はかなり少ないし、
Flashはプログラマの仕事ってよりデザイナーの仕事って感じだし、
Javaはぜひ覚えておいた方がいい言語だけど、Webプログラムに特化したら意外と使わせてもらえないし、
Javascriptはググれば大抵どこかに欲しい物が落ちてるし、
SQLはWeb系で使えなかったら素人扱いにしかならないし、
PHPは出来るべきだし、
HTMLとCSSが出来ない人間にWebプログラマなんて出来ない。
後、Linuxも必要だよ
0805nobodyさん
2009/11/07(土) 17:00:29ID:???WEBプログラマならhttpが優先度高いだろう。
あとflex(adobeの方、字句解析じゃなくて)が要求される仕事が最近増えてきたよ。
>CGI使う物はかなり少ない
通常はmod_xxxってことか?w
0806nobodyさん
2009/11/07(土) 17:40:01ID:???0807nobodyさん
2009/11/07(土) 17:43:36ID:???0808nobodyさん
2009/11/07(土) 19:20:15ID:???0810nobodyさん
2009/11/07(土) 19:58:19ID:???0812nobodyさん
2009/11/07(土) 20:04:49ID:???「ホームページ」は自分がブラウザ開いた時に表示されるページだ。なんでもホームページ言うな!
今更そんな古い話持ち出すな、ホムペで通じるだろ老害!
みたいな話。
0813nobodyさん
2009/11/07(土) 20:05:02ID:???0814nobodyさん
2009/11/07(土) 20:06:05ID:???ウェブサーバなどから外部プログラムを呼び出す仕組みのことを指す。
そのため、この仕組みを用いて起動されるプログラム本体のことをCGIと呼称するのは誤りである。また、
1990年代後半のCGIを使ったプログラムはPerlが大部分であったため、「CGIとはPerlまたはそれに類する
特定の言語のことである」という認識も広く存在するが、こちらも誤りである。
0815nobodyさん
2009/11/07(土) 20:08:25ID:???「CGIに用いる言語はPerlに限らない」じゃ意味わからん。
「CGIを使ったプログラムはPerlに限らない」と書け。
というくだらん揚げ足取り?
0816nobodyさん
2009/11/07(土) 20:10:22ID:???0817nobodyさん
2009/11/07(土) 20:11:39ID:???ハァっていちいち言うタイプだろ
0818nobodyさん
2009/11/07(土) 20:12:20ID:???0819nobodyさん
2009/11/07(土) 20:13:24ID:???0820nobodyさん
2009/11/07(土) 20:14:09ID:???CGIはインターフェイスだから「CGIはPerlに限らない」はおかしい。
ではなく
CGIはインターフェイスだから「もはやCGIはPerlと同義語か?」はおかしい。
でしょ。
0821nobodyさん
2009/11/07(土) 20:14:50ID:???0822nobodyさん
2009/11/07(土) 20:16:51ID:???0824nobodyさん
2009/11/07(土) 20:20:00ID:???0828nobodyさん
2009/11/07(土) 20:26:07ID:???0829nobodyさん
2009/11/07(土) 21:35:06ID:???CGIはPerlだけじゃないよ、って解説してるページも多いし。
CGIのちゃんとした意味なんか知らなくても、応募フォームとか、会員管理するサイトとか作るのに支障はない。
けど、せっかく"prog"って付く板にいるんだから、RFC3875に目を通してみてはどうだろう?
The Common Gateway Interface (CGI) Version 1.1(日本語訳)
http://www.studyinghttp.net/rfc_ja/rfc3875
0830nobodyさん
2009/11/08(日) 11:11:34ID:???0831nobodyさん
2009/11/08(日) 11:12:38ID:???0832nobodyさん
2009/11/08(日) 11:17:10ID:???0833nobodyさん
2009/11/09(月) 13:44:13ID:???で、php.iniにてDSN宣言をしようと思うのですが、今までは
pdo.dsn.test="sqlite:c:\〜\Apache2_2\htdocs\samples\hoge.db"としていました
MySQLの場合は、
pdo.dsn.test="mysql:host=localhost;dbname=friend;charset=sjis"の他にどのように書けばいいのでしょうか?
SQLiteでいう、c:\〜\Apache2_2\htdocs\samples\hoge.dbの部分が分かりません
0834nobodyさん
2009/11/09(月) 13:45:35ID:???0835nobodyさん
2009/11/09(月) 14:13:07ID:???では、例えば>>833の例で言うと、以上のpdo.dsn.testの設定で終わりで、
$user = 'aaa';
$pass = '111';
とすると、 $dbh = new PDO('test', $user, $pass); でいいのでしょうか?
$dsn = 'mysql:host=localhost;dbname=friend'; として、
$dbh = new PDO($dsn, $user, $pass); とする方法は分かっているのですが、少しでも記入を減らす為にphp.iniでDSN宣言をしたいと思いまして
SQLite使ってて、その宣言方が身についているもので
0836nobodyさん
2009/11/09(月) 14:22:43ID:???0837nobodyさん
2009/11/09(月) 14:26:44ID:???申し訳ございません
それとは改行よりも上の部分の方でしょうか、それとも改行よりも下の部分の方でしょうか?
何度もごめんなさい
0838nobodyさん
2009/11/09(月) 14:27:23ID:???0840nobodyさん
2009/11/09(月) 15:09:08ID:???周りに何人かいるんだけど今はそれで大丈夫なの?
俺は今まで['erroe']の番号で0ならOKで3なら不完全で4ならアップされてないよ〜みたいな判断してて
かつerrorが0の場合にファイルサイズが0以上ならって感じで見てるんだけど、もしかして順番間違ってる?
0841nobodyさん
2009/11/09(月) 15:15:38ID:???実質的には変わらんかもしれないけど
0842nobodyさん
2009/11/09(月) 22:11:13ID:???PEAR::DBじゃなくてPDOを使うのが主流なんですか?
PDO2もあるとどこかで読みましたし…。
0843nobodyさん
2009/11/09(月) 22:19:39ID:???0844nobodyさん
2009/11/09(月) 22:35:52ID:???今時はpear/peclに依存しないのが主流じゃね?
0845nobodyさん
2009/11/09(月) 22:47:10ID:???作ろうとするものに、どんな道具を使えばいいのかを考えとけ。
0846842
2009/11/09(月) 23:03:10ID:???参考書に違いが載っています。
a)MySQL関数を使う方法、b)PEAR::DBモジュールを使う方法、c)PDOを使う方法
の3つの説明があり、それぞれの欠点は下のとおりでした。
a)MySQLでしか使えない
b)抽象化してセキュリティも配慮しているのでお勧めだが動作が遅め
c)ネイティブ実装で速度は申し分ないがサポートするRDBMSが少ない
PDOが使いやすそうですが、ウェブサーバを変えたときに対応してなかったら
コードの書き直しが必要になるので、迷っているところです。
>>844
PECLというのは初めて目にしましたが、Cで書かれていてPEARより高速なんですね。
でもPEARもPECLも避けたほうがいいということなら、選択肢から外そうと思います。
>>845
そうですね。
主流の方法を勉強しておいたほうが後々有利だと考えてしまいました。
0847nobodyさん
2009/11/09(月) 23:07:31ID:???いやPEARとPECLは使った方がいいよ
0848844
2009/11/09(月) 23:10:17ID:???PDOはpeclだよ
避けた方が良いとかはないよ
ただ今はフレームワークが流行で、フレームワークはpear/peclに依存してないのが多い。
学習中なら全部やっとけ、覚えるのに時間かからんから。
0849nobodyさん
2009/11/09(月) 23:21:29ID:???そうなんですか…。
確かにPEARとかはインターネットで調べても情報がいろいろ出てくるので
よく使われてるんだなぁという印象を受けてます。
>>848
PDOってPHP5.1.0以降は標準で入ってるんですね。
サポートするRDMBSが少ないということですが、今のところMySQLとSQLiteしか
使ってないので、問題ないかなと思い始めました。
やっぱり全部やっておくのが一番ですよね。
まずどれか一つを使ってみてから、他の方法もそれぞれ使えるようにしていこうと思います。
ありがとうございました!
0850nobodyさん
2009/11/10(火) 00:20:10ID:???$_FILES[xxx]['error']が0で$_FILES[xxx]['size']はアップロード済みのサイズになる。
これ、豆知識な。
0851nobodyさん
2009/11/10(火) 01:11:54ID:???0852nobodyさん
2009/11/10(火) 01:51:13ID:???0853nobodyさん
2009/11/10(火) 03:07:10ID:???0855nobodyさん
2009/11/10(火) 09:43:53ID:???0857nobodyさん
2009/11/10(火) 11:01:27ID:???0858nobodyさん
2009/11/10(火) 11:11:02ID:???0859nobodyさん
2009/11/10(火) 11:17:36ID:???まじかよ
俺も>>840みたいにerrorで判別してたからかな。
ちょうどswf扱ってたから、これ知らなかったら試験ではまったかもしれん。
0860nobodyさん
2009/11/10(火) 12:42:58ID:???0861nobodyさん
2009/11/10(火) 13:23:00ID:???0863nobodyさん
2009/11/12(木) 02:16:21ID:???0865nobodyさん
2009/11/12(木) 09:56:44ID:???CakePHP・smarty・zend framework の3強
次点で、codeigniter
今後どうなるかはわからないが、勉強会などの人数で判断するとCakePHPが一番盛り上がってる
0866nobodyさん
2009/11/12(木) 10:31:56ID:???smartysmartysmartysmartysmartysmartysmartysmartysmartysmartysmartysmartysmartysmarty
え?
0867nobodyさん
2009/11/12(木) 10:32:42ID:???smartyじゃなくてsymfonyだったw
ごめんね、最近smartyの仕事ばっかでむかついてたからだと思う
0868nobodyさん
2009/11/12(木) 10:55:56ID:???0869nobodyさん
2009/11/12(木) 11:12:56ID:???0870708
2009/11/12(木) 17:55:39ID:???0873nobodyさん
2009/11/13(金) 01:26:27ID:???サイドバーを表示する位置(右か左か)は、その位置によってHTMLを変えるんですよね?
それともCSSを工夫するだけでどっちにも表示できるんですか?
0874nobodyさん
2009/11/13(金) 02:16:57ID:???0875nobodyさん
2009/11/13(金) 02:22:31ID:???floatを持ってる本で調べたら
「ブログのマルチカラムデザインを作成する歳によく利用される手段です」と書かれていて
使い方の説明ページを見つけることができました!
ありがとうございました。
0877nobodyさん
2009/11/13(金) 22:51:40ID:???ト、;:;:;:丶、:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:|
{::ト、:;:;:;:;:;:` '' ー―――;:;: '|
l::l . 丶、:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:|
',:i r- 、、` ' ―――一'' " .|
|| ヾ三) ,ィ三ミヲ | Malo とは
lj ゙' ― '′ .|
| , --:.:、:.. .:.:.:.:..:.:... | 何じゃ
| fr‐t-、ヽ. .:.:. '",二ニ、、|
l 丶‐三' ノ :ヾイ、弋::ノ|
', ゙'ー-‐' イ: :..丶三-‐'"|
', /.: . |
', ,ィ/ : .:'^ヽ、.. |
',.:/.:.,{、: .: ,ノ 丶::. |
ヽ .i:, ヽ、__, イ _`゙.|
,.ゝ、ト=、ェェェェ=テアヽ|
_r/ /:.`i ヽヾェェシ/ |
_,,. -‐ '' " ´l. { {:.:.:.:', `.':==:'." |
一 '' "´ ',ヽ丶:.:.:ヽ、 ⌒ ,|
ヽ丶丶、:.:.ゝ、 ___,. イ |
`丶、 ``"二ユ、_,.____|
0878nobodyさん
2009/11/13(金) 23:24:30ID:???0879nobodyさん
2009/11/13(金) 23:50:36ID:???のファイルの文字を追加したく下記を作成しました。
<?php
exec("echo 'test' >> /tmp/test");
?>
これでは権限が足りずに追記できないためsudoで
apache ALL=(ALL) NOPASSWD: ALL
を設定しましたがダメでした。
このファイルにPHPから追記する方法というのは無いのでしょうか?
初歩的だと思うのですが解決策あればヒントもらえないでしょうか。
0880nobodyさん
2009/11/13(金) 23:53:11ID:???0882nobodyさん
2009/11/14(土) 01:13:38ID:???やっぱオナヌーしよ、と気分が変わったか
どっちかだな
0883nobodyさん
2009/11/14(土) 02:10:55ID:???データベースに入っているMD5のパスワードと照合できるとのことですが、
認証のためにフォームに入力して送信するパスワードは
平文で流れるんですか?
自分でJavaScriptでMD5化してから送信したほうがいいということでしょうか?
ご教示いただければ幸いです。
よろしくお願いします。
0884nobodyさん
2009/11/14(土) 02:49:47ID:IZ6ITEcO0885nobodyさん
2009/11/14(土) 02:51:38ID:???-rw-r--r--にapacheが追記って可能なのか?
0886nobodyさん
2009/11/14(土) 17:53:48ID:???ありがとうございます。
ハッシュ化せずに送信するのは一般的なのでしょうか?
SSLが安全だと思って導入方法を調べてもよくわからなかったので
SSLを使わない方法を検討しているところです。
0887nobodyさん
2009/11/14(土) 19:53:13ID:???生パスワードでもハッシュでも、送信した情報を途中で
キャプチャされる事を考えたら、安全性はどっちも同じ。
ハッシュ値で比較するのは、主にデータベースの中身
が漏れた時の対策。
生パスワードで管理すると、情報が漏れたらログイン
し放題だけど、ハッシュで比較するなら危険性は低い。
その意味で言うと、ハッシュ値を送信して比較するのは、
生パスワード同士で比較してるのと一緒。
0889nobodyさん
2009/11/14(土) 21:27:01ID:???0890nobodyさん
2009/11/14(土) 22:43:04ID:???アドバイスありがとうございます。
調べてみましたが、Basic認証でもパスワードは平文で送られるんじゃないでしょうか。
Digest認証というのも調べましたが、どちらもダイアログボックスが出てきてしまうようですね。
Facebookやmixiのログインページのように、ダイアログボックスが出ない方法がいいなと思ってます。
現在、MD5化したパスワードをデータベースに保存し、ブラウザから送信するときも
MD5にして送るようにしていますが、送信データもDBもMD5だと良くないということが
>>887さんのご説明でわかりました。
結局どうしたら良いのでしょうか。
0891nobodyさん
2009/11/14(土) 23:03:42ID:???1つ1つ探して行くしかないのでしょうか・・・?
大変じゃないですか?
0894nobodyさん
2009/11/15(日) 09:16:48ID:???それ使えば出来るんじゃないかと適当にレスをつけてみる
0899nobodyさん
2009/11/15(日) 16:58:09ID:???主語が「同じ言葉を真似てる人」だから文末の「光景」は不自然
日本語もまともに使えない人ってリアルで学歴が低いから言い返す力がない人によく見られる光景?w
0901nobodyさん
2009/11/15(日) 21:15:02ID:???0902nobodyさん
2009/11/15(日) 22:31:53ID:???0903nobodyさん
2009/11/15(日) 23:25:27ID:???もしくは-rw-r--r--を-rw-rw-rw-とかにして書き込めるようにするとか。
一番いいのはrootで動く別のものに渡してやるとかじゃないかね。
こっちはもともとroot権限ないと作れないけどどれもあんまりお勧めできんな。
0904nobodyさん
2009/11/15(日) 23:40:52ID:???0905nobodyさん
2009/11/16(月) 00:02:55ID:???0907nobodyさん
2009/11/16(月) 00:58:35ID:???どうも失礼
0908nobodyさん
2009/11/16(月) 10:53:06ID:???html、CSS、JavaScriptにあるような、構文のエラーをチェックしてくれるサイトはないのでしょうか?
後は、FireBugのようにバグを教えてくれる機能のあるソフトとか。
もしあるのであれば教えていただけませんか?
0909nobodyさん
2009/11/16(月) 12:14:20ID:???0910nobodyさん
2009/11/16(月) 12:41:25ID:???構文チェックはphp -lでできる。
あとはerror_log等を見る。
デバッグという事なら、PDTなどのIDEを使い、ZendDebugger/xdebugなどで
リモートデバッグが行える。
0911nobodyさん
2009/11/16(月) 13:18:43ID:???0912nobodyさん
2009/11/16(月) 13:25:41ID:???すみません、php -l って、マイナスと小文字のエルですか?
どのように使うのでしょうか?
ググってみたのですが、また、マニュアルで検索してみたのですが、出てきませんでした
0913nobodyさん
2009/11/16(月) 13:31:41ID:???http://www.php.net/manual/ja/features.commandline.php
0914nobodyさん
2009/11/16(月) 13:34:58ID:???http://www.google.co.jp/search?q=%22php+-l%22
0915nobodyさん
2009/11/16(月) 14:13:08ID:???ありがとうございます
>>914
ダブルクォーテーションを使って検索するのですね・・・
知りませんでした
そのまま検索したら、PHP自体のことしか出てこなくて・・・
ありがとうございます
0916nobodyさん
2009/11/16(月) 16:16:17ID:???これだけでいいなら誰も被害に遭わないとですよね
0917916
2009/11/16(月) 16:16:48ID:???0918nobodyさん
2009/11/16(月) 17:23:01ID:???レコード数の少ないテーブルからSELECTで抽出するようなときも
プリペアドステートメントとかで対策する必要があるの?
危険なのは
UPDATE、INSERT、REPLACEとかでデータベースを書き換えるときや
認証でパスワードを扱うときぐらいかなって思ったんだけど。
0919nobodyさん
2009/11/16(月) 17:28:29ID:???0920nobodyさん
2009/11/16(月) 17:32:13ID:???「select * from hoge ; delete 〜」のようにセミコロンで区切られて
複数クエリ実行されたらどうするの?
0922nobodyさん
2009/11/16(月) 17:44:09ID:???例えが悪かったな、すまん。
wikiのSQLインジェクションに書いてある例を使わせて貰うと
SELECT * FROM users WHERE name = '(入力値)';
というSQLがあったときに、入力値に "' OR 't' = 't" と入れると
SELECT * FROM users WHERE name = '' OR 't' = 't';
↑
こうなるとある。この場合は全件選択されるだけだが
ここで入力値を "' OR 't' = 't' ; delete from TABLE名; --"
とすると、delete文が実行されてしまう。
0923nobodyさん
2009/11/16(月) 17:50:37ID:???PHP、PEAR、Smartyと学習してきましたが、フレームワークだけは何をやればいいのか分からなくて・・・
そもそも、どういうところで使用するのですか?
0924nobodyさん
2009/11/16(月) 18:41:46ID:???0925918
2009/11/16(月) 20:49:30ID:???つまり、SQL文にユーザの入力値が含まれてるような場合が危険ってことだよね?
入力値より前の部分がどんなSQL文になってるか、ユーザに知られちゃうことってあるの?
それとも当てずっぽうで攻撃する人がいるってこと?
0926nobodyさん
2009/11/16(月) 20:51:21ID:???0927nobodyさん
2009/11/16(月) 20:53:58ID:???それっぽいのをブルートフォースであたれば寝て起きたらいくつかわかってるかもしれんな
SQL文の命令自体はもうきまってるわけだし。
0928nobodyさん
2009/11/16(月) 21:12:08ID:???PDOでプレースホルダを使ってるけど、
$q = $db->prepare("SELECT * FROM users WHERE name=:username);
$q->bindparam(":username", $_POST['username']);
$q->execute();
こんなんじゃダメ??
$q->bindparam(":username", mysql_real_escape_string($_POST['username']));
のようにエスケープ関数を使わなきゃダメなのかな?
0929nobodyさん
2009/11/16(月) 21:23:30ID:???0931nobodyさん
2009/11/16(月) 21:40:14ID:???0935nobodyさん
2009/11/16(月) 23:04:29ID:???"。" ごとに配列に入れたいのですがうまくいきません。
"、" で試したらうまくいったのですが、どうしてでしょうか。
$tags = get_meta_tags('http://sample.com');
$des = $tags['description'];
$arry = explode('。', $des);
0936nobodyさん
2009/11/17(火) 00:03:52ID:???0937nobodyさん
2009/11/17(火) 11:04:57ID:???クラスは何年も前にC++でちょっと使った経験しかないので
扱い方が正しいのか不安です。
$p = new pager(引数いろいろ);
echo $p->linkhtml(),
こうすると他ページへのリンクが出て、そのリンクをクリックすると
「?page=10」のようなクエリ文字付きで同じスクリプトに飛びます。
そうすると、リンクをクリックする度に $p = new pager(...); で何度も
インスタンス化が繰り返されることになりますが、問題ないでしょうか?
また、C++ではオブジェクトが不要になったら自分で破棄していた
記憶がありますが、PHPではガベージコレクターが自動的に
破棄してくれるのでしょうか。
0940935
2009/11/17(火) 11:55:07ID:???テキストエディタでphpのソースファイルを開いてみたら、
エンコードがなんとかかんとかって言われて
なぜか、"。"の部分が "B" になってました。
"B" を "。" に直したら解決しました。
0942nobodyさん
2009/11/17(火) 12:20:57ID:???やっぱりそうなんですか。
リンクを押して飛ぶときにスクリプトが終了してオブジェクトが破棄されて
リンク先で新たにオブジェクトが作成される
と考えれば、問題ないんでしょうか‥。
0943nobodyさん
2009/11/17(火) 12:28:07ID:???0944nobodyさん
2009/11/17(火) 12:34:06ID:???0945nobodyさん
2009/11/17(火) 12:40:58ID:???ありがとうございます。
安心しました。
>>944
クライアント−サーバ間でやり取りが終わった時ですかね。
失礼しました。
0946nobodyさん
2009/11/17(火) 20:55:41ID:???本屋でざっと読んだくらいでは理解が出来ませんでした
0947nobodyさん
2009/11/17(火) 20:57:05ID:???bake=cakePHP初心者=cakePHPを覚える者=cakePHPも使えないバカ
0948nobodyさん
2009/11/17(火) 21:42:08ID:???0949nobodyさん
2009/11/17(火) 21:49:08ID:???bakeをcakeにするんだろ
他の人が(スクリプトが勝手に)土台を作ってくれると思えばよい
あとは生クリーム塗ってデコレーションは自分でしてねと
0950nobodyさん
2009/11/17(火) 21:55:50ID:???どういうものかもわかってないんだけど。
いまテキストエディタでベタ打ちしてるんだけど、cakephpだと何か楽になるの?
今までに作ったwebアプリをcakephpに対応させる(?)ことは可能なのかな。
0951nobodyさん
2009/11/17(火) 21:56:34ID:???0952nobodyさん
2009/11/17(火) 22:08:27ID:???> フレームワークは一言で表すと、「アプリケーションの土台」と言えます。データベースへの接続、
> 認証機構の実装、データの登録・編集・削除ページの作成など、どんなWebアプリケーションにも
> 必須の機能があります。これらの開発を毎回1から行うことは非常に効率が悪いことです。
> フレームワークはこれらの機能を一つにまとめ、その組み合わせ方も提供します。言わば、コードの
> 規格書とも言えるでしょう。
ttp://www.phppro.jp/article/framework/framework.php
DBへの接続や認証の実装よりも、「コードの規格書」を新たに覚えるほうが面倒なんだけどなぁ。
個人で自分用のものを開発してるだけだったらフレームワークとか使わなくてもいいかな。
0953nobodyさん
2009/11/17(火) 22:15:59ID:???0954nobodyさん
2009/11/17(火) 22:24:03ID:???たぶん近いうちに本を読んでみる。
0956nobodyさん
2009/11/17(火) 23:57:53ID:???0957nobodyさん
2009/11/18(水) 00:43:46ID:???俺はExampleがほしいんだよ
0958nobodyさん
2009/11/18(水) 00:44:25ID:???$url=$_GET['url'];
$tug = "<img src=\"".$url."\" width=\"300\" height=\"300\">";
$tug_array=array();
array_unshift($tug_array,$tug);
どこが悪いんですかね?それともarray_unshift($tug_array,$tug);なんて不可なんでしょうか?
0959nobodyさん
2009/11/18(水) 00:56:01ID:???どこも悪くないよ
そのあとにvar_dump($tug_array);って書いてみるといいよ
あと、特に意図がないならarray_unshiftなんて使わなくても配列の追加は
$tug_array[] = $tug;
とか
$tug_array[] = "<img src=\"".$url."\" width=\"300\" height=\"300\">";
なんかでできるよ
0960nobodyさん
2009/11/18(水) 01:02:21ID:???0962nobodyさん
2009/11/18(水) 02:38:42ID:???0964nobodyさん
2009/11/18(水) 13:13:19ID:???借りてたサーバーが閉鎖するから他のサーバーに移転作業中で
設置して何回かのエラーの後、前の通り動かすことはできたんだけど
PHPから生成されるファイルの所有者が「www」になって
インターネット上から直接ファイルにアクセスすると丸見えなんだけど、これをどうにか自分の権限にすることできない?
前のサーバーではどこ変更することなく自分のIDになってた。
変える部分はここら辺かなとはおもう
/*-- メインファイル作成 --*/
function make_file1($line, $num) {
$file = LOGDIR . $num . ".dat";
$fp = fopen($file, "w");
set_file_buffer($fp, 0);
flock($fp, LOCK_EX);
fputs($fp, $line);
fclose($fp);
chmod($file, 0666);
}
0965nobodyさん
2009/11/18(水) 13:14:30ID:???同時に生成されるこっちのファイルはちゃんと自分のIDになってる
/*-- カウントファイル作成 --*/
function make_file2($num) {
$file = LOGDIR . $num . "c.dat";
$line = "0<><>";
$fp = fopen($file, "w");
set_file_buffer($fp, 0);
flock($fp, LOCK_EX);
fputs($fp, $line);
fclose($fp);
# chmod($file, 0666);
}
PHPはレッツPHPのI-BOARDの改造版つかってます。
よろしくおねがいします。
0966nobodyさん
2009/11/18(水) 13:40:45ID:???0967nobodyさん
2009/11/18(水) 14:59:10ID:???$line = "0<><>";
カウントファイルのchmodはエラーが出たので自分でコメントアウトした
0968nobodyさん
2009/11/18(水) 15:02:00ID:???0969nobodyさん
2009/11/18(水) 16:29:27ID:???0970nobodyさん
2009/11/19(木) 14:45:12ID:q1nxRQc4$hoge と $hoge1 に 4989 という数値を入れたい時に
$hoge = "4989";
$hoge1 = "4989";
としないといけないのですが複数を一気に入れることが出来れば教えてください。
0974nobodyさん
2009/11/19(木) 15:13:07ID:???0975nobodyさん
2009/11/19(木) 15:32:31ID:???0976nobodyさん
2009/11/19(木) 15:32:39ID:???あと、↓でも解説されてる。
http://php.net/manual/ja/language.expressions.php
>'$b = ($a = 5)' のように書くことは、 '$a = 5; $b = 5;' と書くのと 同様なのです。(セミコロンは、文の終わりを示します。)
>代入は、右から左へ実行されるため、'$b = $a = 5' と書くことも 可能です。
0978nobodyさん
2009/11/19(木) 16:24:29ID:nc7ESJS70979nobodyさん
2009/11/19(木) 16:59:07ID:???0980nobodyさん
2009/11/19(木) 17:07:26ID:???0982nobodyさん
2009/11/19(木) 18:44:46ID:???0984nobodyさん
2009/11/20(金) 10:45:33ID:???で実行すると権限がないと怒られます。
sudoで権限の設定はしたのでsudoでやれば出来ると思いますが、
これをsudoでする場合はどう記述すればいいのでしょうか?
0985nobodyさん
2009/11/20(金) 11:10:47ID:???0986nobodyさん
2009/11/20(金) 11:14:04ID:???0987984
2009/11/20(金) 11:47:31ID:???php分離してsudoからphp別ファイルで叩いて回避した
syslogも考えて見ます。
ありがとうございます。
0988nobodyさん
2009/11/20(金) 11:59:12ID:???0989nobodyさん
2009/11/20(金) 12:13:31ID:???【PHP】ID出さんでも質問OKなスレ【初心者可】3
ID出さなくても質問OKなスレです
初心者もいるので、そういう方には親切に答えてあげましょう
荒らしやあまりにも言葉使いの悪い人間は無視の方向で
PHP以外にもPEAR等のライブラリ、Smarty等のテンプレート、フレームワーク、PHPがらみのSQL等も可としますが、出来るだけ専門のスレで質問された方がいいと思います
また、出来るだけOS、PHPやApache等のバージョンも書いた方がいいと思います
◆前スレ
【PHP】ID出さんでも質問OKなスレ【初心者歓迎】2
http://pc11.2ch.net/test/read.cgi/php/1252590753/
その他、諸情報は >>2-10 辺りにて
0990nobodyさん
2009/11/20(金) 13:02:55ID:???0991nobodyさん
2009/11/20(金) 13:38:00ID:???0992nobodyさん
2009/11/20(金) 13:39:37ID:???0993nobodyさん
2009/11/20(金) 13:42:16ID:???どっちも見ていてちょっと気質が違うから
0994nobodyさん
2009/11/20(金) 13:43:20ID:???0998nobodyさん
2009/11/20(金) 14:07:08ID:???0999nobodyさん
2009/11/20(金) 14:08:24ID:???1000nobodyさん
2009/11/20(金) 14:15:38ID:???10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。