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

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

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

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

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

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

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0161nobodyさん2007/04/15(日) 21:18:07ID:???
>>147
BBSとかちょっとした物作るならTeraPadあれば十分すぎる
ある程度大きいもの作るなら俺はEclipseかな?
まぁ、デバッガ使わずにprintデバッグしてるけどねorz

Windowsだからあんまり使わないだろうけどLinuxならvi最強
0162nobodyさん2007/04/15(日) 21:47:33ID:???
>>160
色分けはxmlに設定が記されてるから直接いじればできるよ
0163nobodyさん2007/04/15(日) 22:01:45ID:y9EClMBI
http://www.dotup.org/uploda/www.dotup.org1535.txt

出力
「INSERT test INTO test1='test1', test2='test2', test3='test3', test4='test4'」

エラー
「You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INTO test1='test1', test2='test2', test3='test3', test4='test4'' at line 1」

このように、SQL文の一部「test INTO」が消えてしまいます。
function内から別のfunctionを呼び出すとそうなる仕様なのでしょうか?
0164nobodyさん2007/04/15(日) 22:09:08ID:???
>>163
ttp://ga.sbcr.jp/news/0703/078/images/12.jpg
0165nobodyさん2007/04/15(日) 22:10:16ID:???
>>163
エラー文には「SQL構文にエラーがあるよ」って書いてるので
SQLのinsert構文をもう一度確認してみてはいかがですかね
01663872007/04/15(日) 22:12:18ID:???
>>159
2ちゃんっておもしろいね、やっぱ。
ID表示されないことを利用して成りすます奴が居るとは。
0167nobodyさん2007/04/15(日) 22:16:23ID:y9EClMBI
>>165
ありがとうございます
基本的な構文ミスでした。
INTOをSETで解決しました。

INSERT INTOと
INSERT SETは
どちらを使ったほうがいいんでしょうか・・・
自分はSETのほうが使いやすいのですが
01682007/04/15(日) 22:16:39ID:???
名前:387は
>>138の間違い

ややっこしい事になってしまった。
0169nobodyさん2007/04/15(日) 22:23:21ID:???
それなんてPHP?
0170nobodyさん2007/04/15(日) 22:23:28ID:???
>>156
実際居るから仕方ないんだけど、状況証拠のチリすらない段階で宣伝扱いするの、いくら2ちゃんでもやめないか?
裏付けや根拠すら全く無い段階でこれいうのって2ちゃんでいう池沼ってやつなんじゃ?
だいたい、作者とするにはタイミング良すぎないか?この実況板と化している当スレでは。
0171nobodyさん2007/04/15(日) 22:28:23ID:???
イイヨイイヨー
0172nobodyさん2007/04/15(日) 22:30:10ID:???
釣り針が太すぎてもダメです
0173nobodyさん2007/04/15(日) 22:32:42ID:???
以下、クマのAA禁止↓
0174nobodyさん2007/04/15(日) 22:34:06ID:y9EClMBI
再度質問お願いします。

includeで絶対パスで指定したとき、
URL file-access is disabled in the server configuration
とエラーが返ってきます。
ファイルはちゃんとあるのですが、何かphp.iniで設定が必要なのでしょうか?
(例えば、外部からのincludeを許可など・・・)
0175nobodyさん2007/04/15(日) 22:35:01ID:???
>>174
絶対パスとURLは別物
0176nobodyさん2007/04/15(日) 22:37:03ID:y9EClMBI
>>175
http://からではなくE:〜での記述で実行できました。
ですが、URLでの指定ではダメなのでしょうか・・・?
0177nobodyさん2007/04/15(日) 22:39:09ID:???
>>176
逆にどうして問題にならないと思ったのか聞かせてくれ
0178nobodyさん2007/04/15(日) 22:40:39ID:???
>>176
>>175
0179nobodyさん2007/04/15(日) 22:44:10ID:y9EClMBI
DOCUMENT_ROOTだと、外部からのアクセスによっては何か変わってしまうのかなと思ったので・・・
0180nobodyさん2007/04/15(日) 22:49:58ID:???
>>179
何かって何?
0181nobodyさん2007/04/15(日) 22:51:53ID:???
UTF-8とutf8って何か違いあるの?
0182nobodyさん2007/04/15(日) 22:53:16ID:???
手元のPHPのソースでgrepしたらこうなってた。
PHPAPI php_stream_wrapper

if (wrapper && wrapper->is_url && !PG(allow_url_fopen)) {
 if (options & REPORT_ERRORS)
  php_error_docref(NULL TSRMLS_CC, E_WARNING, "URL file-access is disabled in the server configuration");
 return NULL;
}
要は、渡しているパラメータ(wrapper)やPHPそのものの設定(allow_url_fopen)によるってこった。
0183nobodyさん2007/04/15(日) 23:08:44ID:???
当スレ、のろのろ実況板ってスレタイにいれるべきかと
0184nobodyさん2007/04/15(日) 23:12:58ID:???
くだらない質問です。

<form method=post action=hogehoge>
<input type=hidden name=hoge value=hoge>
<input type=submit value=go>
</form>

このpostで送信されるデータを連続投票したい場合どうしたらいいでしょうか?
知識の向上として知っておきたいのですが
一応これを実行してpostで送信すると投票先のスクリプトに移動して
再度戻ってまたgoをクリックしないと連続投票できませんよね?
これを1回実行するだけで100回POSTのデータを送信することは可能でしょうか?
0185nobodyさん2007/04/15(日) 23:15:32ID:???
>>184
とりあえずID表示
01861842007/04/15(日) 23:17:46ID:P44SZArS
はぁ
>>185
じゃ、よろしく
0187nobodyさん2007/04/15(日) 23:19:46ID:???
100 回 for で回せば良いと思うよ^^
0188nobodyさん2007/04/15(日) 23:20:22ID:???
その程度のスキルで荒らしはよくないからやめろ。
どこに向けて打つのかしらないが対策されてるから無駄
01891842007/04/15(日) 23:21:24ID:P44SZArS
POSTのデータをどうやってforでまわすの?
0190nobodyさん2007/04/15(日) 23:22:57ID:???
終了
0191nobodyさん2007/04/15(日) 23:25:17ID:???
楽しいなこのスレは
01921842007/04/15(日) 23:26:26ID:P44SZArS
>>188
100%言われると思ったけど、知識として知ってるほうが対策もできるので知りたいだけだから。
100%言われると思ったから書いたはずなんだけどな…
まあそれはいいとして、どうやってforで回すのか知りたい。
わざわざID出したので、よろしく。
0193nobodyさん2007/04/15(日) 23:30:02ID:???
for ($i = 0; $i < 100; $i++) {
    処理;
}
0194nobodyさん2007/04/15(日) 23:31:22ID:???
テラ親切www
0195nobodyさん2007/04/15(日) 23:37:35ID:???
現在のスコープ内の全ての変数を返すような関数はあるでしょうか
例外クラスの getTrace() のようなものです

スコープ内で処理に使用する変数を、$var[] とった配列にまとめておき、
print_r すれば良いだけかも知れませんが、あれば教えてください
01961842007/04/15(日) 23:38:44ID:P44SZArS
その”処理”の部分を聞いてます
もう1度言いますよ?
その”処理”の部分を聞いてます
さあ説明よろしくwww
0197nobodyさん2007/04/15(日) 23:42:39ID:???
>>196
サーバーサイドは1回の送信につき1回のリクエストだから
100回送信すればいいと思う

ここまで言えばわかるだろ
01981842007/04/15(日) 23:47:09ID:???
ははは。もういいよ。
わからないならわかりませんって言えw
このカスどもが
01991842007/04/15(日) 23:48:10ID:???
>100 回 for で回せば良いと思うよ^^

こいつテラワロスwww
0200nobodyさん2007/04/15(日) 23:56:26ID:???
>>198
OKWaveへGo
0201nobodyさん2007/04/15(日) 23:59:33ID:???
184言語障害乙
0202nobodyさん2007/04/16(月) 00:02:30ID:???
>>184
相手側のスクリプトに依って変わる
その荒らしたいページはどこだよ?
0203nobodyさん2007/04/16(月) 00:10:16ID:???
>>202

もうやめましょう
0204nobodyさん2007/04/16(月) 01:19:47ID:???
>>184
丸投げスレと質問スレの違いを理解してから書き込んでね
0205nobodyさん2007/04/16(月) 02:55:10ID:???
知識の向上wwwwwwwwwwwwwwwwwwwwwwwwwwww
0206nobodyさん2007/04/16(月) 03:31:41ID:???
微笑ましいな。
0207nobodyさん2007/04/16(月) 11:36:16ID:???
こんな馬鹿まだいたのかw
0208虚弱PHP2007/04/16(月) 12:26:49ID:???
>>184
PEAR::HTTP::Request
0209nobodyさん2007/04/16(月) 12:29:42ID:???
荒らし助長するんなよ虚弱PHP
0210虚弱PHP2007/04/16(月) 12:52:01ID:???
「教えるからもうくんな」の意
0211nobodyさん2007/04/16(月) 13:01:04ID:???
なんて無責任な
0212nobodyさん2007/04/16(月) 13:57:58ID:???
mysql_queryでmysqlにデータを入れる際ロックは必須なのでしょうか?
DB板で聞くのが正解かもしれませんが、お願いしますm(_ _)m
0213nobodyさん2007/04/16(月) 14:10:41ID:???
insertのことならいらない。
複数のテーブルに書きに行くのならtransactionをかけたほうがいいかもしれない。
0214nobodyさん2007/04/16(月) 16:35:09ID:???
classの所を読んでいるのですが、使用するにいたって利便性は何なんでしょう?
セキュリティ面とか、新しいプログラム使いまわせるとかではなく
単一のphp内において、もっと身近な部分で言うと…。
0215nobodyさん2007/04/16(月) 16:42:47ID:???
>>208
教えていいことと悪いことぐらいは考えてもらいたいですね
0216nobodyさん2007/04/16(月) 16:43:29ID:???
>>214
あるひとつの機能が必要とするデータと処理をまとめて管理できること
0217nobodyさん2007/04/16(月) 16:53:27ID:???
SSLが使えるレンタルサーバを2種類借りているのですが、
片方では、httpsプロトコルで、echo $_SERVER['HTTPS']; とやると、onと表示されて、
SSLが有効なのがわかるのですが、
もう片方は、ブラウザに鍵マークはつくものの何も返って来ません。
$_SERVER['HTTPS']の説明をみると、
「スクリプトが HTTPS プロトコルを通じて実行されている場合に 空でない値が設定されます。 」
とあるので、正常に機能していないということでしょうか?
それともサーバ側の設定で、何も返さないようにしているとかそういうことでしょうか?
02182172007/04/16(月) 16:54:21ID:N9diKUei
癖でsageてしまいました。すみません。
0219nobodyさん2007/04/16(月) 16:56:33ID:???
>>217
WEBサーバーがSSLをサポートしていると言う事と
PHPがSSLをサポートしていると言う事じゃ全く持って話が違う。

後者はWEBではサポートしているけどPHPじゃサポートしてないんでしょ
0220nobodyさん2007/04/16(月) 17:03:07ID:???
phpのsslはまだベータ版だしね
02212172007/04/16(月) 17:03:26ID:N9diKUei
>>219
なるほど。そういうことですか。
ではサーバのPHPをかえてもらわないとダメになるわけですね。
MySQL+PHPを使ったログイン機能があるサイトを作ろうと思っているのですが、
そのログインページ(PHPでできた)でSSLをつかいたいと思ったのですが、
PHPでSSLをサポートしなくても、Webでサポートしていれば、
入力された情報はちゃんと暗号化してくれるのでしょうか?
0222nobodyさん2007/04/16(月) 17:24:09ID:???
>>221
当たり前だけどしてくれるよ
PHPでSSLを使うって事はプログラムで内部でhttpsなURLに対して
リクエストを送る事が可能になったりするってことだ。
0223nobodyさん2007/04/16(月) 17:25:38ID:dwzdMgji
ttp://php.netからPHPをダウンロードしようとしたのですが、
「Windowu Binaries」の「PHP 5.2.1 zip package」をクリックすると
タイムアウトしてしまいます。

みなさんのところからはダウンロードできますか?
0224nobodyさん2007/04/16(月) 17:27:23ID:???
できる。
時間帯ずらしてダウンロードをためしてみたらいいよ
02252172007/04/16(月) 17:28:07ID:N9diKUei
>>222
ひとつ勉強になりました。これで一安心です。
早速プログラムを組みたいと思います。
どうもありがとうございました。
0226nobodyさん2007/04/16(月) 17:51:24ID:???
>>あるひとつの機能が必要とするデータと処理をまとめて管理できること
なんだかクラスを使った場合と使わない場合がうまく想像できないのです
0227nobodyさん2007/04/16(月) 18:00:38ID:???
グローバル変数使わなくてもすむだけでも、利便性があるよ。
0228nobodyさん2007/04/16(月) 18:09:26ID:???
>>6
必死だなw
0229nobodyさん2007/04/16(月) 18:21:04ID:???
あれ?全角ひらがなって1文字3byteもあるの?
0230nobodyさん2007/04/16(月) 18:26:19ID:???
Unicode
0231nobodyさん2007/04/16(月) 18:29:11ID:???
てっきり2byteかと思ってた
0232nobodyさん2007/04/16(月) 18:35:08ID:???
SJISやEUCは2byte、UTF8は3byteかな
日本語に関しては
0233nobodyさん2007/04/16(月) 18:40:47ID:???
%E3%81%9D%E3%81%86%E3%81%A0%E3%81%AA
0234nobodyさん2007/04/16(月) 19:10:27ID:???
%e3%81%ac%e3%82%8b%e3%81%bd
0235nobodyさん2007/04/16(月) 19:45:55ID:???
>>233-234

最近覚えたんですか?そういう風に書くの
0236nobodyさん2007/04/16(月) 19:51:10ID:???
exec、又はsystem()でお聞きしたいのですが
別のサーバからFTPでアップされたjpg画像を
上書き保存されない様にmv、cpとfopenはパーミッションの問題でエラーになりました。
そこで、上記コマンド実行前にchmodを入れてみましたがやはりパーミッションの問題が…。
file_get_contentsはPHPのバージョンの問題で使えませんでした。

要は、常に上書き保存されていってしまう画像をリネームして保存しておきたいのですが
上記以外の手法でパーミッションに捕われないような手法はありますでしょうか?
02372362007/04/16(月) 19:57:10ID:???
マニュアルみて解決しました。
02382362007/04/16(月) 20:29:36ID:Fo/N831C
>>237
ちょw誰だよwww
解決してネーよw
sageってメル欄だとID出ないんね。
メル欄空でもsagaるんかな?
02392362007/04/16(月) 20:41:35ID:???
>>238
解決したのに掘り起こすのやめていただけませんか?
0240nobodyさん2007/04/16(月) 20:53:17ID:???
>>236
それじゃ無理だろうね。FTPの方でパーミッションのread許可の対応するしかない。
FTPのユーザもあなたなら、簡単だけど。
0241nobodyさん2007/04/16(月) 20:57:54ID:???
>>236
ちゃんとIDださないから3つ分の答えを逃した骨折り損な奴
0242nobodyさん2007/04/16(月) 21:45:30ID:???
くだらない質問ですが、セフレってどこで探せますか?
0243nobodyさん2007/04/16(月) 21:55:35ID:ozAmxKpX
echo $_SERVER['SEFRE'];
0244nobodyさん2007/04/16(月) 21:56:06ID:???
>>243
IDがもうちょっとでDJオズマ
0245nobodyさん2007/04/16(月) 22:43:26ID:???
MAX(count) AS MAX
東MAX最近みないね、
0246nobodyさん2007/04/17(火) 01:52:56ID:wSkpW1Us
キャリアを判別しようと思ったのですが

function mobile_agent(){
$agent = $_SERVER['HTTP_USER_AGENT'];
switch ($agent){
case preg_match("/DoCoMo/", $agent):
$agent = "docomo";
break;

case preg_match("/Vodafone/", $agent) || preg_match("/SoftBank/", $agent):
$agent = "softbank";
break;

case preg_match("/KDDI/", $agent):
$agent = "au";
break;

case preg_match("/DDIPOCKET/", $agent) || preg_match("/WILLCOM/", $agent):
$agent = "willcom";
break;

default:
$agent = FALSE;
}
return $agent;
}

auでアクセスすると返り値が「docomo」になります。
switch内でのpreg_matchはダメなのでしょうか?
0247nobodyさん2007/04/17(火) 02:07:43ID:???
$agentとpreg_match(〜):の返り値が等しければそこが実行されるよ
0248nobodyさん2007/04/17(火) 02:43:45ID:???
>>246

ゆるくていいならそのままのやり方でも止めはしないけど
IP見て振り分けるほうが確実だよ。
0249nobodyさん2007/04/17(火) 03:26:53ID:???
UAなんて信用できないんだからIPでチェックしたほうがいいよ
0250nobodyさん2007/04/17(火) 05:38:28ID:???
何がなんでもIPアドレスでチェックなんて、業者と犯罪者ぐらいなもんだろうなw
0251nobodyさん2007/04/17(火) 06:42:52ID:???
>>233-234
専用のスレがあるよ
エンコード文字列だけのスレ
http://pc11.2ch.net/test/read.cgi/php/1065258181/
0252nobodyさん2007/04/17(火) 08:52:36ID:???
>>246

preg_matchの返り値って知ってる? 0か1がかえってくる。

ということは
case 0:
$agent = "docomo";
break;

とかやってくることになる。

switch使うんじゃなくてelseif使うのが良いと思われる。
0253虚弱PHP2007/04/17(火) 09:27:13ID:???
>>246
Net::UserAgent::Mobile
使うでいいんじゃないでしょうか。
0254nobodyさん2007/04/17(火) 11:24:13ID:cz59188T
携帯向けのサイト作成してますが、
ヒアドキュメント内でSIDを付加する方法はありますでしょうか?
02552542007/04/17(火) 11:28:14ID:???
自己解決しました。
0256nobodyさん2007/04/17(火) 11:40:27ID:???
自己解決したのはいいが解決法も書いていってよね!ぷんぷん
0257nobodyさん2007/04/17(火) 11:46:09ID:cz59188T
>>255-256
( ^ω^)お?

気を取り直して、
ヒアドキュメントでHTML部分を出力するのではなく、
<?php ?>と処理後に直接HTMLを書き、↓のように埋め込むか、
<a href="nextpage.php?<?php echo strip_tags(SID)?>">リンク</a>

もしくは、.htaccessが利用できるなら↓がスマートなんでしょうか。
php_flag session.use_trans_sid On

他にはどのような方法がありますでしょうか?御教示ありましたら宜しくお願いします。
0258nobodyさん2007/04/17(火) 12:16:24ID:wSkpW1Us
>>249
いや、位置情報取得のフォームを出力するんで、
携帯のブラウザによっても変化するからUAじゃないとダメっす
0259nobodyさん2007/04/17(火) 12:33:54ID:IrxiH2Fq
デザイン用のHTMLにPHPのコードを埋め込んで、WEBシステムとして
公開すると言うのが一般的だと思うのですが、
やっぱりデザインとPHPの分岐・分類って限界がありますよね?

Smartyとか使ってもやっぱり、デザイン用のHTMLにソースを埋め込むわけで。
かといってガチガチのプログラムにすると、後からデザイン面を
修正する時にしずらいし。(CSSを使っても限界あるし)

自分は各パーツをclass分けしてて、「登録内容一覧」とか表示する時は
classを使って必要情報を抽出し、whileで出力してます。

くだ質ですが、作りながら思ったので質問してみました。
0260虚弱PHP2007/04/17(火) 13:05:48ID:???
>>259
パーツ毎にきちんとテンプレートを分割するだけでも、
デザインとロジックはかなり分離できるよ。

> デザイン用のHTMLにソースを埋め込むわけで。

これは、人によってかなり差が出るところだね。

> デザイン用のHTMLにPHPのコードを埋め込んで

と似たような状態になるなら、
テンプレートエンジンを有効に使えてないと思う。
■ このスレッドは過去ログ倉庫に格納されています