drupal dbase

quick képe

Van egy kis problémám (drupal 6.13) dbase-el egy fáljt szeretnék megnyitni és feldolgozni!

a kód:
betoltes() {
$file_name = "sites/default/files/adat.dbf";
$db = dbase_open($file_name) or die("Nem nyitható meg a $file_name);
if ($db) {
$dbnum = dbase_numrecords($db);
dbase_close($db);
drupal_set_message($dbnum);
return $dbnum;
}else {return "hiba";}
}

lefut a kód , de üres lapot kapok és nem tér vissza a drupal oldalára, ha viszont a böngészőben az előző oldalra ugrást meg nyomom akkor megjelenik az összes rekord száma és visszatér a drupálba.

Drupal verzió: 
alippai képe

Ennél kicsit többet kéne leírnod a kódból, hogy lássuk mi a baj.

0
0

Lippai Ádám
young element

quick képe

A bibi az szerintem hogy a drupal adatbázisát elveszti. Próbáltam a db_set_active('default'); parancsot. De mihelyt megnyitja a dbase az "adat.dbf" fájlt, már nem talál vissza a hívó oldalra.
A többi kód a menü beállítás.

0
0
quick képe

Most már tudom hol a baj:
kód:

  $items['betoltes'] =  array(
    'title'                     => t('Betöltése'),
    'page callback'             => 'betoltese_page',
    'access arguments'          => array('access content'),
    'weight'                    => -48,
    'file'                      => 'betoltes.inc',
  );
 
 
betoltes.inc tartalma:
 
function betoltese_page() {
  $file_name = "sites/default/files/adat.dbf";
  $db = dbase_open($file_name, 0) or die("Nem nyitható meg a $file_name");
  $ret = dbase_vizsgal($file_name);
  print($ret);
  return $ret;
}
 
function dbase_vizsgal($f_name) {
  $db = @dbase_open($f_name, 0) or die("Nem nyitható meg a $f_name");
  if ($db) {
    $dbrnum = dbase_numrecords($db);
    dbase_close($db);
    return $dbrnum;
  }else {
    return "ma";}
}

hiba:
betoltese_page print kiküldi a számot ($dbrnum), de ha kiveszem akkor üres lap jelenik meg!
Tehát a ha kiveszem a betoltese_page-ből print($ret); sort akkor sem történik meg a return $ret; sor.

Valakinek van ötlete, hogy mi lehet a gond?

0
0
quick képe

function betoltese_page() {
  $file_name = "sites/default/files/adat.dbf";
  $db = dbase_open($file_name, 0) or die("Nem nyitható meg a $file_name");
  $ret = dbase_vizsgal($file_name);
  print($ret);
  return $ret;
}

$ret megkapja az értéket ennek ellenére a a return-nal nem tér vissza, olyan mintha hirtelen falsra változna a postolás.
Eleinte arra gondoltam, hogy a dbase kavar be de szépen kihozza a darabszámot.

Tudna valaki valami ötletet adni, merre induljak el.

0
0