【PHP】下らねぇ質問はここに書き込みやがれpart16
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/02/05(日) 22:35:34ID:sf8bx52Dここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
まず読め【PHP マニュアル】
http://www.php.net/manual/ja/
本スレ【PHP】質問スレッドpart32【php】
http://pc8.2ch.net/test/read.cgi/php/1136276300/
前スレ【PHP】下らねぇ質問はここに書き込みやがれpart15
http://pc8.2ch.net/test/read.cgi/php/1137236771/
過去スレは>>2
0447nobodyさん
2006/02/15(水) 20:43:29ID:???上に出てきてないやつだと fpdfとかもあるな。
0448nobodyさん
2006/02/15(水) 21:12:05ID:HBKFx6cqsqliteは入っているのでしょうか?どこにもないんです。
phpinfoもみましたがそれらしき文字も見当たりません。
なにかインストールする作業が必要なんでしょうか?
どなたかご教授おねがいします。
0449nobodyさん
2006/02/15(水) 21:36:07ID:???sqlite_open()すればインストールされているかどうか分かる
0450nobodyさん
2006/02/15(水) 22:19:37ID:???Win版しか知らないが、最新版なら作業が必要。
5.1から標準ではなくなった。ライブラリ化されたっぽい。
php.iniの適切な位置に
extension=php_pdo.dll
extension=php_pdo_sqlite.dll
extension=php_sqlite.dll
の3行を順番に記述するがよろし。
Linux版とかでも何らかの作業が必要と思われ。
0451nobodyさん
2006/02/15(水) 23:48:30ID:yhYCj6u70452450
2006/02/16(木) 00:08:24ID:???Win版で非標準(デフォで組み込まれていない)になって、Linux版で標準のままだったら不公平かとw
Win版に関しては間違いなく5.1.0ではデフォでは組み込まれなくなった。
5.0.4→5.1.0Ver.UP時にphp.iniを流用してたらSQLite動かず、原因究明にえらい苦労した。
0453nobodyさん
NGNGクローズに失敗した場合
どう対処したらいいですか?
というかどういう状況になると
失敗するんですか?
0454nobodyさん
2006/02/16(木) 01:07:23ID:???0455nobodyさん
2006/02/16(木) 01:10:32ID:???0458nobodyさん
NGNGじゃあスクリプトからしかアクセスしないような
ログファイルとかだったら
失敗してもそのまま終了してしまって問題ないですよね。
0459nobodyさん
2006/02/16(木) 01:53:31ID:???質問じゃないのか。
0460nobodyさん
2006/02/16(木) 01:57:27ID:???いいんじゃない?
貧弱なOSじゃなかったらスクリプト(PHPプログラム)が終了すると同時にファイルもクローズしてくれるだろうし。
0461nobodyさん
2006/02/16(木) 02:06:41ID:???もうPerl忘れちゃったよ('A`)
いや、そんなにPHPとは変わんないけどさ、気分の問題だよ
0462nobodyさん
2006/02/16(木) 02:26:03ID:U/SzwaHVデータベースがはじめてなのに土曜日までに会員登録をつくらなあかんのです。
助かりました。ありがとうございます。
0465nobodyさん
2006/02/16(木) 04:19:25ID:???xreaを使ってるんですが、
拡張子をphpにしてるにも関わらずhtmlとして扱われてしまいます。
もともとはMovable Typeのtmplという拡張子のファイルを、
PHPでカスタマイズしたものなのですが、
Movable Type側で、このファイルをhtmlとして扱うような
処理がしてあると考えるのが妥当でしょうか?
Perlはわからないのでサッパリです・・・
当然、ファイルは拡張子をかえたので、
そのファイルを使っているものに関しては、
拡張子の関連付けを変えました。
0467nobodyさん
2006/02/16(木) 05:10:39ID:???↑の「&」ってどういう意味をなすんでしょうか?
くだらないかもですが、宜しくお願いします。
0468nobodyさん
2006/02/16(木) 05:56:15ID:???& $variable;みたいに&と$の間にスペース入れられるのかな。
ちなみにそれは参照渡しと呼んぶ。
$src = 100;
echo "$src\n";
hoge ($src);
echo "$src\n";
function hoge (&$src){$src=0}
----出力----
100
0
----終了----
となる。
詳しくは関数の引数を読んでくれ
ttp://www.php.net/manual/ja/functions.arguments.php
0469nobodyさん
2006/02/16(木) 07:50:00ID:???PHPでzip圧縮なんて出来るんですか?
0473470
2006/02/16(木) 09:53:03ID:???PHP自体ではZIP読み込み関数しか用意されてないが、
phpMyAdminの話でいうとPHPからzlibを利用できる環境で
zipとgzipの出力ができる。詳しくはzip.lib.php参照
(PEARのArchive_Zipクラスみたいなもん)
0474nobodyさん
2006/02/16(木) 13:18:39ID:???$rにNULLを入れると、NULLと表示されてしまいます。
これって正しいですか?
0476474
2006/02/16(木) 15:05:23ID:???formタグのvalue='NULL'で渡しているんですが、もしかしてこれって文字列になるんですか?
''としてもifの中を通ってしまいます。
ちなみに明らかに使っていないグローバル変数でif(isset())をしたら中を通ってしまったので、
ためしにNULLを渡してみたらやっぱりifの中を通ってしまいます。
さらにちなみにif(isset())は多用していて、機能する所と機能しない所があります。
なにが違うのかさっぱり分かりません。
どうかご教授下さい。
0477nobodyさん
2006/02/16(木) 15:12:53ID:???APACHEを勉強しようと思い、マイPC(windows)にAPACHEをインストールし、
PHPを動作させました。
ところが、日本語の$_GET値が、勝手にURLデコードされてしまいます。
例えば、次のようなPHPファイルがあり、
test.php
<?php
print $_GET[key];
?>
以下のようにアクセスすると、
test.php?key=%A4%A2%A4%A2%A4%A2
実行結果
-----------------
あああ
-----------------
と表示されます。
正しくは、
-----------------
%A4%A2%A4%A2%A4%A2
-----------------
かと思うのですが、何が原因でしょうか。
お時間がある方教えていただけると助かりますm(__)m
0478nobodyさん
2006/02/16(木) 15:13:32ID:???0479nobodyさん
2006/02/16(木) 15:19:16ID:???>>476
$a = "NULL";
$b = "NULL";
$C = NULL;
echo "a = $a, b = $b, c = $c";
を実行してみて感想が欲しい。
ちなみにマニュアルでは、
引用符、二重引用符
ttp://www.php.net/manual/ja/language.types.string.php
NULL
ttp://www.php.net/manual/ja/language.types.null.php
に書いてあるから。
それでも分からなかったらまた質問しれい。
0480nobodyさん
2006/02/16(木) 15:22:43ID:???http://www.studyinghttp.net/uri
ここのパーセントエンコーディングを読んでみて
0481nobodyさん
2006/02/16(木) 15:25:17ID:???つかhtmlのformで渡せるのは"文字列"だけだよ。
文字列を受け取って、それをどう解釈するかは受信側に任されてるが。
0482474
2006/02/16(木) 16:01:57ID:???実行結果です。
引用符、二重引用符については一様分かっているつもりなのですが、
postで渡したNULLがどうしてもif(isset())を通ってしまいます。
value=NULL
value="NULL"
value='NULL'
$_POST[r]
$_POST['r']
$_POST["r"]
いずれもif(isset())を通ってしまいました。
仕方ないのでNULLの代わりに0を渡して、
if($_POST[r] != 0)としました。
if(isset())は他でも使っているので気持ちが悪いッス。
0484nobodyさん
2006/02/16(木) 16:08:11ID:???フォームでNULLを渡してissetで判定、ってのは基本的には無理。
やるなら
if($r == 'NULL') unset($r);
とかやって変数を消すしかない。
> 明らかに使っていないグローバル変数
これでisset()を通るのは意味不明。どっかで $r = ''; とかしてるんじゃないの?
isset()で偽になるのは unset($r); で変数自体を消す場合と $r = NULL; とプログラム中で書いたとき。
0486nobodyさん
2006/02/16(木) 16:11:33ID:???通常、フォームに対するissetは「そのフォーム自体が存在しない場合」をチェックするのに使う。
なので、<input type="hidden" name="a" value="">とやった時点でもうissetは必ず真。
普通は<input type="submit" name="a" value="aを押したときの処理">みたいにsubmitで使って
どのボタンが押されたかの判別に使う程度。値の内容判別にissetを使うのは間違い。
0487474
2006/02/16(木) 16:14:33ID:???ぬあ、そうなんですか、ってそうなんですね。
ありがとうございます。
ところで、formタグに囲まれている input type='file' は、
参照されなくても$_FILESに値が入ってしまうんでしょうか?
参照されていないのにif(isset($_FILES))でifの中を通ってしまいます。
0488nobodyさん
2006/02/16(木) 16:18:28ID:???基本的な「型」の区別すら付けられていない気が・・・・
(481を読む前に482を投稿したとしても)
0490474
2006/02/16(木) 16:34:56ID:???昨日は動いてた気がしたんですよ、夢でも見てたんですね。
勉強し直して来ます。
0491nobodyさん
2006/02/16(木) 16:36:06ID:???ttp://www.gac.jp/article/index.php?stats=question&category=&id=17033&command=msg&page=all
こっちでも優しくしてやってくれよ…マイッタ
0492nobodyさん
2006/02/16(木) 16:46:47ID:???例えばある表のパラメータとかを入れるレコードを作るとして
2回目から入れる場合
主キー=aとか調べてあればupdateなければinsertっていうのより
一旦レコード全部削除してinsertばっかってやってるのですが
何かまずいことありますか?
調べる処理分時間も短縮されるのでと思っているのですが・・・
0494nobodyさん
2006/02/16(木) 16:51:55ID:???全然ちょっとじゃないよっヽ(`Д´)ノ
0497nobodyさん
2006/02/16(木) 17:01:14ID:???基本的にどの言語にもある変数や配列といった概念は昔からあるのですか?
0498nobodyさん
2006/02/16(木) 17:09:10ID:???0499477
2006/02/16(木) 17:10:43ID:???ありがとうございました。
PHPって勝手にデコードされるのが仕様だったんでしたね。
perlと行ったり来たりの開発でテンパッてました。
0506nobodyさん
2006/02/16(木) 20:50:20ID:ZZ/v8PR0↑これはレンタルサーバのphp.iniのセッション管理部分を抜き出した画像です。
このレンタルサーバでセッション管理は使えるでしょうか。
使える場合、なにか制限はあるでしょうか。
よろしくおねがいします。
0509nobodyさん
2006/02/16(木) 21:43:15ID:???0513506
2006/02/16(木) 22:20:40ID:ZZ/v8PR0>>509
あ、申し訳ない。
「削除されてる」というのは設定が削除されていて
セッション管理ができないことだと思ってました。
画像が削除されてましたね。
もう一度よろしくお願いします。
http://www.geocities.jp/unamuhi/sessioon.html
0516nobodyさん
2006/02/17(金) 06:45:05ID:???´`^^i1^v~ヽ
!|i
||゚
___」L__&/ヽ、
.:.:./ ̄  ̄\;:...;:.:.:.:.:.:.....:.:.:.........:.:.:.
.:...^.^:ー.:.:.:.:...::.:.:.:..:.:.:^^~.:.:.:.:.::::.:.::^::::... :. :.:.. .:.:
:::::::::::::::::::::::::::::,::::::::::::、::::::::::,::::::::::::....:.:.:......:.:.:....:.:
0517nobodyさん
2006/02/17(金) 07:23:56ID:???今の日本が悪いんだ!だからオッサンを責めないでやってくれ!
0518nobodyさん
2006/02/17(金) 08:44:49ID:???by オッサン
0519nobodyさん
2006/02/17(金) 11:30:00ID:???0520nobodyさん
2006/02/17(金) 11:45:07ID:???0521nobodyさん
2006/02/17(金) 12:34:55ID:???class指定の際に変数の型宣言をきっちりしている人がいるのですが、
自動判別にゆだねずあえて宣言するメリットは何なんでしょうか?
0522nobodyさん
2006/02/17(金) 12:43:33ID:???0524nobodyさん
2006/02/17(金) 12:55:47ID:???自動判別は気持ち悪くて仕方が無いんだよ。
現場でも「気持ち悪い、気持ち悪い」とか言いながら「便利だよな」で。
0525nobodyさん
2006/02/17(金) 12:56:31ID:U6ySh0xXttp://pamo.dip.jp/blog/archives/000119.html
windowsで、c:\piyo\foo以下のディレクトリにある
ファイルに含まれる半角かなを全角カナに変換しようと
思ってぐぐったら、上野サイトがみつかりました。
そこで、上記のサイトの通り、以下のディレクトリを作成し、
beforeの方に、変換したいファイルをごっさり入れました。
c:\piyo\foo\before
c:\piyo\foo\after
そして、上野スクリプトをこう書き換えました。
$r_dir='.;c:\foo\before';
$w_dir='.;c:\foo\after';
ですが、うまく動きません。
何か他に設定すべき所はありますか?
どなたかご教示願います。
0526nobodyさん
2006/02/17(金) 13:10:01ID:U6ySh0xX質問がわかりにくくすみません。
自己解決しました。
0527nobodyさん
2006/02/17(金) 13:48:34ID:???こんな短時間で自分でミスを発見する程度のものを質問する時点で・・・
結局、 \\ なのか?
0528nobodyさん
2006/02/17(金) 13:51:05ID:U6ySh0xXはい、そうでしたorz
0529nobodyさん
2006/02/17(金) 15:33:48ID:tkJ6TdC2そうするとhttpでアクセスできなくなりますよね。
自分はアクセスできるようにしたいのですが、
なにか良い案などありましたらご教授願えませんか?
よろしくお願いいたします。
0530nobodyさん
2006/02/17(金) 15:40:33ID:???0531nobodyさん
2006/02/17(金) 16:33:07ID:Jyi+qfsMPHPでアニメーションGIFを自動生成しようと思い
GDでは出来ないということだったので、
ImageMagick(Windows版)というものを探してインストールしてみたのですが、
使い方がさっぱりわからなくて困っています。
どなたか、ご教示をお願いします。
0532529
2006/02/17(金) 16:46:16ID:tkJ6TdC2.htaccessは信頼してもよろしいのでしょうか?
セキュリティーは慎重にいきたいと思ってます。
0533nobodyさん
2006/02/17(金) 16:50:29ID:???質問の意図が良く分からない・・・;
そんな事言ってたらキリが無いと思ったのは自分だけ?
そこまで気になるなら、httpd.confと.htaccessに書いてIPSTABLEにも書き加えれば流石に大丈夫かと
0535nobodyさん
2006/02/17(金) 16:55:44ID:???$hoge['A']='aaa';
$hoge['B']='ccc';
$hoge['C']='ggg';
↑
これを "A=aaa&B=ccc&C=ggg" みたいな文字列にしたい
泥臭くループ回せばとりあえずできる・できたんだけど、
格好良く惚れ惚れするコードは書くことが出来るだろうか
0537nobodyさん
2006/02/17(金) 17:03:25ID:???$s[]="A=aaa";
$s[]="B=ccc";
$s[]="C=ggg";
を作らなきゃやっぱだめ?
0538nobodyさん
2006/02/17(金) 17:04:01ID:???$hoge['B']='ccc';
$hoge['C']='ggg';
$result = "";
foreach ($hoge as $key => $val) {
$result .= $key . "=" . $val . "&";
}
0541nobodyさん
2006/02/17(金) 17:09:40ID:???foreach( $hoge as $k=>$v ) $s[]="$k=$v";
$str = implode("&", $s);
どうしてもかっこよく出来ない。 $sが必要なのがダサすぎ。
0542nobodyさん
2006/02/17(金) 17:27:24ID:???0545543
2006/02/17(金) 17:37:57ID:???PHPならひょっとしてと思ってマニュアル見たらやっぱりあったって感じかな
■ このスレッドは過去ログ倉庫に格納されています