元スレ【PHP】ID出さなくても質問OKなスレ【初心者歓迎】
php覧 / PC版 /みんなの評価 :
401 = :
ふざけてるつもりはないですよ。
何も分かんないから聞いていただけです。
sageについては分からなかったのですいませんでした。以後気をつけます。
402 = :
>>395
DBをツリー型のことだろザコ
勘違いはおまえ
403 = :
ザコ、いい響きだ
404 = :
>>402
君が何を勘違いしてるか、
出力はツリーだろ。=>トーナメント表
それをMySQLに保存したいっていう質問だろ。
DBにツリーを表現する構造を作らなくて何をするというの?
LR方式のツリー格納は今のところもっとも効率のいい方法だぜ。
まぁ、どうせ>>395あたりだと、DBは試合結果だけとか、
再帰処理とか、劇重なこと考えてるんだろうけど。
405 = :
もうテキストに保存しろよ
406 = :
>>404
バカじゃねの?ツリーで出力のとツリー型でデータ格納するのは別だろ
407 = :
>>406
ツリー型でデータ格納って何言ってるかわかってぇみたいだなw
代案示してみろよw
408 = :
モデリングを理解できないレベルのPG厨にそこまで熱くならなくても・・・
409 = :
あれだよ、無知の為にコード晒してギャフンと言わせるしかない
410 = :
ぼくちゃん、晒す度胸があったら、ザコとか無知とか言わないでちゅw
411 = :
>>407
wがついてる時点でテンパッテルように見受けられますが?
412 = :
>>407
落ち着け、日本語で書け
413 = :
>>396
http://www.sitepoint.com/article/hierarchical-data-database/
これの、日本語訳相当のもの、あったよ。
http://www.mysql.gr.jp/mysqlml/mysql/msg/12071
図を参照するならここ
http://dev.mysql.com/tech-resources/articles/hierarchical-data.html
要約すると、トーナメント表のようにツリー概念をフラットなテーブルで表現するには
Adjacency List モデルとネストセットモデルがある。
Adjacency List モデルは親子を登録しておいて再帰で取りに行く形で
すぐにおもいついて実装はすぐできるが、パフォーマンス的に無駄があるし大量のデータは扱えない。
ネストセットモデル(>>404氏が書いてるLR方式)の方が検索性に優れている。
ネストセットモデルの更新は若干トリッキーなので更新中はロックを正しく実装する必要がある。
カテゴリー管理などツリー構造を扱うときはネストセットモデルがFAなので、
覚えておいて損はないよ。
414 = :
XML形式のデータをフラットに書き下す時もネストセットモデルだよね。
もしこれよりうまいモデリング手法があるんなら俺も知りたい。
415 = :
検索性に優れるのは衝突を限りなく無視できるハッシュ法だ
416 = :
ハッシュで検索が効率がいいのは、ターゲットが限られているとき。
特定ノード配下から条件指定で検索など、実用コードを書いたら一気に重くなる。
もしくは、全データをメモリに読み込むとか、Web用としては使えんと思うが、
ハッシュで実用的なツリー構造を扱う新理論でもお持ちで?
417 = :
ないよ
10年後ぐらいには実用になるさ
418 = :
おいw
419 = :
次の初心者さん、どうぞ
420 = :
トーナメント表なのに難しく考えすぎてないかね
421 = :
データの探索アルゴリズムと格納法の話がごっちゃになってないか
422 = :
トーナメント表をDBでやりたいってことはさ。
甲子園なんかで、決勝進出チームが、本大会、県大会で戦ったチームのうち
左ピッチャーからどのくらい打って何点差で勝てたかとか、
過去のデータを蓄積してデータ検索をサクっとやりたいわけでしょ。
高度な部類だと思うけど、違うのかな?
423 = :
>>421
ごっちゃっていうより表裏一体でしょ。
格納あっての探索。探索を考慮しての格納じゃなくて?
424 = 389 :
>>413
わざわざ丁寧に教えて頂きありがとうございました。
425 = :
もう全部ファイル書き出して検索はグーグル先生に頼れよ
427 = :
>>424
「教えて下さり」じゃないか?
428 = :
>>427
スレ違いの質問でしょうか?
確かに
教えて下さりありがとうございました
または
教えて頂きありがたくおもいます
が正確なのかも知れませんね
429 = :
>>388
完璧な回答、ありがとうございます!。プロパティの中にあったんですね!
430 = :
WEB上のテキストフィールドで入力した値を、HTMLの変数Cに格納したいのですが、
どうすれば良いのでしょうか・・・・?
431 = :
<form method="post">
<?php
$data = '';
$fieldName = 0;
do {
$data .= array_key_exists($fieldName, $_POST) ? $_POST[$fieldName] : "nodata";
echo "<input type=\"text\" name=\"{$fieldName}\" value=\"" . htmlspecialchars($data) . "\" />";
} while( $_POST && error_log("posted value is " . $fieldName++ . ":" . $data));
?>
</form>
432 = :
>>430
HTMLの変数ってなんですか?
433 = :
htmlはプログラミング言語です
434 = :
HTMLがあれば何でも出来る
436 = :
質問させて頂きたいのですが
PHPプログラムの中で連続してMySQLへデータを書き込みたい場合
どのように記述すれば良いのでしょうか?
例えば指定条件のデータを一度消去してから
改めて幾つかのデータを入れなおすなど
お分かりになる方よろしくお願いいたします
437 = :
消去するプログラムのあとに書き込むプログラムを書く
438 = :
関数の戻り値が配列の場合での質問なのですが
class hogehoge {
private $hoge = array("1", "2", "3");
public function getHoge(){
return $this->hoge;
}
}
$hogehoge = new hogehoge();
$hogehoge->getHoge()[1];
のように関数の戻り値の配列の要素を1行で取得はできないのでしょうか?
440 = :
syntax error, unexpected ';'で困ってるんですけど、
どこかおかしいです?
$this->smarty_obj->assign('date_trackbacks_url',spriunf(TEXT_TRACKBACKS_URL, htmlspecialchars(td_get_trackbacks_url(intval($HTTP_GET_VARS['products_id'])), ENT_QUOTES));
441 = :
括弧の数も数えられないなら、一行をそんなに長くするなw
442 = :
かっこの数
443 = :
>>438
構文解析周りが貧弱なので出来ません
array の代わりに ArrayObject を使い、俗に言うメソッドチェインでアクセスする、
またはプロパティ限定でよかったら __get マジックメソッドで代用できます
class Hoge {
private $hoge = array(1, 2, 3);
public function __get($name) {
return $this->$name;
}
}
$hoge = new Hoge();
echo $hoge->hoge[1];
444 = :
こんな感じね
class hogehoge {
private $hoge = array("1", "2", "3");
public function getHoge(){
return new ArrayObject($this->hoge);
}
}
$hogehoge = new hogehoge();
$ahoge->getHoge()->offsetGet(1);
// $ahoge[1]としてもアクセス可能
445 = :
>>444
動かないよw
446 = :
>>441-442
thx!解決しました。
447 = :
テーブル内に
フィールドが2つ japa, engl 行1 a, a 行2 i, b 行3 u, c 行4 e, d 行5 o, e
みたいに入っていたとして
$data = mysql_array(上のテーブルから情報)みたいにMySQLから取得したデータを配列に入れた場合には
フィールド名も含めてどのような形で配列に入っているのでしょうか?
さらにフィールドjapaを選択して頭からa, i, u, e, oと取り出すように
その配列の特定のフィールドだけを選択して次々にデータを取り出す方法は有るのでしょうか
どなたか教えていただけ無いでしょうか
448 = :
assign()内で、include出来ますか?
ググっても浅いところでは情報を拾えないみたいなので、
よろしくお願いします。
449 = :
>>447
普通は、行レベルでアクセスして順に取得する。
データベースアクセスの基本だから、基本的なサンプルはみんなそうなってる
しかし、工夫すれば、一気に取り出すことも不可能でないが、
内部的にはほとんど同じことなので、行レベルで処理した方が無難
>>448
できる
450 = :
>>449
ありがとうございます
それぞれのフィールドの値を別のところで使うので一度の方が良いと思いました
そうしますと
$japaData = mysql_fitch_array()
$englData = mysql_fitch_array()
みたいに2回に分けてデータを取得し2つに分けると良いという事でしょうか?
みんなの評価 :
類似してるかもしれないスレッド
- 【PHP】ID出さなくても質問OKなスレ【初心者歓迎】 (836) - [100%] - 2009/8/18 21:04 ○
- 【PHP】ID出さんでも質問OKなスレ【初心者歓迎】2 (1001) - [86%] - 2009/11/19 20:19 ○
- 【PHP】フレームワーク CakePHP 3ホール目【本命】 (1001) - [33%] - 2008/6/19 7:19 ○
- 【PHP】フレームワークについて語るスレ13【総合】 (985) - [31%] - 2009/9/23 3:04 ○
トップメニューへ / →のくす牧場書庫について