我有以下MySQL表:
table_1
id | value_1 | value_2 | value_3
1 hehe haha stack
2 over flow me
3 123 abc hello
4 hi random php
5 html js css
如何从第3行中选择value_2,即" abc"?
像$rows[3]['value_2']
这是我尝试过的代码:
$sql=mysql_query("SELECT * FROM table_1 ORDER BY `table_1`.`id` ASC");
$rows=mysql_fetch_array($sql);
//And then I tried accessing it by "$rows[3]['value_2']" and $rows['value_2'][3]
我无法使用SELECT * FROM table_1 WHERE id='3'
,因为我需要访问多行(所有这些行)。我也不能使用WHILE循环,因为我需要代码中不同位置的值。
答案 0 :(得分:0)
mysql_fetch_array只返回与查询对应的行。正确使用mysql_fetch_array是这样的:
$sql=mysql_query("SELECT * FROM table_1 ORDER BY `table_1`.`id` ASC");
while ($row = mysql_fetch_array($sql)) {
printf("ID: %s value_2: %s", $row[0], $row[2]);
}
答案 1 :(得分:0)
找到答案。您现在可以按照自己的方式访问它们。
$sql=mysql_query("SELECT * FROM settings ORDER BY `settings`.`id` ASC");
$id=0;
while ($rows = mysql_fetch_array($sql)) {
$settings[$id]['value_1']=$rows['value_1'];
$settings[$id]['value_2']=$rows['value_2'];
$settings[$id]['value_3']=$rows['value_3'];
$id++;
}
echo $settings[5]['value_3'];
echo $settings[5]['value_1'];
echo $settings[4]['value_2'];
echo $settings[0]['value_3'];