【PHP】ID出さなくても質問OKなスレ【初心者歓迎】 at PHP
[2ch|▼Menu]
[前50を表示]
200:nobodyさん
09/04/09 20:53:21
開発現場でも人それぞれでどれが多いってほどダントツなものはないがあえて言うなら
viで開発してる人はいない
ネタで掲示板で開発してるってレスしてるやつ見るが現場で一度もみたことない
emacs,eclipse,がたいてい使われてる

201:nobodyさん
09/04/09 21:10:45
>>193
ヒント: Google Toolbarをインスト-ルしてパケットキャプチャしてみる

202:nobodyさん
09/04/09 21:16:33
おれはvimがあれば充分

203:nobodyさん
09/04/09 21:18:29
>>199
本業の人じゃないと思うけど言動を慎め

204:nobodyさん
09/04/09 21:33:58
>>203
本業は.Net中心に開発してます。
PHPは実務経験無いです。

俺の言動に何処か文句でもおあり?

205:nobodyさん
09/04/09 21:35:21
そりゃ見込みないな

206:nobodyさん
09/04/09 22:12:47
>>204
なんだ.net開発かよ
ディレクターの俺になんか文句あるか?

207:nobodyさん
09/04/09 22:32:22
ディクレーターw?

敢えて言うならカスかな

208:nobodyさん
09/04/09 22:40:54
【給料】
ディレクター>>越えられない壁>>開発土方

【地位】
ディレクター>>越えられない壁>>開発土方

他に何か?

209:nobodyさん
09/04/10 01:34:27
【給料】
社長>>ディレクター>>越えられない壁>>開発土方

【地位】
社長>>ディレクター>>越えられない壁>>開発土方

※俺は個人会社の代表

210:nobodyさん
09/04/10 01:35:23
ばりばりVSを使用してphp開発をしているのって俺位?

211:nobodyさん
09/04/10 02:55:27
あまりいないと思うけど慣れてるんなら別にいいんじゃね

212:nobodyさん
09/04/10 03:42:17
>>211
自分でも多分VSでphpコード書いてる奴は少ないと思う。
でもEclipsePDT何かよりよっぽど使いや寸だけど

213:nobodyさん
09/04/10 03:48:42
Meadow と cygwin でやっちゃうなぁ。

どうもデバッガとかは、コードを意味より動きでみてしまうせいか、後から見ると可読性が
落ちることが多くて、結局つかわなくなっちゃう。デバッガ使わないなら、なれたのが一番いいし。

214:nobodyさん
09/04/10 10:14:46
>>212
vsは使ってないけど自分が使いやすいのが一番だよな
俺はdwで満足してる


215:nobodyさん
09/04/10 10:28:33
俺はもともとJavaの開発者だったからEclipseが使いやすいんだけどね
まぁひとそれぞれだわなぁ

216:nobodyさん
09/04/10 11:06:27
さくらインターネットでcron(クロノ)を使用してphpスクリプトを実行しようとしているのですが
いまいち分かりません。実行コマンドとしては次であっておりますでしょうか?

【登録した実行コマンド】
crontab -e Test_cron.php

【実行時間】
月 日 時 分 曜日
1 1  11 5  金

【Test_cron.php】
//動作実績にあるphpスクリプトでメールの送信を行うプログラムです。


217:nobodyさん
09/04/10 11:11:55
激しくPHPと関係ない件

218:nobodyさん
09/04/10 11:20:14
IDE便利だと思うけど、重いからほとんど起動しない・・・
よって秀丸ばっかり

219:nobodyさん
09/04/10 15:18:55
オレ今日徹夜しちゃったぜヴェーハッハ


って言ってる厨房・攻防と同レベルのDQNが沸いてると聞いてとんできますた

220:nobodyさん
09/04/10 15:23:33
?≫219?

221:nobodyさん
09/04/10 15:27:12
正規表現野郎が本スレで暴れてるんですけど引き取りに来てくれませんか?

222:nobodyさん
09/04/10 15:35:13
>>221
スルーもできない春厨はROMってろ

223:216
09/04/11 19:09:13
相変わらずcronを実行する事が出来ません。
一体何が原因でしょうか?



224:nobodyさん
09/04/11 19:29:21
PHPのアップローダーで最大ファイル制限をはずしたいと思っています。

php.ini の
memory_limit = 8000M
post_max_size = 8000M
upload_max_filesize = 8000M

等、以外に設定をおしえてください。


225:nobodyさん
09/04/11 19:58:20
>>224
php.ini以外で外せたら大変なことになりますよね

226:224
09/04/11 20:44:21
それぞれ、20Mにするとエラーなくアップできるのですが、
極端に8000Mとかに増やすとエラーがでます。

227:nobodyさん
09/04/11 20:50:02
何のエラー?

228:nobodyさん
09/04/12 02:52:45
phpのコードで、指定したディレクトリの中にあるファイルの数を調べようと
次のコードを記述したのですが、存在しないファイル(?)まで表示されてしまいます。
この「.」と「..」とは一体何なのでしょうか?

.<br>..<br>aaa.txt<br>bbb.txt<br>

$dir_file = opendir( './Test_dir' );
while( $file_name = readdir( $dir_file ) )
{
print "{$file_name}<br>";
}
closedir( $dir_file );

【結果】
.<br>..<br>aaa.txt<br>bbb.txt<br>

【ファイル一覧】
Test_dir
 a.txt
 b.txt

229:nobodyさん
09/04/12 02:57:43
>>228
DOSプロンプトとか、UNIXシェルでcd .. とかやったことない?

230:nobodyさん
09/04/12 03:00:14
>>229
cdコマンドは使った事があります。
..
だと一つ上の階層に移動する、という意味で、.
というのはカレントディレクトリを指しますよね?
なのになぜにファイル一覧を取得するメソッドを呼び出した時に
こんな「.」や「..」が現れるのか皆目検討が付きません。



231:nobodyさん
09/04/12 03:05:09
>>230
そいつらも「ディレクトリ」で、「ディレクトリ」は「ファイル」の一種だから。

232:nobodyさん
09/04/12 03:07:15
そーだったのかー

233:nobodyさん
09/04/12 03:21:17
>>231さん
ありがとうございます。
「.」と「..」もディレクトリであり「ファイル」の一種だったんですね。
勉強になりました。ありがとうございました。



234:nobodyさん
09/04/12 18:40:25 2x7CLOXE
smartyで、$test1/$test2とかの計算方法は出来るんですが、

例えば
($test1/($test2+$test3)*$test4)といった、中カッコや大カッコを使った計算ってどう記述すればいいんでしょうか?

初心者ですみません。

235:nobodyさん
09/04/12 18:56:00
じゃ初心者でなくなってください

236:nobodyさん
09/04/12 19:01:23
>>235は初心者だから回答できないだけですよ

>>234
smarty使ったことないからしらねえけどそれで動かないの?

237:nobodyさん
09/04/12 19:04:37
専用スレで聞けばいいのにね

238:nobodyさん
09/04/12 19:49:53
>>236
できないから聞いてんだろお前ほんとアホだなぁ

239:nobodyさん
09/04/12 20:58:55
なんで使ったこともないのに回答しようとするの?

240:nobodyさん
09/04/12 20:59:28
自己紹介乙

241:nobodyさん
09/04/12 21:34:22
>>239
おまえは?

242:nobodyさん
09/04/13 00:38:00
初心者向けの解説本で
Smartyとか紹介してるのってなんなの?

初心者にいきなりsmartyっていったって
わかるわけないじゃん。

243:nobodyさん
09/04/13 00:40:49
ぶっちゃけPEARって便利なの?
やっぱり俺ライブラリが一番使いやすいのだが

244:nobodyさん
09/04/13 00:56:42
一番使いやすいの使えばええやんとしか答えようがない

245:nobodyさん
09/04/13 01:03:16
同意

246:nobodyさん
09/04/13 02:13:26
自分、PEAR って未だによく分かってないんだけど、あれってコンパイラが要るの?
Windowsで APC使おうとしたとき、VC++6.0 が要るとかで、結局断念したんだけど。

以前はpecl4win でバイナリ持ってきたんだけど、サイト再構築するとか言って、ずっと死んだままだし。

247:nobodyさん
09/04/13 02:14:38
お前は何を言ってるんだ

248:nobodyさん
09/04/13 02:15:36
PEARはコンパイラはいらないよ

249:nobodyさん
09/04/13 02:18:27
ごめん、PEARとPECLは別物か。
すんません。


250:nobodyさん
09/04/13 02:45:29

馬鹿発見


251:nobodyさん
09/04/13 20:35:30
PEしかにてないじゃん

252:nobodyさん
09/04/13 23:24:39
DBから取得した値を可変の配列に格納しようと思ってるのですが、
.NetのArryalListに似たコードはありますか?


253:nobodyさん
09/04/13 23:25:34
マルチ失せろ

254:nobodyさん
09/04/13 23:54:58
>>253
いや、別スレに投稿したのは俺だけど>>252はリアルに俺の投稿じゃないよ。
誰かがコピペしてるって

255:nobodyさん
09/04/14 01:30:13
回答もらうと態度でかくなるんですね

256:nobodyさん
09/04/19 19:33:07 gK+IYAFS
PHPでカウンター作ったんですが、カウントの記録はcount.txtといったファイルに記述してます。
ですのでファイルが破損したらアウトになるわけなんですが、破損防止として出来る対策というのはどういったものがあるのでしょうか?

257:nobodyさん
09/04/19 19:35:55
flock

258:nobodyさん
09/04/19 19:57:58
>>256
ダミーファイルに書き込んで成功したらcount.txtに書き込み

259:nobodyさん
09/04/19 20:00:24
リネームじゃなかっけ

260:nobodyさん
09/04/19 20:10:55
temp.txtに記録して、
それからcount.txtにリネームする、
ってよく聞くけど、なんの意味がある?

261:sage
09/04/20 09:33:36
 PHPで外部の画像を取って表示するものを作成しました。
PHP単体にアクセスをすると表示されるのですが、HTMLの中に表示すると実画像がない場合に表示される
アイコンになります。
PHP(sample.php)の中に
<?php
print "<img src=\"sample.jpg\">";
?>
と書いた場合はHTMLには<img src="sample.php">では表示されないのでしょうか?
念のためにPHPのプリントの前に
header('Content-Type: image/gif');
を置いて見ましたがダメでした。
どのようにすれば表示されますか?

262:261
09/04/20 09:36:06
すいません。書き間違いました。

×:header('Content-Type: image/gif');
  ↓
○:header('Content-Type: image/jpg');

表示方法をご存じの方おられたらアドバイスください。

263:nobodyさん
09/04/20 09:49:59
そりゃそうだ

<?php
header('Content-Type: image/jpg');
print "<img src=\"sample.jpg\">";

これがimage/jpgなわけない
sample.jpg自身を出力すればいいよ

264:261
09/04/20 10:12:37
>>263
レスありがとうございます。

sample.jpg自身を出力ですか?
PHPが取得する内容によってsample.jpgは毎回変わるので
htmlの中にimgタグでsample.jpgを書くってことではないですよね。
私の方で何か凄い勘違いしてますか?

265:nobodyさん
09/04/20 10:26:29
うん

266:nobodyさん
09/04/20 10:47:10
phpでそのsample.jpgをバイナリーモードでオープンして読み込んで
そのまま出力するんだよ。

267:261
09/04/20 10:47:38
>>265
htmlにsample.jpg自身を出力すればよい
ってことになると思いますが、sample.jpg自身はPHPから引っ張ってくるので
htmlの中の記述としてはsample.phpになるかと思います。
php自身にsample.jpg自身を出力させるということでしょうか。

ファイルの拡張子を変更してみたりしましたが特に進展はありませんでした。

アホな私にもう少しだけ助言いただけないでしょうか。
本当に申し訳ないです。

268:nobodyさん
09/04/20 11:26:33
一番シンプルな形だとこうか。

<?php
header("Content-type: image/jpeg");
print file_get_contents("sample.jpg", FILE_BINARY);
?>

269:261
09/04/20 11:26:54
>>265-266
freadで読み込んでやれば出来るようになりました。
つまらない質問に長々とつきあっていただきありがとうございました。

270:nobodyさん
09/04/20 11:43:20
>>268
readfile

271:sage
09/04/20 11:59:35
横やりすんまそ
>>268だと複数画像って表示出来ないよね
header("Content-type: image/jpeg");
print file_get_contents("sample1.jpg", FILE_BINARY);
print file_get_contents("sample2.jpg", FILE_BINARY);
この場合sample1.jpgのみ表示されるけどこれって俺のサーバーの環境に依存してる?


272:nobodyさん
09/04/20 12:03:23
お前は何を言ってるんだ

273:nobodyさん
09/04/20 12:09:14
HTTPを先に勉強しる

274:nobodyさん
09/04/20 12:19:37
simplexml_load_fileを使ってRSSを取得しているのですが、
実行するタイミングによってなのか、
parser error : StartTag: invalid element nameが発生するときとしない時があります。
原因に心当たりがあれば教えてください。


275:nobodyさん
09/04/20 12:20:11
合成したいならGD組み込んだImage〜関数使って自分でくっつける

276:nobodyさん
09/04/20 13:25:43
一行で掲示板を構築するやり方教えて
一行じゃ足りなかったらもうちょっと増やしてもいいよ

277:nobodyさん
09/04/20 13:33:20
改行しなければおk

278:nobodyさん
09/04/20 15:16:17
以下のような配列があった場合に、
nameの値だけ取り出して新たな配列を作る関数はありますか?

$arr = array(
array("id"=>"1", "name"=>"aa"),
array("id"=>"2", "name"=>"bb"),
array("id"=>"3", "name"=>"cc")
);

欲しい配列は{"aa", "bb", "cc"}です。


279:nobodyさん
09/04/20 15:18:18
PDOならfetchAll(PDO::FETCH_COLUMN, 1)で可

280:278
09/04/20 15:35:47
ありがとうございます。
追加モジュールが必要ということですね。

281:nobodyさん
09/04/20 15:40:57
ボタンのnameを可変変数にして、
「このボタンが押されれば、このページを表示する」という処理を行いたいのですが、
どのようにすればできるのでしょうか?



282:nobodyさん
09/04/20 15:41:28
いやDBから取得するときに工夫したほうが楽よってだけ

283:nobodyさん
09/04/20 15:43:05
>>281
<form action="hogehoge.html" method="get">

284:281
09/04/20 15:56:10
説明が足りませんでした。すみません・・・
どうしてもPOSTでやらないといけないのです。

<form method="post" action="hogehoge.php">
<?
$roopCnt = 3;
for($i=1; $i<=$roopCnt; $i++){
$btnName = "btn".$i;
?>
<input type="submit" name="$btnName" value="test" />
<? } ?>
</form>

このようなもので、
・btn1が押されたら、1ページ目
・btn2が押されたら、2ページ目
・btn3が押されたら、3ページ目
をそれぞれ表示したいと考えています。

285:nobodyさん
09/04/20 16:02:39
hiddenでいいんじゃ?

<input type="hidden" name="page" value="<?php echo $i; ?>">

あとHTMLの仕様上、ボタン1つにつきformも1つね。
まぁ1つのform内で異なるパラメータ付けた複数のsubmitボタン使えたら確かに便利なんだけど。


286:nobodyさん
09/04/20 16:06:08
ああごめん、もしボタン名で区別してもいいならsubmitのvalueの値でも良かったわ

-----------------------------------------
<?php
var_dump($_GET);
?>

<form action="">
<input type="submit" name="page" value="1">
<input type="submit" name="page" value="2">
<input type="submit" name="page" value="3">
</form>
-----------------------------------------

287:281
09/04/20 16:15:51
ありがとうございます!
なるほど、フォームを複数使うというのもありなんですね。
ボタン名はどれも同じで考えていますので、valueの値で判別するのはできないですね。

ボタンのネームに配列を使えれば、1つのフォームでもいけそうな気がするのですが、
そういうのってできるのでしょうか?
phpに手をつけはじめたばかりなので、書き方が思いつかない・・・

288:nobodyさん
09/04/20 16:20:41
>>287
<form action="">
<input type="submit" name="page1" value="1">
<input type="submit" name="page2" value="1">
<input type="submit" name="page3" value="1">
</form>

if(isset($_REQUEST['page1'])){
#処理1
}elseif(isset($_REQUEST['page2'])){
#処理2
}elseif(isset($_REQUEST['page3'])){
#処理3
}

289:nobodyさん
09/04/20 16:23:51
submitのnameの値で区別するのってどうなん?
個人的にはあまり好ましくないやり方だと思ってたけど

290:nobodyさん
09/04/20 16:30:24
valueは日本語が入ることもあるからname使うケースもあるなあ

291:nobodyさん
09/04/20 16:31:52
まぁ、普通はJSと組み合わせてやるね

292:281
09/04/20 16:33:24
JSを使うやり方もあるのですね。
288さんのやり方で頑張ってみようとおもいます。
ありがとうございました。

293:nobodyさん
09/04/20 17:49:16
さっさと答えろやksdm

294:nobodyさん
09/04/21 02:20:57 /739X32B
今カートを作ってるんだけど、質問です
やりたいことはURLリンク(hoge.com)
というページにアクセスした場合、動的に商品ID「1111」に一致する商品内容を表示したいです

商品IDごとにディレクトリを作ってhtmlも作るというのは現実的ではないと思い調べていたら.htaccessを知りました
そこで質問ですが、itemディレクトリに.htaccessを置いて、ディレクトリが無いので404エラーを出し
itemディレクトリに設置してあるitem.phpを表示するようにする
そのitem.phpでディレトクリ「1111」を取得して商品IDとして処理する方法って出来るのでしょうか?
出来る場合は邪道でしょうか?

295:nobodyさん
09/04/21 02:22:31
>>294
ZendFramework使え

296:nobodyさん
09/04/21 04:00:52
>>294
数回読んだけどいまいちつかめない…
とりあえずmod_rewrite使えって事かと

297:nobodyさん
09/04/21 07:01:25
すいません、考えてもわかりませんでした。
PHPでブログ自作で、カレンダーで記事のある日だけリンクを張る
仕組みがどうしてもわかりません
後日付関係全般。どのように処理してるのか、仕組みを教えて下さい
mysqlでもいいです。

298:nobodyさん
09/04/21 07:10:45
select distinct day(article_date) from articles where year(article_date) = 2009 and month(article_date) = 21

299:nobodyさん
09/04/21 07:11:25
21じゃなくて4だった

300:297
09/04/21 08:05:00
あ、わかりました
個数とかって記録すべきか、一回一回数えるSQLで行くべきか
悩みます

301:274
09/04/21 10:08:05
すみません、274なんですけど、
わかる方いらっしゃいませんか?

302:nobodyさん
09/04/21 10:37:43
エラー時のRSSデータをまず保存してはどうだろう

303:nobodyさん
09/04/21 14:24:33
>>300
そういう冗長性が発生するチューニングは遅いと思ってからやった方が良いんじゃない。
適切にインデックスつければよっぽど問題にならんし。

304:nobodyさん
09/04/21 22:37:51
$a='1,2,3,4,5,';
foreach(explode(',',$a) as $v) echo $v;

こう書くのってどう?キモい?

305:nobodyさん
09/04/21 23:23:43
コードの縮小化ならいいと思うがな
一人で使う分にはいいがいろんな人に見せるなら見栄えを取った方がいい

306:294
09/04/22 00:51:27
>>296
ありがとう
今までやってたけどうまくいきました
使ったものは$_SERVER['PATH_INFO']だけど、ここにたどり着けた事に感謝

307:nobodyさん
09/04/22 00:58:06
>>300
コードは分かりやすく書いてキャッシュかなぁ

308:nobodyさん
09/04/22 01:55:32
>>304
一度文字列に代入する理由が分からないが、explodeで配列にするのだから、

foreach (array(1, 2, 3, 4, 5) as $v) echo $v;

でよくね?

309:nobodyさん
09/04/22 11:07:24
foreachだけ配列を使うって決まってるならそれでもいいが
それだと使いまわせない

310:nobodyさん
09/04/22 11:43:35
$array = array(1,2,3,4,5)でいいじゃん

311:nobodyさん
09/04/23 18:29:33
PHP+MySQLで本のデータベースサイト作ろうと思っている
で、よくある「URLリンク(x-comic.info)」みたいにタグの部分をクリックすれば一覧が表示されるページ作りたいんだけど、
具体的な作り方が何を見ても載ってないというか俺が無知すぎて分からないというか・・・
こういうやり方が載ってるサイトとか書籍とかってないの?

312:nobodyさん
09/04/23 18:30:33
タグの部分?

313:nobodyさん
09/04/23 18:39:15
エロサイトの宣伝か・・・

314:nobodyさん
09/04/23 19:29:14
あー確かにエロサイトの宣伝と思われても仕方なかったなw
でも他にいいサイト思い付かなかったんだよ。
一般系のデータベースサイトで似たような構成のとこあったら教えてもらえると嬉しい。
知人に聞こうと思ったりもしたんだがここのエロ系データベースサイトくらいしか思いつかなくて聞けなかったんだわ
話は戻るけど>>312さんの言うとおりタグの部分(クリックすると一覧が出る)ところの作り方です

315:nobodyさん
09/04/23 19:56:26
>>314
多対多の結合だからちょっと難しいかもね。

データの件数にもよるが、真面目につくろうとすると↓のような感じで3つのテーブルが必要。
books(id、 name)

tags( id、 name)

books_tags( book_id、 tag_id)

あとはセレクト文でごにょごにょ。

316:nobodyさん
09/04/23 20:07:23
>>314
ドカントに広告出してる三流風俗店のHP管理乙

317:nobodyさん
09/04/23 21:14:05
>>314
ありがとう、検討してみる
俺はもうちょっと勉強が必要だな

318:nobodyさん
09/04/23 23:21:30
タグ名までid化する必要性って、あんまりない気がする。

319:nobodyさん
09/04/24 01:27:59
なんで?

320:nobodyさん
09/04/24 04:39:48
タグIDの代わりにタグ名そのまま使っても大差ないから。

っていうか、自分なら、ブック名も変更されたりかぶったりする可能性がないなら、
こっちもID化しないかなぁ。
データベース直接見た時にラクだから。

大概はインデックス貼っとけばパフォーマンスは、確保できるし。


321:nobodyさん
09/04/24 23:37:47
タグ名を自然キーとしてIDにするという話と、ID化しない=主キーのないテーブルを作るという話とどっちなんだ?

322:nobodyさん
09/04/24 23:42:55
うんID化とかいう俺俺用語は本質を理解してなさげが伝わるので微妙

323:nobodyさん
09/04/27 15:32:30
下のソースを実行すると画像が1個しか表示されません。
readfileの部分をHTMLタグのimg srcにするとちゃんと全部表示されます。
1個目は表示されているので間違ってはいないと思いますが、
大して理解出来ていない私にどこに問題あるのか突っ込みいれてもらえないでしょうか。

header("Content-type: image/gif");

// 画像表示
for($i = 1; $i < 10; $i++){
$num = substr($count , $i , 1);
readfile($num . ".gif");
}


324:nobodyさん
09/04/27 15:41:55
あたりまえだろ
最終的にどうしたいのか

325:323
09/04/27 15:46:02
複数の画像をHTMLに呼び出したいです。
>>323だとindex.htmlに表示することが出来ないのでHTMLに<img src〜といった形で
呼び出せるようにしたいと考えてます。
iframeも考えたのですがデザイン上それがダメということでどうにか出来ないものかと思ってます。

326:nobodyさん
09/04/27 16:00:26
複数画像分だけimg src=〜でいいじゃない

327:323
09/04/27 16:17:06
>>326
画像は日によって表示されるものがかわるので
HTMLにimg srcで固定してしまうわけにはいかない状態です。
またHTMLにimgタグでphpを指定しても1個しか表示されないので
複数画像分の指定がどのようにすれば出来るのかが分からない状態となっております。

328:nobodyさん
09/04/27 17:12:23
何か疲れるなあ

変更できないhtmlファイルの中に可変個の画像を置きたい、ということでいいのか?

329:327
09/04/27 17:14:43
>>328
はい。
説明がへたくそで申し訳ないです。

330:nobodyさん
09/04/27 17:31:11
img src=〜を書き出すPHPをincludeすればいいんでないの

331:nobodyさん
09/04/27 17:39:04
まあどっちにしても1個のIMGタグで複数画像を表示するのは無理。

方法としては、複数の画像をPHPで1個にくっつけて出力。
IMGタグを複数書く手段を考える。

のどっちか。
IMGタグをPHPの出力で複数にしつつ、SRC="xxxx.php?param=1"とかやればいいように思うけど

332:327
09/04/27 17:42:52
HTMLにincludeとなるとSSIのincludeで埋め込むという事でしょうか?
実際に試してみましたがうまくいかないようです。
今だに>>323のソースで画像が1個しか表示されない理由が不明なのでがんばってみます。

333:nobodyさん
09/04/27 17:54:20
>>332
includeについては、HTML側を.phpにしてincludeすれば良いだけよ

PHP入門サイトを適当に流し読みして、
せめて何が出来るのかを理解してみたほうがよい

334:nobodyさん
09/04/27 18:06:26
>>332
>今だに>>323のソースで画像が1個しか表示されない理由が不明なのでがんばってみます。

コーラを飲んだらゲップがでるるくらいあたりまえなんだが
HTML自体わかってないのか

335:nobodyさん
09/04/28 05:11:21
Googleとかで適当に検索して ”この先を見るにはログインする必要があります”
ってサイトに巡り合ったとします。
それでGoogleにあるキャッシュってを押しても中身を見れず
ログインする必要がありますって言われるのはなんでですか?
GoogleのROBOTがそのページを収集してると思うんですけど
PHPでは何の関数を使ってるんですか?


336:nobodyさん
09/04/28 11:29:29
はい?
上:クローラーがログインできるわけないから
下:GoogleがPHPの何の関数を使ってるかということ?

337:nobodyさん
09/05/01 17:40:52
質問です。

foreachで値を.","で区切って

 12,14,33,11,18,

ってなるまではいいのですが、最後の値18の次の","は消すことできますか?

 12,14,33,11,18

にしたいのですが、お願いします。



338:nobodyさん
09/05/01 17:58:39
implode(',', $array)とか

339:nobodyさん
09/05/01 18:02:40
>>338
解決しました。thank you so much

340:nobodyさん
09/05/02 11:01:45 V+mNLWbo
PEAR:Net_IMAPで、
PHP上で生成したメールメッセージをGmailのINBOXに保存したいんだけど、
mail_composeとかmove関数が実装されてない?

341:nobodyさん
09/05/02 11:36:05 V+mNLWbo
自己レス。できた。

342:nobodyさん
09/05/02 17:12:13
PECLで魅力的な関数があるけど
みんなPEARとか使ってんの?

343:nobodyさん
09/05/02 21:20:35 +TEZ3ZO9
お願いです。教えてください。
smartyで年月選択のセレクトボックスをつくりたいのですが、リストの内容を、「現在の年からさかのぼって30年」というふうにしたいのです。
また、それとは別に「現在年から3年後」までのリストも表示したいです。
どこに何をいれれば表示できるのかさっぱりわかりません。
よろしくお願いします。

Apache 2.2.11
MySQL 5.1.33
PHP 5.2.9 です。

344:nobodyさん
09/05/02 21:54:01
誘導厨


345:nobodyさん
09/05/02 22:47:23
>>343
思いっきり標準であるが
URLリンク(www.smarty.net)

346:nobodyさん
09/05/03 05:25:43
問い合わせフォーム等を、ググりまくりながらギリギリコピペなしで自作できるようになったレベルの準初心者です
今参考にしてるソースに一見簡単そうなのに未知の記号が出てきて、完全読解不能に陥ってます
ググりたいんですが何でググればいいか手がかりがなくてちょっと質問させてください

$number = ($_GET['n']) ? $_GET['n'] : count($r->getItems());

この行の「?」と「:」と「->」はいったいPHPの何を勉強すれば出てくるんでしょうか
この行が何をしてるのかわからないばっかりに変にいじってAnhttpdが強制終了しまくりますw

347:nobodyさん
09/05/03 06:31:10
三項演算子とアロー演算子

348:346
09/05/03 07:49:18
ありがとうございます
ひょっとして三項演算子ってifとelseでいいんじゃとか思うのは素人だからですね・・・

349:nobodyさん
09/05/03 10:06:03
>>345
ありがとうございます。
実はここに書き込む前にこのページを検索して見つけてはいたのですが、どうやって記述すればよいのかまったくわかりません。
ためしにsmartyのなかに{html_select_date}とかいてみましたがそのまま出てきてしまいました 汗
まったくのど素人で申し訳ないのですがよろしくお願いします。



350:nobodyさん
09/05/03 10:30:25
>>349
別にif-elseでいいよ
三項演算子は可読性が悪いから
会社とかだと大抵コーディング規約で禁止されてる
変数に入れられるのは結構いい場面もあるけどね
例にもあるように$_GETや$_POSTなんかをセットするときには便利

351:350
09/05/03 10:31:06
↑アンカーミス
>>348宛ね

352:nobodyさん
09/05/03 10:37:40
三項演算子なんてほとんどの言語に用意されてるわけだしわざわざ禁止する会社があるのか?

353:nobodyさん
09/05/03 10:43:38
三項演算子を入れ子にされるとわかりにくくなることはあるなw

354:343=349
09/05/03 10:57:52
なんとか試行錯誤して表示することができました。
これって平成〜年とか昭和〜年とか表示するドロップダウンリストをつくることはできないのでしょうか?

355:nobodyさん
09/05/03 12:40:21
>>352
グループで開発するってのはそういうことなんだよ

356:nobodyさん
09/05/03 13:04:05
複数人で作業するときとかスクリプトを縮小化とき以外に三項演算子使うやつはバカ

357:nobodyさん
09/05/03 13:21:09


358:nobodyさん
09/05/03 15:01:30
そろそろ話し控えないと参考演算子クンが荒らしに変貌しそうだよ!

359:nobodyさん
09/05/03 15:06:48
参考演算子てwwwwwww

360:nobodyさん
09/05/03 16:44:20
三項演算子を規約で禁止しちゃうような会社はいろんな意味でダメだろうなぁって気はする。
まぁバカでも組めるものを組ませるって考えはあるんだけどさ。

361:nobodyさん
09/05/03 16:56:31
>>360
残念
社会では三光演算子は嫌われます

362:nobodyさん
09/05/03 17:00:05
>>358
残念
社会では三光演算子は嫌われます

363:nobodyさん
09/05/03 17:06:02
確かにドカタの監督からは嫌われるだろうね。

364:nobodyさん
09/05/03 21:25:24
CSVにデータを書き出すスクリプトで、一行終わったら改行が入るようにしているんですが、
処理の途中で止まって(とめて)改行が行われないことがあります(あるとします)。その時に、ファイルの最後に
改行が入ってないことを検知して、改行をした上で新しいデータを次の行から作りたいんですが、
改行の有無はどうやったら検知できますでしょうか?今使っているエディタ(EmEditor)では
「↓」という記号で改行がマークされ、ググったりしましたが、どうしていいものやらよく
わかりません。


1,2,1,2,3,2[改行]
1,1,1,2,3,3[改行]
1,1,2,[処理ストップ、改行なしの行]  <-- [改行]が無いことを検知して改行追加したい

常に改行を冒頭に入れるようにすると、データのない行ができて、のちのち面倒なので、
それは避けたいと思っています。

365:nobodyさん
09/05/03 21:31:37
\n

366:364
09/05/03 21:43:26
fseek($file, -4, SEEK_END);
$string = fgets($file, 1000);
var_dump($string);

dumpしても改行部分は空白になりますよね。
例えば、検索かけて、"\n"でマッチするんでしょうか?

367:364
09/05/03 21:56:26
マッチしますね。失礼しました。m(._ _)m

368:nobodyさん
09/05/04 13:26:07 0LqkTRhF
POSTで送った引数がIE6,7では表示されない
firefoxでは表示されてる。。。
php.iniの設定変更がいるのですか?

369:nobodyさん
09/05/04 13:40:32
いらん

370:nobodyさん
09/05/04 13:53:15 0LqkTRhF
ある掲示板でvariables_orderを「EPGS」にすればとありましたが、
それでも表示されないまま。
HTMLやCSSの問題ですか?

371:nobodyさん
09/05/04 14:09:38
>HTMLやCSSの問題ですか?
それ疑う前に
ソースみて反映されてるかどうか確認してみなよ

372:nobodyさん
09/05/04 14:22:28 0LqkTRhF
list.phpからdetail.phpにsubmitしてます。
ソースは以下です。
「list.php」
<html>
<body>
<form action="detail.php" method="POST">
<input type="image" src="img/detail.gif" name="submit" value="0001">
</form>
</body>
</html>
「detail.php」
<html>
<body>
<p>詳細情報</p>
<?php
print "submit:".$_POST["submit"]."<br>";
?>
取得情報:
<?php
print $_POST["submit"]."<br>";
?>
</body>
</html>

373:nobodyさん
09/05/04 14:34:18
IEでは位置情報しか送られん

374:nobodyさん
09/05/04 15:14:34 0LqkTRhF
解決しました
type="image"でなく、hiddenでPOSTしたらうまくいきました
phpinfo()で表示された値は位置情報だったんですね

375:nobodyさん
09/05/04 15:15:04
phpinfoで出るっけ?

376:nobodyさん
09/05/05 21:05:16
DBのログを取りたいのですがどうすればいいですか?
よく不正アクセスの痕跡を見つけた と言ってますが・・・

377:nobodyさん
09/05/06 12:17:28
二つの文章があります

(☆)(★)(◇)

(☆)(★)(◇)

(★)の部分は文字列、文字数共に不確定で1,2共に全く違う文章です。
(☆)(◇)の部分は文字列、文字数共に不確定ですが1,2共に同じ文章です

(★)の部分のみを切り取りたいのですがどうすればいいでしょうか?



378:nobodyさん
09/05/06 12:18:14
すみません番号を振るのを忘れていました

(☆)(★)(◇)

(☆)(★)(◇)



1.(☆)(★)(◇)

2.(☆)(★)(◇)

379:nobodyさん
09/05/06 12:26:10
>>377
意味がわからん

380:nobodyさん
09/05/06 12:27:01
>>378
URLリンク(pear.php.net)
こんなのとか

381:nobodyさん
09/05/06 12:27:14
>>379
文章が二つあってどこが変更されたか検知するプログラムを作る場合どうすればいいでしょうか

382:nobodyさん
09/05/06 12:28:09
>>380
ありがとうございます!!こんな感じです


383:nobodyさん
09/05/06 13:20:24
>>380
やっぱりこれじゃダメでした
改行していない場合同じ文字列の部分も違う物として取得されてしまいました

改行していない文章の差分を取得したいのですが無理でしょうか・・・

たとえば

aaabbccc

axxaabbbccac

の二つの文章があった場合
xxとbとaを取得したいのです

384:nobodyさん
09/05/06 13:31:31
すみませんやっぱり大丈夫かもしれませんw
全て1文字ずつの配列にしたらしっかり判定されました
お騒がせしてすみません

385:nobodyさん
09/05/06 15:01:48
PDOを使って
MYSQLからデータ表示するコードください?

386:nobodyさん
09/05/06 15:06:38
URLリンク(jp2.php.net)

387:nobodyさん
09/05/06 15:36:58
>>386
ありがとうです
あと、実行時にApache HTTPサーバーと表示させ落とされます
どうすればいいですか?

388:nobodyさん
09/05/06 15:42:54
Apache のログ見ろよ

389:nobodyさん
09/05/06 16:04:07
>>388
! ありがとうです
なんとかできそうです

390:nobodyさん
09/05/06 16:48:50 GdRs26+o
外部サイトからLZHファイルを取得して解凍、内容を取得したいのですが、うまくいきません・・・

$url = 'xxxxx'; //ファイルのURL

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);

$filename = $path . 'test.lzh';

file_put_contents($filename, $data);

exec('lha e ' . $filename);

こんなかんじなのですが、
ファイル取得まではできているのですが、
解凍ができません;

どこがおかしいのでしょうか?

391:nobodyさん
09/05/06 16:54:27
>>383
できる

392:nobodyさん
09/05/06 17:07:04
>>390
lhaにはパス通ってるの?
execの引数でフルパスで指定してみては

393:390
09/05/06 17:32:18 GdRs26+o
>>392
レスありがとうございます。
展開先を指定したらちゃんと解凍できました;
スレ汚しすみません;;

せっかくなので聞きたいのですが、
外部からのファイル取得方法は上記でよいのでしょうか?
いちど変数に格納してfile_put_contentsで書き込むというのがなんだか回りくどい気がするのですが、
ほかに方法がありましたら教えてください!

394:nobodyさん
09/05/06 17:55:33
そらまあローカルの実ファイルが無いと無理だからなあ。
組み込んでメモリストリームから、、、とかはこのスレの範囲外かな

395:nobodyさん
09/05/06 19:39:47
一旦、全部メモリ中に展開するってのはどうなんかね。
fread/fwriteを繰り返した方がいい気もするが。

396:nobodyさん
09/05/06 23:04:45 XF4iBoH0
MySQLでテーブルを作ったとき確認する方法は
PHPで記述する場合mysql_resultでいいのでしょうか?


397:nobodyさん
09/05/07 07:02:22
$data = array(
'hoge' => 'hoge',
'fuga' => 'fuga'
);

$data = array(
0 => array(
'hoge' => 'hoge',
'fuga' => 'fuga'
),
1 => array(
'hoge' => 'hoge',
'fuga' => 'fuga'
)
);

このような配列を、前者のタイプか後者のタイプか判定したいのですが、
どのような方法が考えられますでしょうか?

よろしくお願いします。

398:nobodyさん
09/05/07 10:40:06
前者のタイプか後者のタイプかってどういうこと?

399:nobodyさん
09/05/07 11:34:01
2次元配列かどうかってことだろ?

400:397
09/05/07 12:28:43
>>398
>>399

説明が足りず申し訳ありません。
2次元配列かどうか、というか、
1次元目(?)が連想配列なのか、単純な配列なのかを調べたいのです。

現在は、

if ( isset ( $data[0] ) )
だったら、後者というように判定しているのですが・・・

401:nobodyさん
09/05/07 12:35:38
ループでキーに数値以外が含まれてるかどうか判定するだけじゃん
プログラマーならすぐ思いつくと思うが・・

402:nobodyさん
09/05/07 12:45:30
>>400
多分、PHPには「単純な配列」って無いんじゃないかな。

URLリンク(php.morva.net)
>PHP の配列は、実際には順番付けられたマップです。マップは型の一種で、 値をキーに関連付けます。

403:nobodyさん
09/05/07 13:11:43
>>402
だからキーが数値のみで
構成されているかどうかを
調べたい、ってことだろ?

専用関数あるだろ。

404:nobodyさん
09/05/07 13:25:21
>>403
それは質問者が考えればいいことだし。
ただ、「普通の配列」ってのは無いってだけで。
歯抜けな配列も作れるし、キー値だけでチェックするのもかなりびみょー。

ところで配列のキー値がすべて整数かチェックする専用関数って何?
ざっと見た感じ見当たらないんだけど。

URLリンク(php.morva.net)

405:397
09/05/07 13:25:50
>>401
それはもちろん思いついたのですが、
もう少しスマートな方法はないかと思いまして・・・


return array_keys($array) !== range(0, count($array) - 1);

こんな方法があるのを知ったのですが、
これだと、

$array(
0 => 'hoge',
2 => 'fuga',
3 => 'piyo'
);

のように、配列が歯抜けになっている場合に一致しなくなりますし・・・

>>403
専用の関数とは何のことでしょうか??

406:nobodyさん
09/05/07 13:38:16
きみの言うスマートな方法ってのは明確で解かりやすいというより
制御構造使わないような方法のこと?

407:nobodyさん
09/05/07 18:30:34
クラスってのがなかなか理解できません
どなたか詳しく解説してくれませんか?

408:nobodyさん
09/05/07 18:37:19
どこが分からんの?

409:nobodyさん
09/05/07 22:32:52
>>407
いいよ。

410:nobodyさん
09/05/07 23:13:30
このスレの先輩方はhtmlは得意でしょうか?

411:nobodyさん
09/05/07 23:28:15
おうよ

412:nobodyさん
09/05/07 23:31:35
ほんとかよwwwwwwwwwwwwwwwwwww

413:410
09/05/07 23:34:13
僕は一応html4系とxhtml1.0と1.1で、しかもstrictとtなんちゃらで使えるタグと属性を口頭で全部言えるぐらいの知識しか持ちません
xhtml1.0 strictで使えるタグの数もパッと言えるぐらいの知識です

414:nobodyさん
09/05/08 00:10:55
じゃ言ってみてくれ

415:410
09/05/08 00:13:27
>>414
76個

416:410
09/05/08 00:14:07
ちなみにhtml4.1 strictとxhtml1.0 strictで使えるタグは同じです

417:nobodyさん
09/05/08 00:16:17
はよ全部言えよ

418:nobodyさん
09/05/08 01:36:40
なんだよ質問じゃなくただの知ったかかよ

419:nobodyさん
09/05/09 08:57:00
4択問題をcsvに記録していくスクリプトを作っています。
csvに下のように書き込まれるようにしています。

名前,答え,答え,答え,答え,答え,(改行)
名前,答え,答え,答え,答え,答え,(改行)
名前,答え,答え,答え,答え,答え,(改行)

複数の人が同時に行うと、下のようにデータが混ざってしまいますよね?

Aさん,答え(Aさん),[Bさん参入で改行]
Bさん,答え(Bさん),答え(Bさん),答え(Aさん),答え(Aさん),答え(Bさん),

実際に試してみるというのがやりにくい問題なので、何を勉強しないといけないか
教えていただけますか。
そもそもCSVでこの手の記録をやろろうとするのはどうなんでしょうか。

420:nobodyさん
09/05/09 09:09:56
flock

421:nobodyさん
09/05/09 10:00:00
>>419
コード書いてもらわないと的を得た回答はでないよ

422:nobodyさん
09/05/09 17:18:10
以前$_SERVER["DOCUMENT_ROOT"]のことでググったときに
DOCUMENT_ROOTの値が実際の値とは違う場合がある事例を見ました。
とすると<base>タグやスクリプト内で絶対パスを作るときにこの変数を使うのは
危険な可能性もあるんでしょうか。
$rootPath = $_SERVER["DOCUMENT_ROOT"];
$a = $rootPath."/sample";
<base href="{$rootPath}">
また$_SERVER["DOCUMENT_ROOT"]以外にルートパス(?)を取得する方法はありますか?

423:nobodyさん
09/05/09 17:40:17
aru

424:nobodyさん
09/05/09 18:05:56
そのDOCUMENT_ROOTの値が実際の値とは違う場合がある事例を知らないけど
その事例がわかれば対応できないか?

425:nobodyさん
09/05/09 23:32:39
DOCUMENT_ROOTって、
public_htmlとか、
htdocとかのこと?

426:nobodyさん
09/05/10 00:07:15
>>425
知らない奴に聞いてねえよ
ロムってろks野郎

427:419
09/05/10 00:07:59
概略はこんな感じです。最初のifで名前の処理をした後は、最初の問題提示が
一番下のelseから始まり、まず二つ目のifに入り、その後は最初のelseの中をぐるぐるやって、
問題がなくなったら終了するような仕様です。今のところflockはあてずっぽうに入っている状態です。
15問あったとしてAさんがそれを終えるまでのすべてにろっくをかけておかないといけないのでしょうか。
複数の人が同時に問題を解けるようにしたいのですが。
if($_POST["id"] =="999"){
$file_name = "record.txt";
$file = fopen($file_name, "a+") or die("OPENエラー $file_name");
flock($file, LOCK_EX);
中略(解答者の名前の書き込み)
fputs($file, $time);
flock($file, LOCK_UN);
fclose($file);
}

if (is_numeric(@$_POST['answer']) || $_POST['id'] == "2"){
$file = fopen($file_name, "a") or die("OPENエラー $file_name");
flock($file, LOCK_EX);
if(intval(@$_POST['k']) == "0")
{
中略(正誤判定)
fputs($file, $string);
flock($file, LOCK_UN);
fclose($file);
中略(問題提示とPOST)
}


428:419
09/05/10 00:11:40
スクリプト後半です。長いので細かいところは省略してありますが、
本物は期待通り動くことは動きます。
**********
else {
$file_name = "record.txt";
$file = fopen($file_name, "a") or die("OPENエラー $file_name");
flock($file, LOCK_EX);
中略(正誤判定)
fputs($file, $string);
flock($file, LOCK_UN);
fclose($file);
//////全問終了
if($question[0] == ""){
echo "<br><br>終了です!";
中略
$file_name = "record.txt";
$file = fopen($file_name, "a") or die("OPENエラー $file_name");
flock($file, LOCK_EX);
$string = $array.",";
$time = $time."\n";
fputs($file, $string);
flock($file, LOCK_UN);//同時アクセスを防ぐロックを解除
fclose($file);
}
else{
中略(問題提示とPOST)
}
} }
else {
$fname = "voc.csv";
$data = file($fname);
中略(問題提示とPOST)}  }

429:nobodyさん
09/05/10 00:12:13
>>427
マジレスするとflock($file,LOCK_UN)はいらない
なぜならfcloseでファイルが閉じられるから

430:nobodyさん
09/05/10 03:06:05
>>427
> 複数の人が同時に問題を解けるようにしたいのですが。
全問終了時だけファイル操作(とロック)すればいいと思うんですよね。

431:419
09/05/10 07:43:14
>>429
ありがとうございます。

>>430
ありがとうございます。

そうですね。最後に一気に書き込む仕様にしておけばいいですよね。
今の仕様ですと、最初のelseの中でぐるぐると出題するごとに
各問題に対する回答者の答えを一つ一つ書き込む
仕様なので(<私の理解が間違ってなければ)、おそらく複数の人が
回答すると419のようにデータ混じるのではないかと思っています。
途中の回答を回答者ごとに一時的にどこかにためておけばいいんですね。

テンポラリーファイルを回答者ごとに別々に作成して回答を一時的に格納し、
最後にひとつの記録用ファイルに書き込むというのを今考えたんですが、
これどうでしょうか、他にもっといいやり方があるでしょうか?


432:nobodyさん
09/05/10 12:07:35 glvoYFM0
掲示板の親記事にコメントすると
その親記事にコメントが表示されますが
これってどういうアルゴリズムなんでしょうか?

433:nobodyさん
09/05/10 12:14:49
全てはデータ構造
データ構造が決まればそれに合わせてプログラムがコーディングされるだけ。

434:nobodyさん
09/05/10 20:17:25 kteLIAQk
携帯電話で対応機種を判別するWebページをphpで作っています。
エラーは出ずに動作はしたのですが、対応機種に一致しているはずなのに
一致判定を通ってくれません。
判定条件が間違っているのかもしれませんが、自分ではさっぱりわからないので
ご指摘を頂ければと思います。

【test.php】
<?php

$userAgent = $_SERVER['HTTP_USER_AGENT'];
$deviceList = file("DeviceDisplay.csv");

foreach ($deviceList as $key => $value)
{
rtrim($value);
list($name, $agent) = explode(',', $value);
print $name."<br />";
print $agent."<br /><br />";
if ((strstr($userAgent,$agen))!= false){
print "おk";
break;
}
}
print $userAgent."<br />".$agent;
}


【DeviceDisplay.csv】
903i,D903i

よろしくお願いします。

435:nobodyさん
09/05/10 20:18:00
>>434
PEAR使えば?

436:nobodyさん
09/05/10 20:21:35
$value= rtrim($value);

じゃないか?

437:nobodyさん
09/05/10 20:34:37
$getUA = $_SERVER['HTTP_USER_AGENT'];
$f = file("DeviceDisplay.csv");

foreach ($f as $k=>$v){
list($name, $ua) = explode(',', rtrim($v));
if ($getUA == $ua) {echo "csvに記録されてました";}
}

438:nobodyさん
09/05/10 20:45:09
>>437
===

439:nobodyさん
09/05/10 20:45:11
> if ((strstr($userAgent,$agen))!= false){
$agent

なんかいろいろあるな


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5370日前に更新/191 KB
担当:undef