[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ]
Update time : 05/09 10:34 / Filesize : 165 KB / Number-of Response : 617
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

PHP@プログラム板



1 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 21:05:34 ]
webプログラム板の連中があまりにも
気持ち悪いので、こっちに立てました。

231 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 02:46:47 ]
d.hatena.ne.jp/bomb23/20080908/p1

ここ読むと、

「「int」のワナ

テーブル作成時に、主キーに対して、「int primary key」
というように、型として「integer」ではなく「int」を使用すると、
自動的にインクリメントされません。たとえ「autoincrement」
キーワードを付けてもダメです。」

と書いてある。つまり、INT型と
INTEGER型と、
違うものという、設計がなされている。
ヘンタイなの?

232 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 05:48:22 ]
変態ですね

233 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 14:11:31 ]
INT型なんて存在しません。

234 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 16:20:39 ]
>>231
すごい罠だ、それw
MySQL使いだけど、SQLite使う時のために憶えとくわw

235 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:47:51 ]
今週のウシジマ君、見た?
女がパチンコにはまって借金する話。

そんで、それみて、
「自分でギャンブルの元締めやればいいのにー」
って思ったわけ。

で、具体的になにやるの?って話になるけど、
それはたとえば、サイコロ賭博とか、やればいいじゃんって。

236 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:49:18 ]
そんでサイコロ2個振って、
その合計の値は、全部で何通りあるのか?って話になるじゃん。

それを数学的に考えようと思ったんだけど、無理だったので、
SQLiteのデーターベースでやってみました。








ってテーブルを作る。そんで、これをエイリアスを作って
自己結合するだけ。そしたら、サイコロを2個ふったときの、
全部のパターンがでます。

237 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:49:47 ]
1 1
1 2
1 3
1 4
1 5
1 6
2 1
2 2
2 3
2 4
2 5
2 6
3 1
3 2
3 3
3 4
3 5
3 6
4 1
4 2
4 3
4 4
4 5
4 6

238 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:50:19 ]
5 1
5 2
5 3
5 4
5 5
5 6
6 1
6 2
6 3
6 4
6 5
6 6

239 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:50:56 ]
>>237-238
この全部で36通りの結果が出る。でも
これだとまだ合計値がでてないでしょう?
だから、いまからそれを作るつもり。



240 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:52:59 ]
いや、もしかして、
自己結合で、合計値を出すのって無理?

241 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 02:05:59 ]
>>240
select A.VAL , B.VAL, A.VAL + B.VAL from TBL A, TBL B

242 名前:241 mailto:sage [2009/02/16(月) 02:10:06 ]
ってゆうか、
pc11.2ch.net/test/read.cgi/db/1220581676/
への誤爆か?

243 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 09:17:58 ]
>>242
「Linuxを使って試しているから」という理由で初歩的な
プログラミングの質問をLinux関係のMLで延々し続ける人が
いるけど、そういうのと同類ってだけでしょ。
そもそもこの問題って単なる高校レベルの数学の問題でしょ。

244 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 11:46:20 ]
>>241
エラー : no such column: A.me

ってゆわれます

245 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 13:27:37 ]
sqlite3でpi()ってどうやるの?
3.14.。。
の例の円周率です。
πです。

246 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 13:37:59 ]
sqlite3って、reverseってないの?
mysqlにはあるんだけど。

247 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 13:41:22 ]
repeatもないのかな?

248 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 17:34:46 ]
likeの検索ができない

249 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 17:35:54 ]
SELECT name
FROM tb1
WHERE name LIKE '%sa'



250 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 17:36:26 ]
>>249
これで検索されない。
「sasaki」
っていうのが検索されてくるはずなのに。

251 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 17:39:56 ]
sa% じゃなくて?

252 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 18:00:03 ]
>>242


慎重に選考を進めてまいりましたが、残念ながらご希望に添えない結果となりましたのでご連絡申し上げます。

今後ますますのご健康とご活躍をお祈り申し上げます。

253 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 18:00:35 ]
>>251
あ、、、そっちなのかも

254 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 18:01:16 ]
>>251
うわーーー
できたできた!!

255 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 18:01:50 ]
SELECT name
FROM tb1
WHERE name LIKE 'sa%'

これで、できたよ。

256 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 18:02:29 ]
SELECT name
FROM tb1
WHERE name LIKE 'sa'

これだとできない。
必ず%が必要なのか?

257 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 19:59:05 ]
SELECT name
FROM tb1
WHERE name LIKE '%sa%'

これだとできるんだよな。
両方パーセント攻撃。

258 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 20:00:17 ]
別の話。

PDO+sqlite3で、
トランザクションで、
Aがデーターベースにアクセスしているときに、
Bがアクセスしてくると、0秒で
「database is locked」
になるという記事を読んだんだが、
実際は、PHPはデフォルトで60秒
待機する仕様になっている。

これであってるよね?

259 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 20:06:28 ]
jp.php.net/manual/ja/function.sqlite-busy-timeout.php

「PHPはデフォルトでデータベースがオープンされる際のビジータイムアウト を 60 秒に設定しています。 」

と書いてあるが、その下のコメントで、

「The PDO equivalent of this function would be PDO::setAttribute(PDO::ATTR_TIMEOUT);」

と書いてある。

もしかして、PDOでやった場合、PHPのデフォルトの設定は
無効にされてしまうのか?



260 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 20:32:53 ]
tam.qmix.org/archives/2006/01/activerecordsql.html

「2006年01月28日
ActiveRecordでSQLiteのbusy_timeoutをひきのばす
ActiveRecordでSQLiteアダプタを使っているとき、
ひとつのデータベースファイルに複数のプロセスや
スレッドからアクセスしていると、

SQLite3::BusyException: database is locked

というエラーが出ることがあります。SQLiteでは
アクセスを試みてエラーを返すまでにロックを
待つ時間がデフォルトでは0らしく、ロック状態
だった場合は即座にエラーが発生します。」


-----------------------------------------
、、、と書いてあるが、やっぱり待つ時間は0なのか?
それとも、マニュアルに書いてあるとおり、
デフォルトでは60秒待つのか?

261 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 21:04:09 ]
「アクセスを試みてエラーを返すまでにロックを待つ時間」

↑これって専門用語でなんていうの?

262 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 21:37:48 ]
www.mail-archive.com/sqlite-users@sqlite.org/msg13901.html
[sqlite] "Database is locked" error in PHP via PDO despite setting timeout
Sun, 19 Mar 2006 11:15:50 -0800

I'm using Sqlite3 from PHP via PDO.

My application was working fine as long as there was only one process
accessing the database, then I ran two instances at once. Now one of the
processes is getting

"Error message: SQLSTATE[HY000]: General error: 5 database is locked"

when trying to execute a statement which modifies the database.

I understand that this is liable to happen, unless a timeout is set via
sqlite3_busy_timeout().

I have set this timeout using the $db->setAttribute(PDO::ATTR_TIMEOUT, 5.0)
however it's made absolutely no difference to the behaviour.

It's certainly not waiting 5 seconds before giving me this error, and it's
happening with exactly the same frequency as before. It's as if it's being
ignored.

I've stepped through PHP in the debugger (gdb) and it's definitely calling
sqlite3_busy_timeout with the appropriate parameters (5000 ms).

What else can I do to prevent this?

If the answer is "nothing", I'm going straight over to MySQL :)

Mark

263 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 21:39:12 ]
>>262
この問題なんだよな。これがよくわからない。

どうも
(A)「php側で待つ処理」
(B)「sqlite側で待つ処理」

と、2つに分かれているようで、
>>259のデフォルトの60秒というのは、
(A)だけの話のようだ。

つまり、(B)でエラーになったら、
(A)の処理時間がどうなっていようが、いきなり
エラーになるということだ。

264 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 21:40:31 ]
そしてsqliteはトランザクションのネストができない。

つまり、トランザクション中に、別の
プロセスがトランザクションを取得しようとしたら、
問答無用で、待ち時間0秒で、いきなり
database is locked
になるらしい。

これを回避するには、自分でエラーをトラップして、
ある程度sleepして、そんでリトライ、、、

この処理を自分で書かないといけないらしい。

↑この理解であってる?

265 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 11:35:47 ]
include_once("HTTP/Client.php");

$LOGIN_URL = "https://moba8.net/";
$POST_URL = "https://moba8.net/a8v2/asLoginAction.do";
$LOGIN_ID = 'hoge';
$LOGIN_PW = 'huga';
$USER_AGENT = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)';
$http = new HTTP_Client;
$http->setDefaultHeader(
array(
'User-Agent' => $USER_AGENT,
'Referer' => $LOGIN_URL,
'Connection' => 'Keep-Alive',
'Keep-Alive' => '300',
)
);
$code = $http->get($LOGIN_URL);
if($code == 200) {
srand((double)microtime()*1000000);
$params = array(
'moa' => '/moba8',
'login' => $LOGIN_ID,
'passwd' => $LOGIN_PW,
'x' => (int) round(rand(0,100)),
'y' => (int) round(rand(0,10)),
);
$code = $http->post($POST_URL, $params, true);
$response = $http->currentResponse();
print_r($response);

なんでタイムアウトになっちゃうんでしょう??

266 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:44:21 ]
もしかして、
PDO->beginTransaction()
使えば、database is lockedの問題については
考えなくていいのか?

267 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:50:27 ]
SQLインジェクションの対策なんだけど、
プリペアードステートメントだけで、対策になっているのか?

それとも、プリペアードステートメント+バインドパラムまでしないと
対策になっていないのか?

どっちなのかな?

268 名前:デフォルトの名無しさん mailto:sage 後者 [2009/02/18(水) 01:16:30 ]
>>267
そもそもSQLインジェクションって何か分かってないでしょ?

269 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 01:47:13 ]
>>268
ネットだけなら何とでも言えるよな?
どうせ糞くだらねぇ三流の文系大か、下手したら高卒のくせによw
妄想だけなら脳内だけにしとけやオッサン。

現実ではお花畑みてぇな理想なんざ、何の役にも立ちやしねぇぞ?
どうにもならねぇ事なんざ、腐るほどあるんだから、
SQLインジェクションの知識の自慢なんざしてねぇで、現実を直視しろよw

まぁ、おまえみてぇに力仕事三昧&単純作業三昧の毎日じゃ、
『〜であってほしかった!〜であれば俺は今、こんなんじゃなかったんだ!(涙目)』
みてぇな妄想に耽るしか、救えねぇもんなwwww

まぁせいぜい頑張れや。PHPはシェア0から100にまではい上がった言語だからな。
強さを求めれば結果はついてくるだろうぜ?
いつまでも弱者で、影でコソコソと強者を批判するとか情けねぇと思わねぇか?w



270 名前:emi [2009/02/18(水) 03:02:35 ]
プログラミングど素人です。すみませんが教えてください。

GPSのデータを自分のHP上にgooglemapで表示させたいんです。
HP URL khepresh.toyama-cmt.ac.jp/~d04233
GPSデータ
$GPGGA,025207.561,3645.5161,N,13709.5192,E,0,0,,-10.0,M,35.7,M,,*5A
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,3,1,09,05,69,141,,12,64,095,17,22,59,271,24,18,51,192,21*7D
$GPGSV,3,2,09,30,50,182,18,09,42,048,,14,38,313,24,15,11,112,16*7E
$GPGSV,3,3,09,31,05,252,23*43
$GPRMC,025207.561,V,3645.5161,N,13709.5192,E,0.00,0.00,160708,,,N*7A
$GPVTG,0.00,T,,M,0.00,N,0.00,K,N*32
$GPGGA,025208.561,3645.5161,N,13709.5192,E,0,0,,-10.0,M,35.7,M,,*55
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,3,1,09,05,69,141,,12,64,095,17,22,59,271,17,18,51,192,20*7C
$GPGSV,3,2,09,30,50,182,17,09,42,048,,14,38,313,23,15,11,112,15*75
$GPGSV,3,3,09,31,05,252,22*42

↑毎秒データが追加される。
このデータの必要な部分のみをPHPで抽出し、javascriptに組み込み
グーグルマップにリアルタイムでピンを立てていきたいんです。
流れはわかるのですが、プログラミングしろとなると本当にわからなくて…m(_ _)m

すみません。どうかよろしくお願いします。


271 名前:emi [2009/02/18(水) 03:05:39 ]
$remove_row_list = array( 2, 3, 4, 5, 6, 7);
while ($data = fgetcsv($fp, 10000)) {
$today = date("Y/m/d l H:i:s");
print($today)."<br>\n";
if (!in_array($count, $remove_row_list)) {
echo $data[1] ."<br>\n";
echo $data[2] ."<br>\n";
echo $data[3] ."<br>\n";
echo $data[4] ."<br>\n";
echo $data[5] ."<br><br>\n";
}
{
$count++;
}
}
fclose($fp);

?>

緯度や経度などの必要な部分だけを抽出してみたつもりです。
何かおかしいような気もするのですが
これをjavascriptに組み込むことは可能なのでしょうか。


272 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 03:56:02 ]
>>271
javascriptとphpのリアルタイムでの連携なら、
xmlhttprequestや
json、jsonpなどを調べてみると良いと思います。

ただxmlhttprequestのみでもできます。
もしかしたらそっちの方が簡単かもしれません。


それから、javascriptからphpの出力を読み込む時、
ブラウザがキャッシュを読もうとすることがあります。
その場合phpのurlに適当なクエリを、その都度変化させて追加すれば回避できます。(ブラウザに別物だと認識させる)
〜.php?12345←これ
このクエリは時刻から生成すれば良いです。


あぁ分かりづらい文章だな〜orz

273 名前:270 [2009/02/18(水) 09:32:54 ]
>>272
お返事ありがとうございます。
さっそく調べてみようと思います。
本当にご丁寧で感謝です。
行き詰ったら、再度質問させてください。m(_ _)m

274 名前:270 [2009/02/18(水) 15:54:18 ]
>>272
JSONを使用したいと思うのですが、これも一つの
プログラムになるのですよね?
最終的には個別といった形ではなく
PHP、javascript、JSONが一つのプログラムになるのでしょうか?


275 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 16:46:37 ]
>>274
JSONはプログラムではなく、データ形式です。
PHPで出力する時に、JSON形式に整形して出力します。
そうすることで、
<script type="text/javascript" src="aaa.php"></script>
のように、ページ読み込み時に一緒に読み込むことができるようになります。

ただ、これではページ読み込み時に1回読み込むのみで、
その後自動で更新するというようなことはできません。
自動でデータを更新する場合は、JSONPを使う必要があります。

>終的には個別といった形ではなく
>PHP、javascript、JSONが一つのプログラムになるのでしょうか?

ならないです。PHPとJavaScriptを連携させる形になります。

276 名前:270 [2009/02/19(木) 01:31:57 ]
>>275
本当に知識不足ですみません。
なにせ、C言語をすこしかじっただけの者でして↓
でもこのプログラムを今週中に作らないといけないんです。

JSON形式にPHPを加工するのですか?
javascriptのほうには手を加えなくてもいいのでしょうか?
JSONPはJSONを理解しないと難しいですよね…
質問ばかりですみません。


277 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 02:27:07 ]
MySQLのDBであるテーブルの中身を上から10列取るってどんな感じにすればいいですか?

278 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 02:41:58 ]
>>276
そのレベルで今週中は厳しくないですか?

とりあえず、JSONとJSONPのさわり程度のサンプルを置いておきますね。
hcw.x0.to/phpphp/

ちなみに、JSON形式は
hcw.x0.to/phpphp/test.php?type=json
JSONP形式は
hcw.x0.to/phpphp/test.php?type=jsonp
のような感じになります。

これで大体理解できれば何とかなるかな・・・

279 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 02:45:11 ]
>>277
ちょっとまった。
「上から」って、具体的にはどういう意味?

プライマリーキーはふってるの?



280 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 02:50:46 ]
>>279
上じゃなくて下からでした申し訳ないです

名前 住所 電話
ああ adc  122
いい aaa  221
うう  ddd  332
ええ ccc  111

例えばこんなテーブルの中身で3つ参照するとして下3つのデータを逆に表示したいのです

ええ ccc  111
うう  ddd  332
いい aaa  221

281 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 03:23:08 ]
>>280
データーベースの中味は
ファイルと違って、「順番」という概念はないのでは?

だからプライマリーキーというのをふって、
idが4−2とかって指定しなければいけないのでは
ないのかな?

282 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 03:24:16 ]
だから、

id  名前 住所 電話
1  ああ adc  122
2  いい aaa  221
3  うう  ddd  332
4  ええ ccc  111

カラムを一個追加して、
↑のようにする。
そんで、idが2-4って
指定すればいいのでは?

283 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 08:48:02 ]
>>281>>282
なるほど
すばやい返答ありがとうございます

284 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 16:15:52 ]
だめだ、わからん現象がでてきた。
ファイルを2つ用意して、
トランザクションと、データーベースロックの実験をしているんだが。

「1.php」
「2.php」

285 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 16:16:26 ]
「1.php」

<?php
$dbh = new PDO('sqlite:test1');

$dbh->beginTransaction();

print "aaa<br>";
sleep(55);
$dbh->commit();

print "bbb";


?>

286 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 16:17:00 ]
「2.php」

<?php
$dbh = new PDO('sqlite:test1');

$dbh->beginTransaction();

print "ccc<br>";

$dbh->commit();

print "ddd";


?>

287 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 16:18:28 ]
こういう条件で、
「1.php」
を実行する。するとsleepで55秒
待たされるから、その間に
「2.php」
を実行する。そしたら、
「1.php」がトランザクションをゲットしているから、
「2.php」は待たされる(あるいは、database is lockedになる)
はずなのだが、すぐに結果が表示されてしまう。

ということは、「1.php」はデーターベースをロックしていないと
いうことなのか?

288 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 16:43:43 ]
>>287
データ追加とか色々してみたら?

289 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 17:01:21 ]
>>288
そんなことする必要ないはず。
1がトランザクションをゲットしているんだから、
2は本来、入れないはず。

そういう動作にならないとおかしい。

そうでしょう?



290 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 17:15:53 ]
>>289
色々試さないで人に聞くやつは葛

291 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 20:46:57 ]
>>290
アメリカ人に聞いたらすぐに教えてくれたから、
お前もういいわ。クビです。

292 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 20:52:46 ]
stackoverflow.com/questions/564298?sort=oldest#sort-top

ここだ。ここのアメリカ人に聞いた。英語で。
すぐに答えてもらったよ。やっぱ質問するなら、
アメリカだな。ひろゆきなんかもうクビでええわ。

293 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 20:59:14 ]
>>292
よかったね^^

294 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 21:00:15 ]
>>292
ちゃんとお礼しとけよ

295 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 21:07:01 ]
でも何だかんだで>>292は優しいな、
ちゃんと結果を貼ってくれるなんて

今読んできたが、なる程ざワールド

お礼はしとけよ。

296 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 21:16:11 ]
s01.megalodon.jp/2009-0219-2115-02/stackoverflow.com/questions/564298?sort=oldest

魚拓もとっておいた。削除されるかもしれないから。

297 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 22:20:42 ]
>>290
色々試す前にドキュメント読まないやつは五味葛

298 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 22:26:10 ]
>>297
ドキュメント読まない・試さないやつはどうなるんだ?

299 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 22:27:44 ]
七味葛くらいじゃね



300 名前:82 [2009/02/20(金) 01:27:23 ]
<?php
$fp = fopen('http://自分のHP, 'r');
$count = 0;
$remove_row_list = array(1, 2, 3, 4);
while ($data = fgetcsv($fp, 10000)) {
if (!in_array($count % 5, $remove_row_list)) {
echo $data[1] ."<br>\n";
echo $data[2] ."<br>\n";
echo $data[4] ."<br><br>\n";
}
{
$count++;
}
}
fclose($fp);

?>
このプログラムの例えば$data[2]ですが、3645.5218という数字だったとします。
そこでまずこの桁を36.455218にし10進から60進に直すときは
どういったプログラムを足せばいいのでしょう?
度 = int(36.455218) = 36
分 = int(0.455218 * 60) = int(27.31308) = 27
秒 = int(0.31308 * 60 *1000) / 1000 = 18.7848
= 36°27′18.7848″といったような感じです。


301 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 08:18:34 ]
>そこでまずこの桁を36.455218にし
sprintf

>10進から60進に直すときは
10進から60進に直せばいい
10進から2進数に変換するのと同じ

GPS座標の変換をやってるみたいだねえ

302 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 02:09:19 ]
database is lockedをキャッチして、
しばらく待って、リトライさせる処理って、
もしかして関数化して再帰なの?

それとも、こういう時にthrowを使えるの?

303 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 20:04:58 ]
PHPを利用して一定の時間が経過したらMySQLのデータベースのあるテーブルの中の
レコードを削除する方法ってどのような感じでやればいいのでしょうか?

304 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 20:47:27 ]
cron?

305 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 02:47:21 ]
ある適当な文字列
例えば10文字
qwertyuiopの後ろ5文字を削って半分にするプログラムはどんな感じになるでしょうか?

306 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 02:53:49 ]
substr($string, 0. floor(strlen($string) / 2));

307 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 02:54:24 ]
みすた
substr($string, 0, floor(strlen($string) / 2));

308 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 02:56:35 ]
すばやい返答ありがとうございます
substr で文字列数?を指定することで好きな長さにできる感じですか?
初心者なものですみません

309 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 02:57:51 ]
とりあえずマニュアルを読むことをお勧めする

ttp://jp.php.net/substr



310 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 03:02:31 ]
なるほどありがとうございます!
便利な関数ですね

311 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 21:03:41 ]
<?php
try {
$oDbCxn = new PDO('sqlite:test1');
$oDbCxn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

}
catch (PDOException $e) {
die("Error connecting to DB");
}

$bUpdatePending = true;

while ($bUpdatePending) {
try {
$oDbCxn->query("BEGIN EXCLUSIVE TRANSACTION");

// $oDbCxn->beginTransaction();
$oDbCxn->exec("UPDATE tb1 SET value = value + 1 WHERE id = '1'");

//$oDbCxn->commit();
$oDbCxn->query("COMMIT");

$bUpdatePending = false; // Exit the loop now the update has been done
}
catch (PDOException $e) {
print $e->getMessage();

$oDbCxn->rollback();
}
}
?>
やったついに成功した

312 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 22:31:54 ]
質問お願いします

PHPがどういうソースコードで書かれているのか読んでみたいのですが
何を読めばいいのか教えてください。

また
PHPはC言語で書かれていると本にあったのですが
C言語がわからないと読めないのでしょうか。

よろしくお願いいたします。

313 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 22:51:27 ]
もしや、日本語を知らないのに
日本語を読もうとしてるのか?

314 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 22:57:46 ]
>>312
PHP自体はCでかかれているけど、
Cなんて知る必要無いよ

ライブラリとか作るなら別だけど。

315 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 22:58:18 ]
>>313
行間を読め
人間はコンピューターではない

316 名前:313 mailto:sage [2009/02/23(月) 23:35:58 ]
>>315
行間読んでみた。
正直すまんかった。

317 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 00:26:36 ]
www.php.net/downloads.php
ここ行って、Complete Source Code っていうのダウンロードして、
ひとつひとつのファイルを適当なエディタで開いて読んでいったらいいのではないかな?
そういう話ではない?

318 名前:デフォルトの名無しさん [2009/02/24(火) 01:59:32 ]
超初歩的なこと(だと思う)を教えて欲しいのですが、
file_get_contentsに関することです。

$〜〜 = file_get_contents(http://〜〜〜/?js=$aiueo?p=$p);
という形にして、$aiueoと$pを外において繰り返したいんですが、
どうも$aiueo?p=$pという風に一緒くたにして読み込んでしまっているようで上手く出来ません

色々試しましたが結局この形式以外に回避することは難しそうなので、教えていただけませんか?
自分でもがんばってみます

319 名前:>>318 [2009/02/24(火) 02:05:22 ]
すみません、ソッコーですが自己解決しました!



320 名前:241 mailto:sage [2009/02/24(火) 02:24:21 ]
>>319
どう解決したかは知らんが、こんな感じか?

$〜〜 = file_get_contents("http://〜〜〜/?js={$aiueo}?p={$p}");


321 名前:>>318 [2009/02/24(火) 02:37:07 ]
いえ、単純にURLがおかしかったんです
?js=$aiueo?p=$p
を、
?js=$aiueo&p=$p
にしたらいけました!

322 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 08:59:39 ]
変数の値があればその値を、なければNULLを得たいんだが簡単な方法無いか

今は三項演算とemptyを組み合わせて
 (empty($variable)?($variable):(NULL))
ってやってるんだが
変数名が長くなると読みづらいし扱いづらいしで
何かいい方法は無いですか

323 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 09:28:39 ]
関数を作るぐらいしか思いつかないが、その値自体はどうやってとってくるの?

324 名前:312 mailto:sage [2009/02/24(火) 09:32:26 ]
>>314

レスありがとうございます。
PHPが言語としてどういう設計をされているかを知りたいです。

>>317

レスありがとうございます。
ファイルがたくさんあるのですが、どれを読めば理解を深める近道でしょうか。

325 名前:デフォルトの名無しさん [2009/02/24(火) 09:46:57 ]
全部

326 名前:デフォルトの名無しさん [2009/02/24(火) 09:47:41 ]
>>322
変数の値があればその値を、なければNULLを得たい?

$hoge = $variable;

327 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 14:48:02 ]
>>323,326
すまん、変数が存在したらの間違いだ。
俺の手違いで紛らわしいレスにしてしまい申し訳ない。

読んで頭にハテナが出てしまったと思う
その分のガッカリ感がいかんかと想像し、しかと胸に刻んでおきます。

328 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 14:52:02 ]
>>327
存在したら、か。
そういう使い方だったら連想配列あたりを調べると幸せになれるとオモ

329 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 15:04:22 ]
スーパーグローバル変数である$GLOBALSまでは辿りつけたけど
そこから先は想像つかないな
array_key_exists は有無しか判断してくれないし



330 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 16:38:59 ]
MySQLからデータ抜き出してID番号だけ$_SESSION['id']に代入したいんだけど
fetchrowでやると$_SESSIONに代入できたときは検索結果が表示されないし
検索結果を先に表示すると$_SESSIONに代入されないんだけど他に方法あります?

331 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 16:44:54 ]
>>322
$foo = isset($bar) ? $bar : null;






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<165KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef