3 :
nobodyさん :2005/09/03(土) 13:01:20 ID:30OL2LBW
1さん乙 移ってきますた。
>>3 すごいっす。
初心者なのでソースはよくわかりませんが・・・
ただ>>*形式のレスアンカーが効かなくてちょっともったいないので、
<a name="レス番">を各レスに埋め込んでおいてレスアンカーで
そこに飛べるように置換してみたらどうでしょ。
あと、inline_linkのコードはどこにあるのだろう・・・
$str=ereg_replace("(https?|ftp)(://[[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+)","<a href=\"\\1\\2\" target=_blank>\\1\\2</a>",$str);
うちで使っているのはこれだけど、借り物なので意味わからずに使っていたり。
あ、間違えた・・・
7 :
3 :2005/09/03(土) 13:37:34 ID:30OL2LBW
>>5 同ディレクトリにddd.incというファイルがあって、それをインクルードしています
僕もインラインリンクはそれを使ってます!一応ftpのとこは削除してます
正規表現は今勉強中で僕もよくわかりません・・・
そういえば2chのdatって、出力時にレスアンカーを置換してるんじゃ ないんだったっけか・・・ 一旦レスデータからstrip_tagsで<br>以外のタグを消して、もう一度 処理しなおせばいいのかな。
9 :
nobodyさん :2005/09/03(土) 14:12:26 ID:30OL2LBW
>>9 仕事速いなーw
じゃあ次はAjaxでレス先をリアルタイムにポップアップとか。
11 :
nobodyさん :2005/09/03(土) 14:19:12 ID:30OL2LBW
12 :
nobodyさん :2005/09/03(土) 14:20:42 ID:30OL2LBW
>>10 ていうかまずjavaスクリプトすらできねーw
13 :
nobodyさん :2005/09/03(土) 14:22:57 ID:30OL2LBW
静的HTMLとして吐き出させたいけど知識がないのでできない・・・
>>13 ソース読んでみた。
1つバグっぽいのがあるんだけど、
Ins_read::make()
の中にある
exitはいらないんじゃないかな。
15 :
nobodyさん :2005/09/03(土) 14:29:13 ID:30OL2LBW
>>14 ほんとだ!気づきませんでした
ありがとうございます
17 :
nobodyさん :2005/09/03(土) 14:33:21 ID:ELI2Chla
スレ立て乙。 おりはPHP初心者。 ネットのみで勉強しようかなと思ったけど、やっぱり本があった方がいいね。 マンモス本と呼ばれる本がPDFであったけど、読んでてつかれた。 とりあえずPHPの書籍は「はじめてのPHP言語プログラミング入門」あたりを買おうと思う。
いろいろ本を買ってみたけど結局一番役に立ったのはPHPポケットリファレンスだったりする。
19 :
nobodyさん :2005/09/03(土) 14:42:00 ID:30OL2LBW
>>16 thanks!!でもやっぱAjaxはむずかしそうだな〜
ちょっとJsの基礎を学んでからじゃないとできなさそう・・・
HTML生成をがんばってみます
2chは特定の板以外馴れ合い禁止だって知ってる? ウザいからsageろ
今、さっき届いた「改訂新版 基礎PHP」って本を見て勉強してる。 結構難しい・・
自分もこっそり参加ー 本屋3件くらい回ってとりあえず「10日で覚えるPHP」みたいな本を買ってみた。 1日目のやつで既に挫折しそうだ…_| ̄|○
23 :
nobodyさん :2005/09/04(日) 02:07:56 ID:Xe72iwaX
2chで共同制作をすると煽りに潰される、というのが長年の伝統なわけだけど、
このスレは個人個人が好きに作っているから、プロジェクトとしては
潰れようがないところがいいね。
webprogなんて時間さえかければ一人でも作れるしな。
>>23 >>20 が怒っているのでsageでよろ
XREA(Linux、Apache、MySQL)でお買い物サイトを作ろうと思っています。 テスト環境を自分のパソコン(Win2000)で構築したいのですが、サーバソフト は何を使ってもいいのでしょうか? それとも素直にApacheを入れておいた方が幸せになりますか?
と思われます。 anhttpdでやってみたけどちょっと不安定だったし。 Perlの時はanhttpd、PHPの時はApacheで使い分けてる。
配列の末尾の要素を取り出して変数に入れたいのだけどわからない。 4ヶ月も触っていてこれかと思うと自分が情けなくなるのぅ。 //取り出して$strに入れる $str=array_pop($hairetu); //減っちゃうので元に戻す array_push($hairetu,$str); こんな回り道な方法しかないとも思えないのだけど・・・
>>27 マニュアルの配列関数のページをくまなく見ると
いい関数がありますよ
Perlだと$hairetu[-1]でアクセスできたのだけどなあ・・・
>>26 やっぱりそうですか。
私もPerlでanhttpを使っていたので、anhttpでいけるのならそうしようと思っていました。orz
>>32 あっ、サンクス。
1クリックで開発環境を一度にインストールするツールもあるんだ。
紹介してもらったスレに誤爆してもうた。。。orz
>>22 「10日で覚えるPHP」はあまり良くないらしい。
PHPの基礎である関数、演算子、制御構造の説明が少ないからどうとか、、、
オイラは改訂新版基礎PHPと10日の二つを買ったけど、前者の方が、PHPを勉強してるっていう感じがする。
最初はPHPの基本的な文法の説明からはじまって、
後半で掲示板とスケジュール管理アプリケーションをつくる。
それに、章ごとに練習問題があるから勉強したことを確認できる
後者はPHPの勉強というよりは紹介してあるプログラムを作っておしまいっていうような・・・。
たしかにプログラムとかをつくるから楽しいけど。
本屋で立ち読みしてみればどうかな?
>>35 すごいなー
祝日の判定とか、どうやってるんですか?これ。
40 :
39 :2005/09/04(日) 22:00:58 ID:???
41 :
22 :2005/09/04(日) 22:42:45 ID:???
>>34 改訂新版基礎PHP自分も持ってる。そうかそっちの本の方がいいのか…。
最初、はじめてのPHP(都ひさおて人が書いた方)って本読んで全然意味がわからんかったので
10日で〜を買ってみた。
別の本屋行ったらまたよさげな本みっけたので基礎PHPも買ってみた。
本増えても自分でPHP書けなきゃ意味ないけどね'`,、(ノ∀`)'`,、
ガンバルス(`・ω・´) 34さんサンクス!
「PHP5逆引き大全」さっき買ってきたとこ やっぱ逆引きあると便利だなあ
なんかここまで休日判定面倒なら毎年その年度の休日の定義ファイルをつくちゃった方が楽な希ガスw
そうだね。 10年も20年も先に同じの使ってるわけないだろうし。
>>41 おたがい頑張ろうお!
---けえかほおこく1――9がつ5日---
今、基礎PHPのP.112まで読んだところ
大体の意味は理解できたと思うけど、本をみながらじゃないと書けない・・・
配列は理解するのに少し時間がかかった
ビット演算子ってのは、2進方とか10進方が分からないから理解できなかったw
これって重要なのかな・・・
今のところはつまずいてないけど、クラスとかオブジェクト指向らへんでつまずきそうな予感(´・ω・`)
>>42 自分もなんか一つリファレンス本がほしいなぁと思ってたところ
「PHP5逆引き大全」と「PHPポケットリファレンス」どっちにしようか迷ってる。
それとも、もう少し基礎を固めてからの方がいいのかな
みんな真面目だなあ。 俺は困った時だけポケットリファレンスを開く程度。 ほとんどの場合、それすら面倒くさくてGoogle検索してコピペするw おかげさまでDBも正規表現もオブジェクト指向もさっぱりだぜひゃっほう。 こんな風になっちゃいけないよ。
既存のスクリプトを弄ってみて、ある程度は理解できてきたように感じるけど 多次元配列となると、ちんぷんかんでわかんねー
>>45 ビット演算子は、PHPみたいなスクリプト言語じゃあんまり使わない。
使えば容量圧縮・負荷削減に繋がる場合もあるけど、最近の環境からしてみれば微々たるものだし
多少オーバヘッドがでかくなっても、移植性のいいアスキーデータで扱うべき。
2進は中学か高校でも習うしょ。指が1本しかない状態で数を数える方法、って考えればいい。
8, 16進は2進をそれぞれ3, 4桁ごとに区切った物だと覚えれば不都合ない。
>>47 多次元配列は変数が色んな方向に並んでるだけで、特に難しく考える事は無い。
1次元が変数の行列で、2次元が表、3次元がルービックキューブ、って考え方を基本にして、
4次元はルービックキューブを1次元に並べた奴 = ルービックキューブの行列(n番目のルービックキューブのx, y, zという指定の仕方)
5次元はルービックキューブを2次元に並べた奴 = ルービックキューブの表(x2, y2のルービックキューブのx, y, z)
6次元はルービックキューブを3次元に並べた奴 = ルービックキューブを1ピースにしたルービックキューブ(x2, y2, z2のルービックキューブのx, y, z)・・・
あとは、ルービックキューブ状になったルービックキューブを1つのルービックキューブとして扱って後はループ、って感じ。
>>48 おぉ、アドバイスありがとうございます_| ̄|○
ビット演算子はあまり使わないんですね。
安心しましたw
あんまり実際に使わないといっても、プログラマとしては(サンデープログラマでも) 理解しとかなきゃ恥ずかしいというか、色々な面で不都合の出てくるものでもあるよ。 ビット演算なんて難しく考えなければ2進数の論理演算とシフトだけなんだから、ちゃんと覚えといた方がいい。
そ、そうですね。 この際だから覚えておこうと思います。 いろいろとアドバイスありがとうございます。
このスレ見て改定新版基礎PHPを今日、買ってきた。 まだ75ページ目くらいしか見てないけど、なかなかいい感じですこの本。 MySQLとの連携も書いてあるみたいだし。 WEBでいろいろPHP関連のサイトをずーっと見てたけど、やっぱり本はいいね。 PDFのマンモス本見てるより本見る方が楽。 おたがいがんばりまそ。
53 :
nobodyさん :2005/09/05(月) 22:22:17 ID:CGyYRIw9
俺も基礎PHPで勉強した。 まぁPHPやる前にPerlやってたから最初の方は適当に読んだけどね。 今は2XXページあたりの図書管理のデータベース使ったプログラムを書いてる データベースすげーー!って感じですw
54 :
nobodyさん :2005/09/05(月) 22:27:04 ID:lQwp6BJc
よく一部の携帯サイトで見受けられるリンクを分けずにワンクリック(一つのコンテンツのみ)で機種ごとに対応させるにはどうしたらできる?例えば着メロとかはキャリアごとに形式違いますよね。 知ってる人はよろしく
>>53 MS Access + SQL Server程度しかやった事なかったんで、DBすげーになるまでがんがりまつ。
やっぱアマゾンの書評より2chの書評の方がいいような希ガス。
User-Agent見るといいよ。 携帯電話以外でもUser-Agentに載ってる情報でクライアントに関する色々な情報が得られる。
>>53 >>55 DBすげーってなったら、DBの設計・操作の基礎みたいなのが掴めれば、
DB絡みの簡単なシステムは大体は作れるようになると思う。非効率的なコードになるとは思うけどね。
あと、DB独自の関数群(php側DB側両方)とかも覚えていくと、phpでごちゃごちゃ書く量が減ってかなり楽になる。
設計とかユーザ管理が面倒くさいけど、とにかくシステムをサクサク作りたい、って時は
phpMyAdminとかphpPgAdminを使うとスプレッドシートみたいな感覚でお手軽にやれるよ。
>>54 糞マルチ死ねよ
糞マルチ死ねよ
糞マルチ死ねよ
糞マルチ死ねよ
糞マルチ死ねよ
糞マルチ死ねよ
というマルチを誘う罠だな
10日で覚えるPHP5は10日じゃ覚えられない…と思い出した今日この頃(´・ω・) やっぱ自分には無理なのか…(つД`)グスッ 自分の頭悪さ加減が嫌になった…
無理に読んで詰め込む必要ないよ。 解説書全てに言えることだけど、適当に読み飛ばしつつ、使えそうなところだけ拾っていって よく読んでないところも「この辺にこんなのがあったなぁ」程度に覚えとくだけで十分。 あとは自分の作りたいものを作りつつ、2chの関連スレやフォーラムをブラブラして 初心者質問スレで聞いたり、分かる範囲で人に教えたりしながら、少しずつ出来る事を増やしていけばいい。 止めずに続けてりゃ、気が付いたら大概の事が割とまともに出来るようになってるはず。 正直、入門書の類を何冊読んだって、ゴリゴリ書いて自分なりのノウハウを掴んで行かないと、いい物は作れないと思う。 入門書読むより何が大事かって、楽しいと思って取り組む事と、興味の沸いた事を積極的に調べて取り込んで行く事だ、と言ってみる。
PDFみてマンモス本買おうとしたらPHP5のやつしか本屋になかったorz まだまだ4で逝くのでPHP4版が欲しいけど大きな本屋に逝けばあるのかな?
出版してないっぽいから(だからPDFで配布してるんだけど) チェーン店とか他の書店からの取り寄せが出来るところで店員に聞いてみるといいかも。 PDFで必要なとこだけ印刷して読むとかじゃ駄目? 確かにディスプレイ上じゃ見難いけど、1回通して読んだ後は、必要なとこ読むだけだから 検索の利くPDFの方が利便性高いと思うんだけど。 まぁ、どうしても製本されたのが欲しいって気持ちも分からなくもないから、止めはしないけど。
63 :
61 :2005/09/06(火) 01:31:03 ID:???
>>62 あれはプリントのロックがかかっててプリント出来ないのです。
画面で読むのはきついんで。
>>57 ありがとさんです。
phpMyAdminとかphpPgAdminぐぐってみました。
かなり便利なもんがあるんですね。
たすかりますた。
ところで皆はテキストエディタなにつかってますか?
>>66 スタンドアロン版なんてあったのか
汎用エディタに慣れてしまうと、プロジェクト管理とか面倒なんだよな
68 :
nobodyさん :2005/09/09(金) 16:59:32 ID:tGBnfrTy
<? Header("Content-type: text/octet-stream;"); Header("Content-disposition: attachment; filename=hoge.csv"); print("あいうえお\n"); ?> 単純にCSVファイルをダウンロードさせたいだけなのですが、 これにアクセスしてもただ文字が表示されるだけです。 なぜでしょうか。お願いします。
>>68 content-typeがtextだから
70 :
nobodyさん :2005/09/09(金) 18:32:14 ID:tGBnfrTy
>69 ありがとうございます。 もう1個だけ教えて下さい。 <? function csv(){ Header("Content-type: Application/octet-stream;"); Header("Content-disposition: attachment; filename=hoge.csv"); print("あいうえお\n"); } function html(){ print "<form action=csvtest.php method=post>"; print "<input type=hidden name=hoge value=hoge>"; print "<input type=submit>"; print "</form>"; } global $_POST; $hoge = $_POST['hoge']; if($hoge == ""){ html(); }else{ csv(); } ?>
71 :
70 :2005/09/09(金) 18:33:16 ID:tGBnfrTy
上記を実行して頂くとわかるのですが、ダウンロードダイアログが開いて、 開くをクリックすると、なぜかもう一度ダイアログが出て開くをクリックすると csvが開けます。なぜダイアログが2回出てしまうのでしょうか。 ご教示ください。 POSTしているのがいけないのでしょうか? 確認していませんが、GETでやると1回で済むと思います。
72 :
nobodyさん :2005/09/10(土) 00:49:37 ID:X+h+0+O0
age
73 :
nobodyさん :2005/09/10(土) 02:24:58 ID:4eRTgX7a
PostgreSQLは追記型DBなので、バキュームをしないとDBが肥大化 すると聞きました。 高性能らしいのですが、書き込みの多いサイトだと放っておいたら レン鯖だとそのうち容量オーバーしやすいのでしょうか。 大した事はしないので、おとなしくMySQLを使っていた方が無難?
74 :
名無しさん@そうだ選挙に行こう :2005/09/10(土) 19:32:31 ID:p09f3dkK
postメソッドで受け渡しする際に引数の中に『&』が入っても大丈夫な記述ってできないですか? 例えばこんな感じで、〜/hoge.php?a=1&b=2&c="d&e"とかくくってもダメなんです...
>>74 urlencodeしなきゃだめだ
つか励ましあうのって無理があるな
77 :
nobodyさん :2005/09/12(月) 01:55:38 ID:Wrz9iarD
age
78 :
オナニスト ◆MRmxpjiK.2 :2005/09/12(月) 04:15:34 ID:6Ew75INN
79 :
nobodyさん :2005/09/12(月) 21:29:17 ID:EmmBgl/h
励ましage
挫折sage
がんばり中age
どこのPHP使ってるんだ
あ、いや、AmazonがPHPを使っているとかそういうことではなくて、 PHPで同じ機能を再現できないかと思って。 でもAmazonの値引率の表示って結構凝っていて、文字部分まで リアルタイムに合成して作っているんじゃないっぽい。 どうも1.png〜99.pngまでの合成用画像をあらかじめ用意しておいて それを使っているような気がしてきた。 で、そんな面倒なことをする気がない私はビットマップフォントの合成で お茶を濁しましたとさ。 見た目ちょっとヘボいけど、汎用性が高いからこれでいいや。めでたしめでたし。
>>84 なんでimagettftextは使いたくないの?
>>85 サイト名と設置URLとメールアドレスを設定するだけですぐにスタートできる、
お手軽なショッピングサイト構築ツールを作ってるんですわ。
フリーの書体だとしても、配布セットの中に勝手に他人の著作物を
同梱するわけにもいかないので、お気軽さ優先で。
>>87 紹介感謝です。
もし公開後にショボいと言われまくるようだったら、専用のフォントでも
自作して同梱することにします。
たかだか「0〜9+o+f」の12文字だけだしね。
XOOPSでも使っとけ。 池沼ばっかりでいいぞ。
>>89 2chブラウザでも使っとけ。
誤爆が減っていいぞ。
参考書を読んで大体しくみを理解できたら、実際にソースを打ち込んで、何も見ないで打てるようになったら次の章にすすむ 自分はこういうやり方でやってるんですが、皆さんはどうやってますか?
>>91 自分の場合、一通り読んでからプログラムを組みます。
それで実際、組むとき、あやふやな部分を確かめるって感じです。
>>91 ヒマな時間にリファレンス本を流し読みして「この言語ではこういうことができる」
という部分をまず掴みます。
使いそうな関数のページには折り目をつけておきますが、まず読み返すことはありません。
実際に組む時は、8割方過去に作ったスクリプトからコピペして改変します。
過去にない処理が必要になった場合、例えば「php 全角英数 半角英数 変換 」
とかググって、その処理に必要な関数名を調べます。
次にその関数名でまたググり、オンラインリファレンスから例文をコピペして
パラメータだけいじります。
自分で暗記で打てるのはif文程度。
>>91 プログラミングってものに慣れてきたら
>>93 みたいなやり方。
別に参考書が全部を完璧に教えてくれるわけじゃないから(というか中途半端な場合が多い)
分からないところは、「分からなかった」って事だけ覚えてれば、その場では分からなくてもいいと思う。
(サンプルコードを打ち込むのはいまいち為にならない。サンプルコードを落として、適当にいじくり倒す方がずっと為になる)
1,2回読んで分からなければ、その文章自体が下手糞か、自分にはまだ早い場合が殆どだと思うんで
放っておいて、色んなドキュメントとかソースなんかを見てるうちに
ピンと来る内容にあたることがあるだろうから、その時にしっかり物にすればいい。
(ずっとピンと来ないのであれば、向いてないって事だろうし、参考書をいくら読んでも理解出来ないはず)
最初の頃のお勧めの方法としては
1.参考書の章を読む
2.よく分からない部分はピックアップしていく
3.いまいち処理が分からない時は、関数名や文中のキーワードでググる(公式ドキュメントの関連項目は必読)
4.もう1回読む
5.分からなくても、分からなかったこととして保留したまま次の章へ。本を読み終わったらしばらく読み直さない(すぐに読み直してもどうせ理解出来ない)。
どんなことが出来るか最初は分からないんだよね。 だから最初は基本的な部分だけ押さえて、後はリファレンスばっかり読む。 あーこんなことが出来るんだーなんて言いながら概要を掴んで、 実際に書いてみて、いじってみて、あーこうなるんだーって理解する。 そういうのの積み重ねだ。あhっはははははははははははh
まだ、初心者の域を出てないのに仕事でプログラムを書かざるをえない。 めちゃくちゃな処理でなんとか思い通りに動かして、あとになって、もっとスマートな方法を見つけるけど、自分で書いたコードなのにもう、こんがらがってそれを適用するのもまた大仕事。
皆さん色々なご意見ありがとうございますm(_ _)m これからの勉強の参考にさせていただこうと思います。
>>71 別に普通に落ちてくる。Firefox で確認
あと global $_POST は要らない
PHP初めて一週間。 いま、オブジェクト指向ってのを勉強してるけど、やっぱり難しい・・
PHPの他の部分はちゃんと理解できてるか? PHPのオブジェクト指向って、使わなきゃ使わないでどうにかなるし、 どうにかしちゃう場合が多いので、他のとこ覚えてからの方がいい気がするよ。
>>100 そうなんですか。
じゃぁとりあえずは後回しでもいいんですね。
PHPはまだまだ覚えていない部分がたくさんあります(д`;)
ファイルの扱いや、サーバーとクライアント間のデータのやりとりといったモノの方が実用的な気がするので
こっちの方を先に覚えようと思います。
ありがとうございました。
$subject = $from = $text = $atta = $part = $attach = "" これって変数をまとめて初期化しているんですよね?
初期化に該当するかどうかは知らんけど、 羅列してる変数全てに""を代入してる。 PHPでは基本的にあまり変数の宣言や初期化はしないし、 するにしても、そういう分かりにくい仕方はしないよ。
え、phpって初期化不要? 気持ち悪いからしてるけど普通しないもんなの?
自分の認識外の部分で同じ名前のグローバル変数が使われちゃっている可能性もあるし、
http://d.hatena.ne.jp/keyword/register_globals register_globals問題もあるので、念のため初期化してからの方が無難なのかもね。
自分も初心者なのでよーわからんのですが、
function Hoge_Hoge(){
//必要なグローバル変数だけを意識的に取り込む
global $str;
処理
}
Hoge_Hoge();
ってな感じでとりあえずfunctionで囲んでおけば安心?
>>104 初期化とは異なるけど、例えば分岐処理を簡単に済ませたい時とか
function fooBar(){
$text = "";
if (式) {
$text = "foobar";
}
return $text;
}
こういうelseの必要ない書き方とか、あとは何があったかな
自分は、全部を全部初期化するんじゃなくて、初期化する必要のある変数だけ初期化するようにしてる。
たとえば
for($i = 0; $i < 10; $i++) $foo .= $bar[$i];
なところは
$foo = "";
for($i = 0; $i < 10; $i++) $foo .= $bar[$i];
とするとか。そのくらい。
自分が始めた時は、そういうことも大事だけど
http://php.s3.to/man/types.comparisons.html あたりの挙動をちゃんと把握する事の方が、変な動作するスクリプト減らすのには役立つなぁと思った次第。
>>106 それって、パフォーマンス的にも可読性保つためにも、素直にelse使った方がいい気が…
>>107 漏れは
>>106 の書き方好き。
先にまず初期値。
その後、複数の条件を羅列することも出来る。
case文っぽい感じだよね?
可読性に関しては好みだとは思うけど、パフォーマンス的に差が出るようなものなの?
trueなら"foobar"、そうでないなら""という動作をする記述をしたいなら、素直にそう書くべきという意見。
まぁ、「最初は""で、trueだった時だけ"foobar"」って見方も出来るから、好みっちゃ好みなのは確かなんだけど、
>>104 みたいな初期化の仕方をした上で
>>106 の記述をすると、
「ん?この値何が入ってるんだよ」って感じで、ソースをさかのぼって見なきゃいけなくなっちゃう事が多い。
(書いてる時はいいんだけど、後から保守する時が……)
パフォーマンス云々は、体感できる差じゃないけど、後から必ず値が入る場合にも初期化されちゃう分無駄だよ、ってだけ。
>>109 >
>>104 みたいな初期化の仕方をした上で
>>106 の記述をすると、
>>106 の方で「初期化とは異なる」と最初で断ってるわけなんだからこれはおかしいんじゃない?
変数を空にするのは、単に初期化するためだけはないと言ってるんじゃないの?
それに
>>106 みたいな手法の方が楽だということもあるんだし、それぞれじゃないかな。
111 :
109 :2005/09/19(月) 21:08:52 ID:???
>>110 >>106 は、初期化(初期値の代入)と取るのが自然な気が。
現に、""を初期値に設定して、ifがtrueの場合のみ"foobar"を代入、と捕らえるのが自然な記述だと思うし。
こういうのって、本人がどういうつもりで書いたかという事よりも
実際の挙動や、読み手がどう取るか、の方が大事なんじゃないかな。
んで、それぞれはそれぞれだよ、駄目だなんて一言も言ってない。
読み難くなくて、ちゃんと動けば全然問題ないと思う。
function fooBar(){ if (!式) { return; } return "foobar"; } 自分ならこう書くかな。 初期化以前に極力新しい変数は作らない。
まあ、その式次第だな。
たとえば式がcount(array)とかで、1ページで何回も呼び出されるものなら、
staticでページ1回につき1回の計算だけで済ましたりするだろう。
単純になんでもない式なら
>>112 だな。
フォームから\マークを送信するだけでもれなく2倍還元! という感謝祭が私の作ったプログラムの中で連日開催されているのですが 何とかならないものでしょうか
>>114 if (get_magic_quotes_gpc()) {
$_POST['com'] = stripslashes($_POST['com']);//¥除去
}
これ楽だぞ。自作で一番よく使う関数。 function getGPC($string) { if(is_array($string)) { foreach($string as $key => $value) $string[$key] = getGPC($value); return $string; } if (get_magic_quotes_gpc()) { return stripslashes(urldecode($string)); } else { return urldecode($string); } }
>>116 GPCから入力された時点で自動的にurldecodeされてるはず
それだと%41みたいな値が渡せない。
(´・ω・`)
けっこう好きなスレなのにこのごろさっぱりだね・・ここ
作ってはいるんだけどねえ・・・ 完成してから公開、とか考えると逆に駄目だね。 一人で製作の弱点って、そこだな。
どう禿増していいのか良く分からんしな
ストレスで禿げ増えた
オンライン越しにペアプログラミングとか。
Wikiプログラミング?
126 :
nobodyさん :2005/10/19(水) 22:49:11 ID:CHcSnYiI
>>126 HTMLで済むのをむりやりPHPに移植するスレだったのか。
>ククク.
だまされましたね?
ここは自宅のPowerBook Serverです.
くれぐれもアタックをかけない様に(藁
ttp://glagla.dw.land.to/index.php こっちにも同じ事書いてあるけど、land.toはいつからオマイの自鯖になったんだ?
というか新たなnullの誕生か?
2度と行かね。
掲示板とかショッピングとか言ってたやつらはどうなったのだろう。。。
passはguest1でしたすみません。 どちらにせよ意地になって無理やり公開するもんじゃないね。 不具合多すぎ。
131 :
126 :2005/10/20(木) 19:13:20 ID:???
あ、land.to忘れてたや。 indexねぇぞっつう警告メール来たんでとりあえず置いて、そのままだったや。 思い出サセテクレテありがとう。 まぁ見るに耐えられない痛いサイトなのは承知だぜぃ・・・
ま。ま。励ましてこ。
励ますのはかまわないけど、 本家が単発スレ立ち上げたものだから、 今一つ気がのらないだけ。
アップデートを励ましてみるっつーのはどうだろう
135 :
nobodyさん :2005/11/04(金) 21:41:10 ID:KfXUaxV2
おまいらの作りたいサイトってXOOPSじゃ駄目なのか? XOOPSがあるんだから、独自にサイト作るのって車輪の再発明ってことに気づいてない? XOOPSを改良する方向に力注げよ。
基礎が出来てない香具師の改造は頂けないな つかXOOPSは駄目スクリプトだと洩れは思うぞ
大は小を兼ねないし、どこがセキュリティホールになるか把握しきれないやつが むやみに XOOPS を設置しまくるように仕向けるのは賛成できない
かぶったorz
何事も練習だと思うのでコツコツBBSから作ってる俺
一点だけでも既存スクリプトにない要素を入れられれば勝ちだと思っている俺
>>139 案外工夫の余地があるんだよな
デザインをテンプレートで分離するとか RSS の出力を工夫して管理しやすくするとかね
データの管理の仕方とか
質問 テキストファイルのデータを読み込んでinsert文でmysqlのテーブルに挿入するスクリプト作ったんだが上手くいかなかった んで、いろいろ試して文字/改行コードをEUC、LFじゃなくてSHIFT-JIS、CR+LFにしたら上手くいった phpってEUCで書くもんだと思ってたけどコレでいいの?
勘だがテキストファイルがSHIFT-JISで保存されてたんじゃなかろうか
sjisで流し込むならmysqlの設定ファイル弄らないと化けるよ
145 :
142 :2005/12/23(金) 23:29:53 ID:???
146 :
142 :2005/12/24(土) 00:04:49 ID:???
なんかますますわからん 今こんなカンジ テキスト(EUC)を読み込んでPHPスクリプト(S-JIS)でテーブルに挿入 mysqlにログインして直にテーブル内容を確認したらデータが文字化け 文字化けしたデータを別のPHPスクリプトで内容表示させたら文字化せずちゃんと表示される ちなみに表示させたデータをmb_detect_encoding()で確認したらEUCだった で、mysqlにログインしたついでにスクリプトではなく直にinsert文で同じデータを追加してみた 結果、テーブル内では文字化けしないが、スクリプトで表示させると文字化け(つーか日本語部分が表示されない) mb_detect_encoding()で確認したらS-JISになってた mysqlの設定がおかしいのか?
MySQLもおかしいけどPHPもだね
my.iniの設定は以下のようになってたが・・・
[mysqld]
default-character-set=sjis
>>147 PHPの方かな
一応、mb_convert_encoding()使ってテーブルにデータ追加する時はEUC→S-JIS テーブルからデータ読み込む時はS-JIS→EUCとする事で思ったとおりの動作させることが出来たけど・・・ もしかしてmysqlの設定がS-JISになってるからダメなのか? でも何処でWINDOWSでmysqlの設定方法調べてmy.iniに [mysqld] default-character-set=sjis [mysql] default-character-set=sjis [mysqldump] default-character-set=sjis って書けって書いてるんだが
いま、こんなふうなif文をやっているんだけど、 どうにもうまくいかない。ちょっと、教えてくれると助かります。 とりあえず、元のテキストデータ(複数)があって、たとえば0行目が 1であれば内容を表示するって言う感じで↓みたいにとりあえずして 実際動かしてみた。 <!--ファイル読み込み--> <?php $ファイル(1) = file("ファイル(1)"); } ?> 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 <!--内容表示--> <?php if(ファイル(1)の0行目指定 == 1) { print("内容"); } ?> で、まあこれで動いたんで調子乗ってもう一つのテキストデータを 読み込ませた同じやつ(ファイルの0行目指定(2)みたいな感じで) を同じように書いてみたんだけど、なぜか表示されない。(↓)
<!--ファイル読み込み--> <?php $ファイル(1) = file("ファイル(1)"); $ファイル(2) = file("ファイル(2)"); } ?> 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 <!--内容表示--> <?php if(ファイル(1)の0行目指定 == 1) { print("内容"); } ?> <?php if(ファイル(2)の0行目指定 == 1) { print("内容"); } ?> にんともかんともわからなかったので if(ファイル(2)の0行目指定 == 1)を if(ファイル(2)の0行目指定 == 0←※)と言う風に他のに変えたら OKでした。これはやっぱり、なんか競合してるからダメポという事 なのでしょうか?? 説明ベタですみませんが、 知っている方教えていただけると助かります。
そんな日本語に置き換えまくったコードじゃわからねーよ
153 :
nobodyさん :2006/02/03(金) 14:11:35 ID:XtE8ZpDP
<?php $f_one = file("hoge1.dat"); $f_two = file("hoge2.dat"); if($f_one[0] == 1){ print "内容";} if($f_two[0] == 1){ print "内容";} ?> ・・・こういうこと?
154 :
nobodyさん :2006/02/13(月) 19:22:54 ID:CRi0u1UU
多次元配列$sel[][]を一括でFORM送信ってできないんですかね?? イメージ的にはこんな風に・・・。 <FORM action="a.php" method="post"> print "<input type='hidden' name='sel[][]' value='$sel'>"; </FORM> 配列はnameに[]をつけないといけないということはわかったのですが、 この書き方ではうまくいかず。。。 1個ずつ送らないといけないのでしょうかorz
155 :
nobodyさん :2006/02/13(月) 21:46:07 ID:c0AZgeUz
このスレって、何?
糞スレ。上げんな
きらいじゃないんだがなぁ でもただの質問スレになるならいらね
158 :
nobodyさん :2006/02/14(火) 01:32:16 ID:bs1BKFdz
a,b,c,dってデータファイルをhtml上で ,を</td><td>に変えるのってどうやるのでしょうか? 初心者なもんで。誰かおしえてください。
あげんな糞野郎
$lines=file でやって foreachで繰り返す時にtrとかやったらいいんじゃない
161 :
158 :2006/02/15(水) 13:16:56 ID:oPyCFoG4
ありがとうございます。いい人はいるもんだー
なんだこの糞スレは
一応 ereg_replaceとかで置換できますよ
PHPで指定したディレクリにあるjpg|jpeg|gif|pngの画像枚数を取得したいんだが、教えてくれ。
166 :
1/3 :2012/01/19(木) 10:56:51.20 ID:8XvWf5+2
167 :
2/3 :2012/01/19(木) 10:59:35.67 ID:8XvWf5+2
<table>
<?php
// 外部RSSを簡単に読み込んで出力するルーチン
$RSSURL = "
ttp://feedblog.ameba.jp/rss/ameblo/staff/rss20.xml ";
$buff = "";
$fp = fopen($RSSURL,"r");
while ( !feof($fp) ) {
$buff .= fgets($fp,4096);
}
fclose($fp);
// パーサ作成
$parser = xml_parser_create();
// パーサオプションを指定
xml_parser_set_option($parser,XML_OPTION_SKIP_WHITE,1);
// パース実行、連想配列にパース結果代入
xml_parse_into_struct($parser,$buff,$values,$idx);
// パーサ開放
xml_parser_free($parser);
// パースして得た連想配列をまわす
$in_item = 0;
$count = 0;
foreach ($values as $value) {
$tag = $value["tag"];
$type = $value["type"];
$value = $value["value"];
$tag = strtolower($tag);
if ($tag == "item" && $type == "open") {
$in_item = 1;
} else if ($tag == "item" && $type == "close") {
if($count < 10){
echo "<tr><th>".$dateDisp."</th><td><a href=\"".$link."\"> ".$title."</a></td></tr>\n";
}
168 :
3/3 :2012/01/19(木) 11:01:19.55 ID:8XvWf5+2
$count++;
$in_item = 0;
}
if ($in_item) {
switch ($tag) {
case "title":
// UTF-8なドキュメント
$value = mb_convert_encoding($value, "UTF-8", "UTF-8");
$title = $value;
break;
case "link":
$link = $value;
break;
case "category":
// UTF-8なドキュメント
$value = mb_convert_encoding($value, "UTF-8", "UTF-8");
$category = $value;
break;
case "dc:date";
$date = $value;
$dateArr = explode("T",$date);
$dateDisp = explode("-",$dateArr[0]);
$dateDisp = implode(".",$dateDisp);
break;
}}}
?>
</table>
amebloを使用してるので、
$RSSURL = "
ttp://feedblog.ameba.jp/rss/ameblo/staff/rss20.xml ";
にはamebloスタッフさんのブログを表示させていただきました。
お知恵拝借できればとおもいます。 宜しくお願いします。
169 :
nobodyさん :2012/02/16(木) 06:38:50.92 ID:esLRBlik
最近Webコーディングの勉強を始めた初心者なんだけどちょっと教えてほしいです。 まだApache云々とかまで全然手出せてないからわからないんだけど 色んな人のプログとかサイト見てるとブラウザのurlバーにhoge.htmlとかって リクエストに対して返ってきたファイルの拡張子まで表示される場合と拡張子のない場合と あるんだけどあれってどうゆうことなんでしょうか?
170 :
nobodyさん :2012/04/12(木) 06:21:26.33 ID:m/Rs2chW
作れた?
172 :
nobodyさん :2014/01/21(火) 17:09:22.14 ID:QV3/HIGb
php初心者です。
phpのコードとhtmlの見通しをよくしようと考えました。
<h1 id="h1"><img src="<?php bloginfo(template_url); ?>/images/title/info.png"></h1>
<h3 id="h3">管理情報</h3>
を
<?php
echo '<h1 id="h1"><img src="'. bloginfo(template_url) .'/images/title/info.png"></h1>',
'<h3 id="h3">管理情報</h3>'
?>
のようにしてみたのですが、
imgのsrcにURLを設定するbloginfo(template_url)の部分の処理の順番が前後してしまって、
表示したWebページのソースを見ると、
http://localhost/<h1 id="h1"><img src="/images/title/info.png"></h1><h3 id="h3">管理情報</h3>
のようになっています。
これを修正する方法を教えてください。
173 :
nobodyさん :2014/01/22(水) 09:11:10.70 ID:BWvY5tS3
bloginfo() を文字出力じゃなくて文字を返すようにする あと、WordPress を参考にしたんなら、 あれはプログラムの手本の真逆を行ってる 糞コードの最右翼だから気をつけれ
コードの見通しが更に悪くなっててワロタw
175 :
nobodyさん :2014/01/24(金) 16:36:28.39 ID:qjy9c34O
なるほど。サンクスです。 bloginfo()がどこにあるのか見つけられなかったのですが、これはWordPressの関数なんですよね? ま、それはそれとして、自分でも、このコードの見通しは、大差ないかむしろ悪いくらいだわ、とは思ったんです…。 ふだんはC#なんですけど、phpって、こんなに見通しが悪いんだ…。 いやはや。
最近phpをさわっているのですが、うまく動かないので教えてください。 main.php(メイン) include_once( 'myclass.php' ); $my_class = new myclass(); $my_class->クラスの関数(); myclass.php(の中身) class myclass{ myclass(){} クラスの関数(){ include_once('hoge.php' ); $戻った値=関数1(); } } hoge.php(の中身) include_once('tmp.php' ); 関数1(){ global $tmp; … return … } tmp.php(の中身) $tmp = array(なんたら,かんたら) hoge.phpの関数1で、$tmpの中身が空なので、 間違っている所を教えてください。
177 :
nobodyさん :2014/11/04(火) 12:08:32.81 ID:JbW6cdCJ
xamppでapacheのサービスを有効にしようとすると、 「services cannot be installed or uninstalled while the service running」という、 エラーが吐き出されます。 スカイプを切り、apache control panelのプロパティにて「管理者としてこのプログラムを実行する」 にチェックを入れましたが解消されません。 何か他に対処方法はありますでしょうか? 使用OS:win7 ultimateです。 よろしくお願いいたします。
178 :
nobodyさん :2014/11/23(日) 16:09:45.52 ID:4XTHm29b
ウェブまんがのまとめサイト作ってみた。
Wordpressをカスタマイズして作成。
http://man3.everyday.jp/ PHP扱うのは初だったけど、Wordpressベースでだいぶ楽に開発できた。
仕事の合間の土日使って、実質10日くらい。(WordpressとPHPとCSSの勉強含む)
179 :
nobodyさん :
2014/12/01(月) 16:18:43.17 ID:WlhA+ik6 いきなりはじめるphp読んではじめたものです XAMMP