トップページ⇒php
1001コメント305KB

【PHP】下らねぇ質問はここに書き込みやがれ 57

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/10/22(月) 23:10:36ID:mIlonsko
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 56
http://pc11.2ch.net/test/read.cgi/php/1192092941/

◆質問する時の注意
・ sage進行(メール欄にsageと記入すること)「sage進行」とはスレを目立つ上部に上げないことによって、荒らしが発見できないようにすることです
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
・ 書き込むときには、「公式マニュアル、リファレンス本は読みました」と明記すること
(でないと、公式マニュアル読めと煽られます)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
・質問者が「公式マニュアル読んだ」と書いていないからといって、
公式マニュアルに書いてもいないのに、公式マニュアルよめと適当なことを言わないこと。
質問者は公式マニュアルを読んでいるかもしれない。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0067nobodyさん2007/10/23(火) 10:23:04ID:???
>>65
素人乙。大規模開発では、信頼性、拡張性が重要なんだよ。
phpのクラス仕様じゃ、とても対応できないだろ。
0068nobodyさん2007/10/23(火) 10:26:02ID:02rIs4mu
>>66
どうもです。取得しているところを使い分けられるのかな〜って思ったんですが。
ネットにつながっていれば、NTPからなのかな?、とか。
0069軟式PHP2007/10/23(火) 10:29:04ID:???
>>67
でもまぁ、大規模なmixi・モバオク・モバゲーもperlで作ってるし作り手次第でしょ。
どんな言語でもプログラマがダメだったらダメなんですよ。
信頼性・拡張性もどちらかと言えばプログラマの知識・経験から作り出されるようなもんだし。
0070nobodyさん2007/10/23(火) 10:38:10ID:???
大規模開発だと見栄や金取る理由が必要なんでしょ
クライアント側も無駄に見栄を張りたがるからPHP,PerlよりJava、
SIも金取れるからJavaで提案、みたいな
0071nobodyさん2007/10/23(火) 10:42:21ID:???
>>67
おまえのレスのほうがよっぽど素人
実務すらしたことないだろ
0072nobodyさん2007/10/23(火) 11:06:23ID:???
>>63
>大規模なサイトやシステムを構築するのにPHPではとても使えない。

(*^-^)
0073nobodyさん2007/10/23(火) 11:14:46ID:???
アホばっか。
0074nobodyさん2007/10/23(火) 11:20:28ID:???
>>73
しょうがねえよ。この業界、一般人の目を通したらアホにしか映らない人間ばかりだから。
0075nobodyさん2007/10/23(火) 11:41:52ID:???
>>60
単金が安いのは需要と供給が崩れたからだろうね
昔の"VBできますよ似非技術者"が溢れかえった時みたいに

あと受け入れ側の心情として、どこの馬の骨か素性のわからん奴に
高額の報酬用意してお待ちしておりますなんてありえない
0076nobodyさん2007/10/23(火) 12:03:24ID:UFlDplZu
>>67
それ言う人多いけど、具体的にどの仕様のことさして言ってるですか?
package?
enum?
ネストしたクラス?
クラス変数の初期化の柔軟性?

JAVAの厳密型付けは、俺も好きだけど
PHPにも大雑把なタイプヒンティングあるし、設計しだいでは、十分に
「再利用可能な」オブジェクト指向設計を出来ると思うけど。
packageは便利だね。部品化しやすいし。
確かに、PHPにもネームスペースはほしい。

煽りとかじゃなくて、最近JAVAにはまっていろいろ勉強してるし、
そう言う人が多いので、本当にどこがそうなのか教えてほしいと思う。
0077nobodyさん2007/10/23(火) 12:14:44ID:???
>>76
大規模になれば、それだけ開発する人間も大人数(将来的な変更も考えれば更に大人数)になる。
人が多ければ、中には質の悪い技術者もいるし、仕様勘違いする奴も出てくる。
phpの場合、型は甘いし、privateメソッドも平気で呼び出せる。
結局VBの偽クラスと一緒で、オブジェクト指向が予定しているクラス仕様とは似て非なるもの。

動けば良いじゃんって思っている学生には関係ない話だが。
0078nobodyさん2007/10/23(火) 12:19:20ID:???
秋山乙!
0079nobodyさん2007/10/23(火) 13:05:57ID:???
>>77
>人が多ければ、中には質の悪い技術者もいるし、仕様勘違いする奴も出てくる。
こんなの言語とぜんぜん関係ない
Javaだったら、お前のような質の悪い技術者でもまともな製造ができるとでも言うのか?w
ただphpの悪い部分をあげつらいたいだけって感じだな
0080nobodyさん2007/10/23(火) 13:12:39ID:???
Javaはキッチリ仕様がわかっていないと使えない
PHPは仕様が曖昧でも使える

こういうこと?
0081nobodyさん2007/10/23(火) 13:18:24ID:???
DB mySQLだけど、どこかおもっきり素人でも分かりやすく解説してるサイトないかな?
まぁ。PHPも見習い程度なんだけど。
0082nobodyさん2007/10/23(火) 13:18:34ID:???
よそでやってくれ
0083nobodyさん2007/10/23(火) 13:19:39ID:???
>>82
お前がどっかへ行けば解決
0084nobodyさん2007/10/23(火) 13:41:47ID:???
流行を追うものは流行の僅かなおこぼれを得るだけ

0085nobodyさん2007/10/23(火) 13:57:52ID:???
>>84
この手の人間が一番最悪。
自分は世の中で完全無欠な人間だと思い込んでいる。
人が何か異論を唱えれば、逆賊と喧伝し激高する。
いわば犯罪予備軍と言うべきで、しかるべき機関に逮捕してもらいたい。
0086nobodyさん2007/10/23(火) 14:02:02ID:???
>>81
googleでヒットするサイトのリファレンスとかじゃ駄目なのかい?
これ以上やさしくとか言われるとお手上げ
0087nobodyさん2007/10/23(火) 14:29:17ID:???
>>85
流行に囚われすぎるなと発言しただけでそこまで言わなくても
0088nobodyさん2007/10/23(火) 14:33:33ID:UFlDplZu
>>77
レスサンクス
スレ趣旨とずれてるのに今気づいたので、コメントは控えとく…

ところで質問があったの忘れてた。
PHPでstaticなfunctionから実際に呼び出されたクラス名を取得する方法ってあります?

例えば親クラスに
class Parent{
public static function getInstance(){
}
}
class Child extends Parent{
}

Child::getInstance();
としたときにgetInstanceの中でChildを取得することって出来ますでしょうか?
get_classも__CLASS__も親クラスの名前が来ちゃいました。

子クラスにクラス名を返すstaticメソッドをいちいち作ればいけるけど、それもなんだし・・・

なんかいい方法あったらお願いします。
0089882007/10/23(火) 14:51:14ID:???
マニュアルにdebug_backtrace();を使った方法が投稿されてましたね。
すんません。

そこのコメントにもあるけど、重そうだし、別の方法にします。
お騒がせしました。
0090nobodyさん2007/10/23(火) 15:30:26ID:yqsanTFX
phpはインストールしないと使えないのですか?
0091nobodyさん2007/10/23(火) 15:36:29ID:???
phpが使える無料レンタル鯖かりればインストールしなくてもいい
0092nobodyさん2007/10/23(火) 15:45:34ID:???
>>40>>42即レスして頂いていたのですね!

早速調べてみたらいいサイト+見事にphpやらApacheやらエディッタやら様々なものを導入する事ができました!
インストールと設定でかなりの時間を費やしていたのに、これを入れたらすんなり行けたので驚きと感動を感じれました
これからやっとphpの勉強が開始できそうです

本当に有難うございました!
0093nobodyさん2007/10/23(火) 16:11:50ID:???
>>90
自分のPCで開発するなら当然なくてはだめ。
ついでに言えばPHPだけだと簡単なデバッグぐらいにしか使えないので、
Apache(httpd)やMySQL(dbms)等のWebアプリを動作させるサーバ系ソフトが一式あったほうがいい。

レン鯖使っての開発はわざわざ修正するたびにスクリプトをアップロードしないといけないし、
なんかのバグでレン鯖に支障をきたしたら怒られるので基本的にやっちゃだめ。

つまり上のほうで出てるけどXAMPP入れればOK
0094nobodyさん2007/10/23(火) 16:18:45ID:2nhYvC/g
classの中で定数を使いたいのですがどのように定義すればいいのでしょう?
class Hoge {
static final $hoge = 1;
define("HOGE", "aaaa");
}
いずれもだめでした。
0095nobodyさん2007/10/23(火) 16:24:56ID:5s2xr4I1
179行まで走査処理をする際 $topwrite の項目の先頭に179番までの番号を
付加していきたいのですが array_unshift の使用では無理なのでしょうか?
マニュアル読んで試行しながらの製作なので稚拙な質問で申し訳ないです。

$topwrite = "$name\t$comment\t$time\t$delkey\n"; //新しく追加するデータを TAB で区切って整形
$write = fopen("./card-walin.cgi","w"); //書き込み用モードでデータを開く(データは空になる)
flock($write, LOCK_EX); //ファイルロック開始
fputs($write, $topwrite); //先頭に1行書き込む
for($i = 0; $i < 179; $i++){ //179行まで走査処理をする
$ppp = $log[$i];
$ooo = array_unshift($ppp, '[$i]');
fputs($write, $ooo); //今までの分を書き込む
}
flock ($write, LOCK_UN); //ファイルロック解除
fclose ($write); //ファイルを閉じる
0096nobodyさん2007/10/23(火) 16:37:34ID:4NCgDg1P
レンタルサーバーでphpを動かす場合は、phpのバージョンはあまり関係ないでしょうか?
0097nobodyさん2007/10/23(火) 16:40:32ID:???
>>94
php5ならconst使う
4ならあきらめる
0098942007/10/23(火) 16:43:31ID:2nhYvC/g
>>97
どうもありがとうございます。
こんなのがあったとは知りませんでした。
php5なのでこれを使いたいと思います。
0099nobodyさん2007/10/23(火) 16:44:07ID:???
>>95
やりたい事がいまいちわかんない&情報が少ない
ファイルに書き込む内容の先頭に番号つけたいって事?

0100nobodyさん2007/10/23(火) 17:05:32ID:???
>>95
よーしエスパーしちゃうぞー

$topwrite = "0\t$name\t$comment\t$time\t$delkey\n"; //新しく追加するデータを TAB で区切って整形
$write = fopen("./card-walin.cgi","w"); //書き込み用モードでデータを開く(データは空になる)
flock($write, LOCK_EX); //ファイルロック開始
$ppp = $topwrite;
for($i=0,$n=1;$i<179;$i++,$n++){
$ppp .= $n."\t".$log[$i]."\n";
}
fputs($write, $ppp); //今までの分を書き込む
flock ($write, LOCK_UN); //ファイルロック解除
fclose ($write); //ファイルを閉じる
0101nobodyさん2007/10/23(火) 17:10:48ID:???
>>96
メジャーバージョン 4と5 では言語仕様で異なる部分が大きいので意識しなきゃ駄目
マイナーバージョンでも差異が生じる箇所が出てくるのでやはり意識しなきゃ駄目
0102nobodyさん2007/10/23(火) 17:41:46ID:???
俺様は Windows環境で入門するならば IIS + PHP + SQLite のセットをお勧めする
SQLite が嫌なら最近 MS謹製PHP Driverが出た SQLServer2005Express + SSMSE
で、IDEはEclipse + PHP plugin
0103952007/10/23(火) 17:50:42ID:???
>>99
わかりにくくて申し訳ありません、
>>95のデータの上に実はログを$writeとして一度全取得する行がありまして
fputs($write, $topwrite); で新しい書き込みをそのログに付け足してるわけなんです。
そして179行まで走査処理をする (179行以前のログを消去する)際に
1行づつにナンバーを振りなおしたいと思っております。
-----------------------------------
$name\t$comment\t$time\t$delkey\n //一行のデータ内容
↓
$no\t$name\t$comment\t$time\t$delkey\n //先頭にナンバーの項目を割り振っていきたい
-----------------------------------

これで何したいかと言うと削除ナンバーとして使いたいんですが
なんか凄いややこしいですね。
普通にログのナンバーに+1していく方が楽なのはわかるのですが
それだと永遠に番号増えていくのが嫌なのです。
何か他にいい方法ありませんかね。

>>100
あ、すいません今から晩飯作るので
その後その方法でためさせてもらいますね。
ありがとうございます。
0104nobodyさん2007/10/23(火) 17:53:35ID:???
>>102
IISってProfessionalしか使えないの知ってるか?
ASPやるわけじゃないのに、そんな特殊な環境すすめるなよ。
0105nobodyさん2007/10/23(火) 17:55:39ID:???
$iの初期値を1にして、それをくっつければいいじゃん
0106nobodyさん2007/10/23(火) 17:58:24ID:???
Home Edition 使っているような軟派野郎はいらない
0107nobodyさん2007/10/23(火) 18:11:19ID:???
CGI版ならIISでもいけるんだっけ
とくに薦める理由もなさそうだな
0108nobodyさん2007/10/23(火) 18:16:31ID:???
サーバ側をやるのにWindowsな人がいるのか・・・
0109nobodyさん2007/10/23(火) 18:19:37ID:???
Windows縛りで学習するのはブルジョアってことで宗教的に結論出てる。
0110nobodyさん2007/10/23(火) 18:24:00ID:???
近い将来で仕事で使うために勉強するなら、
Linux + Apache + PHP + Oracle(XE)
この組み合わせがいいと思うが
全部無料だし
0111nobodyさん2007/10/23(火) 18:31:07ID:???
さすがに>>102は釣りじゃないのか?
0112nobodyさん2007/10/23(火) 18:37:57ID:???
>>95
そもそもいきなり出てくる
$logさんは何者なんだ
ログ内容という事しかわかんない・・・
0113902007/10/23(火) 19:06:13ID:yqsanTFX
>>91-93さんありがとうございました。
0114nobodyさん2007/10/23(火) 19:36:02ID:???
Linux、PHP-4.0.6、phplot-5.0rc2を使用してグラフ作成の勉強をしております。
普通にグラフを作成する事は出来るようになったのですが、一つだけどうしても
分からないので、もし分かる方がいらっしゃったら教えて頂けないでしょうか。

やりたい事→Y軸の数字を下から上に向かって小さくしたい

X軸と交わるところを200として、上に行くにつれて1になっていくように番号を
振りたいと考えております。

よろしくお願いします
0115nobodyさん2007/10/23(火) 19:37:54ID:???
それ何のグラフだよ
0116nobodyさん2007/10/23(火) 20:06:39ID:???
ソースいじればどうとでもなりそうだが
俺も何のグラフか気になる。普通グラフってデカルト平面上にプロットされるもんじゃないの
0117nobodyさん2007/10/23(火) 21:27:47ID:???
>>114
y値*(-1)をプロットすれば?
0118nobodyさん2007/10/23(火) 21:33:12ID:???
正直、個人の楽しみでPG触ってる俺にとって現場とか想像がつかん
自分の周りにPGいないから2chぐらいしか話せる人がいないのが現状w

現場のソースとかクラス設計がどうなってるのか気になる。
0119nobodyさん2007/10/23(火) 21:36:06ID:???
現場によってピンからキリまで
0120nobodyさん2007/10/23(火) 21:36:38ID:???
>>118
恵まれた環境の現場で無い限り、参考になるソースなんてほとんどないよ。
オープンソースのフレームワークや、プロダクトのコードを見る方がよっぽど参考になる。
優れた実装という意味ではね(現場の実情という意味ならまた別w)
0121nobodyさん2007/10/23(火) 21:52:10ID:???
WordPressのコード読もうと思ってるのだが
読んでる人います?

どうなのかなぁ
0122nobodyさん2007/10/23(火) 22:05:51ID:???
何が?
0123nobodyさん2007/10/23(火) 22:10:21ID:???
perlだとwantarrayなんて関数があるのね。面白いね。
0124nobodyさん2007/10/23(火) 22:13:46ID:???
WordPress見たけど途中で読む気なくなった。
0125nobodyさん2007/10/23(火) 22:29:09ID:1COZJ3HS
申し訳ないのですが、PHPとかあんまりわからないので
お分かりになる方、教えてください

PHPとHTMLで作られたページに
画像をアップしたときのことです

ソフトハウスの方から、
縦、横の画像ファイルのサイズ指定
をうけ縦がそのファイルサイズ
に満たないと
画像がたてのみが勝手に伸びたり
横がそのファイル指定サイズに満たないと
横のみが勝手に延びたりします

これを回避する方法はないでしょうか
ソフトハウスからいわれたのは
アップする画像を、
指定したサイズぴったりにして
アップしてほしいとの事です。

そうではなくて、どんな大きさの
画像をアップしても
勝手に縦に伸びたりせず
綺麗に収まるような設定はないでしょうかね?
これはHTMLのほうの問題なんでしょうか?

長くなりましたがよろしくお願いします

0126nobodyさん2007/10/23(火) 22:36:55ID:???
>>125
imgタグのwidth属性とheight属性を指定しない
0127nobodyさん2007/10/23(火) 22:40:09ID:???
>>125
縦か横のサイズを指定するだけなら比率はそのまま縮小拡大表示するでしょ。
縦横両方指定するからそんな状態になる。
表示させたい画像のサイズを調べて縦か横、どちらか絞りたい方のサイズを
HTML上で指定するようにすればいいよ。

縦横どちらも指定サイズ(比率固定)にしなければいけないんだとしたら
GDとかImagemagickとか使って、画像の変換かけないと無理。
ttp://www.php.net/manual/ja/ref.image.php
か
ttp://www.php.net/manual/ja/ref.imagick.php
参照。
0128nobodyさん2007/10/23(火) 22:44:38ID:???
ジェニファー「あれは、PHPとHTMLで作られたページに画像をアップしたときのことだったわ」
0129nobodyさん2007/10/23(火) 22:44:52ID:???
つーか125さんは開発じゃなくて納品してもらったユーザさんじゃないのか?
0130nobodyさん2007/10/23(火) 22:49:27ID:???
>>125
ソフ屋に画像のサイズの比率計算して
width属性の値とheight属性の値を
自動で設定するように変えてもらうといい

0131nobodyさん2007/10/23(火) 23:38:00ID:1COZJ3HS
129さんそうです。納品してもらったユーザーさんです

130さんの意味がわからない・・。

レベルは初心者に近いです。
すこしはHTMLのことはわかります

127さんの
縦か横のサイズを指定するだけなら比率はそのまま縮小拡大表示するでしょ。
縦横両方指定するからそんな状態になる。
表示させたい画像のサイズを調べて縦か横、どちらか絞りたい方のサイズを
HTML上で指定するようにすればいいよ。

はわかります。
0132nobodyさん2007/10/23(火) 23:56:36ID:1COZJ3HS
なんどもすいません
きっとですね、ソフトハウスの指定した
サイズはデザイン上
そのサイズにしないといけないのと思います。
0133nobodyさん2007/10/23(火) 23:58:44ID:???
このスレって初心者以前の人が1日に1回は来ているような気がするんだが・・・
テスターも使ったことがない人が「テレビが故障したけどどこを直したらいいでしょうか」なんて
質問は多分しないのに、なんでこういうソフトになると「よく知らないんだけど・・・」って当然のように
前置きしてきいてくるんだろうな?
0134nobodyさん2007/10/24(水) 00:04:15ID:???
>>132
さっきから皆が言ってくれているように、画像のサイズを計算した上でHTMLを
出力するようにスクリプトのソースを書き換えれば、「そのサイズにしないといけない」
という状態から解放されます。
0135952007/10/24(水) 00:13:28ID:???
>>95,>>103の内容で質問させていただいたものなのですが
>>100さんの内容で試させて頂いた結果こちらの記述ミスあった可能性大なのですが
ちょっと無限ループっぽい挙動になってしまいました・・・・・・・・・

1から勉強しなおそうと思うのですが
180行まで保存するログに投稿があっても
毎回180までの番号を振りたい場合
どういうロジックのプログラムを書けばいいのでしょうか?
そのプログラムに主要な構文だけ軽く説明を交えて
教えて頂けないでしょうか?
書き込みの際に番号を振ることと
コメント投稿の際に全ての番号を一旦消去する挙動が特に困難です。
下記は今書いてて失敗したコメントをログに書き込む部分の
プログラムになります。
お手間取らせて本当にすいません。
http://www.pachiweb.com/updir/html/ppp.html
0136nobodyさん2007/10/24(水) 00:19:18ID:???
>>133
テレビは半田ゴテ使ったりしないといけないけど
ソフトはワープロ使えたら教えてもらったのをコピペすれば済む、と考えてるんじゃないかな?
125氏の場合はHTMLを少し改造するだけで済むなら自分でも出来ると考えてるのでは。

>>125
画像は縦か横か一方への固定?
開発側がデザイン的にそのサイズにさせたいなら画像のマージンで開発側が意図するサイズ
を空白として確保するって手はあると思う。

というかソフトハウスのデザインオナニーに付き合う必要ないでしょ。
客が使えないシステムを強要するな、と言って叩き返しましょう。
自由に画像アップできて且つデザイン的にも上等なものを作ってこい、と。
0137nobodyさん2007/10/24(水) 00:23:07ID:???
>>135
ソースは画像じゃなくて分割でもいいから文字としてここに貼った方がいい。
さもなければうpローダにテキストとしてUP。
検証するのに手打ちするのはバカらしいよ。
01381352007/10/24(水) 00:46:09ID:???
>>137
失礼しました、下記がtxtになります。
http://sund1.sakura.ne.jp/uploader/source/up13838.txt
0139nobodyさん2007/10/24(水) 01:13:48ID:???
>>135
一つ疑問。
これ、番号はユーザの書き込みごとにずれていくって事だよね。
Aが書き込むとAが1になるが、次にBが書き込むとBが1になり、さっきのAの投稿は2にズレる。

ここでAが投稿後画面更新せずに投稿を削除しようとしたらどうなる?
Aは表示したままだから自分の番号1とDelKeyで削除しようとするけど、すでに番号1はBの投稿になってるから削除できなくないか?
しかも偶然AとBのDelKeyが一緒だったら削除される可能性もある。

通し番号の方がよくない?
01401392007/10/24(水) 01:41:55ID:???
通し番号が嫌ならユーザには見せないようにして記事の頭にそれぞれチェックボックスを置き、
チェックしたのを削除しようとすると通し番号がPHP側に送られて削除するとか。

今の方法だと一旦全ログを変数に移し、番号++しながら書き込み、にしないと処理が複雑になると思う。
全ログ取得はメモリ容量とも関わってくるし。
0141nobodyさん2007/10/24(水) 01:54:25ID:???
>>133
> このスレって初心者以前の人が1日に1回は来ているような気がするんだが・・・
> テスターも使ったことがない人が「テレビが故障したけどどこを直したらいいでしょうか」なんて
意味不明。テスターとテレビとどう関係あるんだよ。
0142nobodyさん2007/10/24(水) 01:55:16ID:???
> テスターとテレビとどう関係あるんだよ
ポカーン
0143nobodyさん2007/10/24(水) 02:07:43ID:???
>>139
ログが180満杯の場合はそういう挙動になります。
ぬぬぬ、やはり通し番号じゃないと問題でますか・・・・・・・・・・・・・・・・・・
言われてみるとほんと指摘どおりの問題発生しますよね・・・・・・・・・・・・
おとなしく改造前どおり通し番号制に戻したいと思います、
アドバイスありがとうございました、
アドバイスのおかげですっきりしました。
01441272007/10/24(水) 02:16:13ID:???
>>131
ああ、そういう話なのか…
であれば結論は
「それはそのプログラムの仕様です。ソフトハウスの言うように、定められたサイズの
画像をあらかじめ用意してそれをアップロードするようにしてください」
としか。
設定というかプログラム上で回避する方法はいくらでもあるけど、
そういった融通に対応しないヘボソフトハウスに発注したあなたの会社が悪いです。
もしくは別料金払って機能改修の依頼をするとか。
そのプログラムを使ってる限りはユーザ側では対処のしようがないんじゃないかな?
0145nobodyさん2007/10/24(水) 02:17:01ID:???
>>143
ついでに>>138のソース、処理が複雑すぎ。
ファイル書き込みにhtmlspecialcharsは不要。むしろタブ文字を削除しないと書式が狂う。
(仮に削除を考えずに)番号を1〜180にするにしてももっとシンプルに書けるはず。
(通し番号にすればさらにシンプルになる)
複雑なソースはバグの原因になりますよ。
0146nobodyさん2007/10/24(水) 02:19:50ID:???
ヘボ会社が作った糞スパゲティソースを作り直す案件って多いよw
0147nobodyさん2007/10/24(水) 02:47:07ID:???
php5でアップキャストってできる?

01481352007/10/24(水) 02:51:19ID:???
>>145
なるほど
$comment = str_replace("\t", "", $comment);
を入れると書式おかしくなるので
タブ自体無効にした方がよいのですね。
解説サイトの丸写しの部分が多く
私自身まだまだ意味を理解してないままの
行程が多いのでアドバイスほんとにありがたいです。
0149nobodyさん2007/10/24(水) 03:09:23ID:???
>>147
ある意味やりたい放題
01501472007/10/24(水) 04:05:31ID:???
親クラスのメソッドを子クラスで上書きしたとします。
子オブジェクトを親クラスにアップキャストすることで、
親のメソッドを明示的に呼びたい。
$obj = (親クラス名)子オブジェクト名; とか
$obj = 子オブジェクト名 as 親クラス名;
のようなことができれば、実現できると思うんだけど。

0151nobodyさん2007/10/24(水) 04:48:26ID:???
構文はないけどget_parent_classでごにょごにょとやれば可能かと
0152nobodyさん2007/10/24(水) 06:40:32ID:???
>>120
最近のプログラム書いてる人はコードなんてほとんど読まないですよ
とくにPHPやパールなんてとにかく動けばいいという発想が強いですね
昔は1万行ぐらい何ヶ月もかけて読みましたよ
やはり根気が大切ですね
0153nobodyさん2007/10/24(水) 06:42:43ID:???
敷居が下がって馬鹿(俺みたいな)の絶対数が増えたんだとオモ。
0154nobodyさん2007/10/24(水) 09:13:54ID:???
>>141
ゆとり教育の成果がここに!!!
0155nobodyさん2007/10/24(水) 09:23:25ID:???
>>153
括弧の部分は知らんけど、それ以外は激しく同意
0156nobodyさん2007/10/24(水) 09:40:07ID:???
>>148
ユーザが入力したタブはスペース二つくらいと置換すればいいでしょう。
もしくはユーザが絶対推測不可能な文字列と置換してhtml出力時に再度タブに変換する、とか

$TAB = "##%$FDEbsgWRn%vfG%bfa%##";
$comment = str_replace("\t", $TAB, $_POST['comment']); // 入力時
$html = htmlspecialchars(str_replace($TAB, "\t", $comment)); // HTML出力時

方針にもよるでしょうが、ユーザにタブ「入力不可」と規制するよりこちらで上手く処理した方がユーザフレンドリだと思います。
(htmlタグ禁止などは別にして)
0157nobodyさん2007/10/24(水) 09:41:54ID:T7DDINjY
サンプルで外部有名検索エンジンに自分のサイトから利用できる。
と言うのを見つけて、ダウンロードして使って見たら、ちゃんと文字化けもせず検索できたのに、
それを自分のファイルにコピーして使うと、検索文字が文字化けを起こしてしまいます。
どういったミスが考えられますか?
説明下手ですいません
0158nobodyさん2007/10/24(水) 09:43:03ID:???
それならいっそ、セパレータとして使う文字列をタブ以外に変えたほうが良いかもね。
<>とかが定石じゃない?
0159nobodyさん2007/10/24(水) 09:45:35ID:???
>>157
サンプルスクリプトと自分のスクリプトのエンコードが違うんじゃね。
01601562007/10/24(水) 09:56:48ID:???
>>158
なるほど。<>なら入力時にhtmlspecialchars使えば重なりませんね。
タブの空白2つへ置換はずっと前にPerlの入門書で見たのでそれがていせき(←何故か変換できない)と思ってました。 
質問うp主じゃないですが勉強になりました
01611572007/10/24(水) 09:56:50ID:T7DDINjY
>>159
はい、そうかもしれないのですが、サンプルの方はヘッダ情報にはタイトルしかなくて
文字コードがわからないのです。
自分のはSJISだと思います。。
mb_convert_encoding($hoge, "UTF-8", "SJIS");もわからないながら試してダメでした。
0162nobodyさん2007/10/24(水) 10:04:19ID:???
>>161
サンプルをコピペじゃなくファイルとして落としたなら文字コードのわかるエディタで開けばどう?
ブラウザで見てもいけると思うが。

もしくはサンプルを
mb_convert_encoding($sample,"SJIS-win","auto");
0163nobodyさん2007/10/24(水) 10:15:35ID:???
質問するなら自分とこの環境書けよ
それと話進めるにはそのサンプルとやらを晒したほうが早くないか?
01641572007/10/24(水) 10:50:37ID:T7DDINjY
>>162アドバイスどうりやってみましたが、ダメでした。私の書き方がまずいんだと思います
>>163すいません。xrea使ってます。サンプルは丸写しですがこれです
<html>
<head>
<title>検索エンジンの活用</title>
</head>
<body>
<h1>検索エンジン選択</h1>
<form method="POST" action="rdir.php">
<table border="0">
<tr>
<th>検索キーワード:</th>
<td><input type="text" name="keywd" size="20" /></td>
</tr><tr>
<th>使用エンジン:</th>
<td>
<select name="eng">
<option value="yahoo">Yahoo!</option>
<option value="google">Google</option>
<option value="infoseek">Infoseek</option>
<option value="goo">goo</option>
</select>
</td>
</tr><tr>
<td colspan="2"><input type="submit" value="検索" /></td>
</tr>
</table>
</form>
</body>
</html>
01651572007/10/24(水) 10:51:32ID:T7DDINjY
貼り漏れました
<?php
$strKey=urlencode($_POST['keywd']);
switch($_POST['eng']){
case "yahoo":
$url="http://search.yahoo.co.jp/bin/search?p=";;
break;
case "google":
$url="http://www.google.com/search?hl=ja&ie=euc-jp&q=";;
break;
case "infoseek":
$url="http://www.infoseek.co.jp/Titles?qt=";;
break;
case "goo":
$url="http://www.goo.ne.jp/default.asp?MT=";;
break;
}
header("Location: ".$url.$strKey);
?>
0166nobodyさん2007/10/24(水) 12:14:16ID:???
PHPで掲示板を作ってみたいと思っているのですがまず何から勉強をしたらいいのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています