【PHP】質問スレッドpart26【php】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/12/21 22:34:55ID:???0280226
05/01/08 10:54:23ID:???今までの議論は自鯖が動いているか否かで表示する画像ファイルを
変更する方法について議論していましたが、そこから一歩進めて自鯖が
動いているか否かで
・ <a href="aaa.com"><img src="ON.gif"></a>
・ <img src="OFF.gif">
のそれぞれに割り振ることはできるでしょうか?
今までの議論だとhtmlとimageは別スレッドで並列に取得できるとの
ことでしたが、今回は一方に画像にリンクを貼っているのでhtmlと
imageを切り離し、html部分だけを先に表示出来るかが疑問です。
0282nobodyさん
05/01/08 11:21:11ID:???だからさ、一番最初に言われたとおりに、
自鯖からレン鯖へ定期的にリクエストを送って、
レン鯖で常に自鯖の稼動状態を保持しておきゃぁいいじゃねぇかよ!
最新の自鯖からのリクエスト時間を現時間、および前回リクエスト時間と比較して、
自鯖で設定しているリクエスト間隔を大きく上回っていたら、自鯖死亡。
たったこれだけのことを、なんでそう難しく考えるんだ?
0283nobodyさん
05/01/08 11:24:31ID:???どっかいけや>>280。
ロジック見つけて、PHPでの具体的な実現方法になったら
また来いや
来ても、シカトだが(w
0285nobodyさん
05/01/09 01:49:34ID:QFmRB+Xymysql_fetch_arrayでパラメーターが間違っているとエラーをはきます。
どなたか判る方ご教授ください。
$sql="create table ".$passwd." (num INT UNSIGNED auto_increment not null,address varchar(100) not nukk,primary key(num))auto_increment=1";
mysql_db_query("max",$sql);
for($i=0;$i<$num;$i++)
{
$array_file[$i]=strtolower($array_file[$i]);
$array_file[$i]=mb_convert_encoding($array_file[$i],"Shift_JIS","EUC");
$array_file[$i]=mb_convert_kana($array_file[$i],"rnaskh");
$sql="insert into ".$passwd." (address) values('".$array_file[$i]."')"; このクエリは通る
mysql_db_query("max",$sql);
}
// $sql0="select address from ".$passwd." where not exists(select address from ngaddress where ngaddress.address=".$passwd.".address)";
// $sql0="select address from ngaddress";
$sql0="select address from ".$passwd." order by address";
$rs0=mysql_db_query("max","select address from ".$passwd); このクエリが通らない
while($ok=mysql_fetch_array($rs0)){print($ok."<br>");}
$sql3="drop table ".$passwd;
mysql_db_query("max",$sql3);
0287nobodyさん
05/01/09 01:58:51ID:???クエリが通らない行では、実際に送信しているクエリはどういう風になっているか見てみた?
print("select address from ".$passwd); とかで
0288226
05/01/09 02:00:22ID:???> >>274 がその答えを出してくれているのだが。
> 画像リンクなんかはまた別のリクエストなんです
そうしますと
<? (鯖死亡なら何も無し、生きていれば'<a href="misite.com/file_name/">'を表示) ?>
<img src="status.php">
<? (鯖死亡なら何も無し、生きていれば'</a>'を表示) ?>
とすればよろしいでしょうか(´・ω・`)?
0289nobodyさん
05/01/09 02:11:09ID:???--dl_check.php--
<?php
if 自鯖 === 生きてる
header("Location : http://xxx/download.jpg");
else
header("Location : http://xxx/cannot_dl.jpg");
?>
0290nobodyさん
05/01/09 05:40:54ID:5gC8scbgttp://www.mt312.com/の写メール対応掲示板を設置してみたのですが
imgの読み込み許可してください。とエラーがでます。
色々設定を変えてみたのですが駄目でした。
【使用鯖】携帯用XREA
【ディレクトリ構造】配布元に書いてあるとおりにしてます。
/public_html/img
【パーミッション】配布元に書いてあるとおりにimgフォルダを707に設定
よろしくお願いします。
0294226
05/01/09 14:46:19ID:???すいません。>>280で重要なことを言うのを忘れていたので誤解を生じて
しまったようです(´・ω・`)
PHPを使用して実現したいことは
・自鯖が生きていれば「ダウンロードアイコン」を表示して、それをクリックすれば
ファイルのダウンロードが始まるようにする。
・自鯖が死亡していれば「ダウンロードできませんアイコン」を表示して、それを
クリックしても何も起きない(リンクそのものが貼られていない)。
ということでした。
これ自体はリンク場所に以下のスクリプトを貼ることで実現できました。
<?php
$fp = @fsockopen ("mysite.com", 80, $errno, $errstr, 0.5);
if(!$fp) {
echo '<img src=error.gif>';
} else {
echo '<a href="mysite.com/download.zip"><img src="ok.gif"></a>';
}
?>
ただ目下の問題は自鯖の生死の判断がつくまでの間、html全体が表示
されないというところですね。おそらく上記のスクリプトのところで自鯖の
生死の判断を下す間止まってしまうのでしょうね。
0297nobodyさん
05/01/09 17:36:02ID:???0299nobodyさん
05/01/09 20:49:05ID:???0300nobodyさん
05/01/09 20:53:46ID:???0301294
05/01/09 21:10:50ID:???さようならゴミ共
0303nobodyさん
05/01/09 21:37:51ID:???0304nobodyさん
05/01/09 21:50:15ID:???plugin/attach.inc.phpのAttachPagesクラスの中で$this->pages[$page]->toString($flat)みたいに"->"
を二回書いている部分の意味がわからないんで教えてください。
#ソースはちょっと長すぎて貼れなかったorz
0305226
05/01/09 21:56:20ID:???> それで、言いたい事は?
言いたかったことは>>294のコードを埋めるとその部分で処理が終わるまで
htmlの表示がストップすることです。htmlの部分だけさっさと表示してphpの
コードの部分はおいおい処理して表示されるのであれば全く問題無いはずです。
一方画像の表示だけならば>>289さんが提示された方法や>>230さんのJavaScript
を使う方法を用いれば本文とは別スレッドで実行されます。ただ画像だけでなく
リンク部分も含めて制御するとなると本文にも絡んできてしまうため簡単に別スレッド
とはいかないようです。
>>302
iframeに関してはまだ疎いのですがそれが唯一の解決方法でしたら
採用してみます。以前iframeはあまり使いたくないと言っていた人がいたのも
気になりますが・・・
0308nobodyさん
05/01/10 02:59:48ID:???0309nobodyさん
05/01/10 04:12:25ID:???アクセス毎に毎回チェックするのは無駄だから、
ローカルサーバーの状態をファイルなどに保存しておくといよ。
サーバーのパフォーマンス低下に繋がるかもしれないし、共用サーバーならなおさら。
サーバー側でcronなどが使えないなら、ローカルから通知するように、
ローカルの方からサーバーに定期的にリクエストを送る。
サーバー側でリクエストを受けとったら適当なファイルをtouch()。
チェックはファイルのタイムスタンプで判断。といった感じで。
iframeやjavascriptでも見かけ上の読み込み時間は誤魔化せるけど、
一番ボトルネックになってる部分はfsockopenなのだから、そこの設計の見直しが必要。
0310nobodyさん
05/01/10 06:08:39ID:???結論から言えば、今のプログラミングの手法として
逐次処理を前程にしている以上、無理。
その仕組みを使うなら、判定をする部分を下へもってくる
(後の方で実行する)以外に解決方法はないと思う。
>>309の言う通り、ローカルファイルに状態を記録しておくのが一番いいと思うけど。
0311nobodyさん
05/01/10 13:37:44ID:???\_____ ________________ _____/
∨ ∨
,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,
/": : : : : : : : \ /": : : : : : : : \
/-─-,,,_: : : : : : : : :\ /-─-,,,_: : : : : : : : :\
/ '''-,,,: : : : : : : :i / '''-,,,: : : : : : : :i
/、 /: : : : : : : : i /、 /: : : : : : : : i
r-、 ,,,,,,,,,,、 /: : : : : : : : : :i r-、 ,,,,,,,,,,、 /: : : : : : : : : :i
L_, , 、 \: : : : : : : : :i L_, , 、 \: : : : : : : : :i
/●) (●> |: :__,=-、: / /●) (●> |: :__,=-、: /
l イ '- |:/ tbノノ l イ '- |:/ tbノノ
l ,`-=-'\ `l ι';/ l ,`-=-'\ lι';/
ヽトェ-ェェ-:) -r' ヽトェ-ェェ-:) -r'
ヾ=-' / / ヾ=-' / /
____ヽ::::... / ::::| ____ヽ::::... / ::::|
/ ̄ ::::::::::::::l `──'''' :::| / ̄ ::::::::::::::l `──'''' :::|
0312226
05/01/10 17:28:49ID:???プログラムが逐次処理である以上避けられない問題ですか・・・
了解です。借りてるレン鯖でcronが使えるかどうか確認してみます。
アドバイスどうもです( ´∀`)ノ
0313nobodyさん
05/01/10 17:48:41ID:???自鯖のほうでバッチ回して、レン鯖にリクエストかければ?
自鯖がLinux系ならcrontab だし、Winならタスクとか、
DiCeみたいなアプリを適当に使用するのも吉。
0314226
05/01/10 18:45:41ID:???DiCEなら現在使っています。定期的にスクリプトを実行する機能が
あったんでしたっけ?それでレン鯖の特定のファイルを書き換えれるか
更新すればいいわけですね。
0315nobodyさん
05/01/10 19:15:16ID:???error_reporting(E_ALL); と記述しているのにエラーを表示してくれなくなりました。
それどころか、Parse Error 等の文法エラーまで表示してくれません。
おそらくインストール時の初期設定か何かの問題だとは思うのですが、
どの辺りを調整すれば良いのでしょうか?
0317313
05/01/10 19:51:49ID:???チト頭を使おう。
DiCeでIPアドレス検出方法を「指定したURLの表示内容から抽出」する。
レン鯖には、REMOTE_ADORESSを返すスクリプトを置いておく。
返すだけではなく、自鯖ステータスの更新処理も含めておく。
0318226
05/01/10 22:27:33ID:???なるほどそういう使い方もありましたか。
DiCEから呼び出すスクリプトはこのスレッドらしくPHPで実現したら
格好いいですね( ´∀`)。
たぶん大丈夫かと思いますが全く関係ない他人がそのスクリプトにアクセス
してしまったら自鯖ステータスも更新されてしまうので簡単な認証手段を
こうじた方が安心かもしれませんね。
0320nobodyさん
05/01/10 23:33:53ID:???ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
0321nobodyさん
05/01/10 23:34:01ID:???/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
0322nobodyさん
05/01/12 19:00:38ID:???0323nobodyさん
05/01/12 19:25:14ID:???0325nobodyさん
05/01/12 22:23:19ID:???0326nobodyさん
05/01/12 22:53:37ID:???/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
0327nobodyさん
05/01/14 12:23:15ID:MY633uHv現在、メール送信ができているのですが、
受信したメールのタイトルだけが途中から文字化けしてしまいます。
(アウトルックは大丈夫でしたが、サンダーバードが駄目でした)
一応、下記のように文字エンコーディングを変換しています。
$enc_msg = mb_convert_encoding($message, 'JIS', 'EUC-JP');
$enc_sbj = mb_convert_encoding($subject, 'JIS', 'EUC-JP');
どのようにしたら、うまくできるのか
分かる方がいらっしゃいましたら、ご教授ください。
0328nobodyさん
05/01/14 12:27:03ID:???タイトルなどメールヘッダはmb_encode_mimeheader();
ttp://www.php.net/manual/ja/function.mb-encode-mimeheader.php
0329327
05/01/14 12:52:19ID:MY633uHvありがとうございます。
さっそく下記のようにして実行したのですが、もっと変になりました。。。
$enc_msg = mb_convert_encoding($message, 'JIS', 'EUC-JP');
$enc_sbj = mb_encode_mimeheader($subject, 'JIS', 'EUC-JP');
タイトルに文字コードが表示された感じに文字化けしました。。。汗
0332nobodyさん
05/01/14 16:10:28ID:???0333nobodyさん
05/01/14 16:11:27ID:???0335nobodyさん
05/01/14 16:13:54ID:???0336nobodyさん
05/01/14 16:46:18ID:???$subject を使っているのと、
そもそも PHP の mb_encode_mimeheader()、バグってると思う。
0338nobodyさん
05/01/14 20:32:24ID:???釣りじゃないの?
釣りだと思う・・・・
釣りであることを願う
釣りじゃないとしたら・・・・
0339nobodyさん
05/01/14 21:41:31ID:???0340nobodyさん
05/01/14 22:02:58ID:???馬鹿じゃねーの?
お前程度のチンカスが遭遇するようなバグが残ってるとでもおもうか?
自分の使い方が間違ってるのに、思うように動かなかったらバグだって?
笑わせんな。どっかの斜め右上を行く国の住人と思考回路が一緒だなw
0341nobodyさん
05/01/14 22:23:05ID:???チョン
0343nobodyさん
05/01/15 15:51:21ID:???面白い書き方を見つけたんだけど、標準入力を開くときに、
$tty = @fopen('\con', 'r');
if (!$tty) $tty = fopen('php://stdin', 'r');
こんな風に書いてる。一見すると2行目だけでいいと思うんですが、
このように書く理由はなんでしょうね?
あと、マニュアル見ても2行目の書き方は載ってるけど、1行目の
書き方は無い模様。でも Windows の cli 版で実行すると1行目で
ちゃんとオープンできるんですよね。
0344nobodyさん
05/01/15 20:44:48ID:???0345nobodyさん
05/01/16 00:45:46ID:QR0dYcnM<input type='checkbox' name='cu'>
<input type='submit' value='submit'>
</form>
チェックボックスを空でPOSTすると$_POST['cu']の空変数は
セットされないのですね。今日、はじめて気づいたよ^^;。
valueを付けたら良いのだろうか・・・やってみよ
0346345
05/01/16 00:47:54ID:???$_POST['cu']の空変数を取り出せるタグの書き方等はあるのでしょうか?
0348nobodyさん
05/01/16 00:56:15ID:???受け取る側で使う前に
$cu = isset($_POST['cu']) ? $_POST['cu'] : '';
とかやってみるといいんでは?
0349345
05/01/16 01:26:50ID:???checkboxに使う変数をhidden1つにカンマ区切りで纏めて送信する事にしました。
>>348
それがPOSTを受け取る側ではキーの部分が不特定になる構造なので空変数の
キーが必要だったのです。
0350nobodyさん
05/01/16 02:55:33ID:ChEzpbOrそういや、チェックボックスで漏れも痛い目にあったことあるな。
原因がわかるまで、4日くらい帰れなかった。
セッションとクッキーも絡めて使ってたから、一度チェック入れちゃうと
外してpostしてもチェック入った値が入るので大問題になった。
0352nobodyさん
05/01/16 05:17:32ID:K/l3JAK3アパッチ+postgres+phpと言うサイトで
$memberlist というテーブルがあります。
Create文
create table memberlist (
id int primary key,
name text,
hurikana text,
bag int8,
…
こんな感じのテーブルがあります。
php上で リストに何人いるか表示させたいのです。
nameの総数という感じでしょうか?
<TD> ******** </TD>
この****部分にどんな指定をすれば総数がでるでしょうか?
ダメもとでやっても出来るはずないので聞きに来ました。
これだけではデータが少ないかも知りませんがどなたかお願い出来ませんか?
ちなみにphpファイルを扱うのははじめてなのです。
0354nobodyさん
05/01/16 05:35:14ID:???1. SQLを調べる
2. phpとPostgreSQLの連携を調べる
0355nobodyさん
05/01/16 07:18:17ID:???RedirectをさせたときにGETじゃなくてPOSTにさせることってできますか?
やりたいことはRedirect先にリクエストパラメータを渡したいだけなんで
Location: http://server/path/script?param1=value1
とすればいいんですが、パラメータをURLに出したくないので、POSTでできないかなーと。
0358nobodyさん
05/01/16 08:16:42ID:???「リダイレクト先に指定のデータをPOSTするPHP(別にPHPである必要もないが)」へリダイレクトをかければ良いと思うが??
サーバーを跨がないのであれば、>>357が良いだろうな。
0361nobodyさん
05/01/16 16:53:56ID:???やりたいこととしては、function に渡した引数が
Perl のサブルーチンのように配列に入ってくれれば良いのですが。
呼び出し元では配列を使用せず、変数を列挙したいのです。
foo($a, $b, $c); // 3つとは限らない
function foo($array) {
// 引数を全て$arrayにセットしたい
}
呼び出し元から配列を渡せば良いことは承知ですが
何か上手い方法は無いでしょうか?
0363nobodyさん
05/01/16 16:58:35ID:???0364361
05/01/16 17:43:21ID:???$a, $b, $c, "aaa", "bbb" など、変数や固定値をまとめて渡したいのです。
これを配列やハッシュに代入してから関数に渡すと、
呼び出し元で配列への代入文を記述する必要がある上
ワーク配列を1つ作成しないといけません。
配列を渡したくない理由はその辺りです。
>>363
ありがとうございました。まさにこれです。
0365nobodyさん
05/01/16 18:33:57ID:???例えば student という変数をarrayで配列宣言して、セッション変数に指定した場合、
$_SESSION['student']['no'] といった感じで $student['no']を受け取るのかと思いましたが
駄目なようです。
0366nobodyさん
05/01/16 18:40:36ID:???言ってる意味がわからん
$_SESSION['student']['no'] と $student['no'] はどうみても
別物にしか見えない
0367nobodyさん
05/01/16 18:44:08ID:???要はセッションで配列変数を渡したいのです。
0369nobodyさん
05/01/16 18:47:06ID:???$_SESSION = $a;
print_r($_SESSION);
とか?
0370nobodyさん
05/01/16 18:47:22ID:???0371nobodyさん
05/01/16 18:49:39ID:???まぁ、前の$_SESSIONが消えてなくなるが;
$student = array();
$_SESSION = $student;
0372nobodyさん
05/01/16 18:54:16ID:???その後、 $student=array() で配列にています。
今後サーバーが変わって、PHPのバージョンが上がるために、今のうちに$_SESSIONで対応しておこうと
$_SESSION = $HTTP_SESSION_VARS
で $_SESSION にセッション変数を取り込んでいます。
0373nobodyさん
05/01/16 18:57:42ID:???0376nobodyさん
05/01/16 23:56:26ID:???PHPでwindowsを操作することってできますか?
例えばFormのボタンをおすとコピー(Ctrl+C)などやりたい
0379nobodyさん
05/01/17 00:12:44ID:???じゃあ何だとできますか?
0380nobodyさん
05/01/17 00:15:23ID:???■ このスレッドは過去ログ倉庫に格納されています