【PHP】くだらねぇ質問はここに書き込みやがれ
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/11/02 00:15:41ID:???<html><head><title>jikken</title></head><body>
<?php
print "ようこそ{$_REQUEST['yourname']}さん<br>";
?></body></html>
0799795
05/01/01 13:49:21ID:RJWWw1Kp>798
ありがとうございます!!出来ました!!心から、感謝します!
自分は超素人で、このようなことも知らなかったので、本当に
助かりました!!
でも、本にはこのようなことは書いていなかったのですが、
PHPの設定によっては、本のように単に「$youname」と書けば
出来るものなのでしょうか?
急ぎではありませんので、お手隙の時に教えて頂けると嬉しい
です。宜しくお願いいたします。
0800nobodyさん
05/01/01 14:02:03ID:???> PHPの設定によっては、本のように単に「$youname」と書けば
> 出来るものなのでしょうか?
yes
セキュリティのため不可にしてる場合が多い
ってか不可にするべし
0801nobodyさん
05/01/01 14:15:05ID:???そう。参考にした本が少し古かったのでしょう。
FAQの筆頭に上げられますので興味があれば”register_globals”で
ググッて見ましょう。
0802801
05/01/01 14:22:41ID:???変更されたわけ。
ttp://www.php.gr.jp/history/release_4_1_0.html
0803795
05/01/01 15:39:25ID:RJWWw1Kp>802
ありがとうございます。サイトを見ましたが、セキュリティのため
不可にするようになった訳ですね。
素人の自分にとって、貴重な勉強になりました!ありがとうござい
ます!
0804nobodyさん
05/01/01 17:27:18ID:???0805nobodyさん
05/01/01 17:29:56ID:???書いてないなら書き始めろ
0806nobodyさん
05/01/01 18:37:37ID:0o7KJJjq0807804
05/01/01 18:40:37ID:???<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>hogehoge</title>
</head><body>
<form action="<?=$PHP_SELF?>" method="post">
<input type="text" name="text"><br>
<input type="submit" value="送信" name="write">
</form>
<?php
$lines = file('log.dat');
if($_POST['text']){
$text = $_POST['text'];
array_unshift($lines, $text);
$all = count($lines);
if($all >= 5){
// 5行あればログファイルの内容を全削除、とやりたい。
echo "<p>(・∀・)ログサクージョ!</p>";
} else {
echo "<p>(゜Д゜)まだ5行無いぞ!</p>";
}
}
?>
</body></html>
こんな感じだろうか。もっと効率いいのがありそうだが。
で、削除の部分で良い方法が思いつかない。
ってかソース読みにくくてスマソ_| ̄|○
0809nobodyさん
05/01/01 21:46:55ID:Ctk5qZazを作りたいと思ってるのですが参考になるようなサイトやソースないでしょうか?
完全に個人での勉強目的で商用等に使ったりはしませんので教えていただけないでしょうか?
参考になるようなサイトやソース
ttp://www.google.co.jp/search?sourceid=navclient&ie=UTF-8&rls=GGLD,GGLD:2003-48,GGLD:en&q=PHP+MYSQL
どうぞ。
0811nobodyさん
05/01/02 02:14:35ID:???Googleやwww.php.netをいくら探してもないのでたぶんないと思うのですが
もしかしてあったりしますか?
0813nobodyさん
05/01/02 04:33:23ID:???"name2"=>test2
);
$DATA=array("name3"=>test3);
こうやって書くと最後の行だけが上書きされるようで、
$DATA[name1]と$DATA[name2]が消えてしまうんです。
なんとか$DATA[name1]と$DATA[name2]を残しながら
配列の情報を更新することはできませんかね?
0814nobodyさん
05/01/02 05:26:08ID:???何がしたいんだ???
要素追加するだけなら普通に $DATA['name3'] = 'test3' じゃあかんのか?
0815nobodyさん
05/01/02 06:16:50ID:???これってクッキーで完全に代替きかない?
セッションIDを記憶するためには
クッキーを使う場合がほとんどなわけで、
結果的にはセッションで記憶させなくても、
直接クッキーに記憶させりゃすべて万々歳なんじゃないのでしょうか?
ふと疑問に思ったんだが、だれか返答ヨロシコ
ちなみに会員制のサイト作るためにセッション使ってマスタ
0816nobodyさん
05/01/02 06:36:33ID:eCK1jGxR1回目は確実にPOSTしたはずの変数が代入されていない、
んでブラウザで戻るを押して、
再度同様にinput部分を入力してPOSTすると
なぜか今度は代入される。
再度、送信ページを更新して、送信ボタンを押すとフリダシに戻り。
何十回も見直したが、htmlに問題はないし、
PHP側にも問題がないはずなんですが、
このような事例ってありますか?
そもそもなぜ2回目は問題なく動作するのか?
わけわからねーっすーーー
0817nobodyさん
05/01/02 06:41:33ID:???ブラウザの設定
0818816
05/01/02 07:48:26ID:eCK1jGxRブラウザはIEのデフォルト状態です。
ブラウザの設定が原因として、このデフォルト状態でも
上記問題を発生させないにはどうすればいいのでしょうか?
0819nobodyさん
05/01/02 09:20:44ID:???0820nobodyさん
05/01/02 09:30:46ID:g7zmI0f+0821nobodyさん
05/01/02 09:46:12ID:???セッションは、設定によっては、クッキーがオフになってる場合は、自動的にURLに組み込まれる。
しかし、クッキーを直接発行する場合は、クッキーがオフになってたら、そこで終了。
0822nobodyさん
05/01/02 11:19:19ID:???テキストファイルとしてでしかincludeされないのですが、
何か改善方法はないでしょうか?
0823nobodyさん
05/01/02 11:49:26ID:???0824nobodyさん
05/01/02 12:20:33ID:???あるってきいたけど、実際に見るのってどういった方法が
考えられる?
例えば、
CGIやPHPを他人が使用できないようにしても
見られる可能性はある?
0825nobodyさん
05/01/02 12:37:54ID:???PHPだろうとCGIだろうと関係無い。
FTPの設定の問題。
ユーザーディレクトリより上階層を閲覧出来るようにされてる鯖だと見れる。
ユーザーディレクトリなんかも切らずに、例えば、
/var/www/htdocs_hoge.com
/var/www/htdocs_hage.com
って置いてる場合は、バーチャルホストなんぞで、
切り分けされてないと見れてしまうとこもある。
要は、鯖管のスキル次第、みたいなとこはあるな。
環境構築の際にそうしか出来ないようになる場面もあるが。
0827nobodyさん
05/01/02 14:07:26ID:???PHP質問スレとくだらねぇ質問スレのどちらで質問したらよいか、
その基準はどのへんですか。
0830816
05/01/02 17:03:08ID:???0833nobodyさん
05/01/03 02:13:53ID:???(1)ログをすべて走査して配列にいれて、その配列から10件ずつ表示
(2)ログの中で条件とマッチするたびに表示して10件になるまで繰り返す
(1)と(2)ならどちらがサーバーに負担かけないでしょうか?
0836nobodyさん
05/01/03 06:58:56ID:???0837nobodyさん
05/01/03 07:10:09ID:???0838nobodyさん
05/01/03 13:38:57ID:???〜と言うように本に書いてあったんですが、うまく動きません。
〜したいのですが、〜としてもうまく動きません。
〜で言う○○と同じような動作をさせたいのですが・・・
以上の様な、知ってる人から見ればバカみたいな質問はここ。
で、具体的なPHPのコードに対する動作不良、エラーが出てしまうなどは質問スレ
0839sage
05/01/03 19:01:04ID:KSsMVUlG文字列で重複削除をかけるために$ngにmysqlの結果セットを格納していきたいのですが
今のfor文ですと時間がかかりすぎてしまってこまっております。
何か一発で添字配列$ngに格納する方法ありませんでしょうか?
$rs="select id from ng";
$rt=mysql_num_rows($rs);
for($i=0;$i<$rt;$i++){
$ng[$i]=mysql_result($rs,$i,'id');
}
$ok=array_diff($up,$ng);
0841nobodyさん
05/01/03 21:05:01ID:???まだオブジェクト指向とは、それ以前にプログラムとは何たるか
すらまともに理解していないので、これは変テコな質問かもしれ
ないのですが、例えば、ファイル名/フォルダ名を取得してブラウザ
に表示する場合、ファイル名などのサニタイズというのは、どうすれ
ばよいのでしょうか。
1. サニタイズ用のクラスを作る
2. 同じクラス内で処理
3. それぐらいはメインの中で処理
0842nobodyさん
05/01/03 23:55:38ID:???サニタイズがわかってない悪寒。
サニタイズというのはユーザーからの入力をプログラムに渡しても
安全かどうかチェックしたり、安全なように変換したりすること。
サニタイズする処理が他の部分でも多いのなら1
その部分でしかサニタイズしないのなら、2か3かな?
0843841
05/01/04 00:47:27ID:???ご教示ありがとうございます。この場面ではサニタイズとは言わな
いのですね。勉強になります。
目標として、フォルダ毎に納められた圧縮ファイルの中身一覧の
表示と検索を、勉強がてら、データベースと連携してやりたいと
思っております。自分で&や;、その他ブラウザ表示には具合の
悪い文字をフォルダ名やファイル名を付ける事はないつもりでは
いるですが、もしもという事があるかもしれませんし、それに検索
フォームの作成も必要という事で、1で頑張ってみたいと思います。
ありがとうございました。
0844790
05/01/04 02:09:08ID:???スレ汚しスマソ
0845nobodyさん
05/01/04 05:45:47ID:???$dim=array('001'=>'a','001-001'=>'a-1','001-001-001'=>'a-1-1',
'001-001-001'=>'a-1-1-1','001-001-001-001'=>'a-1-1-1-1',
'001-001-001-002'=>'a-1-1-1-2','001-001-002'=>'a-1-1-2',
'001-001-002-001'=>'a-1-1-2-1','001-001-002-002'=>'a-1-1-2-2',
'001-002'=>'a-2','001-002-001'=>'a-2-1','001-002-002'=>'a-2-2' ,
'002'=>'b' 続く...);
これを htmlのul,liを使ったリスト表示したいと思っています。
<ul><li>a<ul><li>a-1<ul><li>a-1-1<ul><li>a-1-1-1<ul><li>a-1-1-1-1</li>(以下略)
リストの入れ子の深さがデーターによって不規則なので、閉じタグが上手く
表示できなくて困っています。どうかよろしくお願いします。
0846nobodyさん
05/01/04 06:04:19ID:???なんつーか珍妙なテーブルだね
深さを示す変数を持っておいて、現時点より浅くなったら
その分閉じタグ入れればいーんじゃナイ?
0847nobodyさん
05/01/04 06:07:51ID:???解釈したけど、>>845の質問文はあいまいだからそのあたりハッキリ
した方がいーんじゃナイ?
0848nobodyさん
05/01/04 06:26:55ID:???>>847
早速のレスありがとうございました。
すいません。質問があいまいでした。「閉じタグを入れるアルゴリズム」を
教えて下さい。手持ちの資料をDBで管理したく、資料の目次を一覧表示する
部分を作りたいと思っています。
a=資料名 a-1-1-1=資料 第1章1節1項
0849nobodyさん
05/01/04 09:29:00ID:???PHP以前にアルゴリズムの問題だろ。
ユーザ関数を使い、再起呼出しをかける事で、どんなに深くなっても対応出来る。
分木探索の応用だよ。
0850845,848
05/01/04 14:39:26ID:???「phpのツリーのアルゴリズムがわかんねんんだよ!」という
スレをgoogleで見つけて解決しました。
ありがとうございました。>皆様
0851nobodyさん
05/01/04 22:51:39ID:???0853nobodyさん
05/01/04 23:33:07ID:???DreamweaverMX2004
サイトの管理の機能が便利だから、いつの間にかコレに定着してた。
Linuxで作るときはEclipse
0854nobodyさん
05/01/05 00:33:56ID:???xyzzy
0855nobodyさん
05/01/05 00:42:40ID:???Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /var/www/htdocs/kanri/test/formtest2.php:1) in /var/www/htdocs/kanri/test/formtest2.php on line 5
こんなん出たんですけど、直し方がわかりません。
ライン 5行目は
session_start();
です。
だれか意味とか直し方とか教えてください。
お願いします。
0857855
05/01/05 01:28:15ID:???即レスありがとうです。
ヘッダ情報を送信する前ってどういうことなんですか?
プログラムの始めのほうに書いてて、<?phpのすぐ後に書いてるんですけど、
位置を色々変えてみたほうがいいんですかね?
同じようなプログラム(html部分が違う)では全く問題なく動くんでけど…
元のプログラムをコピペしてhtmlの部分を少し改良した感じなんです。
0858855
05/01/05 01:42:11ID:???すいません、ほんとにくだらない質問で…
0859nobodyさん
05/01/05 01:52:40ID:???しない場合なにか違いはあるのでしょうか?
0860nobodyさん
05/01/05 01:57:06ID:???そんなに違いはない。
スクリプト終了前にcloseすれば、多少なりともリソースが解放されるってだけ。
結局は、スクリプト終了時に自動的にcloseされる。
0861nobodyさん
05/01/05 01:57:35ID:???0863nobodyさん
05/01/05 09:30:58ID:UxwkK65Lどうすれば?
0865超ど素人
05/01/05 12:59:33ID:m5e5wCkg入力部品を操作する方法も教えて頂けますでしょうか。form.htmlファイル
には
<form method="POST" action="hairetu.php">
<table><tr><td>アドレス1</td>
<td><input type="text" name="mailadrs[1]"></td></tr>
<tr><td>アドレス2</td>
<td><input type="text" name="mailadrs[2]"></td></tr>
</table><input type="submit" name="submit" value="送信"></form>
と書き、hairetu.phpファイルには、
<?php
$mailadrs[1]=$_POST["mailadrs\[1\]"];
$mailadrs[2]=$_POST["mailadrs\[2\]"];
print("あなたのメールアドレスは");
print($mailadrs[1]);
print($mailadrs[2]);
print("ですね");
?>
と書いたのですが、「送信」ボタンを押しても「あなたのメールアドレス
はですね」としか表示されず、入力したmailadrs[1],mailadrs[2]が表示
されません。mailadrs[1],mailadrs[2]も表示させるようにするにはどう
すれば良いのでしょうか。環境は、PHP4.3.8+Apache1.3.31+WindowsXP
です。
どなたか、教えて下さると非常に助かります。宜しくお願いいたします。
0866nobodyさん
05/01/05 13:22:03ID:???print_r($_POST); すると、
Array ( [mailadrs] => Array ( [1] => i [2] => l ) となる。
つまり、$_POST['mailadrs']['1']や $_POST['mailadrs']['2'] に保持されている。
これを再帰的な配列や多次元の配列という。(マニュアルの配列の項より引用)
フォームで使っている[ ]が、変数名の中の文字[ ]として扱われずに
配列になっていることに注意。
0867nobodyさん
05/01/05 13:37:34ID:???たとえばperlでかかれたスクリプトの中にPHPのスクリプトを記述するの?なぜそんなことを…
<img src="hogehoge.php?count=○○">とかsystem('php hogehoge.php ○○');とか?
0868nobodyさん
05/01/05 13:39:12ID:???と、思うのは俺だけでしょうか。
0869nobodyさん
05/01/05 13:54:00ID:???やりたい事によってはサーバの設定(apacheのfilterとか)を
変えるような大掛かりなものになったりするし、
対象がはっきりくっきりもっきりしないと何とも言えないよね。
0870超ど素人
05/01/05 15:21:00ID:m5e5wCkg>つまり、$_POST['mailadrs']['1']や $_POST['mailadrs']['2'] に保持されている。
ありがとうございます!!出来ました!!それで、続きなのですが、これを
PHPファイルに簡単に書く方法はないでしょうか。
$mailadrs1=$_POST['mailadrs']['1'];
$mailadrs2=$_POST['mailadrs']['2'];
print($mailadrs1);
print($mailadrs2);
を、もっと簡単に書きたいのです。イメージとしては、
for($i=1;$i<=count($_POST['mailadrs']);$i++)
{
$mailadrs . $i =$_POST['mailadrs'][" $i "];
print($mailadrs . $i);
}
なのですが、これでは動きません。このような「ループ」を使って
簡単に書く方法はないでしょうか。何度もお手数をおかけしますが、
何卒宜しくお願い致します。
0871nobodyさん
05/01/05 15:23:56ID:???$mailadrs=$_POST['mailadrs'][$i];
print($mailadrs);
0872nobodyさん
05/01/05 15:25:13ID:???print($mailadrs . $i);
じゃなくて
print $_POST['mailadrs'][$i];
でいいんじゃない?
0873nobodyさん
05/01/05 17:23:35ID:???echo "アドレス".$key."=".$value."<br>\n";
}
0874nobodyさん
05/01/05 17:50:46ID:m5e5wCkg>872
>873
皆様、ありがとうございます!!どの方法でも出来ました!!
本当に感謝しています!これで、次のステップに進めます。
本当にありがとうございました!!
0875nobodyさん
05/01/06 00:03:07ID:+ptIYsD6<?php
$a = "PHP+MYSQL<br>";
$b = "マスターしよう";
print "<br>" . $a . $b . "<br>";
$c = "<font color ='#003366">";
$c .= $a . $b;
$c .="</font>";
print $c;
?>
宜しくお願いします。
0877nobodyさん
05/01/06 00:10:41ID:???エラーが表示された行でPHPの中の人が構文間違いに気づいたということなので、
それより上の行をじっくり見ていくとよい。
show_source('そのPHPファイル"); を使うとソースが色分けされて
PHPの中の人がどういう風にソースファイルを見ているか分かるので
parse errorなんかは比較的発見しやすい。
0878nobodyさん
05/01/06 01:34:26ID:+wNs3Qbo検索したんですが、Perlとかぐらいしかありません…。
0880nobodyさん
05/01/06 09:35:54ID:fZiVCIKI=>
ってどう読んでる?
0881nobodyさん
05/01/06 11:22:10ID:???というか、あまり呼ぶ機会がない。
0882nobodyさん
05/01/06 13:16:54ID:???0883nobodyさん
05/01/06 13:17:02ID:???逆にASCIIコードから文字を表示させるにはどうしたらいいですか?
0884nobodyさん
05/01/06 14:32:22ID:???0885nobodyさん
05/01/06 14:34:33ID:???chr()
0887nobodyさん
05/01/06 15:16:42ID:???たばこ買いにサアンクス行って来ようっと。
0888nobodyさん
05/01/06 17:25:22ID:d7KRc6M6class A extends Bとする方法以外で
class A{
???関数('B');
}
などとして子クラスに追加する関数はあるのでしょうか?。
class B{
}
class A extends B{
}
0890888
05/01/06 17:55:18ID:???エラーになるという記事を見つけて(^^)!納得しました。
お騒がせしましたm(_)m。
ありがとう^^ > 889
0892nobodyさん
05/01/06 19:36:06ID:???と表示されてしまうのですが、どうしてでしょう^^;
以下の設定だけでは動作しなくなりました?
WIN2K+Apache2+PHP4.3.10
[php.ini]
extension_dir = "C:/PHP/extensions"
extension=php_mbstring.dll
0893初心者です。
05/01/06 19:44:32ID:+ptIYsD6入力フォームから入力
<form method="POST" action="b.php">
名前<br>
<input type="text" NAME="name"><br>
<input type="submit" value="送信"></form>
↓
txtに保存して。(これがないと消えてしまうので)
↓
a.phpに表示
したいんですけどどのようにソースを書けばよいでしょうか?
暇な方で誰か書いていただけませんか?
どうぞ宜しくお願いします。
0894nobodyさん
05/01/06 19:52:00ID:???[b.php]
$fp = fopen('./name.dat','w');
fwrite($fp,$_POST['name'])
fclose($fp);
[a.php]
$fp = fopen('./name.dat','r');
$name fread($fp,filesize('./name.dat'))
fclose($fp);
0895nobodyさん
05/01/06 19:53:23ID:???エラー無視の適当書き
[b.php]
$fp = fopen('./name.dat','w');
fwrite($fp,$_POST['name'])
fclose($fp);
[a.php]
$fp = fopen('./name.dat','r');
$name = fread($fp,filesize('./name.dat'))
fclose($fp);
echo $name;
0896初心者
05/01/06 20:27:02ID:+ptIYsD6しかし何故だかエラーになってしまいます。
Parse error: parse error, unexpected T_STRING in
何故なのでしょうか。
宜しくおねがいします。
■ このスレッドは過去ログ倉庫に格納されています