Php db fetch数组drupal 7

Php db fetch数组drupal 7,php,mysql,drupal,drupal-7,Php,Mysql,Drupal,Drupal 7,我有一个从Drupal6迁移到7网站的问题。我是PHP和MySQL的初学者,我找不到解决问题的方法 我正在努力解决的代码如下: $sql = "select ID_Speler from TB_Spelers where uid = ".$id; $row = db_fetch_array(db_query($sql)); $speler = $row['ID_Speler']; 我总是得到一个“对未定义函数db\u fetch\u array()的调用” 非常感谢您的帮助。请尝试这样做:

我有一个从Drupal6迁移到7网站的问题。我是PHP和MySQL的初学者,我找不到解决问题的方法

我正在努力解决的代码如下:

$sql = "select ID_Speler from TB_Spelers where uid = ".$id;
$row = db_fetch_array(db_query($sql));
$speler = $row['ID_Speler'];
我总是得到一个“对未定义函数db\u fetch\u array()的调用”

非常感谢您的帮助。

请尝试这样做:

 $sql = "select ID_Speler from TB_Spelers where uid = %d";
 $query = db_query($sql, $id);
 while ($records = db_fetch_array($query)) {
   $spelers[] = $records['ID_Speler'];
 }
 print_r($spelers);

Drupal 7中没有
db\u fetch\u array()
,因此(几乎)等价的代码是

$sql = "select ID_Speler from TB_Spelers where uid = :uid";
$args = array(':uid' => $uid);
$row = db_query($sql, $args)->fetchObject();
$speler = $row->ID_Speler;
有关更多信息,请参阅。在Drupal 7中使用此选项:

$query = db_select('field_data_field_order_no', 'fdfon');
$query->addField('fdfon', 'entity_id', 'nid');
$query->addField('fdfnt', 'field_notification_type_value', 'type');
$query->join('field_data_field_notification_type', 'fdfnt', 'fdfon.entity_id = fdfnt.entity_id AND (fdfon.bundle = :fdfon_bundle AND fdfnt.bundle = :fdfnt_bundle)', array(':fdfon_bundle' => "order_notification_type", ':fdfnt_bundle' => "order_notification_type"));
$query->condition('fdfon.field_order_no_value', $order_id)->orderBy('fdfnt.entity_id', 'asc');

$result = $query->execute();

while ($records = $result->fetchAssoc()) {
    ...
}