【PHP】くだらねぇ質問はここに書き込みやがれpart6
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/06/05(日) 13:17:11ID:xiGnsMS4ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
0696695
2005/07/01(金) 15:44:57ID:???です
0698nobodyさん
2005/07/01(金) 16:20:28ID:???感じとしては
print hogehote.txt
でhogehoge.txtの内容をそのまま表示してくれるような・・。
分かりにくかったらごめんなさい
0700nobodyさん
2005/07/01(金) 16:28:01ID:???0702nobodyさん
2005/07/01(金) 16:45:45ID:uNU+fZm1ファイルオープン
flock($fp,LOCK_EX);
fputs
ファイルクルーズ
としてるのが多いんですが
flock($fp,LOCK_UN);は書かなくても勝手に解除されるんでしょうか?
0703nobodyさん
2005/07/01(金) 16:55:57ID:???0705nobodyさん
2005/07/01(金) 17:07:49ID:???ありがとうございます
readfile("./test.txt")
で表示するだけは出来ました。
ちょっと
$fp = readfile("./test.txt"):
print "$fp";
としてみたんですが結果が
----------------
hoghoge.com
hogyohogyo.com
87
----------------
となりキャラクター数が最後に付いてしまっているようです。
えーと変数をテキストだよって宣言する作業をすればいいのかな・・
0707nobodyさん
2005/07/01(金) 17:17:12ID:uNU+fZm1ありがとうございます。
レッツのカウンタを使ってたら壊れたのでロック関係の処理を検索してました。
wでなくでr+で開いてftrancate($fp,0);でファイルサイズ0にして書き込み
に変更すれば大丈夫でしょうか?
0708nobodyさん
2005/07/01(金) 17:17:29ID:???また違う方法を探さないと駄目なんですね・・
0711707
2005/07/01(金) 17:34:29ID:???$fp = fopen($file,"w");
flock($fp,LOCK_EX);
fputs($fp,$data);
fclose($fp);
を
$fp = fopen($file,"r+");
flock($fp,LOCK_EX);
ftruncate($fp,0);
fputs($fp,$data);
flock($fp,LOCK_UN);
fclose($fp);
にしたら大丈夫でしょうか?
ディレクトリとかを使いたくありません。
0712nobodyさん
2005/07/01(金) 17:52:40ID:???0713nobodyさん
2005/07/01(金) 18:13:36ID:???なるほどでも
readfile("./test.txt");
だけだとファイルの中身だけが表示されるのは何故?
もと分かって無いと怒られそうかな・・ ;-;
で
<a href=http://hogehoge.com>hogehoge</a>
ってurlが羅列されているテキストをHPの色んなページにチョコっとリンクとして表示させたかったので。
$lines = file("./test.txt");
foreach ( $lines as $val){
print $val . "<br>";
}
って感じにしてみました。
今後は元テキストが
http://hogehoge.com<>hogehoge
urlとリンク先HPのみを自動でリンクにとして表示するようにしようかなぁと
0714nobodyさん
2005/07/01(金) 19:11:14ID:???0716nobodyさん
2005/07/01(金) 19:24:23ID:???つ[http://jp2.php.net/manual/ja/function.readfile.php]
0717nobodyさん
2005/07/01(金) 19:52:51ID:???何回も読みました・・w
動作は分かったのでひとまずいいです
動けばいい趣味スクリプトなんで
プログラムの基礎が無いので読んでも大まかにしか分かって無いようです。
0718nobodyさん
2005/07/01(金) 19:57:19ID:???0719717
2005/07/01(金) 20:03:10ID:???ありがとうございました <(_ _)>
分かりたいんですが、何が分かって無いのか分からないので。
phpいじくりながら勉強します
0720nobodyさん
2005/07/01(金) 20:58:06ID:???0721nobodyさん
2005/07/01(金) 22:33:46ID:???閲覧者が検索ワードを入力し結果を表示させるだけのものををphpとmysqlで
作りたいんですけど、やはりセキュリティと言うものに気を配らなければ
ならないのでしょうか。全く気を配らなかったとして、どのような被害が
考えられますか?
0722nobodyさん
2005/07/01(金) 22:45:17ID:???0723nobodyさん
2005/07/01(金) 23:02:28ID:???0724721
2005/07/01(金) 23:16:38ID:???急に自身が無くなって来ました。最低限これだけはやっとけって事にどんなもの
がありますか?答えづらい質問で申し訳ない。
0727nobodyさん
2005/07/01(金) 23:58:56ID:???fopen( "hogehoge.log" , "w" )
などで作成されたファイルの文字コードは何になるのでしょうか。
0728721
2005/07/02(土) 00:10:50ID:???回答ありがとうございます。
XSSでググって見たらジャンジャンひっかかりますね。これだけでも進歩です。
これを足がかりに勉強します。
0729nobodyさん
2005/07/02(土) 00:14:54ID:???hogehoge.logが画像だったとして、それがchmodやfopenで左右されると思う?
書き込もうとする内容が文字コード(さらに言えばテキストに限らず画像のようなものまで)を決定します。
そしてその内容は、phpへの入力・php.iniの設定・スクリプト内のコード変換等 いろいろな場所で文字コードを変換される可能性があります。
0732nobodyさん
2005/07/02(土) 18:04:14ID:???下記でエラー(T_ECHO)になります。何処がいけないのでしょうか。
<?php
extract($_GET);
mysql_connect('localhost','root','xxxxxx');
mysql_select_db('lesson');
if($i<>"") {
$sql = "select * from tbl where id=$i";
$result = mysql_query($sql);
$row = mysql_fetch_array($result)
echo $row["id"];
}
?>
『$rows = ・・・』以下を下記のように直せば大丈夫なんですが。
while($row = mysql_fetch_array($result)){
echo $row["id"];
0735nobodyさん
2005/07/03(日) 00:40:30ID:???flock($file,LOCK_EX);
$line =date("Y年 m月 d日 H:i:s")."\t";
fputs($file,$line."\n");
flock($file,LOCK_UN);
fclose($file);
複数のファイル名で保存するにはどうしたらいいですか?
(aaa.dat , bbb.dat , ccc.datで保存)
0737nobodyさん
2005/07/03(日) 01:34:54ID:???このPHP版JoyfulNoteで新規投稿が着たら
メールで知らせてくれる機能使ってるんですが、
なぜか???だらけのメールが着ます。
このメールを普通の文体のメールに変えるためにはどうしたら良いですか?
ちなみにサーバーはXREAのs151鯖です。
よろしくお願いします。
0739nobodyさん
2005/07/03(日) 10:19:30ID:???0740nobodyさん
2005/07/03(日) 13:07:47ID:???文字コードをいじるためにはどこを弄ればいいんですかね?
Joyful.phpのメール発射するらへんを見てみたんですが、
イマイチわかりませんでしたorz
0741nobodyさん
2005/07/03(日) 18:10:19ID:???mb_language ("ja");
mb_internal_encoding("sjis"); //この行を追加
mb_send_mail($mailto,$MailSub,$MailBody,"From: $email");
0743nobodyさん
2005/07/03(日) 19:23:17ID:sGU6ge/dfunction & hoge()
と、
受け取り側の参照受け取り指定
$moge =& hoge()
の関係がいまいち分かりません。
・両方とも記述しなければいけない
・関数側だけでも同じ結果
・受け取り側だけでも同じ結果
どうなっているのでしょうか?
0744nobodyさん
2005/07/03(日) 19:45:27ID:6wIeYBytたとえばベースとなるフォームをPDFや画像を用意しておき、
そのフォームの特定位置に対応する情報を出力する
差込印刷のようなことは可能なのでしょうか?
それともすべてをPHPで出力するか、
あるいはこういう差込印刷をしようと思ったらOpenOfficeなりを利用するほかはないのでしょうか?
0745nobodyさん
2005/07/03(日) 20:11:28ID:???たとえば、fpdf+fpdiのような外部ライブラリを使えば、差込印刷っぽいことはできる。
んでも、細かな調整等は自分で実装しなきゃいけないよ。
0747nobodyさん
2005/07/03(日) 21:56:45ID:6wIeYBytひとつのFORMにsubmitボタンを複数設置することは可能なのでしょうか?
具体的には、掲示板を表示するphpにおいて各書き込みに「編集」「削除」のボタンを設置し、
共通のphpで処理したいのです。
例えば
<TR><TD>774:nanashitaso</TD>
<TD>本文:ちょっと1聞いて(ry</TD>
<TD><FORM method='POST' action='sakujonin.php'>
<INPUT type='submit' value='編集' name='editflg'>
<INPUT type='submit' value='削除' name='editflg'>
<INPUT type='hidden' value='774' name='kakikoid'>
</FORM>
</TD></TR>
このような記述をしておき、sakujonin.phpではeditflgの内容によって処理を切りかえることが可能か?という疑問です。
あるいはsubmitボタンそれぞれのnameを変えておき、セットされている変数(name)によって処理を変えるのでもよいのですが。
よろしくおねがいします。
0749nobodyさん
2005/07/03(日) 22:09:58ID:???sakujonin.php を以下のようにして実験してみたらすぐ判ることを
なぜワザワザ聞くんだ?
友達が居なくてかまって欲しいのか?
<?php
echo $_POST['editflg'];
?>
0750nobodyさん
2005/07/03(日) 23:38:09ID:???編集と削除、それぞれを違うnameに汁。
それから、それぞれのボタンを押した際の$_POSTの中身を見比べて見る
0751747
2005/07/04(月) 00:50:43ID:???どうもありがとうございました。
0752nobodyさん
2005/07/04(月) 04:27:21ID:???たまに4000とか14feといった、4桁の数字だけで構成された行を受け取ってしまいます。
場所も不特定で、このせいでタグが分断されてページが乱れたりしてしまいます。
fgetsのバッファを大きくしたり、socket_set_blocking()を使って非ブロックモードにしたり、
漢字コードまわりをいじったりしましたが、一向に改善されません。
fsockopenのかわりにpopenでwget -O -を実行するようにしたら、この現象がぴたりと止まったので、
fsockopen()の例では、なんらかのエラー処理がかけているのではないかと思われるのですが、
原因のわかる方はいらっしゃいますか?
<?php
$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$out = "GET / HTTP/1.1\r\n";
$out .= "Host: www.example.com\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
?>
0753nobodyさん
2005/07/04(月) 08:57:15ID:???chunkっぽいので、
HTTP/1.1に拘る必要がなければHTTP/1.0にするとか。
マニュアルのuser notesの所にあるスクリプトの方を参考にするとか。
0754nobodyさん
2005/07/04(月) 11:58:45ID:???よそからGETメソッドで飛んできた「$i」により、レコードがセレクトされ内容を表示。
その後フォームによりそのレコードを削除します。
はじめはそのまま$iで削除しようとしましたが、サブミット後は$iの値が何故か消えて
しまうので削除できず。
上記のように<input type=\"hidden\"〜で新たに「$id」を定義したら無事できました。
何故サブミット後に$iの値が消えてしまうのでしょうか。
0755nobodyさん
2005/07/04(月) 11:59:04ID:???extract($_POST);
extract($_GET);
mysql_connect('localhost','root','pass');
mysql_select_db('db1');
if($ok == "おk") {
$sql = "delete from hoge where id=$id";
mysql_query($sql);
echo "レコードを削除しますた。";
echo $i; //サブミットした後は何故か値が消えてしまう
exit;
}
if($i<>"") {
$sql = "select * from nandemo where id=$i";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
echo "<p>" , "以下のレコードをマジで削除しますか?" , "</p>\n";
echo "<p>" , "●ID" , "<br>\n";
echo $row["id"] , "</p>\n";
echo "<p>" , "●タイトル" , "<br>\n";
echo $row["title"] , "</p>\n";
echo $i; //ちゃんと表示されるのでここまでは$iに値は入っているようだ
}
echo "<form action=\"delete.php\" method=\"POST\">";
echo "<input type=\"hidden\" name=\"id\" value=\"{$row["id"]}\">";
echo "<input type=\"submit\" name=\"ok\" value=\"おk\">";
echo "</form>";
?>
0756754
2005/07/04(月) 12:12:50ID:???下記のように○
0757nobodyさん
2005/07/04(月) 12:22:02ID:???セッション張ってないんだから持ち回せなくて当たり前。
で、そのコードはSQLインジェクションやXSSといった脆弱性を持っている危険なコードだ。
0758nobodyさん
2005/07/04(月) 12:24:40ID:???セッション利用すればいいんじゃないかな。
0759nobodyさん
2005/07/04(月) 12:38:00ID:???webprogの特徴として、ページを表示するごとに接続が切れる、
そのため前のページで何をやったか覚えてない、っていう事があります。
この辺りの話は、webprogの本やサイトでは基礎の基礎として取り上げられている筈なのでそれらを参照。
要するに、次のページで必要なデータがあるならきちんと渡してやらなきゃいけない。
確認ページ
入力 : $i
出力(formの部分、次の画面での入力) : id=$raw['id'] ok=おk
実行ページ
入力 : id=$raw['id'] ok=おk
0760nobodyさん
2005/07/04(月) 13:07:57ID:???0761nobodyさん
2005/07/04(月) 13:10:57ID:???0762754
2005/07/04(月) 13:41:05ID:???セッションですか。勉強不足でした。
>>760
$idを料理ってなんですか?クッキング?
>>761
消毒って何ですか?毒を消すこととは違いますゆね・・。
0763nobodyさん
2005/07/04(月) 15:14:23ID:70zY79R6newする前に調べたいと考えているのですが
その為には、文字列でCを指定しなくてはならないのですが
instanceof & is_a ← 文字列を指定できない (objectのみ)
('C' instanceof I) is_a('C', 'I') // 必ずfalse
is_subclass_of ← PHP5.3以上なら文字列を指定できるもののinterfaceには使えない
is_subclass_of('C', 'I') // interfaceでは必ずfalse
get_parent_class ← 文字列を指定できるもののinterfaceには使えない
get_parent_class('C') // interfaceでは必ずfalse
と思いついた方法を試してみたのですが、どれも上手くいかずに行き詰ってしまいました。
どなたか上手い方法をご存知の方がいらっしゃいましたらよろしくお願い致します
0764nobodyさん
2005/07/04(月) 15:49:25ID:LXfnoi1ZHTMLファイルを読み込んで、そのHTMLファイルのコメント部1(<!-- コメント1 -->)〜コメント部2(<!-- /コメント -->)までを
変数$hensu に代入する方法を教えて下さい。
0767nobodyさん
2005/07/04(月) 16:19:40ID:???文字列の切り取り関数とかあるのかと思ったのですけど…。
0768軟式PHP
2005/07/04(月) 16:35:17ID:???切り取り関数(substr等)はあるちゃーあるけど、
君の要望を満たすには765や766が書いてるように正規表現が必要かと思われ。
正規表現スレのほうでも何回か出てきた質問だから見てみては。
≫正規表現スレ
http://pc8.2ch.net/test/read.cgi/php/1105930285/
0769nobodyさん
2005/07/04(月) 16:40:05ID:???本当にわがままだな。
$pattern = "/<!-- コメント1 -->.*?<!-- コメント2 -->/s";
preg_match( $pattern, $html, $matches );
$hensu = $matches[0];
0771nobodyさん
2005/07/04(月) 16:42:28ID:???ありがとうございます。ではそちらのスレで聞いてみます。
そしてこれを機に正規表現を勉強してみたいと思います。
0773nobodyさん
2005/07/04(月) 18:43:09ID:???PHPでこんなデータベース作ろうと思ったらどれくらいの技量が必要なんだろう。
0774nobodyさん
2005/07/04(月) 18:48:34ID:???0776nobodyさん
2005/07/04(月) 19:16:23ID:???0777nobodyさん
2005/07/04(月) 20:33:20ID:???$hogeがfooかbarでなければ、の処理をもうちょっとスマートに書けませんか
0778nobodyさん
2005/07/04(月) 20:38:14ID:???0779nobodyさん
2005/07/04(月) 20:46:48ID:???0780nobodyさん
2005/07/04(月) 20:53:11ID:???if ( ($hoge != 'foo') and ($hoge != 'bar') ) { ... }
ではないかと。。。
オラに思いつくのはこんな感じか。あまりスマートではないか。
if (!in_array($hoge, array('foo', 'bar'))) {
0782nobodyさん
2005/07/04(月) 20:55:24ID:???0783nobodyさん
2005/07/04(月) 20:56:34ID:???ですが、いまいち「トラックバック」の意味がよくわかりません。
相手のURLを自分のブログの記事に登録して+相手のブログに
PNG送信すると言う事でしょうか?
何か開発する上でわかりやすいサイトはありませんでしょうか?
0784nobodyさん
2005/07/04(月) 20:57:30ID:???はandだべさ。
つかあれをorで結んだら100%真になるべ。
0787nobodyさん
2005/07/04(月) 21:09:56ID:???0788nobodyさん
2005/07/04(月) 21:10:41ID:???0789nobodyさん
2005/07/04(月) 21:32:38ID:???ありがとうございました。
fsockopenのuser notesにあるrichardaburton at hotmail dot comの方のサンプルコードが
ずばりそれらしいものでした。
0790nobodyさん
2005/07/04(月) 22:01:08ID:v9+48Ieq今日○人 合計で○人と表示できる物はあるでしょうか?
携帯対応で始める数字を最初から設定できる物があれば嬉しいです。
誰か知っていれば教えて下さい。
0791nobodyさん
2005/07/04(月) 22:07:17ID:a2/wuPFvずばり、HTMLはダウンロードできるが全くレンダリングされない症状が出ました。
たまにレンダリングされたりされなかったりするページもあれば、絶対にレンダリングされないページもあります。
ソース表示を行うとしっかりとhtmlがダウンロードできているようでソースは普通に見れますが
ブラウザに全くなにも壱文字も表示されません。
何故かは不明ですが、Windows上のInternetExplorer6でのみ発生します。
Mozilla Firefoxではこの問題が発生するページでも全く問題なく、普通に表示されます。
サーバーの問題かと思い、いくつかのレンタルサーバーで試しましたが同じでした。
htmlを出力しているのはphpファイルです。
知ってる方いらしましたらお願いします。
0793791
2005/07/04(月) 22:19:08ID:a2/wuPFv文字コードで苦労していた頃もありますが、
今回はもっとわけのわからないエラーが発生しています。
この問題で不思議なのはソースが見れるのに画面は完全に白紙になることです。(IEのみ)
原因不明です。このページではmod_rewriteなどは一切行っていませんので引数のエラーなどではないようです。
http headerもしっかりとtext/htmlでアクセスしているようで文字コードも問題ありません
また たまに表示されることがある という意味不明の現象を繰り返しています。
0795nobodyさん
2005/07/04(月) 22:30:53ID:???0796nobodyさん
2005/07/04(月) 22:32:16ID:???■ このスレッドは過去ログ倉庫に格納されています