くだすれPHP(超初心者用)5
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/11/22(土) 06:36:02ID:???もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
PHP使いが優しくコメントを返しますが、
お礼はPHPの布教と初心者の救済をお願いします。
PHP Home Page
http://www.php.net/
http://jp.php.net/
くだすれPHP(超初心者用)4
http://pc11.2ch.net/test/read.cgi/php/1213356756/
適当に関連スレ(マルチはだめぽ)
【PHP】下らねぇ質問はここに書き込みやがれ 69
http://pc11.2ch.net/test/read.cgi/php/1211879073/
0177nobodyさん
2008/12/10(水) 12:04:52ID:???例えばこんな感じ
$id = 1;
$name = 'abc';
$tel = '03-3333-3333';
$email = '';
$sth = $dbm->prepare("INSERT INTO `test` (id, name, tel, email) VALUES (?, ?, ?, ?);");
$sth->execute(array($id, $name, $tel, $email));
この場合、$email が空になってるので、''でInsertされたと同じになって、
NULLが入りませんので、これをPDOのオプションでNULLに出来たらなと・・
0178nobodyさん
2008/12/10(水) 12:13:26ID:???0179nobodyさん
2008/12/10(水) 12:33:55ID:???にすれば、NULLが入るのは分かってるのですが、、それはめんどくさいですよね。。
0180nobodyさん
2008/12/10(水) 12:47:47ID:???もし空文字のときは必ずnullでいいならば、間に関数1つかませばいいべ。
0182nobodyさん
2008/12/10(水) 12:57:33ID:???かますことにします。
ありがとうございます。
0183nobodyさん
2008/12/10(水) 13:03:54ID:???もう一つ聞いてもいいですか?
PDOとMySQL5です。
PDOを使ってSELECTをした場合、クエリーキャッシュは使われてるのでしょうか?
(PDO::MYSQL_ATTR_USE_BUFFERED_QUERYは無効にしてあります)
0184nobodyさん
2008/12/10(水) 13:13:49ID:???0185nobodyさん
2008/12/10(水) 13:18:14ID:???>>184
PHPのネイティブ関数であれば、クエリーキャッシュは効いてるですが、PDOを使うとだめぽっい。。
PHP5.2.1にアップするしかないのかなぁ・・。
0186nobodyさん
2008/12/10(水) 14:41:30ID:???をしたいのですが、どうすれば出来るでしょうか?
PHP5.2を使ってます。詳しい方いらっしゃったらおしえてください。
0187nobodyさん
2008/12/10(水) 14:48:09ID:???PHP5.2.0ってだめなの?5.1.17ぐらいから使えるはずだけど。
まぁ、書いてるんだしそうなのかな・・・
0188nobodyさん
2008/12/10(水) 15:00:33ID:???PHP5.2.0のPDOだとクエリキャッシュが効いてないみたいですね。
PDO::MYSQL_ATTR_USE_BUFFERED_QUERYを有効にすると効きますが、副作用があって。。
0189nobodyさん
2008/12/10(水) 18:06:24ID:???0190nobodyさん
2008/12/10(水) 18:38:54ID:???なので、LIMIT 0,10 とか LIMIT {$offset}, {$limit}とやれば良いんですけど・・。
0191nobodyさん
2008/12/10(水) 19:00:30ID:???メールを受信した後、それをHTMLとして表示させたいんです。
エンコード状態のマルチパートなメール(ソース?)があるとして、
それをHTMLとして出力するライブラリみたいなのとかありますか?
問題は画像の部分だと思っています。(どう実現するかイメージも沸きません)
具体的な使い方は調べますので、あるかどうかと、
名前とかヒント教えてもらえるとありがたいです。
ちなみに、レンタルサーバ借りて(Web/Mail/php/DB)
iPhoneから使えるWEBメールシステムを自分の為に作ってます
0192nobodyさん
2008/12/10(水) 19:05:12ID:???メールサーバが立ってるなら、.forward等でphpプログラムに渡すと簡単。
他所のメールサーバーでも、POPやIMAP用の関数でアクセスすることも可能。
解釈部分はPEARが実績があると思う。
0195nobodyさん
2008/12/11(木) 12:31:14ID:???ありがとうございます
>>192
PEAR MailのPOP3でメールとってますが
画像部分を一旦保存しなきゃダメですかね〜
極端な話、メールのテキストと埋め込み画像をまとめて
1つの画像に落としてくれる関数があればいいんですけど都合よすぎですね><
>>193
ネックは画像を抽出する部分とかでしょうか?
>>194
Gmailはメール入力が難ありで・・・
Yahoo!JメールはiPhone用のメール作成画面ないし・・
それと、
あるAさん宛てのメールとAさんから来たメールを抽出して
一覧で見せるようなのをイメージしてます
0196nobodyさん
2008/12/11(木) 15:16:35ID:???送信されてきたメールをプログラムに渡すにはサーバの設定が必要で、
POPから取得するとCRONの設定が必要。
メール送信して、スクリプトにアクセスするならいいけど。
0197nobodyさん
2008/12/11(木) 15:47:11ID:???それを利用すればOK
0198nobodyさん
2008/12/11(木) 15:48:27ID:???cronはいらないんじゃね?
0199196
2008/12/11(木) 17:30:03ID:???0200nobodyさん
2008/12/11(木) 22:26:19ID:nahQekTa$perPage=10;
$index=0;
for($i = $index; $i < $index + $perPage ; $i++){
$row = $res->fetchRow(DB_FETCHMODE_OBJECT,$i);
echo $row->id;
//↓$row->***を使用した処理
}
クエリ結果$resから順次行を取り出し$row->***で取得されるデータを使って処理をしたいのですが、echo $row->idを実行してもなにも表示されません(ソース上も)。
$row = $res->fetchRow(DB_FETCHMODE_OBJECT,$i);
↑この部分がおかしいんだとは思うんですが・・・
0201nobodyさん
2008/12/11(木) 22:51:56ID:???そのままだと$rowでbreakする必要があるかもしれないけど。
0202nobodyさん
2008/12/11(木) 22:54:53ID:nahQekTaレスありがとう
本当は$indexに現在のページ数が入って$indexの時は1〜10行目まで、$index=2のときは11〜20行目までという風に処理をさせたいのでfetchrowに$iを使わずwhileなどで処理できないんですorz
0203nobodyさん
2008/12/11(木) 23:04:10ID:???それ、結果セット時点でseekしといた方がいいんじゃないの?
全結果セットから、毎回行指定じゃ重いでしょ。
とはいえ、やりたいことができない理由は他にあるだろうね。
クエリが間違ってるとかない?
0204nobodyさん
2008/12/11(木) 23:12:27ID:???レスどうもです。
まだ勉強中なのでseekっていうのが・・・・
結果セットから配列なりに格納して結果セットを開放しておくということでしょうか?
クエリのコードは
sql = "select * from table ORDER BY id DESC ";
$res =& $db->query($sql);
if (PEAR::isError($res)) {
die($res->getMessage());
}
で、他のwhileで全行取り出しした場合には上手くうごいてくれているのでクエリは大丈夫かと思うのですが・・・
0205nobodyさん
2008/12/11(木) 23:46:54ID:???ところで、クエリにLIMITを含めておくわけにいかないの?
あと、fetchRowの行指定は1回だけ発動して、あとはループでいいと
思うんだけど。
あと、単にフィールド名が違うとかじゃないよね?
var_dumpとかしてます?
0206nobodyさん
2008/12/12(金) 01:30:02ID:???0207nobodyさん
2008/12/12(金) 11:46:01ID:MaDVXqed$rc = mkdir($dir, 0755);
でディレクトリーを作ったら所有者がwwwになります
これをuserにして作ることはできないのでしょうか?
よろしくお願いします
0208nobodyさん
2008/12/12(金) 12:32:00ID:???しかし、対応としては
Webサーバーの実行ユーザーを変えるか
root権限wで実行してchownもしくは、mkdirのオプションを買うか
CGIモード+suexecで起動するか、
setuidした別のラッパーをかますか、
ま、そんなとこだろう。
0209nobodyさん
2008/12/12(金) 12:51:31ID:???0210nobodyさん
2008/12/13(土) 14:37:33ID:???0212nobodyさん
2008/12/13(土) 22:52:57ID:6AnKxTPA0213nobodyさん
2008/12/13(土) 23:02:04ID:???0214nobodyさん
2008/12/14(日) 00:20:22ID:???ところが諸事情の為にレンタルサーバを借りて、自宅サーバで運営していいる物とは異なる
別のphpサイトを構築しようと思っているのですが、現在は自宅サーバで運営しているサイトは、
C:\Program Files\Apache Software Foundation\Apache2.2\htdocs
の直下に配置されたphpのみが起動する作りになっておりますが、
ASP.netの様にプロジェクトごとにディレクトリを分ける事は、出来ないでしょうか?
例)
@C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\自宅サーバ\index.html
AC:\Program Files\Apache Software Foundation\Apache2.2\htdocs\レンタルサーバ\index.html
要するに開発しているサイトによってディレクトリを分けたいです。
0215nobodyさん
2008/12/14(日) 00:21:45ID:???0216214
2008/12/14(日) 00:38:16ID:???動的ページを静的ページにする (mod_rewrite)
というページがトップに表示されたのですが、いまいち私のやりたい事は実現出来なさそうです。
私の認識が誤っているだけかもしれませんが、その「rewrite」というのは
一体何なのでしょうか?
もし参考になうサイトをご存知でしたらお教え願います。
0217214
2008/12/14(日) 00:52:09ID:???mod_rwrite
という方法を使わなくてもディレクトリをもう一つ用意するだけで事足りました。
0219nobodyさん
2008/12/14(日) 01:51:30ID:???0221212
2008/12/14(日) 12:58:16ID:vrT8sAoj0222nobodyさん
2008/12/14(日) 13:21:34ID:???0224nobodyさん
2008/12/14(日) 15:06:54ID:???とかじゃだめなん?Windowsでやった事ないから勘だけど
0225nobodyさん
2008/12/14(日) 15:11:30ID:???0228nobodyさん
2008/12/14(日) 17:42:47ID:???0229nobodyさん
2008/12/15(月) 06:26:47ID:???連続して fopen() , fwrite() , fclose() をコールすることと等価です。
この関数ってどうなの?
0230nobodyさん
2008/12/15(月) 06:49:26ID:???0231nobodyさん
2008/12/15(月) 06:52:34ID:???PHP5なら好きなほう使えばいい
0232nobodyさん
2008/12/15(月) 12:09:28ID:???youtubeみたいな動画共有サイトを作りたいのですが、動画のアップロードは出来るのですが、
アップロードされた動画をサムネイルで表示する方法がわかりません。どなたか詳しい方いらっしゃったら
教えてください。
0233nobodyさん
2008/12/15(月) 12:27:15ID:???それよりも作るのはかまわないけど公開するならインフラ周りのこと考えろよ?
まわりに迷惑かけるのだけはやめてくれな
0234nobodyさん
2008/12/15(月) 22:35:55ID:???インフラを考えずに作ったって糞遅くなるのは目に見えてるよw
しかも維持費にどれだけ金が掛かると思ってるんだろうね。
一流のエンジニアが集まって作られているYouTubeですらあれだけ
重いのに。
0236nobodyさん
2008/12/15(月) 23:16:47ID:???回線速度の面で微妙かもしれんが
0237SF4マニア
2008/12/16(火) 01:03:15ID:???趣味で2年程前からphpでWEBシステムを作っています。
私は、実務でphpを使ったWEBシステムの構築は行った事がないのですが、
実務ではどういった開発環境でphpを使ったWEBシステムの構築を行っているのでしょうか?
因みに、自分はsakuraエディタだけです。
正直、画面のレイアウト等プログラミング以外の部分で時間を取られており、
ASP.net(VS)での開発と比べて無駄に工数が掛かってしまう感が否めません。
皆さんは、どういった環境でphpWEBシステム(サイト)を構築しているのでしょうか?
開発工数を大幅に削減出来るお勧めソフトがあればぜひお教え願います。
0239nobodyさん
2008/12/16(火) 01:19:53ID:???0240nobodyさん
2008/12/16(火) 01:22:14ID:???という事は、画面の作成はデザイナに任せてシステム部分だけをphp(マ)が開発していいるのですか?
>>239
オススメのソフトはありますか?
VSのデザイナ画面は個人的に非常に使い易いです。
0241nobodyさん
2008/12/16(火) 01:22:54ID:???0244nobodyさん
2008/12/16(火) 01:51:06ID:???それとも、デザイナーという、ソフトのこと?
0245nobodyさん
2008/12/16(火) 02:13:10ID:???0246nobodyさん
2008/12/16(火) 02:20:37ID:???ボタン配置とかして直感的にデザインしたものをコード変換する機能のことか、
職業としてのデザイナーのことかどっちなの?
0248nobodyさん
2008/12/16(火) 20:12:46ID:XMobQjfA>>112さんの教えてくださった
$url = array(1 => "リンク1", 2 => "リンク2", ....
uksort($url, "cmp");
print_r($url);
のとこを、
$url = array(apple => "リンク1", banana => "リンク2", ....
uksort($url, "cmp");
print_r($url);
みたいにidを数字ではなく文字にしたい場合どう書けば同じように動作するか教えてほしいです
宜しくお願いします。
0249nobodyさん
2008/12/16(火) 20:19:24ID:???0251nobodyさん
2008/12/16(火) 21:20:01ID:???ありがとうございます
説明不足ですみません。やってみましたがこれはアルファベット順で並ぶのでしょうか?
キー順でソートしたいのです。
一応自分なりに調べてはいるのですが
foreach ($url as $key => $value)
なんて文をどこかへ追加って感じで方向は合っているでしょうか?
0252nobodyさん
2008/12/16(火) 21:22:18ID:???0253nobodyさん
2008/12/16(火) 21:25:19ID:???ちなみに並ぶけどさ、やってみたんなら並ぶかどうか確認できるでしょ?
配列の並べ替えが終わったら、foreachでもeachでも好きなループ組めば?
0254nobadyさん
2008/12/17(水) 17:32:12ID:???する事って出来るのでしょうか?レベルが高いかも知れませんが、詳しい方がいらっしゃったら
教えてください。
0255nobodyさん
2008/12/17(水) 17:42:39ID:???0256nobodyさん
2008/12/17(水) 17:52:54ID:???ffmpegインストールしてphpから呼び出して使えば出来ると思う。
0257nobodyさん
2008/12/17(水) 18:01:15ID:???0258nobodyさん
2008/12/18(木) 05:46:38ID:???PDOでPostgreSQLにアクセスしています。
ところが、全部PDOメソッドだけで実現できないことがあり、
PDOとpg_*関数を混在使用するハメになりました。
そこで質問ですが、
PDOオブジェクトで、pg_*を使うためのデータベースハンドル
を得ることはできるのでしょうか?
できないのなら、PDOでのDB接続とは別に、pg_connectで
DB接続する必要があるということでしょうか?
0259nobodyさん
2008/12/18(木) 07:10:30ID:???0260nobodyさん
2008/12/18(木) 09:11:27ID:???PDOで、PostgreSQLのbytea型に格納してあるバイナリデータを
読み出そうとすると、不具合があるようなのです。
(公式情報ではないので自分の勘違いかもしれませんけど)
そこでほとんどの処理はPDOで行い、bytea型のR/Wのみ
pg_*関数を使いたいと思っています。
(pg_escape_bytea()とか)
0261nobodyさん
2008/12/18(木) 09:45:27ID:???0262nobodyさん
2008/12/18(木) 13:15:36ID:???0263nobodyさん
2008/12/18(木) 17:34:01ID:???具体的には
http://test/user/favorite
のようなものを作るにはどうしたらよいですか?
0266nobodyさん
2008/12/20(土) 19:15:51ID:???「ソ」と「\」を入力した場合には「\」がどんどん追加増加されるのですが
原因がわかりません。
以上の問題の解決の仕方や、検索でSQL文やPHP言語やHTMLを入力された場合の
表示にバグを発生させない方法をご存知の方、どうか教えて頂けないでしょうか
0268nobodyさん
2008/12/20(土) 22:06:37ID:maii3k3G1 2 3 4 5
ではなく
0 1 2 3 4
とゼロから始めるにはどうすれば良いでしょうか?
0271nobodyさん
2008/12/20(土) 23:16:59ID:???俺なら迷ってる時間があったら丸ごと全部再実装する
0272nobodyさん
2008/12/20(土) 23:18:25ID:???0273nobodyさん
2008/12/20(土) 23:18:35ID:???0274269
2008/12/21(日) 01:06:19ID:???>>273さんのやり方で例えば
ttp://www.phpbook.jp/pear/pear_pager/index4.html
このページではどこで-1すれば良いでしょうか?
0275nobodyさん
2008/12/21(日) 01:23:54ID:???■ このスレッドは過去ログ倉庫に格納されています