アプリ版:「スタンプのみでお礼する」機能のリリースについて

id、氏名、年月日(date)、点数(tensu)の列を持つテーブルseiseki があります。
<?php
$conn_id = mysql_connect("localhost","root","*****") or die('Error connecting to MySQL');
mysql_select_db('******',$conn_id);

$query ="SELECT date,tensu from seiseki;
$result = mysql_query($query,$conn_id) or die($query.'failed('.mysql_error().')');

$date = array();
$tensu = array();

while($row = mysql_fetch_array($result)){
$date[] = $row['date'];
$tensu = $row['tensu'];
}
print_r($date); echo "<br/>\n";      ←15行目
print_r($tensu); echo "<br/>\n";      ←16行目
?>

これをブラウザで見ると、
Array ( [0] => 2009-05-01 [1] => 2009-06-07 [2] => 2009-07-24 ・・・・・・ )
Array ( [0] => 80 [1] => 75 [2] => 90 ・・・・・・・ )
となります。
15,16行目をコメントアウトして print_r($row[“date”],[“$tensu”]); とするとエラーになります。

array (array (2009-05-01, 80), array (2009-06-07, 75 ), array (2009-07-24 , 90)・・・・・・・ );
の形式でデータを取得するにはどのようにすれば良いでしょうか?

A 回答 (4件)

"日付,点数"と言う形式(書式)文字列になればいいのでしょうか。


Arrayをたくさん書かれているので、先の方法を提示したのですが、
欲しいものが、
Array("2009-05-01,80","2009-06-07,75","2009-07-24,90",...)
でしたら、
$rows[] = "$row['date'],$row['tensu']";
あるいは、
$rows[] = $row['date'].",".$row['tensu'];
となります。

それとも、[0]や[1]を表示したくないと言う事でしょうか。
それでしたら、正規表現を使って [n] をなくすような置換をすればいいのですが、
私が正規表現に詳しくないので、説明できません。
    • good
    • 0

いまいちなんか意味がわかないのですが・・・


たんに表示したいだけなら

$str="";
while($row = mysql_fetch_array($result)){
$str.=$str==""?"":",";
$str.="Array({$row['date']},{$row['tensu']})";
}
$str="Array({$str})";
print $str;


みたいなやり方でも
    • good
    • 0

単純にこうなるのではないでしょうか。



while($row = mysql_fetch_array($result)){
$rows[] = array($row['date'],$row['tensu']);
}
print_r($rows);

連想配列を使いたいのであればこう。
while($row = mysql_fetch_array($result)){
$rows[] = array("date"=>$row['date'],"tensu"=>$row['tensu']);
}
print_r($rows);
    • good
    • 0
この回答へのお礼

ありがとうございます。早速、上の方法
($rows[] = array($row['date'],$row['tensu']); の方法)
で試したところ、
Array ( [0] => Array ( [0] => 2009-05-01 [1] => 80 ) [1] => Array ( [0] => 2009-06-07 [1] => 75 ) [2] => Array ( [0] => 2009-07-24 [1] => 90 ) ) となってしまいます・・・・・。

Array(Array(2009-05-01,80), Array(2009-06-07,75 ) Array(2009-07-24, 90 )) としたいのですが・・・・。

お礼日時:2009/10/13 23:33

この手のデバッグ関数の場合、キーと値の組み合わせが重要なので


あまりご指示の形式で出力されるものはないですが
近しいものにvar_export()があります。
ちゃんとみるならvar_dump()なんでしょうけどね・・
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す