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'); ?>
Pontosítok:
A példa pontosabban:
Elnézést...
A segítséget előre is köszönöm.
Nem szűrő, hanem szűrő csoport
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
Palócz István
https://palocz.hu | https://tanarurkerem.hu
Sorrend?
Csak tippelek, de lehet, hogy a sorrendeb érdemes előre venni a PHP szűrőt. Akkor nem muszály kikapcsolni.
Nagy Gusztáv
Sorrend - ???
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???
Talán nem volt egyértelmű
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.
Nagy Gusztáv
Csoport - kevés lehetőséggel
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:
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?
Dettó
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!
- - - - -
Orseolo Magus
[email protected]
Van fent FCKeditor,
vagy valami hasonló?
Nagy Gusztáv
FCK
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.
- - - - -
Orseolo Magus
[email protected]