【PHP】下らねぇ質問はここに書き込みやがれ 53
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/08/25(土) 22:11:08ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 52
http://pc11.2ch.net/test/read.cgi/php/1186794483/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0738nobodyさん
2007/09/04(火) 00:40:49ID:???返信が遅くなって申し訳ない&レスありがとう
こちらの書き方に問題があったようで、実はそのレベルには達してなかったりしますorz
ただ今後必要になると思うので、参考にさせてもらいます。
セットアップと言うかインストール自体出来てなかったのですが、↓を参考に一応インストールだけは出来たようです。
ttp://www.zend.co.jp/tech/index.php?PHP%A5%A2%A5%D7%A5%EA%A5%B1%A1%BC%A5%B7%A5%E7%A5%F3%2FSmarty%2F002%20%C6%B3%C6%FE
また分からない事があったらご指導ください。
0739nobodyさん
2007/09/04(火) 01:28:40ID:???ダウンロード機能をつけるのに一つ懸念があります。
ダウンロードするファイルに対するエスケープ?処理のような
ものを行なわなくてもいいんでしょうか。
ダウンロード時にXSSのように働くデータをアップされて、
それをダウンロードすると・・・・
みたいな心配はしなくてもいいんでしょうか。
ほかのうpろだのソースを見た限り、特にこの点を心配している
様子がないのですが。
0740nobodyさん
2007/09/04(火) 01:42:34ID:???> 様子がないのですが。
どうせ知らないだけ。
http://internet.watch.impress.co.jp/cda/news/2004/08/03/4124.html
http://slashdot.jp/security/05/05/19/088246.shtml
0741nobodyさん
2007/09/04(火) 02:10:38ID:bPRYri3Q環境は、php 5とMAC OS X SERVER 10.3です。
宜しくお願いいたします。
0742nobodyさん
2007/09/04(火) 02:30:42ID:???0743nobodyさん
2007/09/04(火) 02:35:25ID:bPRYri3Qご回答ありがとうございます。MACからじゃ駄目ですかorz
0744nobodyさん
2007/09/04(火) 04:06:26ID:9L3FCPFc最近はデータをDBに格納するのが当たり前になってきたから、それで悩まないけど。
0746nobodyさん
2007/09/04(火) 04:24:50ID:???>プリペアドステートメントに渡すパラメータは、引用符で括る必要は ありません。
>それはドライバが自動的に行います。 アプリケーションで明示的にプリペアドステートメントを使用するように
>すれば、SQL インジェクションは決して発生しません
とあるんですけど、mysql_real_escape_stringをしなくても問題ナッシング。
つう解釈でokなんですか?
0747nobodyさん
2007/09/04(火) 05:12:23ID:E1xjDifvif($esse == 1) {
$flag = 0;
$length = count($eles) - 1;
foreach($_POST as $key=>$var) {
$key = strtr($key, $string_from, $string_to);
if($var == "eweb_submit") ;
else {
for($i=0; $i<=$length; $i++) {
if($key == $eles[$i] && empty($var)) {
$errm .= "<FONT color=#ff0000>「".$key."」は必須入力項目です。</FONT><BR>\n";
$flag = 1;
}
}
}
}
---------------------
フリーのメールフォームのソースなのですが、
ここの中の
if($var == "eweb_submit") ;
else {
ってどうゆう意味でしょうか・・・
$varがeweb_submitならその下のelseの中を実行する・・・ってことでしょうか?
0748nobodyさん
2007/09/04(火) 05:36:20ID:???逆。$varがeweb_submitじゃないときにその下のelseの内容を実行する。
if($var != "eweb_submit"){
と同義。
0749nobodyさん
2007/09/04(火) 09:21:07ID:???0751nobodyさん
2007/09/04(火) 09:34:16ID:???0752nobodyさん
2007/09/04(火) 10:14:43ID:???日本じゃ時間換算で5000円も掛かるらしい。
phpを仕事でやっている奴は、もう駄目だなぁ。
総務の非定型な仕事に比べて、日本語ができなくて誰でも手軽にできるphpじゃ、中国人なら500円位でやりそうだ。
0753nobodyさん
2007/09/04(火) 10:16:59ID:???0754nobodyさん
2007/09/04(火) 10:21:30ID:???0755675
2007/09/04(火) 10:22:38ID:9L3FCPFc今日は新しいクエスチョンについて教えて下さい。
if( $a and $b) continue;
↑このandですが(orの場合もあり)、and や or は総称して何と呼べばいいんでしょうか?
英語での呼び方もついでにお願いします。
0756675
2007/09/04(火) 10:25:10ID:9L3FCPFcでも日本のベンダーが間に入っていたので、発注額としては普通に安いくらいだった。
間に入ったベンダーが儲かってるんだろうなぁ。
0757nobodyさん
2007/09/04(火) 10:29:05ID:???http://jp.php.net/operators
0758nobodyさん
2007/09/04(火) 10:32:42ID:???これからずっと質問していくつもりか
前回の質問でヒント出したんだからマニュアル見るとか検索するとかしましょうよ
0759nobodyさん
2007/09/04(火) 10:33:57ID:???業界全体として未だにメジャーにはなっていない。
昨今の技術者不足で単金が下がる所か上がっているしw
0760nobodyさん
2007/09/04(火) 10:39:41ID:???日本では犯罪や、日本人が嫌うようなやり方で金儲けてる輩が目立つけど、
あれだけ人口がいれば多種多様なわけで、真剣に頑張ってるやつもいる。
ハングリー精神じゃないけどね。
そういうわけで学校すらいけなかったなんていう貧困層でも、
ちゃんと教えれば真剣にやって、そこそこ使えるようになるのが中国人。
これは貧困層の話だけど、中級層↑では学術機関で学んだハッカーもたくさんいる。
日本人相手にウイルスばら撒いたり、巨大な著作権違反SNSみたいのを開設したりするのは、
わりとこういう階級の人間。
0761675
2007/09/04(火) 10:40:03ID:9L3FCPFc0764nobodyさん
2007/09/04(火) 12:48:17ID:???うpされたデータをあくまでも意味づけのないバイナリデータとして
扱ってる限り問題は特に問題はないよ。ただ勝手に意味があるものとして
処理してしまうブラウザとかがあるが。
0765nobodyさん
2007/09/04(火) 13:47:51ID:kR6gSNsI10Gを超えるファイルを実行するとfalseを返して終了してしまいます。
300M程度のファイルを実行するとうまく行ってるのですが・・。
0766nobodyさん
2007/09/04(火) 14:42:53ID:t7FQpoBy0770nobodyさん
2007/09/04(火) 15:55:05ID:t7FQpoByサンクス
いってまいります
0771nobodyさん
2007/09/04(火) 16:22:15ID:t7FQpoBy0772nobodyさん
2007/09/04(火) 16:29:07ID:???0773nobodyさん
2007/09/04(火) 16:30:28ID:t7FQpoByそれまでに自己解決できれば理想なんだが・・・
0774nobodyさん
2007/09/04(火) 17:46:28ID:???ブラウザで動作確認をしているのですが
エラーメッセージは何処で確認できるのでしょうか
上手く動いていなくても空のHTMLのページが表示されるだけで
何が悪いのか分からないのですが
0776nobodyさん
2007/09/04(火) 17:57:00ID:jHnRn6Rzhoge.htmlに以下を記述
$i =0;
while($i < 500){
sleep(10);
$i++;
}
とした場合 hoge.html を 10秒ごとに 500回アクセスするのと、サーバーへの
負荷は変わらないのでしょうか。
0777nobodyさん
2007/09/04(火) 18:08:35ID:???何がやりたいかよくわかりませんがたぶん10秒リロードが必要なのでしょう。
そう仮定するとsleepは負荷以前に目的に合わないはずです。
0779nobodyさん
2007/09/04(火) 18:45:16ID:EHN55NHEやりたいことは、
・ブラウザは web serverを稼働させる端末でのみ動作させる を条件で、
動作中のブラウザ(自身)を終了させたいのですが。
ボタンクリックで system( "ABC" ); を起動します。
コマンドABCは ブラウザのpid を調べてkillする Cで記述したプログラムです。
コマンド自体は実行されるのですがブラウザが死にません。
コンソールから ABC を実行するとkill出来ます。
実行ユーザーは同じです。
PHP-4.3.9
よろしくお願いします。
0780nobodyさん
2007/09/04(火) 18:48:40ID:5f+cO2zZAクラスの中で使用した変数をBクラスへ渡す方法が分かりません。
PHP4 / linux です。
どなたかヘルプミー
0783nobodyさん
2007/09/04(火) 20:46:49ID:???AでBを継承したのにAの変数をBに渡すってどういうこっちゃ。
「A内で」とか書いてるのを見るとまぁ継承じゃないんだろうが。
0784nobodyさん
2007/09/05(水) 00:50:24ID:MdOFDt2Pいい方法を教えて下さい
0786nobodyさん
2007/09/05(水) 01:59:28ID:???>>1
勝手に推察するが、WinでApacheのNTサービスが相手なら、
サービスじゃなくすか、コンピュータの管理のサービスで、
「デスクトップとの対話をサービスに許可」してやってみれ
0791nobodyさん
2007/09/05(水) 02:19:27ID:???0792nobodyさん
2007/09/05(水) 02:23:03ID:???キーにも何入れてもいいのでしょうか?
たとえばリソースやオブジェクト等を入れても問題ないですか?
0793nobodyさん
2007/09/05(水) 02:41:40ID:???ダメ。整数か文字列。
#マニュアルより
配列またはオブジェクトをキーとして使用することはできません。 これを行なうと、warning: Illegal offset type を発生します。
0795nobodyさん
2007/09/05(水) 02:56:19ID:QMlng57L自作はできたのですができれば効率が悪すぎて実用的ではありません。
$dir = dir('hoge');
$cnt = 0;
while($file = $dir->read()){
if($file!='.'||$file!='..') $cnt++;
}
echo $cnt;
0796nobodyさん
2007/09/05(水) 03:16:21ID:???0797nobodyさん
2007/09/05(水) 04:06:24ID:???バグ修正だけだね
0798nobodyさん
2007/09/05(水) 04:09:32ID:???4つかってるひとはいまのうちに5に移行したほうがよさげね。
0799nobodyさん
2007/09/05(水) 05:45:15ID:???0800nobodyさん
2007/09/05(水) 06:44:55ID:???0801nobodyさん
2007/09/05(水) 06:52:30ID:???お前らも悟ればおk
0802nobodyさん
2007/09/05(水) 09:46:04ID:HTNqPBp70803nobodyさん
2007/09/05(水) 09:48:40ID:HTNqPBp7phpごときにIDEなんて必要?
で、PHPのIDEってDWのこと?Eclipceのこと?その他?
0804nobodyさん
2007/09/05(水) 10:04:48ID:???DWはPHPのIDEとしては機能的に弱い
俺はEclipse使ってるが他者は知らない
専スレがあるからそれみてどれ使うか決めればいい
http://pc11.2ch.net/test/read.cgi/php/1154082822/
0805nobodyさん
2007/09/05(水) 10:06:07ID:???0806nobodyさん
2007/09/05(水) 11:01:56ID:HV9qeu+U完了した時点で、削除、という処理をしたいのですが、
どうもうまくいきません。
データ自体が正常にダウンロードできておらず、
例えば、画像だと1/10程度が表示され、残りが壊れているような
感じの画像としてダウンロードされます。容量も本来の
10分の1程度になります。
なんとなくダウンロードしきる前に削除しちゃってる気がします。
クライアント側でデータのダウンロード・取得が完了、
というのをサーバ側で判断したりすることは可能なのでしょうか。
ちなみに8kb以下程度なら正常にダウンロード・削除できます。
または別解決方法がありましたらおながいします
0807nobodyさん
2007/09/05(水) 11:45:36ID:HTNqPBp7Eclipceはiアプリの開発で使ってたから、PHPでも使えると聞いて、早速
Eclipceでやってみようと思ったけど、設定が多すぎてその時点で嫌になった。
Perlで苦労した俺からしたら、PHPなんて楽チン過ぎて、これ以上なにを求める?!
って感じなんですが。
0808nobodyさん
2007/09/05(水) 11:46:26ID:???環境によっては取れない事があるんだっけ?
0809nobodyさん
2007/09/05(水) 12:12:04ID:???ダウンロードさせて、っていうことは、
ファイルシステム上に直接ファイルを作成して、それを参照させてるってこと?
PHPで直接データを送ればいいんじゃないの?
やることは適切なContent-Type: ヘッダをを渡すことだけ。
0811nobodyさん
2007/09/05(水) 13:37:39ID:???そういう関数ないですか
0812nobodyさん
2007/09/05(水) 13:40:13ID:???0813nobodyさん
2007/09/05(水) 13:48:31ID:iFbT+y59phpinfo()でそれらしい設定が見つからなかったのですが・・・
0814nobodyさん
2007/09/05(水) 14:28:23ID:vAG+Wys0httpを含むその行の文字列をアンカーリンクとするようにしたいのですが、
何か巧い方法を教えていただきたいです
0817nobodyさん
2007/09/05(水) 14:33:06ID:vAG+Wys0ありがとうございます
0818808
2007/09/05(水) 14:48:19ID:???0820nobodyさん
2007/09/05(水) 16:01:49ID:x3JtEU0uvalueの<b>という値はXSSが起こりうるのでしょうか?
一応確認してみたのですが、この行以降の文字は太文字にはなりませんでした。
0821nobodyさん
2007/09/05(水) 16:05:00ID:???0822nobodyさん
2007/09/05(水) 16:10:26ID:x3JtEU0u0823nobodyさん
2007/09/05(水) 18:57:53ID:6UMtGkQvやってみたら、文字コードのフォーマット?か何かが違ってるぽいです。
PHPで出力文字列をunicodeにするにはどうすればいいですか?
0825823
2007/09/05(水) 19:15:51ID:6UMtGkQvやっぱこれじゃダメですか
文字コードの知識が全然無い俺
unicodeは何て指定すればいいんですか
0826nobodyさん
2007/09/05(水) 19:29:01ID:???unicodeは、UTF-7,UTF-8,UTF-16,UTF-32と色々バリエーションがあるし、
さらにそのサブセットもあるから、detectして文字コードの種類を調べるのが先。
0827nobodyさん
2007/09/05(水) 19:40:57ID:???<input type="text" name="name" value="ココ" />
ってことだろ?
" /><script>alert("XSSですけど?")</script> <a href="
って値を入れてみようか。
<input type="text" name="name" value="" /><script>alert("XSSですけど?")</script> <a href="" />
駄目じゃね?
0829823
2007/09/05(水) 20:05:18ID:6UMtGkQv皆さんありがとうございました。
0830nobodyさん
2007/09/05(水) 20:49:40ID:9ANsBxrb◆やりたい事
・phpの中にindex.tplを表示する場合とend.tplを表示する場合の条件を記述したい。
・普通にphpにアクセスした時はindex.tplを表示させたい。
・end.tplはテキスト入力欄に入力した状態で登録を押した時に表示させたい。
・現状は分岐のさせ方が分からないため、index.tplの内容を表示し、その下にend.tplの内容が表示されてしまいます。
◆環境
CentOS 4 & PHP 4.3.9
◆index.php
<?php
require'Smarty/Smarty.class.php';
function get_smarty_object(){
$smarty = new Smarty();
$smarty->template_dir = "tmp/templates/";
$smarty->compile_dir = "tmp/templates_c/";
return $smarty;
}
$smarty = get_smarty_object();
// ここに何かしらの分岐を書く必要があると思いますが、書き方が分かりませんでした。
$smarty->display( "index.tpl" );
// ここに何かしらの分岐を書く必要があると思いますが、書き方が分かりませんでした。
$smarty->display( "end.tpl" );
?>
0831nobodyさん
2007/09/05(水) 20:50:52ID:9ANsBxrb◆index.tpl
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<title>月入力前</title>
</head>
<body>
<form method="post" action="index.php">
<input name="month" type="text">月<br>
<input name="submit" type="submit" value="登録">
</form>
</body>
</html>
◆end.tpl
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<title>月入力後</title>
</head>
<body>
<form method="post" action="index.php">
{$month}月が入力されました。<br>
<a href="index.php">戻る</a>
</form>
</body>
</html>
0832nobodyさん
2007/09/05(水) 20:54:04ID:???0833nobodyさん
2007/09/05(水) 20:56:17ID:Owa32j3Y「%EF%BC%A1%EF%BC%A2%EF%BC%A3」という文字列にしたいのですが
何か上手い方法ありますか?
bin2hex使えば16進になることは分かったのですが、後%入れる方法がわかりません。
0834nobodyさん
2007/09/05(水) 20:58:24ID:???0835nobodyさん
2007/09/05(水) 21:03:41ID:Owa32j3Y$result=urlencode($keyword);
0836nobodyさん
2007/09/05(水) 21:13:33ID:xhirHVJB0837nobodyさん
2007/09/05(水) 22:10:46ID:JCAEvDAB0838nobodyさん
2007/09/05(水) 22:24:31ID:9ANsBxrbレスどうもです。
一応html+phpで動かす事は出来たのですが、ソースを見た所、htmlとphpが混在していて見にくかったので
php+tplに移植を試みていたのですが、中々難しいようで。
多分
if (submit押下後) {
$smarty->display( "end.tpl" );
} else {
$smarty->display( "index.tpl" );
}
でいけそうな気がしたのですが、このsubmit押下後をこの時点で判定するのは難しそうですね。
素直にhtml+phpで、htmlのsubmit押下でphpを呼び出す方向で検討しようと思います。
■ このスレッドは過去ログ倉庫に格納されています