【PHP】初心者コーナー 2 Released
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
03/03/24 03:06ID:???PHPに関するアホな質問はここでやれ。今回からMySQLも受付開始。
アホな質問であっても詳しく質問すること。
PHPが大嫌いなPerl信者もぜひご参加ください。
前スレ
http://pc2.2ch.net/test/read.cgi/php/1011550860/l50 関連>>2-10
普通の質問はこっちな、【PHP】質問スレッド Part7
http://pc2.2ch.net/test/read.cgi/php/1044478561/l50
0177nobodyさん
03/04/02 21:05ID:PsDG8e3Iこんな感じです。
それと、今わかったのですが、フォームで、hoge.phpにポストして、
$hogehoge = $_POST["hogehoge"];
で拾って、
<?= $hogehoge ?>でブラウザに表示させると、
「¥」が化けるのではなく、カットされてしまいます。
たとえば、「¥hogehoge」とポストしたのに、結果は「hogehoge」となります。
なぜなんでしょうか?
0178nobodyさん
03/04/02 21:14ID:???の次に
echo $que;
入れてどんなSQLが表示されるか見てみれ。
0179nobodyさん
03/04/02 21:29ID:PsDG8e3Ivaluesの変数は初期化していませんので、
insert into tb_item(C_TYPE, C_TEXT) values("", "")
というかんじです。見る限り、問題ないように思います。
0180nobodyさん
03/04/02 21:43ID:???0181177
03/04/02 22:10ID:9OeHk805インサート以前に、先ほども、書いたのですが、
$hogehoge = $_POST["hogehoge"];
この状態ですでに、¥が文字化けしているのです。
自分はいつもシングルクォートなんだけど。
$que = "insert into tb_item(C_TYPE, C_TEXT) values('$hoge', '$hoge2')";
んで>177氏のはaddslashesとかmagic_quoteとかで検索すれば
解決する問題な気が。
0183nobodyさん
03/04/02 23:15ID:???0184nobodyさん
03/04/02 23:21ID:9OeHk805え?そうなんですか?
values(¥"$hoge¥", ¥"$hoge2¥")";
で、インサートできてるのですが・・・
シングルで試してみます。\'でなくていいんですよね?
0185nobodyさん
03/04/02 23:32ID:???0186nobodyさん
03/04/02 23:33ID:???折角翻訳されてるんだからマニュアル読もうよ(目的のものが探しにくいけど)
http://www.mysql.gr.jp/jpdoc/3.23.x/manual.ja_Reference.html#String_syntax
「MySQLでは駄目とは言い切れないが、ANSIのSQL的には不適なので推奨しない」
0187nobodyさん
03/04/03 01:03ID:???ですが、丸めた個所の端部の化けの回避方法はありますか?
0189nobodyさん
03/04/03 01:24ID:???ありがとう。
apache + php4.3.1 php.ini extension=php_mbstring.dll 可
何でだろう?
0191nobodyさん
03/04/03 01:35ID:???mbstring.internal_encoding = EUC-JP 可で解決しました。
他に可にしておいた方がいいのがありましたら教えてください。
0192nobodyさん
03/04/03 01:56ID:???各自の環境や構築するサイトによって違うのでなんともな。
マニュアルをよく読んでくれよ。
個人的にはマニュアルにあるeuc-jpユーザ用設定が一番問題が
少ないと思っている。スクリプトをeucで書く必要はあるけどね。
0193nobodyさん
03/04/03 02:18ID:???ありがとう。
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
今の所これで落ち着きました。
0194nobodyさん
03/04/03 16:12ID:XWfV91pghttp://www.php.net/~andrei/php-2.0.2.tar.gz
何なのこれ?
0195108
03/04/03 17:46ID:???>>175さん、libtool の最新を入れるってtar ball からインストール、ってことですか?
#unix 板で聞くべきでしょうか?
0196nobodyさん
03/04/03 18:36ID:???./configure
make
make install
でOKな筈だよ。
0197nobodyさん
03/04/03 20:20ID:ywhjyh5Kforeach($array as $card)
{
$query = "insert into tb_hoge(C_TYPE, C_KEYREF, C_YEAR) values('$type', '$keyref', '$i')";
mysql_query($query);
}
という処理をさせると、一回のquery実行にもかかわらず、二回実行されてしまい、
結果として、二つ同じレコードがインサートされてしまいます。
繰り返した回数だけquery実行したいのですが、解決できません。
アドバイスいただけますと、幸いです。
0198108
03/04/03 20:26ID:???ports で用意されているのが1.3.4 だったのと、依存性が心配でためらっていましたが
教えていただいたurl からlibtool-1.4.3.tar.gz を取ってきてインストールしてみました。
バージョンチェックを無視したときは、php/Makefile の中のnamazu, kakasi のライブラリ位置
を手で直さないとmake できなかったのが、すんなり通るようになりました。
ありがとうございました。
#他のports との依存性が問題になったときは、ports でlibtool を上書き
することにしました。
0199nobodyさん
03/04/04 04:26ID:CWbmmlFZなく、ファイルを使いたいのですが、できますか?
できるなら、やり方を教えていただけないでしょうか。
0200nobodyさん
03/04/04 11:29ID:RZxRYN1Nライブラリとは?
0201nobodyさん
03/04/04 11:40ID:???0202nobodyさん
03/04/04 11:52ID:AYp/uqxl見たのはないの それとも 自力で、データベースの
コネクションを引き回すの?
データベースはoracle を使った大規模WEBアプリを
検討しています。
0203nobodyさん
03/04/04 12:00ID:???> JAVAにはつきもののDBのコネクションプーリング
> 見たのはないの
ない。
> それとも 自力で、データベースのコネクションを引き回すの?
無理。ただ、Persistent接続はある。
0204名無しさん@Meadow
03/04/04 12:57ID:xYbXEF6T一応できないことはない。使ったことはないけど。
http://sqlrelay.sourceforge.net/
0205nobodyさん
03/04/04 13:26ID:AYp/uqxlレスさんくす
phpでは あんまり需要がないのかな?
>Persistent接続はある。
これのことか?
Ora_pLogon
Ora_pLogon -- 持続的な Oracle接続をオープンする
0206nobodyさん
03/04/04 13:29ID:AYp/uqxlサンクス
一応は見にいった。
0208nobodyさん
03/04/04 20:56ID:DPO7NsXpfopen("$export_file", 'w+');
データを書き込んでいます。
しかしこれだと、任意のフォルダにデータを書き出すこがはできません。
もちろん、既存のファイルに上書きならできるのですが、新規にファイルを
作成したい場合にはどのようにすればいいのでしょうか?(できるのかな?)
0210nobodyさん
03/04/04 21:10ID:DPO7NsXposxなどでもできればいいかなと思っています。
windowsで、普通にできるというのは、フォームで、type="file"と指定する
ということですか?
0211nobodyさん
03/04/04 21:44ID:9h+fpMt8Mozilla/4.0 (compatible; MSIE 6.0; Windows 98)
を、PCとだけ表示させたり
DoCoMo/1.0/P503iS/c10
を、P503iSとだけ表示させるには、どう書いたら良いでしょうか?
0212nobodyさん
03/04/04 21:57ID:???elseif(ereg("P503iS",$hen)){echo"P503iS";}
else{echo"変ですか?";}
0213nobodyさん
03/04/04 22:55ID:???0214nobodyさん
03/04/04 23:07ID:???if(ereg("Mozilla",$hen)){$hen = "pc";}
elseif(ereg("P503iS",$hen)){$hen = "P503iS";}
else{echo"変ですか?";}
echo $hen."です。";
0215nobodyさん
03/04/05 00:04ID:???switch( $user_agent[0] ){
case "DoCoMo" : $file = "index_docomo.php"; break;
case "L-mode" : $file = "index_lmode.php"; break;
case "ASTEL" : $file = "index_astel.php"; break;
case "UP.Browser" : $file = "index_upbrowser.php"; break;
case "PDXGW" : $file = "index_pdxgw.php"; break;
case "J-PHONE" : $file = "index_jphone.php"; break;
case "PlayStation2" : $file = "index_playstation.php"; break;
default : $file = "index_pc.php"; break;
}
include $file;
でけました!
0216nobodyさん
03/04/05 09:10ID:???新規作成するフォルダに、ファイル作成のパーミッション(アクセス許可)が無いといけない。
Windowsやmacの場合もそういう制限があるんじゃないの?
0217210
03/04/05 09:19ID:E09q+9L8既存のファイルを選択することはできるのですが、
新規ファイルを作成する場所(フォルダ)をどうすれば選択できるように
なるのでしょうか?
0219217
03/04/05 18:08ID:RCPiYo/60220nobodyさん
03/04/05 18:25ID:???0221nobodyさん
03/04/05 22:05ID:???例えば掲示板とかで書き込みする時とか。
初心者です!(←これ言えば何でも許される)
0222nobodyさん
03/04/05 22:29ID:???逃げを打つ前に説明の仕方を何とか汁(初心者スレ以外でやったら叩かれるぞ)
そもそも、処理をやめさせるって?
FormのTEXTの内容に、ある文字列(”氏ね”とか)があったら、書き込みを反映させたくないって事?
なら、if文の条件の中でpreg_match()関数でも使って、書き込みさせるかさせないか分岐とか。
preg_macth()の使い方はリファレンスでも見てくだされ。
0223nobodyさん
03/04/05 22:33ID:???×書き込みさせるかさせないか分岐させるとか。
関数の使い方は>>2のPHP マニュアルへGO。
正規表現がわかんなかったら、それなりのサイトを探すべし。
基本的な内容程度なら載ってるサイトはちょこちょこあったと思う。
0224nobodyさん
03/04/05 23:10ID:???if(ereg("begin",$moji)){echo"dame";exit;}
elseif(ereg("space",$moji)){echo"dame";exit;}
else{echo"iiyo";} //正規表現のあたりを調べろと。
0225217
03/04/05 23:46ID:E09q+9L8この場合、テキストフィールドに朱入力して、
$folder,$export_fileに代入ということでしょうか?
ではなくて、ナビゲーションを使って、フォルダを選択して、
そこに任意の新規のファイル名を指定できればいいのですが。。。
0226あぼーん
03/04/05 23:48ID:???∧_∧ | | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( ´Д`)// < 先生!こんなのを発見シマスタ!
/ / |
/ /| / \ http://saitama.gasuki.com/yuusei/
__| | .| | \
\  ̄ ̄ ̄ ̄ ̄ ̄ ̄\ \_____________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
|| || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
.|| ||
0227nobodyさん
03/04/06 00:56ID:???最も楽に作るという前提で。
up可能なフォルダを列挙してラジオボタンを付けて、
チャックしたフォルダにファイルをupする、とか。
フォルダとツリーで表示したいならopendir、readdir、is_dirで再帰しながら表示、とか。
[+]とか[-]でフォルダを閉じたり開いたりだと手間掛かるね。
0228nobodyさん
03/04/06 14:18ID:/QV6d5uqPHPでint関数を使うと
Fatal error: Call to undefined function: int()
と出てしまうのですが、PHPでintに該当する関数は何になるの
でしょうか?教えてください。
厨質だったらすいません。
0230228
03/04/06 14:29ID:/QV6d5uqありがとうございます。
調べてみたところsettypeを使うみたいですね。
ただintとは使い方が違うみたいで、そのまま置き換えられないようです。
自分でいろいろ試してみます。
お騒がせしました。
0231nobodyさん
03/04/06 14:39ID:???float(double)から整数に変換する & 数を0の方にまるめる
だけなら(int)$value のようにキャストできるよ
0232229
03/04/06 14:41ID:???0233nobodyさん
03/04/06 15:06ID:???300個近いチェックボックスをPOSTしようとしているんですが、
$_POSTで値が取得できません。
何か制限とかあるものなんですか?
0234aaaa
03/04/06 15:27ID:/US/lhYBhttp://my.vector.co.jp/servlet/System.FileDownload/download/ftp/0/279026/pack/win95/game/table/pachinko/sikisai.lzh
0235nobodyさん
03/04/06 16:20ID:???600個のcheckboxで試してみたけどちゃんと動きました。
getの場合でも問題無し。
制限があるとすれば、apacheの場合だと LimitRequestBody あたりかな。
でもMBのオーダーの設定になってると思うので、たぶん無関係かと。
formやphpソースを疑ってみてはいかがでしょうか?
0236nobodyさん
03/04/06 18:41ID:KOyF6yOzどう書くのが一般的ですか?
どっちが見やすいかで、小一時間討論しました
0237nobodyさん
03/04/06 18:49ID:???マニュアルの「定義済みの変数」に載ってるよ。
0239nobodyさん
03/04/06 20:02ID:3XWizH/30240236
03/04/06 20:33ID:KOyF6yOzrefererとって、アクセスランキングをつける方法です。
選択肢はいろいろありますが、
私の場合はファイルをキューとして扱う。
つまり、一番最近アクセスがあったものが上の方におく。
という事です。
友人の場合は、ちゃんとアクセス数をカウントして
アクセス数順に並べるとのこと。
他にも方法はあると思いますが、
どんなのがいいんでしょうか?
0242nobodyさん
03/04/06 21:45ID:???初心者スレなんで正確に'HTTP_REFERER'とクォートで括りたいところ。
0243nobodyさん
03/04/07 12:16ID:hoqq1ppB読み込むには、includeなどで指定しないといけないのでしょうか?
0244nobodyさん
03/04/07 13:30ID:vjvunX5Vあと、auto_prepend_file/auto_append_fileディレクティブなどで
自動的に、全部のスクリプトに対して付けちゃう事はできるけどね。
0245nobodyさん
03/04/07 19:11ID:q77L0+Ocどのようにすればいいですか?
0247nobodyさん
03/04/08 15:00ID:Fj+rJIyEありがと。includeを一つ一つのファイルで指定するのは面倒なんですよね。
auto_append_file試してみます。
0248nobodyさん
03/04/08 15:41ID:???my にあたる局所変数宣言っていうのはPHPではどうやるんでしょうか?
0249nobodyさん
03/04/08 15:51ID:AcET4E/DADDS PHPフォーラム(ttp://www.mac68k.com/)のsimple chatってのがかわいかったんでDLして解凍してそのままUPして、index.phpにアクセスしてみたもののなんどログインしようとしても最初のindex画面にもどってしまうんですが、どこか設定いじるのでしょうか?
わかるかた教えてください。
0250nobodyさん
03/04/08 15:56ID:???0251nobodyさん
03/04/08 16:25ID:Fj+rJIyE?????????????????
0252nobodyさん
03/04/08 17:32ID:+i7U7kfXテーブル名が漢字で項目名も漢字のやつを表示させようとしたら
Warning: OCIStmtExecute: ORA-00911: 文字が無効です。
Warning: OCIFetch: ORA-24374: フェッチまたは実行してフェッチする前に、定義が行われていません。
とかいって怒られるのだが、漢字はだめなの?
0253nobodyさん
03/04/08 17:36ID:s/4eB37UPHPはPerlとは逆にglobal宣言しないとデフォルトで局所化された状態。
0254nobodyさん
03/04/08 18:10ID:+i7U7kfX0255nobodyさん
03/04/08 18:25ID:???sub hoge{
my $a = 'mona'
print $a;
{ my $a = 'giko' print $a;}
print $a;
}
ってPHPではどう書くんでしょ?
myを省略するだけ?
0256255
03/04/08 18:29ID:???mona giga mona って表示したいんですけど。
0257255
03/04/08 18:47ID:???function hoge(){
$a = 'mona';
echo $a;
giko();
echo $a;
}
function giko(){
$a = 'giko';
echo $a;
}
こんなメンドイことになるんでしょうか?
0260nobodyさん
03/04/08 19:11ID:???0261nobodyさん
03/04/08 20:23ID:CvB40OAjhttp://works.xrea.jp/
こちらを参考にして、Yahoo の Topixを表示させるやつを作ってるんですが、
Yahoo TOPIXの『・』こんなやつを 画像に変えたりとかはできないんでしょうか?
eregi_replaceとか言うのを使って、テーブルタグを消して<BR>入れてってとこまでは
なんとかできたんですが....
自信無いんですけど,,,,
$t_news[1] = eregi_replace( "<tr[^>]*>", "", $t_news[1]);
$t_news[1] = eregi_replace( "<td[^>]*>", "", $t_news[1]);
$t_news[1] = eregi_replace( "</tr>", "",$t_news[1]);
$t_news[1] = eregi_replace( "</td>", "<br>", $t_news[1]);
みたいに....
でも 行頭に入る 『・』は日本語だからエラー出ますよね?
どうしたらいいんでしょうか?
ど素人なんでさっぱりです。調べてみたんですけど、みつからなくて。
誰かアドバイスお願いします!
0262nobodyさん
03/04/08 23:07ID:???http://jp.php.net/manual/ja/function.mb-eregi-replace.php
0263nobodyさん
03/04/08 23:35ID:vCzfJEVdsocket_connect ($socket, $address, $service_port);
とsocketを接続しようとすると、
Warning: socket_connect() unable to connect [111]: Connection refused
というエラーがかえってきます。
これは、文字通り、拒否されて居るんですよね・・・?
そのサイトは、ブラウザからアクセスすると普通に見られるのですが、
phpのsocket開くのとブラウザと、向こうのサイトで区別して拒否してるんでしょうか?
0264nobodyさん
03/04/08 23:36ID:vCzfJEVdブラウザで見るのとはドメインが違います。
0265nobodyさん
03/04/08 23:47ID:???存在しないのでしょうか?
0266nobodyさん
03/04/08 23:48ID:???<?php
$fp = fsockopen ("www.php.net", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br>\n";
} else {
fputs ($fp, "GET / HTTP/1.0\r\nHost: www.php.net\r\n\r\n");
while (!feof($fp)) {
echo fgets ($fp,128);
}
fclose ($fp);
}
?>
てか、pear 使おう
0268sage
03/04/09 00:14ID:tMXWJMSnマルチバイト文字列とかそういう言葉(?)が出てこなかったので、
助かりました!
本当にありがとうございました。
0270263
03/04/09 00:40ID:Uzz9bVZG早速試してみました!→できました(゚∀゚)ありがd!
networkをもっと勉強する必要がありそう。。
ありがとでした〜(^^
0271nobodyさん
03/04/09 00:50ID:???http://pear.php.net/manual/ja/core.networking.net_socket.php
0273263
03/04/09 01:04ID:Uzz9bVZGあ、実はその部分の意味わからなかったんです(汗
なるほど、そういうclassがあるんですね。便利そうですね。
補足さんきうでした!
0274nobodyさん
03/04/09 01:40ID:oDK2LGgX些細なことで申し訳ないんですが、ひとつお聞きしたいことがあります。
phpinfo() で画像が表示されません。
×印になってしまいます。
なんでですか?
ソースは以下の通りです。
----------
<?php
phpinfo();
?>
----------
0275nobodyさん
03/04/09 02:01ID:???shared_htmlでる
0277nobodyさん
03/04/09 02:35ID:???PHPは本当に初心者なんだからもうちょい優しくしてくれよ
■ このスレッドは過去ログ倉庫に格納されています