【PHP】下らねぇ質問はID出して書き込みやがれ 105
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん
2011/03/17(木) 04:00:34.11ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 104
http://hibari.2ch.net/test/read.cgi/php/1297669559/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0825nobodyさん
2011/04/22(金) 18:09:47.75ID:BuQXBTbwどのような方法で処理するのがスマートでしょうか?
>>689-694でいう、>>689のようなやり方しかわかりません
array(
'key1' => 'val1',
'key2' => 'val2',
'key3' => 'val3'
);
↓
array(
'prefix_key1' => 'val1',
'prefix_key2' => 'val2',
'prefix_key3' => 'val3'
);
0827nobodyさん
2011/04/22(金) 18:12:57.93ID:???0828nobodyさん
2011/04/22(金) 18:36:12.84ID:BuQXBTbw値の方になら接頭辞をつけることができましたが、
キーの方に適用させる方法がわかりません
function func(&$value, $key, $prefix) {
$value = $prefix . $key;
}
array_walk($arr, 'func', 'prefix_');
print_r ($arr);
0829nobodyさん
2011/04/22(金) 19:07:50.98ID:OjtKl6VG$td->plaintextで取り出すと td内ある <br /> や <a>が削除されてしまうのですが
どのようにしたらいいでしょうか?
0830nobodyさん
2011/04/22(金) 19:14:56.34ID:BuQXBTbw$td->innertext
0831nobodyさん
2011/04/22(金) 19:19:54.18ID:OjtKl6VG助かりました!! ありがとうございます
nobodyさんが神様に見えてきました・・
0832。 ◆oDupeixhZv52
2011/04/22(金) 19:21:51.76ID:???$array =array_flip($array);
array_walk($array, function(&$v,$k,$p){ $v=$p.$v; }, 'prefix_');
$array =array_flip($array);
普通にループで回して新しい配列作った方がいいのでは。
0833nobodyさん
2011/04/22(金) 19:35:35.15ID:BuQXBTbw素晴らしい回答どうもありがとうございました。
組み合わせ技はなかなか思いつかないので勉強になります。
0834nobodyさん
2011/04/22(金) 19:52:02.53ID:???foreach ($a as $key => $value) {
$b['prefix_'.$key] = $value;
}
0836nobodyさん
2011/04/23(土) 02:03:10.97ID:F1ksq7hwprint "a"+(3+3);
?>でaが表示されす6だけ表示されるのは何故?
a6って何で表示されないんですか?
0837nobodyさん
2011/04/23(土) 02:29:12.30ID:???0838nobodyさん
2011/04/23(土) 02:48:54.94ID:5IDERpwA0839nobodyさん
2011/04/23(土) 02:59:13.26ID:F1ksq7hwCGIはほとんど勉強してません。
CGIでできることはすべてPHPでできると考えていいですか?
0840nobodyさん
2011/04/23(土) 03:28:09.39ID:5IDERpwAというかウェブ系ならphpでおk
0841nobodyさん
2011/04/23(土) 03:30:18.82ID:???0842nobodyさん
2011/04/23(土) 03:48:00.00ID:???>>840
ありがとうございます。大学でCしかやらないので、専門学校で
習うような事柄を独学してます。
0843nobodyさん
2011/04/23(土) 04:11:21.68ID:???公式マニュアルを読むかぐぐって5分で解決するレベル
0844nobodyさん
2011/04/23(土) 15:35:27.93ID:???filemtime的な
PHP5.3
0846nobodyさん
2011/04/23(土) 16:03:34.49ID:???0847nobodyさん
2011/04/23(土) 16:32:25.42ID:???0848nobodyさん
2011/04/23(土) 21:07:33.58ID:???0849nobodyさん
2011/04/23(土) 22:04:18.26ID:???0850849
2011/04/23(土) 22:06:32.15ID:HKeSVDgr0851nobodyさん
2011/04/24(日) 00:07:47.59ID:???0852nobodyさん
2011/04/24(日) 00:17:33.98ID:???http://www.php.net/manual/ja/reserved.variables.httpresponseheader.php
0853。
2011/04/24(日) 00:22:34.71ID:???file_get_contentsのCookie取得 ってそのままググレ
0854nobodyさん
2011/04/24(日) 00:35:08.26ID:???0856nobodyさん
2011/04/24(日) 09:26:08.28ID:EQCQhmqqhead linkをいろいろ弄ってるのですができないです・・・
<?php
include('simple_html_dom.php');
$html = file_get_html('http://blog.livedoor.jp/dqnplus/');
foreach($html->find('head link') as $e)
echo $e->outertext;
?>
0857nobodyさん
2011/04/24(日) 09:39:30.79ID:EQCQhmqq今後検索できた人用
p://www.syboos.jp/opensource/bookmark/detail/php-simplehtmldom.html
お騒がせしました
0859nobodyさん
2011/04/25(月) 11:55:06.60ID:Im0lc7sD↓の「データベースの中身」の部分を4列4行ずつで並べたいとのですが、
データベースの中身をすべて並べる方法がわかりません
データベースに接続することはできるのですが、先頭の1つのデータで全部埋まったりしてしまいます
どうしたらよいでしょうか
echo "<table width=\"300\">";
$a = 4;
for ($b = 0; $b < $a; $b++) {
echo "<tr>";
$c = 4;
for ($d = 0; $d < $c; $d++) {
echo "データベースの中身";
}
echo "</tr>";
}
echo "</table>";
0860nobodyさん
2011/04/25(月) 11:59:54.88ID:???0861nobodyさん
2011/04/25(月) 12:02:12.70ID:Im0lc7sDすみません
今は「データベースの中身」になっていますが、実際はちゃんと<td>入れて書いてます
0862。 ◆oDupeixhZv52
2011/04/25(月) 12:04:56.50ID:???0863nobodyさん
2011/04/25(月) 12:19:44.39ID:Im0lc7sD<td width="150">
<p><a href="items.php?=$items[0]">$items[1]</a></p>
</td>
EOF;
「データベースの中身」の部分はこんな感じです
データベースには接続できています
htmlは
<table width="300"><tr><td width="150">
<td width="150">
<p><a href="items.php?=1">AAA</a></p>
</td><td width="150">
<p><a href="items.php?=1">AAA</a></p>
</td><td width="150">
<p><a href="items.php?=1">AAA</a></p>
</td><td width="150">
<p><a href="items.php?=1">AAA</a></p>
</td><td width="150">
……
</td></tr></table>
すみません
これで大丈夫でしょうか?
0864nobodyさん
2011/04/25(月) 12:28:11.72ID:???0865。 ◆oDupeixhZv52
2011/04/25(月) 12:30:55.93ID:???$items = の ある行辺りを見せて。
0866nobodyさん
2011/04/25(月) 12:41:57.00ID:Im0lc7sDwhile (echo <<< EOF
<td width="150">
<p><a href="items.php?=$items[0]">$items[1]</a></p>
</td>
EOF;) {
echo <<< EOF
<td width="150">
<p><a href="items.php?=$items[0]">$items[1]</a></p>
</td>
EOF;
}
↑これだけだとデータベースの中身が表示されるのですが、
これを>>859のfor文で囲うと、先頭の1つのデータで全部埋まったりします
>>865
すみません、データベースに接続する文以外はこんな感じです
わかりずらくてすみません
0867nobodyさん
2011/04/25(月) 12:44:22.10ID:Im0lc7sDwhile ($items = mysql_fetch_array($result))
echo <<< EOF
<td width="150">
<p><a href="items.php?=$items[0]">$items[1]</a></p>
</td>
EOF;
0868nobodyさん
2011/04/25(月) 12:44:35.44ID:???意味不明な感じになってるぞ
0869nobodyさん
2011/04/25(月) 12:46:29.91ID:???結果を取得してるからそれで問題ない
forの場合は貼ってないからなんとも言えない
0871nobodyさん
2011/04/25(月) 12:51:50.06ID:Im0lc7sD$a = 4;
for ($b = 0; $b < $a; $b++) {
echo "<tr>";
$c = 4;
for ($d = 0; $d < $c; $d++) {
while ($items = mysql_fetch_array($result)) {
cho <<< EOF
<td width="150">
<p><a href="items.php?=$items[0]">$items[1]</a></p>
</td>
EOF;
}
}
echo "</tr>";
}
echo "</table>";
すみません
今これで、データベースの中身は全部表示されていますが、
4列4行じゃなく1列に表示されます
…いろいろやってみながら書き込んでるので貼り付けまちがったりすみませんでした
0872nobodyさん
2011/04/25(月) 12:56:14.82ID:???while ($items = mysql_fetch_array($result)) {
これは結果が取得できる限りループを続ける
とりあえずの対応でいいならwhileを外してfor内で
$items = mysql_fetch_array($result);
だけでいい
0873nobodyさん
2011/04/25(月) 12:57:47.33ID:Im0lc7sDうわああああああああああああああ
やっとできました
ありがとうございます!
いろいろすみませんでした
0874。 ◆oDupeixhZv52
2011/04/25(月) 12:58:28.20ID:???0875nobodyさん
2011/04/25(月) 12:59:33.47ID:???という質問が来るんだろうな・・・
関数の動作ぐらい理解しろ
0877nobodyさん
2011/04/25(月) 13:18:25.78ID:???バイナリと、そのバイナリが実行時に読み込む定義ファイルをサーバー(cent 5.5)に設置しました。
しかし、なぜかそのバイナリが定義ファイルを読んでくれません。
phpからは間違いなくその定義ファイルは読めます。
$module ='/パス/bin';
$param ='param';
$command =$module.' param='.$$param;
$handle =popen( $command.' 2>&1', 'r' );
$input =fgets($handle);
die ( strval( $input ) );
まじで悩んでます。
どなたか教えていただけないでしょうか?
0878nobodyさん
2011/04/25(月) 13:21:23.66ID:???ソースが間違えてました。
$module ='/パス/bin';
$param ='param';
$command =$module.' param='.$param;
$handle =popen( $command.' 2>&1', 'r' );
$input =fgets($handle);
die ( strval( $input ) );
"定義ファイルが読み込めませんでした"という趣旨の文字列が帰ってきます。
しかし、shellで直打ちするきちんと実行できます。
どんなヒントでも結構です。
よろしくおねがいします。
0879nobodyさん
2011/04/25(月) 13:34:40.73ID:???そのコマンドは実行できるの?
0882nobodyさん
2011/04/25(月) 14:06:43.88ID:e+Ev3uZ8$aaa = "あ";
$bbb = "aaa";
echo $+$bbb // 文字列aaaを変数名として呼び出したい
0884nobodyさん
2011/04/25(月) 14:24:23.85ID:???返信ありがとうございます。
sudo -u apache ./bin param=123
正しい値が返ってきます。
selinuxはoffにしています。
パーミッションも問題ないはずです。(755)
"定義ファイルが読み込めません"という値が返ってくる事で./binは実行されている事に間違いはないと思うのですが、
なぜ定義ファイルが読み込めないのか・・・。
>>883
絶対パスで指定しています。
0885nobodyさん
2011/04/25(月) 14:25:37.63ID:e+Ev3uZ8差し支えなければこちらご教示お願いいたします
変数$nameの中の文字列"atest"を元に、オブジェクトを作成したいのですが、うまくいきません
$name = "atest";
require "Atest.php";
$atest = new $name();
print_r($atest);
class Atest
{
function check(){}
}
0886。 ◆oDupeixhZv52
2011/04/25(月) 14:39:28.59ID:???shellで直打ちのとき、違うディレクトリから実行しても問題ない?
>>885
$atest = new $name;
0887nobodyさん
2011/04/25(月) 14:56:26.13ID:???エラーになりました。
なるほど、定義ファイルは./を探すようになっている為、実行時のカレントパスから見えないわけですね・・・・。
助かりました!!!!
ありがとうございました。
0888nobodyさん
2011/04/25(月) 14:59:48.76ID:e+Ev3uZ8$name ="atewt"ってなってました
手打ちで書いてたのですが2ちゃんにレスしたほうが合ってました
0889nobodyさん
2011/04/25(月) 16:43:28.30ID:Wf6pzALuオブジェクトを作成するするときに、文字列+変数で作成する方法をご教示お願いいたします
require "test.php";
$name = "bbb";
$obj = new "aaa".$name();
class aaabbb{}
0890nobodyさん
2011/04/25(月) 17:05:19.54ID:???$name2 = "aaa".$name;
$obj = new $name2();
0891nobodyさん
2011/04/25(月) 17:44:52.37ID:Wf6pzALu0892nobodyさん
2011/04/25(月) 17:57:00.99ID:EkAUsCib【PHPのバージョン】5.1.4
【質問内容】
コマンドラインで実行しています。
実行鯖環境には2つのIPアドレスが存在。AとB(エイリアス)です。
file_get_contentsを使用してCへアクセスするとAからのアクセスとなります。
Bからのアクセスにすることは可能でしょうか?
サーバ設定でAとB(エイリアス)を入替えるというのはごめんなさい。
0893。 ◆oDupeixhZv52
2011/04/25(月) 18:29:53.67ID:???$name = "bbb";
$abbb = "aaabbb";
$obj = new ${"a".$name}();
0895sage
2011/04/25(月) 20:14:00.38ID:EkAUsCib偽装したいわけでは。。。ないです。
接続先が特定のIP(1つ)しかアクセス許可していない。
接続元が複数のIPエイリアスを所持している。
という条件のため特定のこの特定のIPエイリアスからの接続指定がしたいです。
0896nobodyさん
2011/04/25(月) 20:34:17.88ID:???0897nobodyさん
2011/04/25(月) 20:37:52.66ID:???0898nobodyさん
2011/04/25(月) 20:50:22.74ID:2fHI6GSc一致すればbreakするプログラムを作っています。
100万行の処理を終えるのに、数秒かかるのですが、
while以上に速く検査処理をする方法って無いでしょうか?
0899nobodyさん
2011/04/25(月) 20:52:37.64ID:???0901900
2011/04/25(月) 21:20:15.53ID:???PHP マルチスレッドね
マルチタクスってなんだ・・・
0902nobodyさん
2011/04/25(月) 21:28:47.35ID:K7Gq3Lks【PHP】 5.2.10
【質問内容】
PHP Simple HTML DOM Parser(http://simplehtmldom.sourceforge.net/)を利用して情報の収集ツールを作成しています。
住所を取得したいのですが、2つめのboxは住所をすっ飛ばして電話番号を取得してしまいます。うまく住所を取得するにはどうすれば良いでしょうか?
つづきます
0903nobodyさん
2011/04/25(月) 21:44:18.29ID:6yvRLmog【ソース】
include('simple_html_dom.php');
$url ="http://itp.ne.jp/dir_result/?ad=45201&gr=1019&num=50";
$html = file_get_html($url);
$main = $html->find('#main-inner',0);
申し訳ありません、さらにつづきます。
0904nobodyさん
2011/04/25(月) 21:49:13.02ID:???0905nobodyさん
2011/04/25(月) 21:52:48.03ID:2fHI6GScありがとうございます。勉強します。
0906nobodyさん
2011/04/26(火) 07:50:46.62ID:???◆質問する時の注意
・スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
0907nobodyさん
2011/04/26(火) 10:15:58.79ID:???$opts = array(
'socket' => array(
'bindto' => '192.168.0.100:0',
),
);
$context = stream_context_create($opts);
echo file_get_contents('http://www.example.com', false, $context);
http://jp.php.net/manual/ja/context.socket.php
0908nobodyさん
2011/04/26(火) 10:35:50.09ID:???>>907
ありがとうございます!!
proxy用意しないと駄目かと思っていたので助かりました!!
0909nobodyさん
2011/04/26(火) 10:38:21.62ID:x6qrhHZEこれやると相手のサイトには192.168.0.100ってIPがのこるの?
0912nobodyさん
2011/04/26(火) 10:52:50.86ID:x6qrhHZE0913nobodyさん
2011/04/26(火) 11:31:00.94ID:???0915nobodyさん
2011/04/26(火) 16:38:47.09ID:???0916nobodyさん
2011/04/27(水) 10:22:11.73ID:cN0DYx7u0917nobodyさん
2011/04/27(水) 10:50:55.77ID:???0918nobodyさん
2011/04/27(水) 11:50:09.72ID:???0919nobodyさん
2011/04/27(水) 12:04:20.83ID:???外部からの入力で値が変わる事、
それを想定していない糞なコードがある事、
この2点が揃って初めて危険と言える
0920nobodyさん
2011/04/27(水) 12:14:05.44ID:???0921。 ◆oDupeixhZv52
2011/04/27(水) 12:23:36.47ID:???0923nobodyさん
2011/04/27(水) 17:27:46.13ID:1DO68SdUブラウザからアクセスがあったときに
PHPで書かれたバッチファイルをexecで実行しようとすると
Unable to forkとエラーが出てしまいます。
バッチファイルは、別のテキストファイルを読み込もうとしているのですが、
このテキストファイルの権限は777にして/home/hoge/下に
置いてあります。
このテキストファイルのオーナーがhogeだと上記エラーは出ないのですが、
他のユーザがオーナー(例えばfuga)だとエラーが出てしまいます。
また、同じコマンドをcronからapacheユーザで実行すると
上記エラーはでません。
権限が777でもファイルのオーナーが異なることによって
上記エラーが出る場合は、どこに原因があるのでしょうか?
また、同じコマンドをcronから実行しても
エラーがでない理由がわかりませんでした。
ご教授をお願いいたします。
0924nobodyさん
2011/04/27(水) 18:06:48.38ID:???レス数が900を超えています。1000を超えると表示できなくなるよ。