【PHP】下らねぇ質問はここに書き込みやがれ 69
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/05/27(火) 18:04:33ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 68
http://pc11.2ch.net/test/read.cgi/php/1209822736/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0157【yubin01.html】
2008/06/03(火) 16:08:32ID:z9NWRSRZ"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:v="urn:schemas-microsoft-com:vml">
<meta http-equiv="Content-Type"
content="text/html; charset=UTF-8" />
<head>
<title>郵便番号による検索</title>
<script src="prototype.js" type="text/javascript"></script>
<script type="text/javascript">
function buttonf(){
uri = "yubin01.php";
data = Form.serialize("form1");
option = {method: "post", parameters: data, onComplete:ajaxReq};
new Ajax.Request(uri,option);
}
function ajaxReq(request1){
$("addr").value = request1.responseText;
}
</script>
</head>
<body>
<p>郵便番号を入力してください。 例 : 101-0025,26,35,41,43,46,48,51</p>
<form id="form1">
郵便番号<input type="text" id="zcode" name="zcode" size="10" />
<input type="button" id="b1" name="b2" value="住所検索" onClick="buttonf(); return false;" />
<br />
住所<input type="text" name="address" id="addr" value="" size="80" />
</form>
</body>
</html>
0158【yubin01.php】
2008/06/03(火) 16:09:02ID:z9NWRSRZ$BOM = "\xef\xbb\xbf";
$code1 = $_POST["zcode"];
$code2 = split("-",$code1);
$code = $code2[0].$code2[1];
$address= array(
"1010025" => "東京都千代田区神田佐久間町",
"1010026" => "東京都千代田区神田佐久間河岸",
"1010035" => "東京都千代田区神田紺屋町",
"1010041" => "東京都千代田区神田須田町",
"1010043" => "東京都千代田区神田富山町",
"1010046" => "東京都千代田区神田多町",
"1010048" => "東京都千代田区神田司町",
"1010051" => "東京都千代田区神田神保町"
);
echo $BOM.$address[$code];
?>
0161nobodyさん
2008/06/03(火) 16:47:34ID:???webサーバとはなにか?から出直してら
0162nobodyさん
2008/06/03(火) 16:54:38ID:???わからないので教えてもらえませんか
あと定期的に実行するにはどうやればいいですか
0163nobodyさん
2008/06/03(火) 17:05:50ID:???http://jp.php.net/manual/ja/language.types.array.php
->
http://jp.php.net/manual/ja/language.oop5.basic.php
=&
http://jp.php.net/manual/ja/language.references.php
定期的に実行
cron
0164nobodyさん
2008/06/03(火) 18:07:39ID:???借り物でやったら垢削除ものだが。
0165nobodyさん
2008/06/03(火) 19:02:27ID:???レスありがとうございます
>=>
>http://jp.php.net/manual/ja/language.types.array.php
う〜んarrayにしか使わないってことですか?
>->
>http://jp.php.net/manual/ja/language.oop5.basic.php
すみませんもう少し説明してもらえないでしょうか
(classに関係有るってことくらいしかわかりませんでしたorz)
>=&
>http://jp.php.net/manual/ja/language.references.php
ん、、、、いまいち普通の代入(=)との差がわからないのですが、、、
>定期的に実行
>cron
ありがとうございます
いまいち使い方がわかりませんがもう少し調べてみます
0166nobodyさん
2008/06/03(火) 19:15:03ID:???>う〜んarrayにしか使わないってことですか?
他に使ってる例でもあんの?
>すみませんもう少し説明してもらえないでしょうか
>(classに関係有るってことくらいしかわかりませんでしたorz)
インスタンスのプロパティやメソッドにアクセスするための構文。
C++やJavaでいうドット(.)と同じ。
分からんなら使わなくて特に問題なし。
詳しく知りたければオブジェクト指向について学ぶべし。
>ん、、、、いまいち普通の代入(=)との差がわからないのですが、、、
値渡しと参照渡しの違い。
マニアな人しか使わないから知らなくてもOK。PHPだと最適化してくれるし。
詳しく知りたければ参照について学ぶべし。
>>cron
窓鯖ならタスクでおk
0167nobodyさん
2008/06/03(火) 20:56:04ID:???返信どもです
>インスタンスのプロパティやメソッドにアクセスするための構文。
>C++やJavaでいうドット(.)と同じ。
>分からんなら使わなくて特に問題なし。
>詳しく知りたければオブジェクト指向について学ぶべし。
何となくだけどわかりました、ありがとうございます
0168nobodyさん
2008/06/03(火) 22:32:01ID:???0169nobodyさん
2008/06/03(火) 22:46:55ID:KEz04zwq取得する可能性がある場合、どうしていますか?
自分はREQUESTを使っていますが、↓する方法もあると思います。
if($GET){
$id = $_GET["id"];
}else($_POST){
$id = $_POST["id"];
}
ただこれだとソースが長くなるので、正しいのか否か悩んでいます。
0170nobodyさん
2008/06/04(水) 00:42:39ID:???0171nobodyさん
2008/06/04(水) 02:08:12ID:???0172nobodyさん
2008/06/04(水) 02:40:35ID:???0173nobodyさん
2008/06/04(水) 03:46:25ID:IW2VxFJn以下のようなURLの場合で、
http://hoge/index.php/id/foo/password/bar
index.phpにて「/id/foo/password/bar」の部分を
取得したいのですが、どのようにすれば宜しいでしょうか?
0174nobodyさん
2008/06/04(水) 03:58:25ID:???0175nobodyさん
2008/06/04(水) 04:07:25ID:???$_SERVER{'PATH_INFO']
スラッシュ区切りにする必要はあるのかね
てか認証で使うパスワードをGETで渡すのはどうかと・・・
0177の
2008/06/04(水) 16:07:38ID:???index.php?test
が作れて、
GETでは
index.php?test=testが作れるのは知ってるんですが
PATH_INFOかクエリで
で
index.php?test/test
と取得するにはどうしたらよいのですか?
0178nobodyさん
2008/06/04(水) 17:03:50ID:???0179nobodyさん
2008/06/04(水) 17:19:13ID:???質問に質問して悪いんだけど、
クエリで index.php?test が作れる、ってどういうこと?
PHP クエリ、なんかでググってみたけど出てこなかった。
index.php?test で値を渡せるの?
0180noun
2008/06/04(水) 17:53:03ID:3HEKVG38$query = getenv ("PATH_INFO");
$var = split ("[/\.]", $query);
echo "引数は「$var[1]」と「$var[2]」です。";
?>
このようばスクリプトをindex.phpで作ったら
index.php/a
でアクセスすると
引数は「a」と「」です。
と表示されます。
index.php?a/b
とアクセスすれば
引数は「a」と「b」です。
と表示させるにはどのようにしたらよいのですか?
このように考えてみましたけど動きませんでした
<?php
$query = getenv ("PATH_INFO");
$var = split ("[?\](.+)[/\.]", $query);
echo "引数は「$var[1]」と「$var[2]」です。";
?>
宜しくお願いします
0181nobodyさん
2008/06/04(水) 18:02:16ID:???<?php
$query = $_SERVER["QUERY_STRING"];
list($q1,$q2) = explode("/",$query,2);
echo "引数は「{$q1}」「{$q2}」です。";
?>
0182nobodyさん
2008/06/04(水) 20:01:45ID:???0184nobodyさん
2008/06/04(水) 20:37:04ID:???$fileName = "conf.xml";
$xml = simplexml_load_fileName($fileName);
$db = $xml->db;
print $db->id ."<BR>";
print $db->pass ."<BR>";
print $db->host ."<BR>";
print $db->dbname ."<BR>";
?>
とすると $xml = simplexml_load_fileName($fileName); エラーとでます、何が悪いんでしょうか?
0185nobodyさん
2008/06/04(水) 21:18:54ID:???0186nobodyさん
2008/06/04(水) 21:20:15ID:???0187nobodyさん
2008/06/04(水) 21:21:53ID:???simplexml_load_file($filename);
0188nobodyさん
2008/06/04(水) 21:23:42ID:???やさしくレスしてやろう
そんんあ関数無い
simplexml_load_file
http://jp.php.net/manual/ja/function.simplexml-load-file.php
これだろ?
0189nobodyさん
2008/06/04(水) 21:36:14ID:???いえ、喧嘩売ってません。 シリアスです。
>>186
別人ですね。
>>187
>>188
ありがとうございます^^
しかし、$xml = simplexml_load_fileName($fileName);
をsimplexml_load_file($filename);にしてみたところ、エラーが出ます。
何が悪いんでしょうね・・・
0190nobodyさん
2008/06/04(水) 21:42:22ID:???>>1を読まない -20
マニュアルを読まない -10
検索しない -10
エラーを書かない -10
上げない -5
丁寧語を使用 +5
合計点:-50
評価:非常に悪い質問です。
php.iniでphp_xmlをロードしてから出直してきてください。
0191nobodyさん
2008/06/04(水) 21:42:30ID:???0192nobodyさん
2008/06/04(水) 21:43:57ID:???$xml->db ← マニュアル読めとしか言いようがない
0194(^ω^)
2008/06/04(水) 21:50:18ID:+gTsOca6前レスであった
PATH_INFO
とクエリを同じに使うやり方が気になったのですが誰か教えてくれませんか?
index.php?test/b
とかのURLのが気になります
0197nobodyさん
2008/06/04(水) 21:56:43ID:???>index.php?test/b
PATH_INFO関係ない。それはクエリだ。
PHPerバカばっかか。
0199(^ω^)
2008/06/04(水) 22:09:58ID:+gTsOca6w(°0°)w?
どうやって取得するのですか?
index.php?test
なら取得できますけど
index.php?test/a
までは取得できません…
0201nobodyさん
2008/06/04(水) 22:19:33ID:O5TCb6Oo0202help
2008/06/04(水) 22:29:52ID:hG5521Jrを10進数に変換するプログラムを書き、桁とその桁の値に該当する
10進数(例えば、4桁目は2の3乗で8である)および変換された
10進数を表にして出力せよ。
0205(^ω^)
2008/06/04(水) 22:43:13ID:+gTsOca6http://s.sameha.net/?xtool/test
これは
http://s.sameha.net/?id=xtool&kp=test
みたいなのです。
http://s.sameha.net/?id=xtool&kp=test
これはGETで受け取ってるだけですが
http://s.sameha.net/?xtool/test
これはクエリで受け取りたいのですが、受け取れません(@_@;)
教えてください
0206help
2008/06/04(水) 22:44:02ID:hG5521Jr書き出しからまったくわからないので、
どなたか教えてください。javascriptでお願いします。
0207nobodyさん
2008/06/04(水) 22:48:28ID:???なんでわざわざスラッシュ区切りにしたいの?
>>206
<script type="text/javascript">
0209nobodyさん
2008/06/04(水) 22:56:15ID:???そうだよな? さすがにここまで低次元なわけないよな。
頼むよ、マジで……。
0210nobodyさん
2008/06/04(水) 23:24:54ID:???しかも1も昔のに変えるし
初心者は初心者スレがあるのに・・・
0211nobodyさん
2008/06/04(水) 23:32:13ID:???スーパーヒントやるから、これアレンジしてみろ。
$bin_num = "1111111111111111111111111111111";
$digits = strlen( $bin_num );
$i = 1;
$bin_num = 1;
while(1)
{
if( $i > $digits ) break;
print $i . " | ";
if( $i <> 1 ) $bin_num .= '1';
print bindec( $bin_num ) . "<br />";
$i++;
}
0213nobodyさん
2008/06/05(木) 03:53:21ID:nVJ3HHkI途中で関数がある場合、プログラムがそこで止まってしまいます。
ページ内にその関数が無くてもページ全体を読み込ませる(エラーを出さない
ようにするには、どうすればいいのでしょうか?
0214nobodyさん
2008/06/05(木) 03:59:39ID:???0215nobodyさん
2008/06/05(木) 05:48:02ID:???0216nobodyさん
2008/06/05(木) 06:02:42ID:???0217sage
2008/06/05(木) 07:24:33ID:SaqvuSsK0218nobodyさん
2008/06/05(木) 09:42:23ID:???ぐぐっても出てこない。
0219nobodyさん
2008/06/05(木) 10:53:03ID:???ttp://xdebug.org/docs/all_functions
0220213
2008/06/05(木) 11:01:36ID:???デザイン用のファイルに関数を入れている場合(エラー出力など)
があるのですが、関数のある・なしを調べるのではなくて、
ある場合でも無視して出力したいのです。
やっぱり、そういう事は出来ないのでしょうか?
0222nobodyさん
2008/06/05(木) 12:22:00ID:AlWPneO4OSX(10.4.11)にPHP5.2.4をインストールしましたが
cli版は4.xのままになっています。
インストール手順はtar.gzを解凍
↓
./configure時に--enable-cliを指定
↓
make
↓
make install
↓
ターミナルでphp -vで確認すると4.x
cli版のアップグレードは別の方法があるのでしょうか?
何かヒントを頂ければ有り難いです。
0224nobodyさん
2008/06/05(木) 13:45:58ID:???0225nobodyさん
2008/06/05(木) 14:05:43ID:86SziVzy確認したらprefix指定していませんでした。
だから今はphp4のcli版とphp5のcli版が共存している状態で
そのままphp -vすると4.x、php5のディレクトリのcli版を
指定すれば5.2.4と表示されていたのですね。
prefix指定して再インストールしてみます。
ありがとうございました。
0226nobodyさん
2008/06/05(木) 17:01:33ID:???CentOS5.1のphp5.1.6に組み込まれていません。
セキュリティフィックスのことを考えると
自分でコンパイルするのは選択肢になりません。
これを読むと、あとから追加する方法はあるようなのですが
どうすればいいでしょうか?
http://blog.poyo.jp/archives/id-1075268306
0227nobodyさん
2008/06/05(木) 17:12:42ID:tEsaaIDAということはPHPで可能でしょうか?
JavaScriptでは検索するとあったのでやり方が分かったのですが、
PHPで書いている他のスクリプトと出来れば一緒くたにしたい
と思っての質問です。
スレのテンプレやマニュアル、検索などしてみたのですが、
これ!という関数を見つけることが出来ませんでした。
アドバイス頂けるようでしたらよろしくお願いいたします。
0231JAM
2008/06/05(木) 18:11:04ID:???http://php.s3.to/
にあるPHP proxyのfsockopen(ソケット接続)
ができないのですが、PHPプロ串を動かすのに何か条件はいりますか?
パーミッション644にしていまして、777にしても動きませんでした。
0232nobodyさん
2008/06/05(木) 18:20:11ID:???パーミッションわからないのにいじるのはやめとけ
0234nobodyさん
2008/06/05(木) 21:43:30ID:???3000件前後の商品の検索システムと、商品の登録・編集システム(DBを使った)を1ヵ月半で作れると思いますか?
0235nobodyさん
2008/06/05(木) 22:22:48ID:???0236nobodyさん
2008/06/05(木) 22:24:37ID:???0237nobodyさん
2008/06/05(木) 22:31:32ID:???forループなどで一要素ずつ吐き出していくしかないでしょうか?
print_r( array_values( $array ) ); のような手軽な方法があれば、教えて下さい。
また、print( array_values( $array ) ); の場合、Arrayが返されますが、
この理由はなぜでしょう?
0238nobodyさん
2008/06/05(木) 22:42:23ID:???簡単じゃん。
SQLのDBにあるテーブルを
INDEX, ITEM_NAME, PRICE と言うようなものを作るんだろ?
登録は、ITEM_NAMEが一致しないか、まずSELECTで検索してから
INSERTかUPDATE(値段の更新)かを実行すればよし。
商品を削除するには、商品名でSELECTして、ユーザに選択させて
DELETEすればよし。
検索は、条件(商品名部分一致、値段上下)くらいだろうから、普通に
SELECT文で、画面表示すればいいじゃん。
コア部分をまず作成して、多分これが1週間くらい。それから、だんだんと
拡張してゆけばよし。
それから。
SQLインジェクションとか、最初にそういうセキュリティ面の共通関数を
作っておかないと、後で大変なことになるから…
0239nobodyさん
2008/06/05(木) 22:43:21ID:???0240234
2008/06/05(木) 22:59:12ID:???1ヵ月半で作り上げて客先に納品できますでしょうかね?
0241nobodyさん
2008/06/05(木) 23:10:43ID:MYkhFPuIAccessを使って作ってしまった方が簡単にできるんじゃないですか?
それと並行して時間を見つけてPHPで作ってみて
上手くいったら裏で切り替えるとか
0242nobodyさん
2008/06/06(金) 00:39:43ID:???精魂込めた1店舗より、適当に増殖させまくった1000店舗の方が、圧倒的桁違いに儲かるという事実を顧客に教えてやれよ。
0243nobodyさん
2008/06/06(金) 00:47:24ID:5yuWZEZB以下のようにしたのですが、表示されません。
$GLOBALS['test']="aaa";
class class_test{
global $test;
function test_a(){
echo $this->test;
}
}
$obj = new class_test("");
$obj->test_a();
0244nobodyさん
2008/06/06(金) 01:02:38ID:???0245243
2008/06/06(金) 01:06:18ID:???parse error, unexpected T_GLOBAL, expecting T_FUNCTION in
パースエラーが出ます。やはりこういう書き方は駄目なのでしょうか?
0246nobodyさん
2008/06/06(金) 01:07:47ID:???0247nobodyさん
2008/06/06(金) 03:14:20ID:XxyWIPlY立ち上げ可能な最大プロセス数を算出しようと思います
このような用途の場合、
memory_get_peak_usage (true)
か
memory_get_peak_usage (false)
のどちらが適切でしょうか?
falseの場合、
emalloc() が使用するメモリのみを報告するとのことで、
trueの場合の値とは大きさがかなり異なるので迷っています
0248nobodyさん
2008/06/06(金) 06:27:29ID:???ファイルサイズは1Mもなくて、Php.iniのMaxサイズは超えてないのに。
0249nobodyさん
2008/06/06(金) 06:37:23ID:???0250237
2008/06/06(金) 07:06:03ID:???0252nobodyさん
2008/06/06(金) 07:49:30ID:???0253nobodyさん
2008/06/06(金) 07:51:58ID:???それです!
ありがとうございました!
マニュアルにおける配列関数のページばかり見ていて、
文字列関数を見落としていました。
0254nobodyさん
2008/06/06(金) 09:54:25ID:7wBcJbju$result = mysql_num_rows($request);
if($result) {
while( $result = mysql_fetch_assoc($request) ) {
foreach($result as $key => $value) {
print "{$key} : {$value}";
}
}
} else {
print "該当なし";
}
検索結果がない場合を考慮して、
mysql_num_rowsで検索結果数を確認しているのですが、
mysql_fetch_assocも使っていて、
mysql_num_rowsは、非効率な処理をしているのではないかという気になります。
検索結果がない場合の処理として、
もっと最適な方法はありますでしょうか?
スピード重視ですので、PDOなどを利用する予定はありません。
0256nobodyさん
2008/06/06(金) 10:59:21ID:???フォームの内容を次のページで確認したりするために表示すると
「表示」という文字列が「表\示」というふうに間に半角の¥マークが入ったりします。
他にもいくつかの文字列で確認できています。
\を省くようなプログラムを書いてしまうと本来の\を記入したいときなどに
不都合が起きてしまうので
それ以外の方法で何とかしたいのですが
原因・解決方法を教えてください
よろしくおねがいします。
■ このスレッドは過去ログ倉庫に格納されています