【PHP】ID出さなくても質問OKなスレ【初心者歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2009/02/03(火) 01:09:36ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
0252nobodyさん
2009/04/13(月) 23:24:39ID:???.NetのArryalListに似たコードはありますか?
0253nobodyさん
2009/04/13(月) 23:25:34ID:???0255nobodyさん
2009/04/14(火) 01:30:13ID:???0256nobodyさん
2009/04/19(日) 19:33:07ID:gK+IYAFSですのでファイルが破損したらアウトになるわけなんですが、破損防止として出来る対策というのはどういったものがあるのでしょうか?
0257nobodyさん
2009/04/19(日) 19:35:55ID:???0259nobodyさん
2009/04/19(日) 20:00:24ID:???0260nobodyさん
2009/04/19(日) 20:10:55ID:???それからcount.txtにリネームする、
ってよく聞くけど、なんの意味がある?
0261sage
2009/04/20(月) 09:33:36ID:???PHP単体にアクセスをすると表示されるのですが、HTMLの中に表示すると実画像がない場合に表示される
アイコンになります。
PHP(sample.php)の中に
<?php
print "<img src=\"sample.jpg\">";
?>
と書いた場合はHTMLには<img src="sample.php">では表示されないのでしょうか?
念のためにPHPのプリントの前に
header('Content-Type: image/gif');
を置いて見ましたがダメでした。
どのようにすれば表示されますか?
0262261
2009/04/20(月) 09:36:06ID:???×:header('Content-Type: image/gif');
↓
○:header('Content-Type: image/jpg');
表示方法をご存じの方おられたらアドバイスください。
0263nobodyさん
2009/04/20(月) 09:49:59ID:???<?php
header('Content-Type: image/jpg');
print "<img src=\"sample.jpg\">";
これがimage/jpgなわけない
sample.jpg自身を出力すればいいよ
0264261
2009/04/20(月) 10:12:37ID:???レスありがとうございます。
sample.jpg自身を出力ですか?
PHPが取得する内容によってsample.jpgは毎回変わるので
htmlの中にimgタグでsample.jpgを書くってことではないですよね。
私の方で何か凄い勘違いしてますか?
0265nobodyさん
2009/04/20(月) 10:26:29ID:???0266nobodyさん
2009/04/20(月) 10:47:10ID:???そのまま出力するんだよ。
0267261
2009/04/20(月) 10:47:38ID:???htmlにsample.jpg自身を出力すればよい
ってことになると思いますが、sample.jpg自身はPHPから引っ張ってくるので
htmlの中の記述としてはsample.phpになるかと思います。
php自身にsample.jpg自身を出力させるということでしょうか。
ファイルの拡張子を変更してみたりしましたが特に進展はありませんでした。
アホな私にもう少しだけ助言いただけないでしょうか。
本当に申し訳ないです。
0268nobodyさん
2009/04/20(月) 11:26:33ID:???<?php
header("Content-type: image/jpeg");
print file_get_contents("sample.jpg", FILE_BINARY);
?>
0269261
2009/04/20(月) 11:26:54ID:???freadで読み込んでやれば出来るようになりました。
つまらない質問に長々とつきあっていただきありがとうございました。
0271sage
2009/04/20(月) 11:59:35ID:???>>268だと複数画像って表示出来ないよね
header("Content-type: image/jpeg");
print file_get_contents("sample1.jpg", FILE_BINARY);
print file_get_contents("sample2.jpg", FILE_BINARY);
この場合sample1.jpgのみ表示されるけどこれって俺のサーバーの環境に依存してる?
0272nobodyさん
2009/04/20(月) 12:03:23ID:???0273nobodyさん
2009/04/20(月) 12:09:14ID:???0274nobodyさん
2009/04/20(月) 12:19:37ID:???実行するタイミングによってなのか、
parser error : StartTag: invalid element nameが発生するときとしない時があります。
原因に心当たりがあれば教えてください。
0275nobodyさん
2009/04/20(月) 12:20:11ID:???0276nobodyさん
2009/04/20(月) 13:25:43ID:???一行じゃ足りなかったらもうちょっと増やしてもいいよ
0277nobodyさん
2009/04/20(月) 13:33:20ID:???0278nobodyさん
2009/04/20(月) 15:16:17ID:???nameの値だけ取り出して新たな配列を作る関数はありますか?
$arr = array(
array("id"=>"1", "name"=>"aa"),
array("id"=>"2", "name"=>"bb"),
array("id"=>"3", "name"=>"cc")
);
欲しい配列は{"aa", "bb", "cc"}です。
0279nobodyさん
2009/04/20(月) 15:18:18ID:???0280278
2009/04/20(月) 15:35:47ID:???追加モジュールが必要ということですね。
0281nobodyさん
2009/04/20(月) 15:40:57ID:???「このボタンが押されれば、このページを表示する」という処理を行いたいのですが、
どのようにすればできるのでしょうか?
0282nobodyさん
2009/04/20(月) 15:41:28ID:???0284281
2009/04/20(月) 15:56:10ID:???どうしても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ページ目
をそれぞれ表示したいと考えています。
0285nobodyさん
2009/04/20(月) 16:02:39ID:???<input type="hidden" name="page" value="<?php echo $i; ?>">
あとHTMLの仕様上、ボタン1つにつきformも1つね。
まぁ1つのform内で異なるパラメータ付けた複数のsubmitボタン使えたら確かに便利なんだけど。
0286nobodyさん
2009/04/20(月) 16:06:08ID:???-----------------------------------------
<?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>
-----------------------------------------
0287281
2009/04/20(月) 16:15:51ID:???なるほど、フォームを複数使うというのもありなんですね。
ボタン名はどれも同じで考えていますので、valueの値で判別するのはできないですね。
ボタンのネームに配列を使えれば、1つのフォームでもいけそうな気がするのですが、
そういうのってできるのでしょうか?
phpに手をつけはじめたばかりなので、書き方が思いつかない・・・
0288nobodyさん
2009/04/20(月) 16:20:41ID:???<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
}
0289nobodyさん
2009/04/20(月) 16:23:51ID:???個人的にはあまり好ましくないやり方だと思ってたけど
0290nobodyさん
2009/04/20(月) 16:30:24ID:???0291nobodyさん
2009/04/20(月) 16:31:52ID:???0292281
2009/04/20(月) 16:33:24ID:???288さんのやり方で頑張ってみようとおもいます。
ありがとうございました。
0293nobodyさん
2009/04/20(月) 17:49:16ID:???0294nobodyさん
2009/04/21(火) 02:20:57ID:/739X32Bやりたいことはttp://hoge.com/item/1111/item.php
というページにアクセスした場合、動的に商品ID「1111」に一致する商品内容を表示したいです
商品IDごとにディレクトリを作ってhtmlも作るというのは現実的ではないと思い調べていたら.htaccessを知りました
そこで質問ですが、itemディレクトリに.htaccessを置いて、ディレクトリが無いので404エラーを出し
itemディレクトリに設置してあるitem.phpを表示するようにする
そのitem.phpでディレトクリ「1111」を取得して商品IDとして処理する方法って出来るのでしょうか?
出来る場合は邪道でしょうか?
0297nobodyさん
2009/04/21(火) 07:01:25ID:???PHPでブログ自作で、カレンダーで記事のある日だけリンクを張る
仕組みがどうしてもわかりません
後日付関係全般。どのように処理してるのか、仕組みを教えて下さい
mysqlでもいいです。
0298nobodyさん
2009/04/21(火) 07:10:45ID:???0299nobodyさん
2009/04/21(火) 07:11:25ID:???0300297
2009/04/21(火) 08:05:00ID:???個数とかって記録すべきか、一回一回数えるSQLで行くべきか
悩みます
0301274
2009/04/21(火) 10:08:05ID:???わかる方いらっしゃいませんか?
0302nobodyさん
2009/04/21(火) 10:37:43ID:???0303nobodyさん
2009/04/21(火) 14:24:33ID:???そういう冗長性が発生するチューニングは遅いと思ってからやった方が良いんじゃない。
適切にインデックスつければよっぽど問題にならんし。
0304nobodyさん
2009/04/21(火) 22:37:51ID:???foreach(explode(',',$a) as $v) echo $v;
こう書くのってどう?キモい?
0305nobodyさん
2009/04/21(火) 23:23:43ID:???一人で使う分にはいいがいろんな人に見せるなら見栄えを取った方がいい
0306294
2009/04/22(水) 00:51:27ID:???ありがとう
今までやってたけどうまくいきました
使ったものは$_SERVER['PATH_INFO']だけど、ここにたどり着けた事に感謝
0308nobodyさん
2009/04/22(水) 01:55:32ID:???一度文字列に代入する理由が分からないが、explodeで配列にするのだから、
foreach (array(1, 2, 3, 4, 5) as $v) echo $v;
でよくね?
0309nobodyさん
2009/04/22(水) 11:07:24ID:???それだと使いまわせない
0310nobodyさん
2009/04/22(水) 11:43:35ID:???0311nobodyさん
2009/04/23(木) 18:29:33ID:???で、よくある「http://x-comic.info/」みたいにタグの部分をクリックすれば一覧が表示されるページ作りたいんだけど、
具体的な作り方が何を見ても載ってないというか俺が無知すぎて分からないというか・・・
こういうやり方が載ってるサイトとか書籍とかってないの?
0312nobodyさん
2009/04/23(木) 18:30:33ID:???0313nobodyさん
2009/04/23(木) 18:39:15ID:???0314nobodyさん
2009/04/23(木) 19:29:14ID:???でも他にいいサイト思い付かなかったんだよ。
一般系のデータベースサイトで似たような構成のとこあったら教えてもらえると嬉しい。
知人に聞こうと思ったりもしたんだがここのエロ系データベースサイトくらいしか思いつかなくて聞けなかったんだわ
話は戻るけど>>312さんの言うとおりタグの部分(クリックすると一覧が出る)ところの作り方です
0315nobodyさん
2009/04/23(木) 19:56:26ID:???多対多の結合だからちょっと難しいかもね。
データの件数にもよるが、真面目につくろうとすると↓のような感じで3つのテーブルが必要。
books(id、 name)
tags( id、 name)
books_tags( book_id、 tag_id)
あとはセレクト文でごにょごにょ。
0318nobodyさん
2009/04/23(木) 23:21:30ID:???0319nobodyさん
2009/04/24(金) 01:27:59ID:???0320nobodyさん
2009/04/24(金) 04:39:48ID:???っていうか、自分なら、ブック名も変更されたりかぶったりする可能性がないなら、
こっちもID化しないかなぁ。
データベース直接見た時にラクだから。
大概はインデックス貼っとけばパフォーマンスは、確保できるし。
0321nobodyさん
2009/04/24(金) 23:37:47ID:???0322nobodyさん
2009/04/24(金) 23:42:55ID:???0323nobodyさん
2009/04/27(月) 15:32:30ID:???readfileの部分をHTMLタグのimg srcにするとちゃんと全部表示されます。
1個目は表示されているので間違ってはいないと思いますが、
大して理解出来ていない私にどこに問題あるのか突っ込みいれてもらえないでしょうか。
header("Content-type: image/gif");
// 画像表示
for($i = 1; $i < 10; $i++){
$num = substr($count , $i , 1);
readfile($num . ".gif");
}
0324nobodyさん
2009/04/27(月) 15:41:55ID:???最終的にどうしたいのか
0325323
2009/04/27(月) 15:46:02ID:???>>323だとindex.htmlに表示することが出来ないのでHTMLに<img src〜といった形で
呼び出せるようにしたいと考えてます。
iframeも考えたのですがデザイン上それがダメということでどうにか出来ないものかと思ってます。
0326nobodyさん
2009/04/27(月) 16:00:26ID:???0327323
2009/04/27(月) 16:17:06ID:???画像は日によって表示されるものがかわるので
HTMLにimg srcで固定してしまうわけにはいかない状態です。
またHTMLにimgタグでphpを指定しても1個しか表示されないので
複数画像分の指定がどのようにすれば出来るのかが分からない状態となっております。
0328nobodyさん
2009/04/27(月) 17:12:23ID:???変更できないhtmlファイルの中に可変個の画像を置きたい、ということでいいのか?
0330nobodyさん
2009/04/27(月) 17:31:11ID:???0331nobodyさん
2009/04/27(月) 17:39:04ID:???方法としては、複数の画像をPHPで1個にくっつけて出力。
IMGタグを複数書く手段を考える。
のどっちか。
IMGタグをPHPの出力で複数にしつつ、SRC="xxxx.php?param=1"とかやればいいように思うけど
0332327
2009/04/27(月) 17:42:52ID:???実際に試してみましたがうまくいかないようです。
今だに>>323のソースで画像が1個しか表示されない理由が不明なのでがんばってみます。
0333nobodyさん
2009/04/27(月) 17:54:20ID:???includeについては、HTML側を.phpにしてincludeすれば良いだけよ
PHP入門サイトを適当に流し読みして、
せめて何が出来るのかを理解してみたほうがよい
0334nobodyさん
2009/04/27(月) 18:06:26ID:???>今だに>>323のソースで画像が1個しか表示されない理由が不明なのでがんばってみます。
コーラを飲んだらゲップがでるるくらいあたりまえなんだが
HTML自体わかってないのか
0335nobodyさん
2009/04/28(火) 05:11:21ID:???ってサイトに巡り合ったとします。
それでGoogleにあるキャッシュってを押しても中身を見れず
ログインする必要がありますって言われるのはなんでですか?
GoogleのROBOTがそのページを収集してると思うんですけど
PHPでは何の関数を使ってるんですか?
0336nobodyさん
2009/04/28(火) 11:29:29ID:???上:クローラーがログインできるわけないから
下:GoogleがPHPの何の関数を使ってるかということ?
0337nobodyさん
2009/05/01(金) 17:40:52ID:???foreachで値を.","で区切って
12,14,33,11,18,
ってなるまではいいのですが、最後の値18の次の","は消すことできますか?
12,14,33,11,18
にしたいのですが、お願いします。
0338nobodyさん
2009/05/01(金) 17:58:39ID:???0340nobodyさん
2009/05/02(土) 11:01:45ID:V+mNLWboPHP上で生成したメールメッセージをGmailのINBOXに保存したいんだけど、
mail_composeとかmove関数が実装されてない?
0341nobodyさん
2009/05/02(土) 11:36:05ID:V+mNLWbo0342nobodyさん
2009/05/02(土) 17:12:13ID:???みんなPEARとか使ってんの?
0343nobodyさん
2009/05/02(土) 21:20:35ID:+TEZ3ZO9smartyで年月選択のセレクトボックスをつくりたいのですが、リストの内容を、「現在の年からさかのぼって30年」というふうにしたいのです。
また、それとは別に「現在年から3年後」までのリストも表示したいです。
どこに何をいれれば表示できるのかさっぱりわかりません。
よろしくお願いします。
Apache 2.2.11
MySQL 5.1.33
PHP 5.2.9 です。
0344nobodyさん
2009/05/02(土) 21:54:01ID:???↓
0345nobodyさん
2009/05/02(土) 22:47:23ID:???思いっきり標準であるが
http://www.smarty.net/manual/ja/language.function.html.select.date.php
0346nobodyさん
2009/05/03(日) 05:25:43ID:???今参考にしてるソースに一見簡単そうなのに未知の記号が出てきて、完全読解不能に陥ってます
ググりたいんですが何でググればいいか手がかりがなくてちょっと質問させてください
$number = ($_GET['n']) ? $_GET['n'] : count($r->getItems());
この行の「?」と「:」と「->」はいったいPHPの何を勉強すれば出てくるんでしょうか
この行が何をしてるのかわからないばっかりに変にいじってAnhttpdが強制終了しまくりますw
0347nobodyさん
2009/05/03(日) 06:31:10ID:???0348346
2009/05/03(日) 07:49:18ID:???ひょっとして三項演算子ってifとelseでいいんじゃとか思うのは素人だからですね・・・
0349nobodyさん
2009/05/03(日) 10:06:03ID:???ありがとうございます。
実はここに書き込む前にこのページを検索して見つけてはいたのですが、どうやって記述すればよいのかまったくわかりません。
ためしにsmartyのなかに{html_select_date}とかいてみましたがそのまま出てきてしまいました 汗
まったくのど素人で申し訳ないのですがよろしくお願いします。
0350nobodyさん
2009/05/03(日) 10:30:25ID:???別にif-elseでいいよ
三項演算子は可読性が悪いから
会社とかだと大抵コーディング規約で禁止されてる
変数に入れられるのは結構いい場面もあるけどね
例にもあるように$_GETや$_POSTなんかをセットするときには便利
0352nobodyさん
2009/05/03(日) 10:37:40ID:???■ このスレッドは過去ログ倉庫に格納されています