Sziasztok!
Régebben elég gyakran alkalmaztam azt a technikát nagyobb adat-műveleteknél, hogy a Drupalt "bootstrap" állapotba hoztam, így elérhető volt a Drupal függvények többsége (a hook és smink-függvények nyilvánvalóan nem), és a php-cli (parancssoros PHP) segítségével el tudtam végezni a szükséges műveleteket a tárhelyemen.
Többek közt előnye ennek a megoldásnak, hogy a PHP nem fut ki a rendelkezésre álló időből, általában az ilyen futtatásnak nagyobb memória-korlátot is engedélyezek. Akkor is jó szolgálatot tett, ha valamiért egy parancssoros programban szükség volt a Drupal adatbáziskezelő-rétegére, és nem kellett azzal vesződni, hogy milyen módon kell a különféle típusú adatbázisokhoz kapcsolódni, és azokat használni.
A szkriptjeim így kezdődtek:
#!/usr/bin/php <?php include_once('includes/bootstrap.inc'); drupal_bootstrap(DRUPAL_BOOTSTRAP_DATABASE); ... ?>
Ez jól működött egészen mostanáig, de ahogy elnézem, Drupal 6 alatt már nem működik ez a megoldás, egyik sem produkál semmit. Találtam egy ilyent, de attól tartok, ez nem igazán az én problémámat oldja meg: http://drupal.org/node/59863
Tudna valaki segíteni esetleg?
most is működnie kéne
Nem az includenál van valami gubanc?
mire gondolsz pontosan?
Mire gondolsz pontosan? Ezt egy régi szkriptből másoltam ki, ami Drupal 6 alatt már nem működik.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
olyan nincs, hogy nem működik
valamit benéztél, működnie _kell_
kiabálj rá nagyot, hogy MUKODJ!
http://api.drupal.org/api/function/drupal_bootstrap/6
-
clear: both;
ezt ismerem
Ezt ismerem, mert használtam eleget régebben.
Most kipróbáltam, és ugyanaz a szkript, ami Drupal 5 alatt megy szépen, Drupal 6 alatt csak ennyi hibaüzenetet ad, és persze a feladatát nem végzi el:
Warning: Cannot modify header information - headers already sent by (output started at /var/www/teszt/drupal6/filedump.php:3) in /var/www/teszt/drupal6/includes/bootstrap.inc on line 297
Ugyanaz a szkript, ugyanaz a PHP verzió és beállítás, minden azonos.
Szerk: a hibaüzenetet a PHP interpreter és a nyitó PHP jel közti üres sor okozta, ha kitörlöm, akkor nincs hibaüzenet, viszont továbbra sem csinál semmit. Érdekes, hogy Drupal 5 alatt abból az üres sorból semmilyen probléma nem származott.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
üres sorok
Próbáld kiszedni a filedump.php-ből a php előtt és után az üres sorokat. Egyébként biztos, hogy működik, én is használom, bár én DRUPAL_BOOTSTRAP_FULL-lal.
próbálj egy full bootstrapet csinálni
az se megy?
valami elgépelés vagy hasonló gyász kell, hogy legyen, olyan nincs, hogy nem megy a bootstrap, gondold el, ha nem megy a bootstrap, hogyan áll fel a drupal? mennie _kell_!
-
clear: both;
nem azt mondtam
Nem azt mondtam, hogy nem működik a bootstrap, hanem hogy Drupal 6 alatt "cli" módban meg sem nyikkan. Nincs elgépelés (nem találtam), és ugyanez a szkript Drupal 5 alatt szépen muzsikál, ezért nem gondolom azt sem, hogy valami PHP beállítás lenne a probléma.
Természetesen FULL_BOOTSTRAP -pal is ugyanez a helyzet.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
fogalmam sincs, mi az, hogy cli mód
de egy "gyere-drupal.php" a gyökérben, a fenti kóddal, az nagyon szépen bootol, ahogy kell. úgyhogy a kutya a cliben van elásva, tuti.
-
clear: both;
parancsoros
Parancssoros (nem böngészőből futtatott) PHP, apt-get install php5-cli ;)
Azért nem gondolok alapvetően PHP hibára, mert régebbi Drupal verziók jól működik az egész. Átküldtem egy példaszkriptet, megnézed? :)
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
A php.ini-t megnezted minden
A php.ini-t megnezted minden oke benne?
A cli sajat php.ini-t hasznal.
---
http://drupalaton.hu
igen
Igen, mint fentebb elmondtam, ugyanazon a gépen, ugyanazon a PHP konfigurációval Drupal 5 alatt mindegyik jól működik.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés