【PHP】下らねぇ質問はID出して書き込みやがれ 110
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/08/30(火) 17:23:31.78ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 109
http://hibari.2ch.net/test/read.cgi/php/1311803617/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0489nobodyさん
2011/09/11(日) 14:59:55.23ID:???人を無知呼ばわりする前に
コミュニティに参加しろよ
0492nobodyさん
2011/09/11(日) 16:42:50.58ID:5ZyXBnROなんか2chのおすすめはありますか?
0495nobodyさん
2011/09/11(日) 17:05:58.94ID:5ZyXBnROとりあえず、金がないのでFC2のライトプラン月250円
にしようと考えてまがBig-severの方がいいのでしょうか?
0496nobodyさん
2011/09/11(日) 17:28:02.91ID:???CMSのコミュ見てっと、サーバー借りたけど、○○CMSがうまく動かせません、っつよーな質問が結構ある。
0497nobodyさん
2011/09/11(日) 17:34:56.65ID:TcayCkxLif ($result->num_rows > 0) {
$row = $result->fetch_array(MYSQLI_NUM);
$result->close();
}
}
この文の一行目で
Fatal error: Call to a member function query() on a non-object in
というエラーが出ます。
mysqlにSELECT title FROM tbReview WHERE seq = 903;などで
打ち込むとちゃんと値が取れるのですが、
エラーはどうすれば解消されるでしょうか?
0498nobodyさん
2011/09/11(日) 17:47:04.80ID:???0499nobodyさん
2011/09/11(日) 17:50:08.82ID:???旧携帯のdocomo用は下のような感じで出力しています。
$agent = $_SERVER['HTTP_USER_AGENT'];
if (preg_match("/^DoCoMo/i", $agent)) {
srand((double)microtime()*1000000);
$ad_list1 = file("ファイル);
$ad_key1 = array_rand($ad_list1, 2);
$ad1 = $ad_list1[$ad_key1[0]];
// 表示
echo $ad1;
>if (preg_match("/^DoCoMo/i", $agent)) {
ここのユーザーエージェント部分を変えればいいだけなのかと
単純にif (preg_match("iPhone|Android|iPod", $agent)) { と入力しても出力されませんでした。
わかる方お願いします。
0500nobodyさん
2011/09/11(日) 18:01:06.48ID:???にすればいいんじゃない?
0502nobodyさん
2011/09/11(日) 18:10:38.23ID:rcvtLkju$mysqli変数がnullになってるよん。
queryメソッドを呼び出す前を辿っていって、ちゃんと$mysqli変数にオブジェクトがセットされているかを確認すべし。
0503nobodyさん
2011/09/11(日) 18:13:45.68ID:???>>500さんが指摘してる様に、パターンの構文がおかしい。
ここ読んでみて↓
正規表現 (Perl 互換) 導入
ttp://www.php.net/manual/ja/intro.pcre.php
正規表現 (Perl 互換) 例
ttp://www.php.net/manual/ja/pcre.examples.php
0504nobodyさん
2011/09/11(日) 18:15:33.75ID:rcvtLkjuphp5.4からだけど、trait(scalaのぱくりかな?)が使えるようになる。
ようするにmix-in。
まぁそれがいいか悪いかは別として、便利だから使うと思う。
0507nobodyさん
2011/09/11(日) 20:06:35.97ID:H0qzNaRx0509nobodyさん
2011/09/11(日) 20:33:21.53ID:???0510nobodyさん
2011/09/11(日) 20:39:54.30ID:???$b=simplexml_load_file('site2');
0511nobodyさん
2011/09/11(日) 20:43:49.71ID:vvss0p+f【PHPのバージョン】5.2.17
【連携ソフトウェア】MySQL
【質問内容】
実行に15分くらいかかるphpを一日一回定期実行させたいのですがどのような方法がいいでしょうか
・phpファイルはさくらのレンサバにある
・cron使ったら当然のごとくkillされた
・ブラウザ上でなら普通に完走する
・使用PCはOS X Lion
あと,別の軽いphpもcronで動かしてみたのですが稀にkillされます
こっちもいい方法ないでしょうか?
よろしくお願いします
0512nobodyさん
2011/09/11(日) 20:50:54.33ID:???0513nobodyさん
2011/09/11(日) 22:14:07.35ID:???>・cron使ったら当然のごとくkillされた
>あと,別の軽いphpもcronで動かしてみたのですが稀にkillされます
さくらでcronでkillされるなんて聞いたことないな。
killされたことをどうやって判断してるの?
0514nobodyさん
2011/09/11(日) 22:18:00.84ID:vvss0p+fkillされる度にCron Daemonさんからメールが来るよ
どっかに1分以上動かしてたら怒るよって書いてあったと思う
0515nobodyさん
2011/09/11(日) 22:24:17.53ID:???金払って第三者に毎日アクセスするように頼む
後者がおすすめです
0516nobodyさん
2011/09/11(日) 22:53:58.04ID:???0517nobodyさん
2011/09/11(日) 22:56:48.94ID:???0519nobodyさん
2011/09/11(日) 23:24:30.70ID:fFrzDoDT--with-intl=shared
としてもそれらしきshared objectが作られないのですが
intlはsharedにすることはできないのでしょうか?
0520nobodyさん
2011/09/11(日) 23:31:32.04ID:???file_get_contentsとか使ってURL経由でキックすれば
ブラウザ出動作させたときと同じ条件にならないかな
0521nobodyさん
2011/09/11(日) 23:33:23.48ID:???file_get_contentsが終了するまで結局cronのプログラムが実行されたままにならないか?
0522nobodyさん
2011/09/12(月) 00:05:10.62ID:???あーそうか
結局は1分縛りの無い別サーバから叩かないといけないか
デスクトップやAndroidから叩くよりはいいと思うけど、いまいちやね。
0523nobodyさん
2011/09/12(月) 00:52:23.33ID:???今は月500円以下でroot権限もてるVPSが
借りられるんだからさ。
0524nobodyさん
2011/09/12(月) 01:12:55.81ID:???現在のサーバーの制約内でどう解決するかって話じゃないのか。
0525nobodyさん
2011/09/12(月) 01:22:30.85ID:???0526nobodyさん
2011/09/12(月) 01:37:02.27ID:???0527526
2011/09/12(月) 01:54:51.04ID:uM4EX7+a0528nobodyさん
2011/09/12(月) 02:27:45.01ID:???0529519
2011/09/12(月) 04:19:30.32ID:???てゆうかpeclでインストールした方がはやかった
ピックルピックル
0530511
2011/09/12(月) 08:50:24.72ID:kBzzbu41root権付きVPSに乗り変えるのも面白そう。他にも出来ること増えるし
サンクス
0531nobodyさん
2011/09/12(月) 11:10:47.12ID:???0532nobodyさん
2011/09/12(月) 15:02:49.71ID:WoFdKos4$hoge ="abcdefgijk"
を正規表現で"de"がマッチしたら"<br>「defg」が含まれています"を追加して
$hoge ="abcdefg"."<br>「defg」が含まれています"
と$hogeに追加されるようにしたいのですがいい方法とかありますでしょうか?
0534nobodyさん
2011/09/12(月) 15:05:23.41ID:???検索して見つかった位置から検索文字数+2文字分とりだすのと
先頭からその位置まで取り出せればいいんじゃない?
0535nobodyさん
2011/09/12(月) 15:30:27.25ID:WoFdKos4検索して、マッチしたらマッチした部分を取り出すというのがどうも見当たらなくて
それにreplaceじゃ置き換えてしまうので、追加するという形にはできませんし、もう何が何やら
0536nobodyさん
2011/09/12(月) 15:37:03.67ID:???http://php.net/manual/ja/function.preg-match.php
matches辺り
例題4のようにprint_rしてみればなんとなくわかるんでない
0537nobodyさん
2011/09/12(月) 15:37:13.40ID:???$hoge ="abcdefgijk";
if(preg_match("/(de)/",$hoge,$match)){
$hoge .= "<br>「".$match[1]."」が含まれています";
}
0538nobodyさん
2011/09/12(月) 15:39:02.18ID:WoFdKos4ありがとうございます
$matchに格納するやり方もあるんですね、助かりました!
0539nobodyさん
2011/09/12(月) 15:42:09.04ID:???0540nobodyさん
2011/09/12(月) 15:54:00.55ID:+PNH4AO00542539
2011/09/12(月) 16:15:12.18ID:+PNH4AO0その先の話です
サイト訪問者がASPからもらったURLを踏んで広告主のサイトに行って登録した場合、
広告主からASPになにかデータを送って成果が反映されるのか
ASP側が追跡プログラムでも作って登録されたのを確認するのかってのがしりたいです
0543540
2011/09/12(月) 16:15:52.24ID:+PNH4AO0ミス540だった
0544nobodyさん
2011/09/12(月) 16:29:19.06ID:???当然、広告主しかわからないので広告主が承認/非承認を選択する
悪質な競馬とかの広告主は全部非承認にしたりする問題もあるけどねw
0546540
2011/09/12(月) 17:05:13.75ID:+PNH4AO0ありがとうございました
0547nobodyさん
2011/09/12(月) 17:10:38.77ID:???0551nobodyさん
2011/09/12(月) 17:53:38.45ID:???0552nobodyさん
2011/09/12(月) 18:59:43.32ID:pRrcUQ0Ypublic_html(公開ディレクトリ)よりも上位のディレクトリの直下に置こうとしていて、
PHP側でそのディレクトリがない場合はmkdirするようなコードを書いたら
Warning: mkdir() [function.mkdir]: Permission denied in /path/file.php on line N
と言われました
どうすればいいですか?普通はどうするものですか?
あらかじめ作っておくものですか?PHP側で作ることは無理ですか?
https://forums.ubuntulinux.jp/viewtopic.php?id=5744
の回答者が言っているような
> 遅い返信ですが、ユーザディレクトリ以下に何かファイルを書き出すとかしたい場合には apache2-suexec-custom パッケージを入れて mod_suexec を有効にしないとダメかと。
ですか?
0553nobodyさん
2011/09/12(月) 21:55:18.97ID:???とりあえず、そのPHPファイルを置いているディレクトリにさえPHPからファイルを作れないのか?を調べてみると何か分かるかもしれん。
そのディレクトリには書けるってーのなら、最悪mod_rewriteでそのディレクトリを隠しちまえば要件は足りるし。
0554nobodyさん
2011/09/12(月) 21:59:10.02ID:???if(date("i") <= 2){
$response = $eb->postRandom("data.txt");
}
//以下は毎時58分〜0分に実行(3分未満の範囲で早い場合)
if(date("i") == 0 || date("i") == 59) 0 || date("i") == 58){
$response = $eb->postRandom("data.txt");
}
これを一つの文でまとめるにはどうしたらいいんでしょうか?
0555554
2011/09/12(月) 22:07:49.42ID:uM4EX7+a0556nobodyさん
2011/09/12(月) 22:16:22.58ID:???0557nobodyさん
2011/09/12(月) 22:17:25.76ID:uM4EX7+a0558nobodyさん
2011/09/12(月) 22:31:22.39ID:???そもそもディレクトリのアクセス権がないとかないよね
chmod 777でもダメかチェックな
あとは、ルートディレクトリ以下じゃないと、ディレクトリ生成できない設定になっているサーバもあるので、そのときはphp.iniとかいじって設定帰る必要がある
よくあるところでは、Plesk使ったサーバだとデフォルトでこの設定
php.iniいじる権限が無いなら、553のいうとおり、ディレクトリ毎に設定書いて対応
0559552
2011/09/12(月) 23:21:02.69ID:???レスどうもありがとうございます
「/public_html/foo.php」から
「/」に「bar」ディレクトリを作ろうとしています
「/bar」みたいな感じです
自分で「/bar」ディレクトリを作って適切なパーミッションにすれば
そこにphp側からファイルを作成できることは確認しました
「/public_html」以下ならPHP側からディレクトリの作成もできます
設定を変更するphp.iniのディレクティブはなんて名前でしょうか
0560552
2011/09/12(月) 23:35:26.33ID:???0561nobodyさん
2011/09/13(火) 00:05:09.40ID:BoQFAc7Cこの記事の、
> やはり、ソースコードはEUC-JPかUTF-8で記述すべきだったと思う。
という部分ですが、
これはエディタで保存する時に指定する文字コードをEUC-JPかUTF-8にすべきということでしょうか?
0563nobodyさん
2011/09/13(火) 03:46:26.75ID:???「/」に「bar」ディレクトリを作るってことは、「/」ディレクトリにPHPからの書き込み権限がないと駄目ってことですよ。
自分で「/bar」ディレクトリを作る場合は自分のログイン権限で作るわけだけど、
PHPから作る場合はnobody(other)とかに書き込み権限を付与しとかないといかんね。
0564nobodyさん
2011/09/13(火) 09:03:56.54ID:OYhF5wpw$aに結果を代入するようにしているとして、Aさんが結果を出力しようとした寸前にBさんの計算結果
が$aに代入され、Aさんの結果がBさんの結果になるのでしょうか?
$aはAさんもBさんも同じアドレス空間?の$aを使っているのでしょうか?
0565nobodyさん
2011/09/13(火) 09:23:56.11ID:???そんなことが起こったらまぁ大変。
銀行の口座取引もオンラインゲームも使えませんね。
PHP以前にコンピュータのプロセスについて勉強しましょう。
0566nobodyさん
2011/09/13(火) 10:07:51.52ID:???public_htmlの上は自分のHOMEディレクトリだから
ここをPHPに自由にさせるのはダメだし、root権限無いとできない。
その下に、何かディレクトリ作ってパーミッション設定すれば
そのディレクトリの下はphpでどうにでもできるように設定できる
0568nobodyさん
2011/09/13(火) 10:30:15.19ID:???まさか共有されるとは知らず書き換えられまくったのはいい思い出。
0569nobodyさん
2011/09/13(火) 10:41:55.00ID:OYhF5wpwとか思いました。
>1つのプログラムの実行をプロセスと呼び、プロセス識別子が付与される。
>プロセスは、複数のプログラムを並列処理できるが、同じプログラムを並列して処理することはできない。
AさんプロセスとBさんプロセスは同じcalc.php(プログラム)である。
>OSから見たプロセスはメモリーの管理単位となる。
AさんプロセスとBさんプロセスそれぞれにメモリーアドレス空間が割り当てられる。と解釈して、$aは
メモリー上に2つできるのか。
強引に解釈しました。
でも、ファイルへ読み書きだとAさんBさんのphpスクリプトは並列処理されて排他処理なんかしないと
いけないな。
0571nobodyさん
2011/09/13(火) 11:54:47.46ID:???プログラムはOSレベルやウェブサーバーの子プロセスとして並列処理されるので変数とかは気にしなくていいけど、
データファイルへの読み書きなどは共通のファイルにアクセスするのでflock 関数などでロックするのが当たり前。
0572nobodyさん
2011/09/13(火) 12:13:11.86ID:OYhF5wpwあ?お前が死ね
0573nobodyさん
2011/09/13(火) 12:18:42.70ID:???読みこんでるんだよ。
0574nobodyさん
2011/09/13(火) 12:27:28.22ID:???すべて同じみたいな語り方はやめたほうがいいと思うなー。
0575nobodyさん
2011/09/13(火) 13:28:35.98ID:???おしえてたもれ
0577nobodyさん
2011/09/13(火) 14:05:18.73ID:???【連携ソフトウェア】MySQL
【質問内容】
掲示板を作成をするシステムを作りたいです。
ファイルがひとつのシステムなら以下のテンプレートファイルを元に作れました。
$template=file_get_contents('./template.php');
file_put_contents('./$num.php',$template);
しかしファイルが複数あるシステムの場合どうやって作ればいいのか思いつきません。
どなたか知恵をお貸しください。
0579nobodyさん
2011/09/13(火) 14:31:56.76ID:???失礼しました。
【PHPのバージョン】5.3(xampplite)
【連携ソフトウェア】MySQL
【質問内容】
掲示板を作成をするシステムを作りたいです。
ファイルがひとつのシステムなら以下のテンプレートファイルを元に作れました。
$template=file_get_contents('./template.php');
file_put_contents('./$num.php',$template);
しかしファイルが複数あるシステムの場合どうやって作ればいいのか思いつきません。
どなたか知恵をお貸しください。
0580577
2011/09/13(火) 14:33:46.03ID:YYmgJRoWあれ?なんでsage入ったんだ?
【PHPのバージョン】5.3(xampplite)
【連携ソフトウェア】MySQL
【質問内容】
掲示板を作成をするシステムを作りたいです。
ファイルがひとつのシステムなら以下のテンプレートファイルを元に作れました。
$template=file_get_contents('./template.php');
file_put_contents('./$num.php',$template);
しかしファイルが複数あるシステムの場合どうやって作ればいいのか思いつきません。
どなたか知恵をお貸しください。
0581nobodyさん
2011/09/13(火) 14:38:16.24ID:???0582nobodyさん
2011/09/13(火) 14:49:53.30ID:???システムもわからないのにコード出されても回答不可
作った人に聞けとしか
0583577
2011/09/13(火) 15:10:44.29ID:YYmgJRoWシステムは全部自分で作ってます。
コードは書きましたがそこは本題ではなく本題はひとつのファイルを量産させることはできたが
複数のファイルがあるフォルダを量産させることができないということです。
テンプレートファイルというのはtemplate.phpで、この掲示板のテンプレファイルをもとに掲示板を量産しています。
$num.phpに数字をいれて、例えば577.phpというファイルを新しく作って量産させることができました。
ただファイルが複数入ったフォルダでひとつの掲示板システムになっているものを量産させるやり方がわからないので
どういう方法があるのかわからないので教えてくださいということです。
0584nobodyさん
2011/09/13(火) 15:10:59.77ID:???PHP側での処理をどう書くかがわかりません。
例えばRSSを表示させる場合に
【HTML側】
<script type="text/javascript" src="js.php"></script>
【PHP側】
<?php
$url = "ttp://gigazine.net/news/rss_atom/";
$xml = simplexml_load_file($url);
$text = $xml->title;
header("Content-type: application/x-javascript");
echo "document.write($text)";
?>
では駄目なようで、この場合どのように書いたらいいのでしょうか。
0587nobodyさん
2011/09/13(火) 15:21:04.06ID:???これを固定値にするからいけないんだろ
変数にしてどっかに外部ファイルに保存しとけ
■ このスレッドは過去ログ倉庫に格納されています