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

くだすれPHP(超初心者用)

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/06/12(月) 14:06:01ID:???
このスレッドは、他のスレッドでは書き込めない超低レベル、 
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。 
PHP使いが優しくコメントを返しますが、 
お礼はPHPの布教と初心者の救済をお願いします。 

PHP Home Page 
http://www.php.net/
0029nobodyさん2006/06/25(日) 17:05:43ID:???
>>28
| 数年前から更新してないサイトが上位に出るから、

ああ、そうだね。
ちゃんと回答してるし、ガンガレ!!
0030nobodyさん2006/07/01(土) 17:28:58ID:???
UTF-8が見られないブラウザってありますか?
今までシフトJISを使ってきたのですが、今後はUTF-8にしようと思うのですが・・・
0031nobodyさん2006/07/01(土) 17:57:13ID:V+Wur+Sg
クラスはどういう場合に使おうと思うもの?
0032nobodyさん2006/07/01(土) 20:32:37ID:???
>>30
あるけど無視してよい古いブラウザだから UTF で OK.
Google は UTF だけど問題になってないでしょう?

>>31
ありとあらゆる場合に.
0033お助けください・・・2006/07/01(土) 22:36:11ID:w8UJhqAk
SQLServer 2005 ExpressEditionにつなげようとすると
5秒くらい待ってから
Warning: mssql_connect(): Unable to connect to server:
となってしまいます。

・SQLサーバ認証+Windows認証
・構成マネージャでTCP/IPを有効化
 IPアドレスを正しく変更
した上で、
mssql_connect('localhost,1433','<USERNAME>','<PASSWORD>')
mssql_connect('<IPADDRESS>,1433','<USERNAME>','<PASSWORD>')
mssql_connect('<HOSTNAME>,1433','<USERNAME>','<PASSWORD>')
mssql_connect('localhost/SQLEXPRESS','<USERNAME>','<PASSWORD>')
mssql_connect('<IPADDRESS>/SQLEXPRESS','<USERNAME>','<PASSWORD>')
mssql_connect('<HOSTNAME>/SQLEXPRESS','<USERNAME>','<PASSWORD>')
みんな失敗します。

何か他に設定がいるのでしょうか。。。
0034nobodyさん2006/07/04(火) 10:01:43ID:q1Np2u8U
PHP5とJPGraph2を使っています。
レーダーチャートのタイトルは日本語化できたのですが、
軸の項目が日本語化できません。
いい方法がありましたら教えてください。
0035nobodyさん2006/07/04(火) 13:46:21ID:EIKaYV2N
販売元にまったく同じ質問したことある

$graph->axis->SetFont(FF_MINCHO);
$graph->axis->title->SetFont(FF_MINCHO);

$graphの生成後に↑の両方が必要らしい。
試してみれ
0036342006/07/04(火) 14:46:14ID:q1Np2u8U
>>35
できました。ありがとう〜。
Axis->Setfont〜でとまってたからできなかったようです。
0037342006/07/05(水) 19:21:10ID:1sMbSjJr
グラフは日本語でちゃんと表示されるようになったんですが・・・
1、グラフを描画するPHPの前にタグがあるとグラフ描画PHPが文字化けする
2、ならば仕方がないのでグラフを先に表示して御託はあとから述べるスタンス
 に変更するためにグラフ描画PHPの後ろにタグを置いたら、グラフしか表示されない

という不具合に当たりました。
何とか上手くやる方法がありましたら教えてください。
よろしくお願いします。

//チラ裏
ヘルプにあるようにHTMLからPHPを呼び出すとグラフが描画されないし・・・
ApacheとかPHPの不具合・・・?
//チラ裏終了
0038nobodyさん2006/07/05(水) 21:03:19ID:iNEqShr6
すんません。PDOでSQLiteを使いたいので、php.iniに
pdo.dsn.hoge="sqlite:ほにゃらら〜
というのを記述したいのですが、ほにゃららの部分を
どのように記述したら良いかわかりません。
FC5、PHP5.1.4です。
Windwosならc:\hoge.dbみたいにするところなのでしょうが、
/にあるhoge.dbを
pdo.dsn.hoge="sqlite:/hoge.db"
と書いてもPHPからアクセスできませんでした。
よろしくお願いいたします。
0039nobodyさん2006/07/13(木) 05:44:51ID:???
>>37
よくわかんないけど、グラフ作って画像を送信するんじゃないの?
よくある画像カウンタみたいな感じ。
だから、HTML吐くphpなスクリプトを作ってその中でグラフ出力の
phpをimgタグで呼ぶてな感じじゃね?


a.phpとかa.html
<html><head>........<body>
<img src="b.php?hoge=piyo">
...

b.php
<?php
ナンチャラ
$graph->Stroke();
?>
b.phpはグラフを書いて「画像」として送信するだけ。
それかa.phpでグラフをどこかに作って(例えば./hoge.jpg")
それを<img src="./hoge.jpg">とかにするとか。
#画像を送っているのなら、画像を送る前にHTMLを送るとheaderが変だし
画像の後にHTML送ってもたぶん無視じゃないか?
0040nobodyさん2006/07/16(日) 02:16:28ID:RWw+XpFz
超初心者が勇気を持って書き込みます。
どの板でも絶対にかけないと思ってココに書きます。

あるアップローダからDLしたファイルが「PHPファイル」ってものでした。
中身は画像だそうですが、クリックしてもメモ帳になってしまい、
更にサイズが大きくてメモ帳が固まってしまいます。
どうしたら見れるのですか?
教えてくださいおねがいします。
0041nobodyさん2006/07/16(日) 02:28:01ID:???
>>40
板違い&スレ違い。

拡張子を変えればいい。もし分からなかったら「拡張子」でググれ。
0042PHP男爵 ◆SWtzLesEmM 2006/07/16(日) 12:24:45ID:3GUcmNlY
>>40
君は勇者だ!
(リアルの世界でも積極的に生きて欲しい。)

解説しよう!
ダウンロードして、デスクトップに「hoge.php」というファイルがあるとする。
hoge.phpのファイル名を変更して、hoge.jpgにしたり、hoge.gifにして、ペイントとかで開いて見たら、何か画像が表示されるかも!?

で、うまく開いたらその画像がどんなものだったか報告するように。

以上
0043nobodyさん2006/07/17(月) 03:20:56ID:???
小数で範囲を指定して乱数を作りたいのですが、可能でしょうか。
rand()とかだと整数しかつかえないので、他に方法はないものかと力を貸していただきたく・・・。

※例:1.8〜2.4の間で乱数を出す。
0044nobodyさん2006/07/17(月) 03:42:52ID:???
>>43
18〜24で乱数作って10で割る
0045432006/07/17(月) 12:52:32ID:???
ああ・・・肝心なことわすれていたorz
割ればいいんだったw
ありがとうございます!

もひとつすみませんが、クッキーについてお聞きしていいですか?

<php
/*Cookie*/
setcookie("lv","$lv",time()+604800);/*レベルの記憶*/
setcookie("job","$radio",time()+604800);/*主職業の記憶*/
$cookie = "lv"; "job";
?>
これをHTML記述前に入れて、"lv"と"job"はフォーム名です。
ちなみにjobはドロップダウンボックスのoptionに名前をつけています。

この状態でクッキーを取得してくれません。

何度もお邪魔してすみません。
お時間許していただけましたら赤ペン先生お願いいたします・・・。
0046nobodyさん2006/07/17(月) 13:04:05ID:???
> この状態でクッキーを取得してくれません。

確認方法は?
0047432006/07/17(月) 13:45:25ID:???
ラジオボタンのひとつにcheckedをいれて、違うところに入れておく。
本来ならそこだ!と記憶して欲しいのですが、checkedにもどってしまいます。

これがいけないのでしょうか。
0048nobodyさん2006/07/17(月) 13:51:25ID:???
1 クッキーが発行されていない
2 1.はしてるが、取得していない
3. 2.はしてるが、利用していない
4. 3.はしてるが、利用の仕方が正しくない

確認すべきことが色々あると思うが。
0049nobodyさん2006/07/17(月) 14:26:16ID:???
HTMLの直前にというのが、

<?php
setcookie('a', 1);
?>
<HTML>
<BODY>
echo $_COOKIE['a'];
</BODY>
</HTML>

という意味なら、そりゃ無理でしょ。
0050432006/07/17(月) 15:19:15ID:???
>>48-49先生
<?php
/*取得*/
$lv = $_POST["lv"];
$radio=$_POST["job"];

/*Cookie*/
setcookie("lv","$lv",time()+604800);/*レベルの記憶*/
setcookie("job","$radio",time()+604800);/*主職業の記憶*/
?>
<html>
-中略-
<body>
 <input type="text" name="lv" size="4" value="<?php echo($lv) ?>">
<input type="radio" name="job" value="A" checked>A<br>
<input type="radio" name="job" value="B">B<br>
<input type="radio" name="job" value="C">C</td>

バッチリBODY内にechoかいてましたorz
ここでどうすべきか・・・
0051432006/07/17(月) 15:20:14ID:???
ちなみにPOST部分ですが、$_COKKIEで値をとろうとして
フォームがまっさらになってしまいました。なんでだろう
0052nobodyさん2006/07/17(月) 17:16:17ID:???
<?phpの次の行に、
echo nl2br(print_r(%_POST, true));
echo nl2br(print_r(%_COOKIE, true));
exit();

と書いて何が表示されるかをみてみ。
0053nobodyさん2006/07/17(月) 17:17:38ID:???
>>52
うは、%_POSTじゃなくて$_POST,
%_COOKIEじゃなく$_COOKIEな。
0054432006/07/17(月) 17:54:24ID:???
/*Cookie*/
if ($lv != "") {
setcookie("lv",$lv,time()+604800);/*レベルの記憶*/
setcookie("job",$radio,time()+604800);/*主職業の記憶*/
}

if ($lv == "") {
$lv = $_COOKIE["lv"];
$radio = $_COOKIE["job"];
}
として・・・
>>52先生。値はちゃんと残ってます^^
でもラジオボタンがcheckedに戻ってしまう理由が思い当たりません・・・。
ちなみにそれをはずして読み込んでも、ラジオ自体はまっさらorz

PHPさん!もう許して>p<;
0055nobodyさん2006/07/17(月) 18:17:24ID:???
PHPは悪くないお。
$radioに値は入っていても使ってないでしょ?
適当だけどこういう風に使ってやらんと。

<input type="radio" name="job" value="A" <?php ($radio == 'A' ? 'checked' : ''); ?>>A<br>
<input type="radio" name="job" value="B" <?php ($radio == 'B' ? 'checked' : ''); ?>>A<br>
<input type="radio" name="job" value="C" <?php ($radio == 'C' ? 'checked' : ''); ?>>A<br>
0056432006/07/17(月) 19:03:08ID:???
そうか、そういう入れ方があった。
「LV」とおなじechoのさせかただと、どこにvalueいれていいのかわからなかったんだった。

<?php ($radio == "A" ? "checked" : ""); ?>
このまま入れれば大丈夫でしょうか?
ちなみに「: ""」この部分の意味がわかりません。
0057nobodyさん2006/07/17(月) 20:28:17ID:???
>>56
悪いけど試してない。

三項演算子はifと同じだよ。
if ($a == true) {
 echo "true";
} else {
 echo "false";
}

は三項演算子を使うと以下のようにかける

echo ($a == true ? "true": "false");

""は何も出力しないって事。
開発(実験)環境あるんだから試しなさいw
0058432006/07/17(月) 22:04:17ID:???
早速応用してみました。
$radio=$_POST["job"];

/*ラジオボタンにチェックつけさせるために新たに変数追加*/
$checked[0] = " checked";
$checked[1] = " checked";
$checked[2] = " checked";
-以下HTML部-
<input type="radio" name="job" value="A"<?php print $checked[0] ?>>A<br>
<input type="radio" name="job" value="B"<?php print $checked[1] ?>>B<br>
<input type="radio" name="job" value="C"<?php print $checked[2] ?>>C

これでやっとチェックつけれるようになりました・・・。
ひとまず計算機完成。

みなさんありがとうございました!いい勉強ができました;;
0059nobodyさん2006/07/17(月) 22:19:28ID:???
ちなみに、浮動小数点は精度が低いから計算とかは全部整数でやって、表示のときだけ小数にした方がいいよ
0060nobodyさん2006/07/17(月) 23:17:27ID:???
>>58
いいのかそれで?

いや本人が良いというなら良いんだが。
0061432006/07/17(月) 23:27:28ID:???
>>59先生
ご指摘ありがとうございました!

>>60
もっといいソースか・・・拙い頭ゆえ思い浮かばないなw
参考がありましたら、是非紹介願いたく。

以後名無しに戻りますね。
0062nobodyさん2006/07/18(火) 16:49:54ID:eTqE8Qoy
現在、PHPで構築されているBBSのようなシステムがあります。

海外からの宣伝コメントがあまりにも多すぎるため、それを何とかしなければなりません。
かと言って海外からの接続を遮断すると、正常な業務にも支障が出てしまいます。

PHP未経験者です。他の言語は少しかじった程度。
「お前が一番コンピュータ詳しいから」とかいう素敵な理由で、そんなヤツに任せるなよマイ上司。

なお、PHPのバージョンは「4.4.1」らしいです。
変数 $message に、POSTメソッドで送信されたコメントの本文が保持されています。


とりあえず、WebのPHPリファレンスと睨めっこして、

if ( mb_detect_encoding ( $message ) == "ASCII" )

という方法を取ってみました。
幾つかのパターンを入力してみましたが、想定通りには動いているような気がします。
ですが、初心者ゆえこれで正しいのかすら分かりません。

もっとスマートな方法、こういう場合の定番などありましたらお願いします。

0063nobodyさん2006/07/18(火) 17:17:58ID:???
>>62
アルファベット使用圏限定でこんなのもある。

strlen($message)==mb_strlen($message)
だったら宣伝。
0064nobodyさん2006/07/18(火) 17:45:45ID:???
>>63
なるほど。
バイト数と文字数を比較するんですね。
0065nobodyさん2006/07/18(火) 18:24:47ID:JssOWqeV
PHPでメンバ認証をした後、セッションにメンバ名を保存してメンバページ内目次が
出てきて、掲示板に書いたりいろいろやった後、目次に戻るボタンを押すとメンバページ
目次に戻るプログラムを作っています。
メンバ認証後、メンバページ目次の時点ではセッションを保持しているのですが、
(セッションIDと保持しているデータを出力して確認しました)
そこから別のページに飛ぶとセッションが消えてしまいます。
(セッションIDと保持しているデータを出力しようとしたら空白になっていました)
Session_destroy等はしていないのにセッションIDが消えるということはありうるのでしょ
うか?(接続が切れたとかいうこともないはずなのですが・・・)
またこのパターンを回避する方法を御教授下さい。
そもそもSession_destroyするか接続を切断するまではセッションは保持されているものであると
いう考え方が間違っているのでしょうか?
環境は WinXP Apache2.0.54 PHP5.0.2です。
0066nobodyさん2006/07/18(火) 18:58:56ID:???
1、タイプミス
2、$_SESSION = array()しちゃった
3、別のホストにとんでる
4、気のせい
0067652006/07/18(火) 20:01:55ID:JssOWqeV
>>66
1、タイプミス>目次ではちゃんとSessionIDを表示できた部分をコピペなのでタイプミスは
ないようです。
2、$_SESSION=array()もなさそうです。
3、Localhostから出ていないのでそれもなさそうです。
4、ぶっ(笑) 気のせい違います。

Localhost内だけどリンクで飛ぶと駄目なのかな・・・。
0068nobodyさん2006/07/18(火) 20:20:39ID:???
0、session_start()をわすれてる
0069652006/07/18(火) 23:56:55ID:JssOWqeV
>>68
正解orz。
1個目のPHPにSESSION_START()書いてあってセッションはサイト内のほかのページとデータが
やり取りできるようにするためにあるんだからって思って書いてなかったとです。
解決しました。ありがとう〜。
0070nobodyさん2006/07/19(水) 05:27:44ID:???
>>68
貴様っ!ニュータイプだなっ!?
0071nobodyさん2006/07/19(水) 11:20:53ID:IBxFZpVL
送信ボタンを押した後自動でリロード(表示しているページを再度読み込む)方法はないでしょうか?
現在のユーザ名とユーザ名変更用のテキストボックスがあって、変更ボタンを押すとユーザ名が
変更されるというものを作っているのですが、ボタンを押すとテキストボックスに入っている文字で
データベースは変更されるのですが、現在のユーザ名の場所が変更前のユーザ名になったままです。
HTMLの<form action〜〜>で現在のページを読み込むという処理を試したのですが、処理的には
ボタン押す>移動する>DB変更>終了 
と動いているみたいでDBは変更されますが、現在のユーザ名は変更前のものになってしまいます。
望む動きは ボタン押す>DB変更>移動する=現在のユーザ名が変更後になって表示
なのですが、いい方法はないでしょうか?
0072712006/07/19(水) 12:18:10ID:IBxFZpVL
事故レス。
処理の一番最後にヘッダを入れたら解決できました。
・・・ヘッダの前にはほかのタグや空白があっちゃダメって書いてあったけど・・・。
0073nobodyさん2006/07/19(水) 13:04:42ID:???
.htmlなら、ブラウザにキャッシュされてたんじゃないかな?
0074712006/07/19(水) 18:02:10ID:IBxFZpVL
.phpしか使ってないんだよね。
・・・不思議だ。
0075nobodyさん2006/07/19(水) 18:37:25ID:???
phpの出力がバッファリングされてないなら、header('location:〜')を
呼んだ直後にブラウザ側はページが変わるかも。
でも、DB変更が間に合わないって、あるのかな?
0076nobodyさん2006/07/20(木) 18:14:20ID:sQrhvX8x
2文字のカントリーコードから
国名文字列と国旗画像を生成するクラスって
PHP の標準的なライブラリに用意されていましたか?
0077nobodyさん2006/07/20(木) 18:14:31ID:wL12H3C9
アンケート入力フォームを作っています。
入力に不備があるときはJavaScriptで警告ダイアログを出すようになっているのです
が、警告ダイアログが出た後にはちゃんと入力してあった部分が消えてしまいます。
送信ボタンを押すと入力された内容をPOSTしてその中身が空のときはダイアログを
出す仕組みなので、$_POSTからデータを書き戻してやればいいと思ったのですが、
いい方法が浮かびません。
〜mofu.php〜
<form name="inform" action="mofu.php" method="post">
<p align="left">生徒氏名(姓)  
<input type="text" name="FirstName" value="">
不備があって戻ってきたときこのテキストボックスのvalie""にボタンを押す前の状
態(POSTが持ってるからそれを書き込む)方法が知りたいです。
よろしくお願いします。
0078nobodyさん2006/07/20(木) 19:40:28ID:mpmc+iKK
レンサバに簡単な(会員の登録と会員情報が変更できて
会員特有の情報に会員のみがアクセスできる程度のサイト)
会員制サイトを構築しようと思います。
セキュリティ
パフォーマンス
構築の容易さ
ではperlとphpはどちらがいいでしょうか?
(作成者の言語スキルは両方素人とします。)
0079nobodyさん2006/07/20(木) 21:40:10ID:sQrhvX8x
http://www.example.com/?aiueo
のような GET クエリのパラメータはどうやって
PHP 内で取得すればいいのでしょうか?
0080nobodyさん2006/07/20(木) 22:25:20ID:???
>>78
Pythonがいいんじゃね?

2択ならPHPかな。
フレームワークとアクセラレータは必須だけど。
0081nobodyさん2006/07/20(木) 22:26:05ID:???
>>79
print_r($_GET);
0082nobodyさん2006/07/21(金) 01:48:55ID:8lmGSvy2
PHPEclipse プラグインを探しているのですがどうしても見つかりません。
どなたか、どこでダウンロードできるのか教えてくださいませ。
0083nobodyさん2006/07/21(金) 06:50:49ID:???
PHPEclipseでググる
ttp://www.phpeclipse.de/ が開発元だと分かる
dowloadでページ内を検索する
0084nobodyさん2006/07/21(金) 07:20:14ID:???
>>79
print_r($_SERVER);
0085nobodyさん2006/07/21(金) 07:35:13ID:u9FD8hv+
$a = each($_GET);
print $a[0];
ってやってました。
0086nobodyさん2006/07/21(金) 10:49:35ID:qSIZRUWY
文字コードがShift_JISでテキストボックスに入力した文字をPOSTしたとき、
カタカナの”ソ”が入っていると、”ソ”が”ソ¥”になってしまいます。
ほかの文字では大丈夫(全角のカタカナ以外の入力を拒否するようになっています)
なのですが、原因が分かりません。
どなたか分かる方がいましたら御教授ください。
0087nobodyさん2006/07/21(金) 11:27:18ID:???
>>86
仕様
if (get_magic_quotes_gpc()){
return stripslashes($message);
}
0088nobodyさん2006/07/21(金) 12:25:52ID:u9FD8hv+
IRI を扱う為のクラスって提供されていますか?
標準 or PEAR で。
0089nobodyさん2006/07/21(金) 13:32:22ID:qSIZRUWY
>>87
PHP.iniの
magic_quotes_gpc = On
をOFFにしたら解決できました。
ありがとう〜
0090nobodyさん2006/07/21(金) 15:32:15ID:sMd75oCW
functionとclassの違いがさっぱり分かりません。。
class使わなくても(functionだけでも)オブジェクト指向的な部品ごとの作成ってできるように
思うんですが、やっぱり違うもんなんでしょうか?
オブジェクト脳の方、詳しくお願い致します。
0091nobodyさん2006/07/21(金) 16:25:10ID:???
>>90
違います。
0092nobodyさん2006/07/21(金) 16:28:50ID:???
class というからには、学校のクラスをまず想像してほしい。

class myClass {
private $生徒数
private $担任;
private $学級委員;
private $美化委員;
}
0093nobodyさん2006/07/21(金) 16:34:25ID:???
>>90
クラスが所持している function は、
そのクラスを操作する場合に便利な関数が多々用意されており、
なおかつ、そのクラス以外では使いどころがない関数が多い。

オブジェクト指向を考えるには、PHPより、JavaScript で考えてみるとよい。

0094932006/07/21(金) 16:36:52ID:???
たとえば、substr
PHP ではグローバルに substr という関数が用意されているが、
JSでは、string クラスのメンバ関数として用意されている。
0095932006/07/21(金) 16:39:36ID:???
>>90
ただの function は、
そのスクリプト全体を1つのクラスと考えてみると、そのクラスの関数ということもできるわな。
0096nobodyさん2006/07/21(金) 16:55:01ID:???
ある程度書くことをまとめてから投稿して欲しいもんだ!
0097nobodyさん2006/07/21(金) 17:09:14ID:u9FD8hv+
>>96 それじゃタダの掲示板じゃん。2chぽくない。
0098nobodyさん2006/07/21(金) 17:18:24ID:???
そうだね。プロテインだね。
0099nobodyさん2006/07/21(金) 17:49:24ID:CoGe325O
windows apache2 php5 oracle10
apacheの文字コードはソース・出力共にEUC
oracleはSJISです

この環境だと、php内でoracle関数を使って何かする場合

$conn = oci_connect('id','pw','db');
$sql = mb_convert_encoding("SELECT id,name FROM emp",'SJIS','EUC-JP');
$stmt = oci_parse($conn,$sql);
oci_define_by_name($stmt,mb_convert_encoding('id','SJIS','EUC-JP'),$ret_id);
oci_define_by_name($stmt,mb_convert_encoding('name','SJIS','EUC-JP'),$ret_name);
$dbresult = oci_execute($stmt);
while(oci_fetch($stmt)){
...

と、こんな感じで一旦SJISにしてやらなきゃ駄目だと思うんですが、
↑と同じ要領で、バインド変数というものを利用しようと勉強中なのですが上手くいきません

$conn = oci_connect('id','pw','db');
$sql = mb_convert_encoding("INSERT INTO emp ('id','pw') VALUES (:wk_id,:wk_pw)",'SJIS','EUC-JP');
$stmt = oci_parse($conn,$sql);
oci_bind_by_name($stmt,mb_convert_encoding(':wk_id','SJIS','EUC-JP'),$tmp_id);
oci_bind_by_name($stmt,mb_convert_encoding(':wk_name','SJIS','EUC-JP'),$tmp_name);
$tmp_id = "testid";
$tmp_name = "testname";
$dbresult = oci_execute($stmt);
...

全部SJISで統一するか、oracle内部の文字コードをEUCに変えるくらいしか僕には解決策思いつきませんorz
アドバイスよろしくお願いします
0100nobodyさん2006/07/21(金) 17:55:48ID:???
全部SJISでおk
ソース中で、「ソー」など書くとき気をつけたり、
正規表現使うときに \ かませれば大丈夫
0101992006/07/22(土) 13:04:21ID:Fs0pSL8X
>>100サン
レスサンクス
ふむふむ「ソ」でのエスケープ処理云々を忘れなきゃSJISでも特に問題はなさそうですね
別のくだすれでも上がってましたが、
ソースでSJIS用いるのって公式には推奨されてないんですよね?うーん

文字コードこのままでバインド変数利用するってのは無理なんでしょうか・・・
0102nobodyさん2006/07/22(土) 14:11:39ID:???
無理ではない

ただ、推奨されていないのにはそれなりに理由があるわけだから
非推奨環境を使うのなら、何らかの問題を抱えることは
覚悟しておけってことだ
0103nobodyさん2006/07/22(土) 16:51:32ID:???
≪前の5件 |1| |2| |3| 次の5件 >>

こんな感じでページ送りしたいのですが、参考になるソースをおいてる
サイトありますか?

0104nobodyさん2006/07/22(土) 16:57:11ID:gk79Zqps
>>103 それ、PHPとなんか関係あるの?
0105nobodyさん2006/07/22(土) 17:50:05ID:???
>>103
つ PEAR::Pager
0106nobodyさん2006/07/22(土) 18:21:46ID:Arzj07HM
>>103
それくらい自分で考えようぜwww
中卒の俺ですら思いついたぞwwww
0107sage2006/07/23(日) 12:56:20ID:R5nK9VH4
PEARをインストールして、Cache_Liteに挑戦中です。(PHP5.1.4)

$params=array("cacheDir"=>"./tmp/","lifeTime"=>7776000);
$MyCache= new Cache_Lite_Function($params);
$f_data=$MyCache->call("f_data",$f_cls,$f_id);

こんな感じで作成した関数キャッシュを、lifeTimeが切れる前に無効にしたい
場合はどうやるんでしょうか? remove で指定するとは思うんですが...。
0108nobodyさん2006/07/23(日) 12:58:49ID:???
>>107
それくらい自分で考えようぜwww
中卒の俺ですら思いついたぞwwww

01091072006/07/23(日) 14:20:10ID:???
中卒の僕ですがわかりました。
Cache_Lite_Function::drop() なんてのがあったのね。
自己レス御免。
0110992006/07/24(月) 18:12:19ID:???
PHPの内部コードがSJISの場合、ソース中の0x5Cが含まれる2バイト文字も考慮しなきゃいけないんですね・・・
↓見てたら結構使いそうな文字あったんでEUCに戻すことにしました。
ttp://hp.vector.co.jp/authors/VA039433/shift_jis-table.html

oracleをSJIS以外にするしかないのかなあ
内部コードがSJISのDBというのは特殊な環境なんでしょうか・・・
0111nobodyさん2006/07/24(月) 18:25:58ID:???
>>110
OracleでSJISを使ったのは何か思惑があったの?
Oracleの管理ツールのしがらみとか?

>>99で自分で書いてるように、データを取得したり挿入、更新する際に
文字コード変換かければ良いだけ。
どれくらいの負荷になるかは分からんが余分なオーバヘッドである事は
確かだから、統一できるなら統一した方が良いんじゃない?
手間に見合う効果があるかは環境しだいなんでなんとも。
0112nobodyさん2006/07/25(火) 09:29:17ID:0Poswc1D
>>111
社内の環境がすべてwindowsなんです。特に意図とかは無くてデフォルトだったというだけで(汗
EUCだと他のテスト環境と共存出来ないのが心配ですが・・・仰るとおりOracleの内部コードをEUCにする方向で
いってみまっす
0113nobodyさん2006/07/27(木) 13:35:13ID:wCnmBkp+
インデックスなしの配列の中身(要素数は不定)の中身をダブルコーテーションでくくりつつ
カンマ切りする方法を教えてください。

array_map("disp",$allArray);
function disp($str){
  $string= "\"".$str."\",";
  $strc=",";
  rtrim($string,$strc);
  echo "<br>";
  print_r ($string);
  }

何か上手くいかない・・・OTZ
0114nobodyさん2006/07/27(木) 13:38:33ID:???
>>113
joinを使うとべんりdさぞ
0115nobodyさん2006/07/27(木) 13:43:06ID:???
こうな。
$str = implode('","', $allArray);
この後$strの前後から2文字づつ切ればいい。
01161152006/07/27(木) 13:44:20ID:???
間違った。
$str = '"' . implode('","', $allArray) . '"';
でいいな。
0117992006/07/28(金) 18:31:34ID:???
しつこい言われそうですが報告しておきます
PDO使ったら普通にいけましたコレ。
PHPソース:EUC、HTTP出力:SJIS、ORACLE:SJIS

$dsn = 'oci:dbname=hoge;charset=JA16EUC';
$user = 'hoge';
$pass = 'hoge';

$db = new PDO($dsn,$user,$pass);
$stmt = $db->prepare("SELECT empid,empname FROM emp");
$stmt->bindColumn('empid',$ret_arr['id'],PDO::PARAM_STR);
$stmt->bindColumn('empname',$ret_arr['name'],PDO::PARAM_STR);

$stmt->execute();

while($stmt->fetch(PDO::FETCH_BOUND)){
$ret_arr['id'] = $ret_arr['id'];
$ret_arr['name'] = $ret_arr['name'];
}
$stmt = null;
0118nobodyさん2006/07/29(土) 15:42:03ID:???
>>117
報告ありがとう
きっとその書き込みは後世で役に立つであろう・・・
0119nobodyさん2006/08/01(火) 00:31:28ID:???
定義済み変数を使って現在のファイルのあるディレクトリまでのファイル名を含まない絶対パスってどう書けばいいんですか?
0120nobodyさん2006/08/01(火) 00:32:05ID:???
質問につきageます
0121nobodyさん2006/08/01(火) 00:43:07ID:???
dirname(__FILE__)
0122nobodyさん2006/08/01(火) 01:32:13ID:???
そのような関数があったとは全く知りませんでした。
本当にありがとうございます。
0123nobodyさん2006/08/01(火) 03:25:41ID:???
>>122
マニュアル読めよ
0124nobodyさん2006/08/01(火) 08:56:49ID:W3yf98Bx
ほんとうにありがとうございました
0125nobodyさん2006/08/01(火) 16:06:50ID:E6FJ2WAY
JpGraphのような別PHPファイルにデータを渡すにはどうしたらいいですか?
グローバル配列変数みたいなものを探しています。
0126nobodyさん2006/08/01(火) 16:25:00ID:???
渡す必要は無いかと
0127nobodyさん2006/08/01(火) 16:34:43ID:???
>>126
グラフ表示のサンプルを見ると
<img src='graphtest.php'>
のようにグラフを表示する為に専用のPhpファイルをリンクしてありますので
本体phpからグラフphpにデータを渡す必要があると思うのですが。
0128nobodyさん2006/08/01(火) 17:18:31ID:???
逆に考えるんだ
メインスクリプトからPHPファイルにデータを渡すのではない。
メインスクリプトからPHPスクリプトを利用してやるのだと
■ このスレッドは過去ログ倉庫に格納されています