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

【PHP】質問スレッドPart3

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。02/02/17 13:23ID:N+9Uw5dE
レスは気長に待つのが良い感じかも。
答えられる方、返答よろしくお願いします。

<<参考リンク>>
■本家
http://www.php.net/
■PHP日本語マニュアル
http://www.php.net/manual/ja/
■JapanPHPUsersGroup
http://www.php.gr.jp/
■PHP日本語ページ
http://www.cityfujisawa.ne.jp/~louis/apps/phpfi/index.html
■Pearのドキュメント
http://phpdocu.sourceforge.net/peardocs/

<<過去スレ>>
■【PHP】質問スレッドPart1
http://ebi.2ch.net/test/read.cgi/php/982687820/
■【PHP】質問スレッドPart2
http://pc.2ch.net/test/read.cgi/php/1003283567/

<<教えて君>>
■ここ見習って書き込んじゃ、駄目よ
http://pc.2ch.net/test/read.cgi/unix/1011345180/242-245
047246702/03/31 11:04ID:???
>>471
おお!
おっしゃる通り、ヘッダにつける改行を削ったらちゃんと動作しました。
どうもありがとうございました。
しかし、ヘッダに改行があると本文に反映するってのはよくわからんなあ・・・
0473nobodyさん02/03/31 20:48ID:gcEm6bxV
ポマエラ!こんなロジック組んでくれ。おながいします

CSVデータの変更プログラム

列A,列B,列C
11,22,33
44,55,66
  ・ 
  ・
  ・

これを

列A,列B,列C
11,22,33
44,XX,66
  ・ 
  ・
  ・

55のところをXXに変更。
指定した列の指定した行を任意に変更できるロジック。
もちろん、なるべくメモリを食わないように。
0474nobodyさん02/03/31 21:10ID:???
>>473
本当にメモリの使用量を気にするなら、
CSVのファイルから直接読み込むのか
メモリ上にCSV形式のデータを編集するか
どちらかを教えれ。

これを作るに当たって何がわからないの?
メモリをなるべく使わない方法?
それとも置換そのもの?
とりあえず今まで何して、どう失敗したかとか書いてくれや。
047547402/03/31 21:11ID:???
ちょっとミス。

>メモリ上にCSV形式のデータを編集するか
メモリ上にあるCSV形式のデータを編集するのか

の間違いでした。
0476nobodyさん02/03/31 22:01ID:???
マルチポスト
http://pc.2ch.net/test/read.cgi/php/1017456911/8
0477nobodyさん02/04/01 09:24ID:wTPI09Op
html出力とファイル出力をうまく切り替えられる方法ないですかねぇ?
イメージ的には下のような感じにしたいのですが(もちろん動作しません)
/////////////////////////////////////
if($filesave==1){
fopen($fp,"filename.dat");
}else{
fopen($fp,"html"):
}
fputs($fp,"データ");
fclose($fp);
/////////////////////////////////////
0478nobodyさん02/04/01 12:55ID:???
>477
クラス作れ

class foo
var $f;
function foo($hoge)
{
$this->f=$hoge;
}

function fputs($data)
{
if ($this->f == なんとか) {
fputs ふが
else
fputs ほげ
}

こんな感じ。
047947702/04/01 13:13ID:???
そうしてみます。
ありがとうございました。
0480nobodyさん02/04/01 20:03ID:213sjeJ3
かちゅ〜しゃから送信されたフォーム情報がPHPで取得できません。
$HTTP_POST_VARSも空っぽです・・・。

ブラウザからなら取得できるのですが。

どうやったら取得できるのでしょう・・・。
0481nobodyさん02/04/01 22:11ID:RDA5NK4q
上省略
/bin/sh /usr/home/xxx/src/php-4.1.2/libtool --silent --mode=link gcc -I. -I/usr/home/xxx/src/p
hp-4.1.2/ -I/usr/home/xxx/src/php-4.1.2/main -I/usr/home/xxx/src/php-4.1.2 -I/usr/home/xxx/s
rc/php-4.1.2/Zend -I/usr/home/xxx/src/php-4.1.2/ext/mysql/libmysql -I/usr/home/xxx/src/php-4.1
.2/ext/xml/expat -I/usr/home/xxx/src/php-4.1.2/TSRM -g -O2 -o php -export-dynamic stub.lo lib
php4.la
/usr/libexec/elf/ld: cannot find -lpq
*** Error code 1

Stop in /usr/home/xxx/src/php-4.1.2.
*** Error code 1

Stop in /usr/home/xxx/src/php-4.1.2.
>
php4.1.2をダウンロードしてきて./configure makeしたところなんですが
こんな感じです。なにがいけないのでしょうか?
おねがいします。
0482nobodyさん02/04/01 22:13ID:RDA5NK4q
/bin/sh /usr/home/xxx/src/php-4.1.2/libtool --silent --mode=link gcc -I. -I/usr/home/xxx/src/p
hp-4.1.2/ -I/usr/home/xxx/src/php-4.1.2/main -I/usr/home/xxx/src/php-4.1.2 -I/usr/home/xxx/s
rc/php-4.1.2/Zend -I/usr/home/xxx/src/php-4.1.2/ext/mysql/libmysql -I/usr/home/xxx/src/php-4.1
.2/ext/xml/expat -I/usr/home/xxx/src/php-4.1.2/TSRM -g -O2 -o php -export-dynamic stub.lo lib
php4.la
/usr/libexec/elf/ld: cannot find -lpq
*** Error code 1

Stop in /usr/home/xxx/src/php-4.1.2.
*** Error code 1

Stop in /usr/home/xxx/src/php-4.1.2.
>
となってしまいました。
なにがいけないのでしょうか?よろしくおねがいします。
048348102/04/01 22:14ID:RDA5NK4q
あれ?書き込めてる。失敗。
0484名無しさん@お腹いっぱい。02/04/02 00:31ID:cW7c6rc4
どこに質問していいのやら・・・
板違いだったらごめんなさい。
通信技術のほうにも書き込みました。

画像UPのPHPを作ったんですが、動作チェックをしてて妙な事に気づきました。
1ピクセルごとに、赤、青、緑、赤、青、緑・・・
2行目緑、赤、青、緑、赤、青・・・
3行目青、緑、赤、青、緑、赤・・・
というように交互に塗っていって、BMP Win形式24bitで保存した画像をupしようとすると、24×24ピクセル以上は、なぜかupできないのです。
それ以上のファイルサイズの普通のbmpファイルはアップできます。
いろいろ試してみました。
Windows2000personal+IE6.0、Windows2000Server+IE5.0、Windows2000Server+NN4.5、MacOS9.2+IE5.0,MacOS9.2+NN4.7
いずれも同じ動作で、OSやブラウザによる依存はないように思われます。
また、画像のほうもPhotosho5.5Win版で加工したものですが、ペイントブラシで作成したりいろいろ試しました。
また、2色、4色の格子は問題ないのですが、3色の格子だけだめなようです。3色のスプライト、ボーダーも同様の現象。
また例えば100×100の上記格子に、先頭以外の一部分(例えば20×20)の黒塗りつぶし領域をつけても同様でした。(先頭は試してません)
また、CGIの画像UP掲示板なんかも試してみたのですが、これもだめでした。
なにかこの現象についてご存知の方がいらしたら是非教えてください。
また、3台のマシンでしか試してないので、皆さんの結果もできれば聞きたいです。
私の稚拙な頭では、画像のパターンが原因か通信部分での問題しか思いつかないのでよろしくお願いします。
0485nobodyさん02/04/02 00:45ID:???
>>484
とりあえず検証用に問題の画像をうpすれ。
0486名無しさん@会社02/04/02 09:27ID:0y5SIjSU
>>485

FTPもできなかったので、とりあえずJPGにしてageました。
使用時BMPに変換してください。

http://www.geocities.co.jp/MotorCity-Race/2671/syo2.jpg
http://www.geocities.co.jp/MotorCity-Race/2671/syo3.jpg
http://www.geocities.co.jp/MotorCity-Race/2671/syo4.jpg
0487nobodyさん02/04/02 09:42ID:ff+k1ZXe
画面表示を SJIS で、内部処理を EUC でやっているPHP プログラム A.php があります。
(サーバは FreeBSD 4.4R, Apache 1.3.20, PHP 4.1.2)

たとえば、

$t1 = "SJISの文字列";
<form action="B.php" method="POST">
<input type="text" name="t1" value="$t1">
:
</form>

と書いた場合、B.php では $t1 は SJIS で受け取れるんでしょうか、
それとも EUC ですか。

あるいは、HTTPサーバによって異なってしまうんでしょうか。

A.PHP と B.PHP で、うまく日本語が渡ってくれなくて困っています。

どなたか助けてください。
0488 ◆AngelBlk 02/04/02 10:32ID:???
>487
ブラウザの仕様によるのでは?
基本的にブラウザが表示している文字コードで送られてくるはず。
その後、どうなるかはPHP側の設定。
mbstring.http_inputがautoになっていたら
SJISで受け取った後内部エンコーディング(この場合EUC)に
変換してると思います。

心配ならmb_convert_encoding使って自分で文字コードを
指定したほうがトラブル無いと思うけど。
0489nobodyさん02/04/02 18:50ID:C7YJwDj/
フレームを使って、フレームの要素のページに、前のページのフォーム
からの値を、送れるようにしました。

<frame src="fra3.php<? echo ("?atai1=$atai1"); ?>

ここで$ataiに配列を利用したいのですが、どう記述すればよろしいで
しょうか。atai[0]=$atai[0]&atai[1]=atai[1]、と網羅的に記述すれば
確かにできるのですが、見にくいものとなってしまいます。

簡潔に書く方法がご存知でしたら、参考サイトや手段など教えてくださ
い、よろしくお願いします。
0490あはっ。☆。。。☆。02/04/02 18:57ID:MsnfFTr6
http://www.kokorode.com/000000/
0491名無しさん@お腹いっぱい。02/04/03 00:21ID:gGeAb4cd
484です。
どうも火壁の問題のようです。
お騒がせしました。って解決はしてないんですけど。
0492apacheuserさん02/04/03 01:56ID:???
>>489
区切り文字を一つ適当に選んで、
配列の中にその文字があったらエスケープする。
後はimplodeで区切り文字をつければよし。

復元のほうのアルゴリズムのほうがちょっと面倒。
そんな難しくないけど。

こんなんでいい?
0493 02/04/03 09:53ID:qAYnfRwX
>apacheuserさん

うまくいきました。
どうもありがとうございました。
0494名無しさん@お腹いっぱい。02/04/04 04:19ID:???
tableやdivで、例えばaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
とかやると、スタイルシートで幅を定義してても、びにょ〜んと伸びちゃいますよね。
これの対策としてwordwrap使ってぶった切りかませばいいのだなと
やっちゃみたのですが、これのlengthってバイト数だそうで、
1バイト文字と2バイト文字を組み合わせて使っちゃうと変に切れて文字化けしちゃいます。

何かいい方法ありましたらどうかご教授ください。
0495nobodyさん02/04/04 12:17ID:WzAT/ySJ
>>494
mbstrlenを使うとよろし
0496名無しさん@お腹いっぱい。02/04/04 13:22ID:???
>>495
mbstring関連の関数って、mbstring は拡張モジュールとかマニュアルに書いてあるんですが、
どこでもつかえるのですか?
ribbon networkにアップして、
<?
echo mb_strlen("あげ");
?>
とやってみたのですが、何も表示されません。
これだけじゃだめなんですか?
0497nobodyさん02/04/04 16:04ID:HHqarjRe
>>496
print mbstrlen("あああaa","Shift_JIS");
これでテストしてみるとよろし
049849402/04/04 17:41ID:???
>>496さん、ダメです。何も表示されません・・・。
<?
print "前";
print mb_strlen("あああaa","Shift_JIS");
print "後";
?>
このように書くと、



だけしか表示されませんでした・・・。
0499 ◆AngelBlk 02/04/04 18:08ID:???
>498
うちの環境だと
前5後
って出るけど。

で、ふと思ったこと。
PHPの設定を確認してほしいんだけど
php.iniで
display_errors = Off
にしてない?
これだと
1.mbstring入っていないからmb_strlenが無いというエラーがでる
2.エラーが出た場所以降、画面には何も表示されない。
ってことに。
0500 ◆AngelBlk 02/04/04 18:09ID:???
>499に追加。
<?php
phpinfo();
?>
っていうファイルを実行すべし。
display_errorsのOn/Offもわかるし
mbstringが入っているかどうかもわかるはず。

0501nobodyさん02/04/04 20:46ID:???
ribbon.toはエラー出ない設定になってるしmbstringも入ってない。
050249402/04/04 21:58ID:???
ううう、懇切丁寧にありがとうございます皆さん。

で、mbstring入ってないってことは他の方法考えにゃならんってことだということですよね、、、
むむむー。ギブアップ。
0503_ ◆IVXmlxmI 02/04/04 22:41ID:???
こんな感じでいいかな?無理矢理切り取ってきた糞ソースですまん。

$textが置き換え対象
この場合は80文字で改行とチンチンを挿入
場合によってはreturnで戻す前に'<br />' . $tempurlをいれてください。

$tangoregx = "([a-zA-Z0-9]{80,})";
$text = preg_replace_callback("$tangoregx","gyou",$text);
function gyou($url){
 for($m = 0;$m < count($url);$m++){
   $tempurl = $url[$m];
   $nkosuu = (int) $nkosuu = strlen($tempurl) / 80;
   for($n = 1;$n < ($nkosuu+1);$n++){
     $tempurl = wordwrap($tempurl,(80 * $n),"<br />",1);
   }
   return $tempurl;
  }
}

それとかなり前の方の人への遅レスだが、Perlでforとwhileの違いなかった・・・
計った時にファイルを読み書きさせたところで差が出た模様。
紛らわしくてすまん。あひゃん♪
050449402/04/04 22:45ID:???
すんません。jcode_mini.phpsを使ってなんとなく出来ちゃいました。

<?
require("jcode_mini.phps");
$string="aあcdでe使f";
$Max_strlen=strlen($string);

for($i=0;$i<$Max_strlen;$i++){
$std=substr($string,$i,1);
$d=AutoDetect($std);
if($d==0){echo $std;}
else {$std=substr($string,$i,2);echo $std;$i++;}
}
?>

1バイトずつ取って逝って、アスキー文字だったらそのまま、
それ以外だったら2バイト?ってことで。
050549402/04/04 22:48ID:???
>>503
わわわ、ありがたく使わしてもらいますです!
>>504は無かったってことで(^^;
0506 02/04/05 14:11ID:vKH3Wlrd
質問です。
index.htmlにphpで作ったカウンタを入れたいんですが、
index.htmlからcounter.phpを呼び出してその返り値っていうか
要はカウンタをindex.htmlに埋め込んで表示するにはどうしたら
いいんでしょうか?
0507nobodyさん02/04/05 19:34ID:ol6QsPih
>>506
カウンタ表示を画像にするか文字にするかで方法が違うんだけど、どっち?
0508nobodyさん02/04/05 20:17ID:8HekwyeF
質問です。
httpsでファイルのダウンロードをするサイトを作ろうとしています。
セッション管理はPHPLIBで行っています。
セッション管理をPHP4から用意されたセッション処理関数で行う場合、
session_cache_limiter('public');
をセッション開始前に行わないとうまくいかないそうなのですが、
PHPLIBでのセッション管理では、これにあたる物は有るのでしょうか?
050949402/04/06 09:23ID:???
たびたびすいません。
[:alnum:]だとか[a-Z]などのパターンは、マニュアルのどこに載ってますか?
探したんですけど一向に見つからなく・・・
0510_ ◆IVXmlxmI 02/04/06 21:19ID:xiXLt5jB
>>494
正規表現なので、正規表現について調べればいいのでは?
preg_replace_callbackはPerl互換
レイが見えるのは霊感
0511nobodyさん02/04/07 04:50ID:sDrsWdZs
今までhtml内のSSI経由で呼んでいたperlのCGIアクセス解析を
phpファイル内から呼ぶ方法ってありますか?
0512nobodyさん02/04/07 04:55ID:sDrsWdZs
>>511
自己レス。というか、php内でperlなcgiを動かせる方法があればいいのかな?
0513nobodyさん02/04/07 07:39ID:???
>>511
普通に外部プログラムとして呼んで、出力をprintすればいいのでは?
0514nobodyさん02/04/07 09:00ID:oKmtaXBH
なんか、おまえら、会話が、あほだぞ・・・・
0515nobodyさん02/04/07 16:12ID:sDrsWdZs
>>513
レスthanx. 例えば、includeすると結果はwebページにちゃんと表示されますが、呼び出しているのが、
PHPなので、アクセス解析にはブラウザがPHP 4.1.2、アクセスもとがウェッブ・サーバとか出てしまう
という欠点があります。

>>514
だから意外に難しいと思ったんですけど、あほですか?
0516nobodyさん02/04/07 23:55ID:???
>515
system関数使うのはダなの?
0517nobodyさん02/04/09 11:24ID:???
>>516
やってみましたが、うんともすんとも言わなかったでした。

素直にphpなアクセス解析使ったほうがいいのかなぁ。
オススメのアクセス解析ってありますか?
0518nobodyさん02/04/09 13:40ID:???
>>517
アクセス解析のログをphpで吐き出せば?
0519 ◆AngelBlk 02/04/09 14:35ID:???
>517
systemで呼ぶときはcgiに渡したい値を
引数で渡さないとだめなような。

昔やってたんだけど、もう忘れたなぁ・・・。

まあ、PHPで書き直すのがいいかもね。
勉強にもなるし。
0520nobodyさん02/04/09 19:23ID:???
>>518
ログを吐き出すだけなら、できますけど、ブラウザとかの情報はとれないですよね?
>>519
なるほど、引数ですか、ちょっと試してみます。

phpで作ろうかと思って勉強しています。
$SCRIPT_NAMEでもgetenv("SCRIPT_NAME")でも自分のファイル名を
とれますけど、どっちを使ってますか?
0521nobodyさん02/04/09 19:51ID:???
>>520
$SCRIPT_NAME って自分のファイル名だけでなく、パスも入っちゃうよ。
0522nobodyさん02/04/09 22:06ID:???
>>520
マニュアル読め〜
http://jp2.php.net/manual/ja/language.variables.predefined.php
0523nobodyさん02/04/09 23:45ID:v8USxwZs
>>520
phpinfo();を参考に環境変数を取って、
GETでPerlに渡せばどうよ?
0524nobodyさん02/04/10 00:52ID:QeMF+ULc
PHPでaddslashes()とhtmlspecialchars()を使ってユーザー側からのJavasqriptなどの危険なコマンドの無効化をしたのですが、これを使うと日本語表示でも時々\がついてしまうことがあります。
なんとか日本語表示のときだけ\がでないようにしたいのですが、どうしたらいいのでしょうか?
0525nobodyさん02/04/10 01:34ID:???
Javasqript(´,_ゝ`)
0526nobodyさん02/04/10 01:40ID:???
失礼、本文を書き忘れた

通常なら
htmlspecialchars($text,ENT_QUOTES)
のみで十分かと

DB使うなら
addslashes()ではなくstr_replace()を使ってはいかがか?

それと文字コードはどうなってる?
0527nobodyさん02/04/10 16:35ID:i95Gvoeh
ちょうど私も似たような状況です。

掲示板を作っているのですが、設定をiniファイルに保存しているので
それを読み出す際、
$iniData = file($iniFileName);
で一気に配列に読み込んでから
for($i = 0; $i < count($iniData); $i++){
 $iniData[$i] = str_replace("\r\n", "\r", $drnArray[$i]);
 $iniData[$i] = str_replace("\r", "\n", $drnArray[$i]);
 $iniData[$i] = str_replace("\n", "", $drnArray[$i]);
}

ってやって改行コードを切ってるんですが、
配列の中に「\」があると「\\」となり、
「表」っていう文字があると「表\」となっちゃいます。

原因すらわからないので、助けてください。
052852702/04/10 16:37ID:???
すいません、間違えました

for($i = 0; $i < count($iniData); $i++){
 $iniData[$i] = str_replace("\r\n", "\r", $iniData[$i]);
 $iniData[$i] = str_replace("\r", "\n", $iniData[$i]);
 $iniData[$i] = str_replace("\n", "", $iniData[$i]);
}

str_replaceの引数コピペ間違い。
0529nobodyさん02/04/10 23:20ID:???
aaa \t あ \t 1
bbb \t い \t 2
ccc \t う \t 1
aaa \t あ \t 2
bbb \t い \t 2
ccc \t う \t 3

このような中身のファイルがあり、一番左の項目が重複する時にまとめて
数字だけは足したい場合は、どのようにすればよいでしょうか。

aaa \t あ \t 3
bbb \t い \t 4
ccc \t う \t 4

こうしたいです。
0530apacheuserさん02/04/10 23:52ID:???
>>529
タブ区切りのCSVってことでいいのかな。
一番左が一致してるときに真中の値はどうするかは
よくわからんけど、とりあえず普通にハッシュ使えば?
0531nobodyさん02/04/11 00:01ID:0MrGuQ4Q
>>524>>527
ひょっとして文字コードshift_jis?
magic_quotes と問題がごっちゃになっているが
0532nobodyさん02/04/11 01:24ID:0YnZBQoe
PHP3で書かれたソースをWeb上で見つけて、それを自分のサーバーで使いたいのですが、自分のとこはPHP4なので、エラーが出てしまいます。
ソースは
------------------------------------------
<?
Header( "Content-type: image/gif"); /* 出力がGIFファイルであることを示す */
$font_num = 4; /* フォントの種類 */
/* PHP3では1以上の数にfontを割り当てることができる。 */
/* 1〜4までは、PHP3に組込まれたBitmapfontが使用される。*/
/* でも、日本語は使えない(;;) */
/* 全体の作画範囲の決定 size_xが水平方向 size_yが垂直方向 */
$size_x = strlen($write_word)*imageFontWidth($font_num)*2;
$size_y = imageFontHeight($font_num)*2;
/* 文字列の作画位置の開始座標の決定 */
$write_x = ($size_x - strlen($write_word)*imageFontWidth($font_num))/2;
$write_y = ($size_y - imageFontHeight($font_num))/2;
/* 空のimageの作成を行なう。*/
$im = ImageCreate($size_x, $size_y);
/* imageのbackgroundの色を作成する。*/
$bgcolor=ImageColorAllocate($im,(int)$bg_red,(int)$bg_green,(int)$bg_blue);
/* imageのforegroundの色を作成する。*/
$fgcolor=ImageColorAllocate($im,(int)$fg_red,(int)$fg_green,(int)$fg_blue);

ImageFill($im ,$size_x, $size_y, $bgcolor);

ImageString($im,$font_num,$write_x, $write_y, "$write_word",$fgcolor);
ImageGif($im); /* imageをGIFとして出力する。 */
ImageDestory($im); /* imageを破棄する。*/
?>
-----------------------------------------------
なんですが、自分のとこで実行すると、
<br>
<b>Fatal error</b>: Call to undefined function: imagefontwidth() in <b>/home/majihima/public_html/test.php</b> on line <b>25</b><br>

と出てしまいます。
どこを改造したらうまく実行できるのか教えていただけないでしょうか。
よろしくお願いいたします。
0533nobodyさん02/04/11 03:33ID:???
>>532
GDとfontはいれてある?
053452702/04/11 10:02ID:???
>>531 えーと、Shift_jisでした。
EUCで保存しなおしたら、「表」が「表\」になるのは
直ったみたい。嬉。

でも「\」は「\\」になっちゃうなぁ。

ちなみに改行コードって、今までCR+LFだったのを
LFのみにしたんですが、実際どれにすればよいのか
まったくわかりません。
053552702/04/11 10:05ID:Qk43qoJG
すみません、文字コード関連でもうひとつ質問があります。

プログラム(phpファイル)をEUCで書けば、そのプログラムが
生成するファイルもEUCになるんでしょうか?
0536Grips ◆ZEplUyt2 02/04/11 11:42ID:s9L3xhCG
spaceports.comで、MySQLを使うのに、SQLでCREATE DATABASE ABCとPHPに埋め込んだのですが、
どうもデータベースが作成されていないようなんです。
どうやったらデータベースが作成できるでしょうか?
0537nobodyさん02/04/11 12:26ID:???
>>535
php.iniのmbstring.http_outputの設定か、
mb_output_handlerとか使う。
0538Grips ◆ZEplUyt2 02/04/11 14:14ID:s9L3xhCG
>>536
がダメであれば、せめてMySQLのダンプをPHP上で実行する方法を誰か分かる人がいるのであれば教えてください。
分からなくて困っています。
0539nobodyさん02/04/11 14:52ID:???
>>536
たいていのフリーホスティング系はユーザにDBを作成する権限を与えてない。
ユーザ名のDBが1コだけ提供される。spaceport.comもそのはず。
>>538
phpMyAdminを入れるってのは?
バックアップファイルも直接流せる。
054052702/04/11 15:06ID:Qk43qoJG
>537
なるほど。みっけました。

さらに質問なんですが、掲示板等でタグを使われないために、
"とか<とか>をエスケープさせたいんですが、
ほかにもやっといたほうがいい文字ってどんなのありますかね
0541nobodyさん02/04/11 15:58ID:???
>>540
htmlspecialcharsか、
htmlentitiesとか使う。
0542Grips ◆ZEplUyt2 02/04/11 20:04ID:STOJDdM0
>>539
ありがとう!
解決できました!
nobodyさんの知識にカンパーイ!
0543nobodyさん02/04/11 22:55ID:99F5CMsa
>>533nobodyさん
返答ありがとうございます。

すいません。GDが入っているかどうかというのはどうやったらわかるのでしょうか。
UNIXあんまりわからないもので、、、。
一生懸命調べていますが、ヒントを教えていただければありがたいです

0544nobodyさん02/04/12 00:05ID:???
>543
マニュアルのイメージ関数の項を見れ
0545nobodyさん02/04/12 00:11ID:???
GD が組み込まれていれば <? phpinfo(); > でどんな設定になってるか
出てくるはず。出なければ GD なし。
054652702/04/12 10:41ID:8K23hqg+
>>541
この二つってどう違うんでしょうか?
マニュアルにはhtmlspecialcharsは「&」「"」「'」「<」「>」を
変換するって書いてあるんですが、
htmlentitiesのほうは何をどう変換するのかぜんぜんかいてません。
すべての文字ってことなんですかね?

ちなみにこれは、たとえば掲示板だとすると、
書き込まれた瞬間に変換してログファイルに保存するときは
変換済みで保存するべきなのか、それともとりあえず
書き込まれたとおりに保存しておいて、表示する段階で
変換するべきなのか、どっちでしょ?
0547nobodyさん02/04/12 10:45ID:???
URLに?a=50&b=30 とか入れると変数の値を渡せますが
別な方法でコッソリ(ユーザーにどんな値を渡してるか秘密で)
渡すことってできますか?
0548nobodyさん02/04/12 11:32ID:???
>>547
cookie か POSTでhidden か セッション でどう?
それか、渡す値を一時的に暗号化するってのはどう?
054954702/04/12 12:24ID:???
cookieは考えたんですが、中にはOFFな人も
いるかなーと思いまして。

POSTでhiddenって初めて聞きます。調べてみます。
これはクッキーがオフだったりいろいろこまめにセキュリティ関係を
いじってる人でもちゃんと送ってくれるんでしょうか?

暗号化。これもいいですね。もしPOSTがだめならこっちを
考えてみます。

ありがとうございます。
0550nobodyさん02/04/12 12:54ID:???
<input type="hidden" name="hoge" value="fuga">
055154702/04/12 12:57ID:???
>>550あーこれってもしかして<form>の中にこの文を入れれば
いいってことですか?どうりで探しても出てこなかったワケです。
phpっていうよりむしろhtmlだったんですかね。

ありがとうございます。今から試してみます。
055255002/04/12 14:31ID:???
>>551
そです。formの中に入れます。
原始的だけど一般的かつそこそこ確実な方法。
0553nobodyさん02/04/12 14:34ID:???
>>551
ただし、hiddenだとHTMLのソース見られると渡している値が
わかっちゃうけどね。
まあ、HTMLを知らない人には全然わからないだろうから、
その程度の隠し方でいいならhiddenが一番簡単じゃないかな。
055454702/04/12 14:56ID:???
なるほどー。たしかにソースにバッチリでちゃうな。
しかもこれはこのhtmlをローカルに保存してhtml書き換えれば
送る値を自分でコントロールできるってことだよね?

どーしよっかなぁ。まあでもURLに出るよりは数倍いいか。

暗号化はめんどいんで、この方法で逝ってみます。
055554702/04/12 14:59ID:???
ちょっとまった。

これって<form>にいれるってことは、当然submitボタンで
ページ間を移動するってこと?リンク(a href)では
値を渡せないですよね?

まいったなぁ。

暗号化か・・・。
0556nobodyさん02/04/12 15:16ID:???
じゃあセッション使えよ。
055754702/04/12 15:25ID:???
>>556また知らない言葉がでてきた・・・。セッション。
急いで調べてみたけど、かなり使えそう。
$_SESSION[]こういう配列になるってことですかね?これは。
[]の中に好きな数字なり言葉なりをいれて。

セッションIDってのは使い捨てでいいんですか?
定義や開放は必要ですか?
unset()ってのがあったんですが、これやらないと
すごい負荷になったりするんでしょうか?
055854702/04/12 15:54ID:???
AN HTTPD + php4.1.1ですが、
なんだかエラーになります。
Warning: open(/tmp\sess_2ccfb96834bdeca3e99dac8180555afb, O_RDWR) failed: No such file or directory (2)
これって?ていうか↑こんなファイルあるわけないのに。
0559nobodyさん02/04/12 18:09ID:???
おちけつ。
脊髄反射書き込みはんたーい。
0560nobodyさん02/04/12 20:09ID:???
php.ini の "session.save_path" はどうなってます?
このpathが存在しないものになっている可能性があります。
または [PHP-users 6265] Win版 $_SESSION が使えない
で、「Sessionモジュールがtrack varsを登録する方法に問題が
あるためにこの不具合が発生します。」
と書いてあるのでそれかも。

どーでもいいけど、4.1.1以前は穴があるので
4.1.2にしたほうが良いと思ふ。
0561nobodyさん02/04/13 15:48ID:???
誰か、汎用的な文字列浄化クラス書いてくれないかなぁ…
056252902/04/14 02:45ID:???
>>529をハッシュを使ってとのことだったので、やってみたのですが
どうしても上書きできるところまでしか行けません。

aaa \t 1
bbb \t 2
ccc \t 1
aaa \t 2
bbb \t 2
ccc \t 3
これでやっても

aaa \t 2
bbb \t 2
ccc \t 3
ここまでしかできません。

aaa \t 3
bbb \t 4
ccc \t 4
こうならないですかね。
0563nobodyさん02/04/14 03:04ID:???
うーんと、$a = 5 だと $a って変数が新しい値で上書きされちゃうよね。
でもやりたいのは代入じゃなくて足し算でしょ。だったら足し算しなさい。$a += 5
0564nobodyさん02/04/14 14:47ID:OSF8kSUV
html,htmの拡張子でもPHPが使用可能な共有レンタルサーバー
どなたかご存じないですか?

使用したいのが、個人的な趣味のサイトなので自宅鯖や専鯖は
予算的に無理なもので・・・
0565nobodyさん02/04/14 15:17ID:???
何故そうしたいのか、理由を書け。
0566nobodyさん02/04/14 15:58ID:???
今後の予想

PHPを使ってるとバレたくないからです。
何故バレたくないのか書け。
やましいことをするからです。
0567nobodyさん02/04/14 16:37ID:???
というか、.htmや.htmlでphp使えるようにすると
負荷高くなるから普通やってないと思われ・・・。
0568nobodyさん02/04/14 20:49ID:???
.htaccess に下のように書けば、hoge.html だけが PHP で動くんだよもん。
html すべてをPHP で処理するより負荷は低いんだよもん。

<Files hoge.html>
ForceType application/x-httpd-php
</Files>
0569nobodyさん02/04/15 00:11ID:???
語尾に「だよもん」をつける方は、
for foreach whileの使用を禁止します。
057056402/04/15 12:17ID:???
>>568
ありがとうね!
とりあえず「index.html」だけでもPHPが使えれば
助かります。

>>566
するどいですね。
やましい事というか、確かに真面目な目的で
PHPを使ったページを作るわけではなかったので・・・

でも、PHPって面白いですね。
初めてのWebプログラミングですがホント面白いサイト作りが
できる。

0571nobodyさん02/04/15 21:51ID:m/DrIwmV
setcookie()でクッキーをセットしたあと、
JavaScriptでクッキーを取得するとどうしても文字化けしてしまいます。
誰かこの現象について知っている方いませんか?
■ このスレッドは過去ログ倉庫に格納されています