2010-11-27 16 views
2

私はphpmyadminで作成したデータベーステーブルを持っています。テーブルの要素を配列で行ごとに格納する必要があります。私はedge_id,vertexAVertexBという3つの列を持っています。これらの3つの列の要素を配列に格納する必要があります。データテーブルの要素を配列に格納する

私はPHPのコマンドを知らない。私を助けてください。

+0

あなたの達成しようとしていることの完全な例を挙げてください。 mysqlの 'table'またはhtmlの'

'を意味しますか?そして、あなたは、DBのinotの内容をHTMLテーブルに入れたり、HTMLクエリの内容をhtmlテーブル構造に出力することについて話していますか? – prodigitalson

答えて

2

私は名前の私のテーブルの列 "vertexa" と "vertexb" を持って、私は ストア二つの別々の 配列内のcolumsにしたい...どのようにすることができますそれを行う??

最も簡単な方法は、次のようになります。PDOとそう

$db = new PDO('mysql:host=localhost;dbname=your_db_name;', $user, $password); 
$vertices_a = array(); 
$vertices_b = array(); 

foreach($db->query('SELECT * from your_table_name') as $row){ 
    $id = $row['edge_id']; 

    // add them to the proper array using the edge_id as the index - 
    // this assumes edge_id is unique 
    $vertices_a[$id] = $row['vertexa']; 
    $vertices_b[$id] $row['vertexb']; 
} 

$db = new PDO('mysql:host=localhost;dbname=your_db_name;', $user, $password); 

foreach($db->query('SELECT * from your_table_name') as $row){ 
    echo $row['edge_id']; 
    echo $row['vertexA']; 
    echo $row['vertexB']; 
} 

今、あなたはあなたがそれをエスケープする必要が入力されたデータを使用する必要がある場合。これを行う最善の方法は、パラメータがクエリにバインドされたときにエスケープ処理が処理されるため、準備済みの文を使用することです。

はまた、あなたがvertexA代わりvertex_aのようにアンダースコア区切りを使用するなどの大文字と小文字のカラム/テーブル名を使用するはずの

$db = new PDO('mysql:host=localhost;dbname=your_db_name;', $user, $password); 

// create a prepared statement 
$stmt = $db->prepare('SELECT * from your_table_name WHERE edge_id = ?'); 

// execute the statement binding the edge_id request parameter to the prepared query 
$stmt->execute(array($_GET['edge'])); 

// loop through the results  
while(false !== ($row = $stmt->fetch(PDO::FETCH_ASSOC))){ 
    echo $row['edge_id']; 
    echo $row['vertexA']; 
    echo $row['vertexB']; 
} 

...あなたはmysite.com/show-boundry.php?edge=5のようなGETリクエストから供給されたedge_idを使用したい例えばとしましょう。

+0

thnx天才。私はこれがうまくいくことを望みます。私が試してみましょう ! –

+0

私のテーブルに "vertexa"と "vertexb"という名前の列があり、2つの別々の配列に列を格納したいのですが...どうすればいいですか? –

+0

@prodigy:それはthanx bro ..の作品です! –

2

あなたは、データベースに接続するための最初の必要性:

$link = mysql_connect('localhost','username','password'); 
if (!$link) { 
    // Cannot connect 
} 
$ret = mysql_select_db('database-name', $link); 
if (!$ret) { 
    // Cannot select database 
} 

は、次に、あなたのクエリを実行する必要があります。

$ret = mysql_query('SELECT * FROM `table`;', $link); 
if (!$ret) { 
    // Query failed 
} 

その後、あなたは、単に各行のロード:

$data = array(); 
while ($row = mysql_fetch_assoc($ret)) { 
    $data[] = $row; 
} 

その後あなたのリクエスト結果を解放する必要があります

mysql_free_result($ret); 

そしてvoilà。

+0

mysql拡張を使用しないでください。 'PDO'または' mysqli' ...好ましくはPDOを使います。 – prodigitalson