PHP code beviteli formában sem működik a PHP kód

nagyg.pa képe

Egy ideje a legegyszerűbb PHP kód sem működik, hiába adom meg ("root"-ként) egy új Oldal-t létrehozva a "PHP code" beviteli formát.

Adatok:
Drupal 5.1, MySQL 5.0.25, PHP 5.2.0, Apache 2.2.3 (Linux)
Modulok: Views, Spam, robot.txt, Captcha, Textimage, Token, Autolocale, Form
Fájlrendszer letöltési mód: privát

Beállítások -> Beviteli formáknál a PHP code résznél látszólag minden rendben, nem piszkáltam benne soha semmit.

Egy ideig működött bármilyen PHP kód, amit írtam. Pl. használtam a MySQL-ben saját (a Drupaltól független) adatbázisomból adattábláim SQL lekérdezésére. Teszteltem, hogyan lehet saját PHP kóddal SQL SELECT lekérdezéseket beépíteni, ami alapul veszi a user_profile-ban beállított egyik mező értékét (lásd itt: "Ki vagyok én?").

Aztán elkezdtem építgetni a portált (fórum, könyv, blog, spam szűrő, szavazás, menük, blokkok). És sehogy sem tudok rájönni mitől, de egyszer azt vettem észre, hogy már nem működik a PHP kódom. Kiírja szövegként, mintha csak filtered HTML lenne a beviteli forma. (De PHP code van megadva!)

Pl.:

<?php
global $user;
printf('<P$gt;Valami');
>

Ez jelenik meg az oldalon:
Valami'); ?>

nagyg.pa képe

A példa pontosabban:

printf('<P>Valami');

Elnézést...

A segítséget előre is köszönöm.

0
0
pp képe

A Drupálban a fordítás szerintem hibásan szűrőnek fordítja a szűrő csoportot (mivel az eredetiben is így van ;)) Ha bemész a "beviteli formák" beállításaihoz és a PHP szűrő beállításait nézed meg, akkor látni fogod, hogy mely szűrők vannak bekapcsolva. Kapcsolj ki mindent a php szűrőn kívül, mert gyanítom valami frankó modul betett egy olyan szűrőt, ami a nyitó php tagt kilövi. (persze ha a forrást látnám és nem az eredményt akkor okosabbakat is tudnék mondani ;))

pp

0
0
Nagy Gusztáv képe

Csak tippelek, de lehet, hogy a sorrendeb érdemes előre venni a PHP szűrőt. Akkor nem muszály kikapcsolni.

0
0

Nagy Gusztáv

nagyg.pa képe

Sorrendet nem tudok változtatni. Kikapcsoltam a modulokat, kikapcsoltam (pontosabban töröltem, "csak kikapcsolni" nem lehet) más beviteli formákat, nem hozott eredményt. Felvittem új, saját PHP beviteli formát , és töröltem a régit: nincs változás.

Az a baj, hogy határidős dolgot kellene vele csinálnom. Telepítsem újra az egészet? (Ha nincs más, az következik.) De akkor mi garantálja, hogy nem lesz másnap újból ilyen hiba???

0
0
Nagy Gusztáv képe

A beviteli formában szereplő szűrők sorrendjét újrarendezheted: admin/settings/filters/1/order
Itt szerintem a PHP szűrőnek az elsőnek kellene lennie.

0
0

Nagy Gusztáv

nagyg.pa képe

Kikapcsoltam (töröltem), de semmi.

Lehet, hogy nincs jelentősége, de megpróbáltam "Újrarendezni" a beviteli formát, és a következő hibaüzenetet kapom:
warning: Invalid argument supplied for foreach() in /srv/www/htdocs/modules/filter/filter.module on line 581.

Megnéztem az 581-ik sort a filter modulban. A következő ciklusnál akad el:

577 /**
578  * Process filter order configuration form submission.
579  */
580 function filter_admin_order_submit($form_id, $form_values) {
581   foreach ($form_values['weights'] as $id => $weight) {
582     list($module, $delta) = explode('/', $id);
583     db_query("UPDATE {filters} SET weight = %d WHERE format = %d AND module = '%s' AND delta = %d", $weight, $form_values['format'], $module, $delta);
584   }
585   drupal_set_message(t('The filter ordering has been saved.'));
586
587   cache_clear_all($form_values['format'] .':', 'cache_filter', TRUE);
588 }

Megnéztem a filter tábla tartalmát is (jelenleg két beviteli formám van: a PHP kód és a HTML):

"format","module","delta","weight"
"1","filter","3","0"
"1","filter","0","1"
"1","filter","2","2"

Valaki járt már ilyen mélységekben a Drupal bugyraiban?

0
0
Magus képe

Hali!

Nekem is dettó ugyan ez a problémám... hiába állítom a szűrőt be, nem lesz jobb a helyzet.
minden < jelet < -re átír, és nem tudok vele mit csinálni. 5.7-es drupal van feltéve.

Tud valaki segíteni? köszi!

0
0

- - - - -
Orseolo Magus
[email protected]

Nagy Gusztáv képe

vagy valami hasonló?

0
0

Nagy Gusztáv

Magus képe

nem volt, bár azóta már van.
A probléma azóta megoldódott, mert egy saját modul nodeapi fg-je cseszett el valamit de nagyon.

0
0

- - - - -
Orseolo Magus
[email protected]