【PHP】下らねぇ質問はここに書き込みやがれ 60
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/12/01(土) 21:18:36ID:MnWwNIk0PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 58
http://pc11.2ch.net/test/read.cgi/php/1195204145/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0588nobodyさん
2007/12/12(水) 14:51:00ID:???書き方が汚くてわからん
Array (
[0] => 100
[1] => たまご
[2] => 10
[3] => もやし
[4] => 150
[5] => きゃべつ
)
ループして回して、前回の項目に今回の項目を入れるような形でいいんじゃね?
0589nobodyさん
2007/12/12(水) 14:57:19ID:???0590nobodyさん
2007/12/12(水) 15:20:39ID:eCfhXAAjそれがうまくいかないんですよねぇ。
$hoge array([0] => 1.000000 [1] => りんご
[2] => 1.000000 [3] =>りんご
[4] => 0.108645 [5] => みかん
[6] => 0.178970 [7] =>ばなな)
みたいな感じの配列で、かつ配列の長さが変わるので、
$g = count($hoge);
$huga = array();
for($i = 0; $i < $g; $i+=2)
array_push($huga, $hoge[$i] => $hoge[$i+1]);
みたいなことをやってたんですけれど、できないらしくて、んで、こんどは
$g = count($hoge);
$huga = new stdClass();
for($i = 0; $i < $g; $i+=2)
$huga->$hoge[$i] = $hoge[$i + 1];
とやると、
0591nobodyさん
2007/12/12(水) 15:21:30ID:eCfhXAAj$huga array(
[1.000000] => りんご
[ 0.108645] => みかん
[ 0.178970] =>ばなな)
になってしまうんですよねぇ。
おまけに、ソートしようと思って、
krsort($huga);
ってやると、「krsortは引数はオブジェクトじゃないから、配列にしてね」ってエラーが出るんで、
(array)キャストしてやると、引数が違うってエラーが出るし。
0592nobodyさん
2007/12/12(水) 15:30:09ID:???俺も人のこと言えないが・・・
質問するときに綺麗なソースと汚いソースで答えてくれる人が変わる
為にならないけど、こんな感じでどうよ
http://viprog.so.land.to/show.php?id=58
0593nobodyさん
2007/12/12(水) 15:44:01ID:???$hoge = array(
[0] => 1.000000 [1] => りんご
[2] => 1.000000 [3] =>りんご
[4] => 0.108645 [5] => みかん
[6] => 0.178970 [7] =>ばなな)
for($i=0;$i<count($hoge);$i++){
if($i&0){
$key=$hoge[$i];
}else{
$hoge2[$key] = $hoge[$i];
}
}
確かめてないけどこれでどうよ?
0594nobodyさん
2007/12/12(水) 15:52:18ID:???>なぜか、値がだぶっている[2] => 1.000000 [3] =>りんごが消えてしまって、
当たり前だろ。キーがいっしょなんだから。
0595nobodyさん
2007/12/12(水) 16:04:07ID:???やりたいことはこうでしょ。
$g = count($hoge);
for($i = 0; $i < $g; $i+=2)
$huga[$hoge[$i]] = $hoge[$i + 1];
krsort($huga);
0596nobodyさん
2007/12/12(水) 16:20:42ID:eCfhXAAjありがとう。
愛してます。
良いクリスマスが過ごせますように!
0598nobodyさん
2007/12/12(水) 19:43:41ID:???0599nobodyさん
2007/12/12(水) 19:45:11ID:???エスパーじゃないんだからわかんないw
0601nobodyさん
2007/12/12(水) 20:10:14ID:???中島敦「山月記」の中で、主人公が自分の半生を回顧して、
「己は次第に世と離れ、人と遠ざかり、憤悶と慙恚とによって益々己の内なる臆病な自尊心を飼いふとらせる結果になった。」
と言ったが、オマエは正にそれだな。
0603nobodyさん
2007/12/12(水) 20:25:58ID:???0604ASP
2007/12/12(水) 20:30:38ID:???レベルひっくw
0606nobodyさん
2007/12/12(水) 20:35:44ID:???0607nobodyさん
2007/12/12(水) 20:41:37ID:JdQDX1qN0608nobodyさん
2007/12/12(水) 20:51:15ID:???作ったスクリプトをブラウザで実行させると
1分くらい待った後にエラーも出ずに、画面が真っ白に
なったんですが、何が原因ですか?
コマンドラインで-l付きで実行しても文法エラーは出ませんでした。
ただ、コマンドラインが異常に重くなったので、
PCにかなり負担をかけているようです。
無限ループ系のエラーかな?
0609nobodyさん
2007/12/12(水) 20:53:09ID:???0610nobodyさん
2007/12/12(水) 21:07:24ID:???エラーとバグは意味ちがうべ。
とりあえずプログラムの途中でechoでも入れてみて
どこまで実行されてるか調べろよ。
0611nobodyさん
2007/12/12(水) 22:18:04ID:???レス機能や管理人削除程度が付いたのみのシンプルな掲示板探してます。
レッツPHP!さんのp-bbsがそれに近かったのですが
相対パスの何かがうちのxreaに合わなかったらしくエラーが起きるので
似たようなスクリプトの配布サイトあれば教えて頂けないでしょうか?
0612nobodyさん
2007/12/12(水) 22:21:37ID:???0614nobodyさん
2007/12/12(水) 22:59:20ID:???っていうか俺含めてスレチガイだぞ?
0616nobodyさん
2007/12/13(木) 02:58:13ID:???0618nobodyさん
2007/12/13(木) 03:45:38ID:UtKgXk4k0624nobodyさん
2007/12/13(木) 11:31:37ID:???チェックボックスとかかなりメジャーな問題だと思ってたんだけど、ぐぐってもなかなか無くて泣いたわ・・。
ほとんどの人は入力→結果で使ってるんかね・・。入力→確認→結果なんてやってるのは少数派か・・。
<?php
for ($i = 1; $i <= $Q_num; $i++) {
if (isset($_POST["Q$i"])) {
$cnt = count($_POST["Q$i"]);
for($k=0; $k < $cnt; $k++) {
?>
<input type="hidden" value="<?php echo $_POST["Q$i"][$k];?>" name="Q<?=$i?>[]">
<?php } } } ?>
0625nobodyさん
2007/12/13(木) 11:39:26ID:???0627nobodyさん
2007/12/13(木) 11:42:25ID:???せめてどっちかに統一汁。できれば後者。
0628nobodyさん
2007/12/13(木) 11:42:25ID:???サーバによっては<?=が使えないようなとこもあるから。
0629nobodyさん
2007/12/13(木) 11:47:15ID:???ただ、一文字のためにとおもうと面倒で・・ついやってしまいました
0630nobodyさん
2007/12/13(木) 11:49:58ID:???ついだからいいって問題でもない
0631nobodyさん
2007/12/13(木) 11:52:03ID:???htaccessで一括してインクルードするようにしたら、さくら鯖が対応していなかったorz
自鯖立てるか・・・
0632nobodyさん
2007/12/13(木) 12:00:09ID:???0633nobodyさん
2007/12/13(木) 12:01:04ID:???なんかうさんくせー3流スクリプトばっかりだ。
このスクリプトは、Crontabを使えないサーバーを利用しているユーザーがCGIによって
コマンドを実行させ、例えばメールを送信したりすることができるようにするために作られたものです。
Crontabが利用できるサーバーのユーザーには必要ありません。
設定によりますが、一定数以上のアクセスのあるサイトが必要です。
ttp://www.shumatsukigyo.net/free/cgi-crontab.html
0634nobodyさん
2007/12/13(木) 12:05:54ID:???0635nobodyさん
2007/12/13(木) 12:07:07ID:???0636nobodyさん
2007/12/13(木) 12:33:36ID:???0637nobodyさん
2007/12/13(木) 12:47:30ID:???○使いこなせない
0640nobodyさん
2007/12/13(木) 14:12:24ID:h2Iy8z0a質問させていただきます。
formのcheckboxのデータをpostで送るのですが、
checkboxをチェックせずに送ると下記のエラーが出ます。
Notice: Undefined index: XXXXX in /home/htdocs/test.php on line 12
値が入っていないというのはわかるのですが、
下記のコードもエラーになってしまい、
どうやって値を入れればいいのか見当がつきません。
if($_POST["XXXXX"] == "") $_POST["XXXXX"] = "0";
どなたかわかる方がおりましたら
教えて頂きたく、よろしくお願いします。
0641nobodyさん
2007/12/13(木) 14:14:20ID:???0642nobodyさん
2007/12/13(木) 14:27:14ID:h2Iy8z0a返信ありがとうございます。
その方法でいけました。
参考書には上記の方法で値を入れるように書かれていたのですが、
バージョンの違いか何かが原因だったんでしょうか。
issetとの違いも含め、よく調べてみたいと思います。
とても助かりました。ありがとうございました。
0643nobodyさん
2007/12/13(木) 14:29:14ID:???試してみても いいと思うんだ
0644nobodyさん
2007/12/13(木) 14:33:41ID:???これは気持ち悪い
凄い参考書だな
0645nobodyさん
2007/12/13(木) 14:46:53ID:???>>643
それはもちろんやりましたが、
調べ方が下手なのか、あまり関連した情報が得られませんでした。
>>644
スーパーグローバル関数に突っ込むのがおかしいのでしょうか。
0646nobodyさん
2007/12/13(木) 15:21:58ID:/4by8RFw$int = 110000000000;
for($i = 1 ; $i <= 50 ; $i++){
echo $int + (10000000000 * $i) ."\n";
}
?>
【出力】
1.2E+11
130000000000
1.4E+11
150000000000
160000000000
170000000000
180000000000
なぜか、1200億と1400億がE+11となります。
これはなぜこうなるのでしょうか?
あと、
2.3E+11
2.4E+11
2.8E+11
3.3E+11
3.4E+11
3.8E+11
と、よくわからないところがE+11となっています。
何か不思議です
0647nobodyさん
2007/12/13(木) 15:38:09ID:???Eというのは、数学用語で自然対数のことを表している。
で、どうしてそのような表記になっているかというと、
コンピューター上は、数値は二進数に変換されるため、
あまり桁数が多いと桁あふれが生じて、自動的に自然対数に変換されるようになっている。
バグというか、そういう仕様としか言いようがない。
0648636
2007/12/13(木) 16:03:10ID:???コアとDB周りを読んだ。最悪なのはPDO周り。
いくつかはバグレポ送ったけど、途中で嫌になって、
PHP使わないことにした。そしたら幸せになりました。
0650nobodyさん
2007/12/13(木) 17:11:13ID:???>Eというのは、数学用語で自然対数のことを表している。
表してないです
あと(想像だけど) >646 の質問の意図は
「なんで 1.2 や 1.4 だけ指数表示なんだろう?」ってことではないかと
0651nobodyさん
2007/12/13(木) 19:51:02ID:???0652nobodyさん
2007/12/13(木) 19:59:07ID:???カーネルにも依存するよ。
今度のFreeBSDは数値計算に対して期待できるパフォーマンスを発揮するが、
LINUXだと、桁数が増えるとパフォーマンスが落ちるみたいな話があるし。
0654nobodyさん
2007/12/13(木) 21:24:17ID:???0655nobodyさん
2007/12/13(木) 21:27:29ID:???>ページ遷移の途中で設定切り替えられたらアウトだけどなw
>ページ遷移の途中で設定切り替えられたらアウトだけどなw
0656nobodyさん
2007/12/13(木) 21:30:45ID:???0657nobodyさん
2007/12/13(木) 21:32:52ID:???JSでセット→ページ遷移中にOFF→クッキー無いのでやり直し
COOKIE使えない状態
JSでセット→ページ遷移中にON→クッキー無いのでやり直し
じゃない?
0659nobodyさん
2007/12/13(木) 21:41:02ID:pnKKxQmNPHPは整数型で表現できる限界までint型だよ・・
0665nobodyさん
2007/12/13(木) 23:14:31ID:ODfujwJG<?xml version="1.0" encoding="UTF-8"?>
<?php ?>
以上のような場合、phpスクリプトとxmlってどうやって共存させるのでしょうか?
エラーになって困っています。
0667nobodyさん
2007/12/13(木) 23:17:57ID:???レベルひっくw なんかなぁ・・・w
0668nobodyさん
2007/12/13(木) 23:33:15ID:ODfujwJGPHP.iniってなんですか?
というのは冗談でトンです。
0670nobodyさん
2007/12/14(金) 06:28:14ID:???0671nobodyさん
2007/12/14(金) 06:40:16ID:???匿名掲示板だからといって、いい加減なこと言わない方がいいよ。
今まで何度匿名掲示板で犯罪予告して逮捕されたか、知っているの?
偽計業務妨害で逮捕されろ。
0672nobodyさん
2007/12/14(金) 06:44:24ID:???0673nobodyさん
2007/12/14(金) 06:48:43ID:???またの機会にどうぞ。。。
nobodyさん (1)
【PHP】ASPさんがレベルの高い質問に答えるスレ
名前: nobodyさん
E-mail: sage
内容:
どうぞ
0674nobodyさん
2007/12/14(金) 07:49:54ID:???0675nobodyさん
2007/12/14(金) 10:48:06ID:1QbObC1s0677nobodyさん
2007/12/14(金) 11:11:29ID:???0678nobodyさん
2007/12/14(金) 11:20:37ID:1QbObC1s<?
class A
{
protected $name;
function A() {
$this->name = 'A';
}
}
class B extends A
{
function B() {
echo $this->name;
}
}
?>
こんな感じかな?PHP4と5で使えるget_parent_class()みたいな簡単なものがあるのかな、と思ったのですが、
やっぱクラス名をどっかで手打ちしなきゃいけないんですね。。。
0679678
2007/12/14(金) 11:27:41ID:1QbObC1s継承先じゃなくて、継承元から、子クラスを取得したいんだった。
>>678でいうと、クラスAからクラスBの名前(B)を取得したいんでした。
なんか方法ありますかね?
0680nobodyさん
2007/12/14(金) 13:35:14ID:???PHPってなんでバリアント型を採用しているんだと思いますか?
0681nobodyさん
2007/12/14(金) 13:45:14ID:vuES24q3としています。
それから、db_util.phpというファイルで$con = pg_connect("dbname=dbname user=postgres password=xxxxxx");
としています。もちろん、それ以前にrequire("constant.php");としています。
Warning: pg_connect() [function.pg-connect]:
Unable to connect to PostgreSQL server: FATAL:
database "dbname" does not exist in C:\Program Files\Apache Group\Apache2\htdocs\php_pg\db_util.php on line 5
とエラーが出ます
$con = pg_connect("dbname=php_db user=postgres password=xxxxxx");
とストレートにかけばOKです。
定数を使う方法でやりたいので、なぜエラーになるか教えてください。。よろしくお願いします。
0684nobodyさん
2007/12/14(金) 14:08:13ID:???0685681
2007/12/14(金) 14:09:50ID:???0687nobodyさん
2007/12/14(金) 14:39:55ID:1QbObC1s■ このスレッドは過去ログ倉庫に格納されています