phpRS 2.8.x : phpRS Fórum
Toto fórum je určené výhradně k diskuzi o verzích phpRS v2.8.x.
phpRS - redakční a informační systém
PHP skript v bloku
Zaslán uživatelem/kou: Hubert (IP adresa zaznamenána)
Datum: 2009-11-10, 21:39

Prosím o radu, jak dostat php skript do bloku. Zkoušel jsem návod [http://www.phprs.net/magazin/view.php?cisloclanku=2005052203] , ale chová se to nějak divně. Skript má zobrazovat obrázek z jiného webu, ten zobrazí, ale hlavička bloku je až za obrázkem.
Vůbec netuším, zda tato úprava je vhodná i pro 281.
Je nějaké novější řešení? Protože je to jen ojedinělý případ, kdy potřebuju php do bloku, klidně uvítám i řešení, kde se upraví přímo zdrojový kód. Bohužel nevím, kde to udělat.
Díky za rady
H.

Re: PHP skript v bloku
Zaslán uživatelem/kou: zdenekh (IP adresa zaznamenána)
Datum: 2009-11-11, 08:58

Záleží na tom, čeho přesně chceš dosáhnout. Jde-li jen o jednoduché zobrazení obrázku z jiného webu, tak stačí prostý html kód <img ...>. Pokud se to třeba nějak střídá či je tam jiná vykutálenost, kdy je potřeba php kod, tak si to napiš jako plugin. Návod na to najdeš také na CW. Není to nijak složité, zde by se jednalo jen o přidání nového systémového bloku. Tak na to mrkni a uvidíš...

T. O. Severka Děčín | New r.č. | Old Good Tom | Jinak už v tom nefrčím... :-)

Re: PHP skript v bloku
Zaslán uživatelem/kou: pa3k (IP adresa zaznamenána)
Datum: 2009-11-11, 09:18

V prvom rade - php skript nemá v obsahu bloku čo hľadať. Nerob to. Povolením php v bloku si kleduješ o problémy a vážne bezpečnostné incidenty. Už to tu viackrát zaznelo, nebudem sa opakovať, každý, kto to použije si koleduje o škaredý hack.

Ak chceš svoj vlastný obsah generovaný v php dať do šablóny, použi značku a jej obsah naplň v lengine.php. Ak to chceš v bloku, sprav si plugin. [http://www.phprs.net/magazin/view.php?cisloclanku=2006051201]

Re: PHP skript v bloku
Zaslán uživatelem/kou: marty (IP adresa zaznamenána)
Datum: 2009-11-11, 20:33

presne tak... rovnez doporucuji si udelat plugin.

ICQ: 179653900
skype: marty_hranice
| www.hnfond.cz | | www.struhlovsko.cz | www.bxclub.com | www.r21club.com | www.palenice.net

Re: PHP skript v bloku
Zaslán uživatelem/kou: Hubert (IP adresa zaznamenána)
Datum: 2010-01-06, 11:14

Díky všem za radu. Udělal jsem si velmi jednoduchý plugin a ono to funguje. S návodem [http://www.phprs.net/magazin/view.php?cisloclanku=2006051201] to bylo opravdu jednuduché.
Jen mám ještě problém s kódováním. Na webu odkud tahám nejnovější obrázek s popisem je kódování UTF-8 a tam kde to zobrazuju ja win-1250.
Tak asi budu muset konečně přejít všude na UTF-8. Už o tom uvažuju dlouho, ale trochu se toho bojím.

Re: PHP skript v bloku
Zaslán uživatelem/kou: pa3k (IP adresa zaznamenána)
Datum: 2010-01-11, 15:17

V php veľmi dobre funguje konverzia kódovania pomocou iconv viď manuál: [http://sk.php.net/manual/en/function.iconv.php]

Re: PHP skript v bloku
Zaslán uživatelem/kou: Hubert (IP adresa zaznamenána)
Datum: 2010-01-18, 14:03

Tak jsem asi trochu jásal předčasně. Udělal jsem dle návodu plugin a opravdu se mi nejnovější obrázek zobrazuje jak má. Jen nějak "zmizel" blok phprs s pluginem.
Abych to vysvětlil. Nejnovější obrázek se zobrazí, ale chybí mu formátování css. Podíval jsem se na zdrojavý kód a zjistil jsem, že <div> který tvoří blok tam vůbec není, ani hlavička bloku ani samotný blok. Je tam prostě jen ten obrázek.
Řekl bych, že jsem něco v tvorbě bloku udělal špatně. Zkoušl jsem udělat plugin, kde bylo jen echo "a nějaký text" a chovalo se to stejně. Také tam chyběl onen <div> a byl tam je ten text a nic víc.

Prosím o radu
Díky

Re: PHP skript v bloku
Zaslán uživatelem/kou: marty (IP adresa zaznamenána)
Datum: 2010-01-18, 14:55

njn asi je to tim ze vypisujes echem.

uvedu priklad jak to mam ja v pluginu nove foto.

novefoto.php to je script co mi vypisuje úposledni fotky , zde ja nahled:



# phpRS Plug-in modul: nove foto 1.0 A
######################################################################

// [http://www.supersvet.cz/phprs/]
// This program is free software. - Toto je bezplatny a svobodny software.
// výpis posledních tří fotografií
######################################################################

// aktivace spojeni
if (!isset($GLOBALS["dbspojeni"])): $GLOBALS["dbspojeni"]=dbcon(); endif;

function NoveFoto()
{



$retezec=" testovaci echo vypisu ";



// zobrazeni menu
switch ($GLOBALS["vzhledwebu"]->AktBlokTyp()):
case 1: Blok1($GLOBALS["vzhledwebu"]->AktBlokNazev(),$retezec); break;
case 2: Blok2($GLOBALS["vzhledwebu"]->AktBlokNazev(),$retezec); break;
case 3: Blok3($GLOBALS["vzhledwebu"]->AktBlokNazev(),$retezec); break;
default: Blok1($GLOBALS["vzhledwebu"]->AktBlokNazev(),$retezec); break;
endswitch;
}
?>



mne v tomto pluginu se zobrazi to co je v promenne $retezec , cilize zadne echo ale $retezec.

snad z me ukazky to pochopis co ti chci vysvetlit...
ahoj

ICQ: 179653900
skype: marty_hranice
| www.hnfond.cz | | www.struhlovsko.cz | www.bxclub.com | www.r21club.com | www.palenice.net

Re: PHP skript v bloku
Zaslán uživatelem/kou: Hubert (IP adresa zaznamenána)
Datum: 2010-01-18, 15:18

To echo bylo jen pokus, zda to dělá i s jiným kódem. Ve vlastním pluginu není a vypadá takto:

<?
######################################################################
# phpRS Plug-in modul: RetroFoto - nejnovější obrázek
######################################################################


function RetroFoto()
{
@readfile('http://www.retrofoto.net/gallery2/main.php?g2_view=imageblock.External&g2_blocks=recentImage&g2_show=none');
}
?>

Re: PHP skript v bloku
Zaslán uživatelem/kou: zdenekh (IP adresa zaznamenána)
Datum: 2010-01-18, 15:31

Výstup z bloku je třeba předat příslušné funkci phpRS, která tomu pak přiřadí správné formátování dle zvoleného typu bloku, a to tak, že výstup z funkce naplníš do proměnné, která se pak ve zbytku kodu zpracuje. Viz. článek o tvorbě pluginu. Takže výsledek by měl vypadat nějak takto:

<?
######################################################################
# phpRS Plug-in modul: RetroFoto - nejnovější obrázek
######################################################################


function RetroFoto()
{
$obsahbloku=readfile('http://www.retrofoto.net/gallery2/main.php?g2_view=imageblock.External&g2_blocks=rece ntImage&g2_show=none'); 

switch ($GLOBALS["vzhledwebu"]->AktBlokTyp()):
 case 1:  Blok1($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
 case 2:  Blok2($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
 case 3:  Blok3($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
 case 4:  Blok4($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
 case 5:  Blok5($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
 default: Blok1($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
endswitch;

}
?>


T. O. Severka Děčín | New r.č. | Old Good Tom | Jinak už v tom nefrčím... :-)



Celkem upraveno 1×. Poslední úprava zdenekh v 18.01.2010 15:36.

Re: PHP skript v bloku
Zaslán uživatelem/kou: marty (IP adresa zaznamenána)
Datum: 2010-01-18, 15:50

zdenku, lepe bych tu napovedu nenapsal,... :-) mas jednicku *

ICQ: 179653900
skype: marty_hranice
| www.hnfond.cz | | www.struhlovsko.cz | www.bxclub.com | www.r21club.com | www.palenice.net

Re: PHP skript v bloku
Zaslán uživatelem/kou: Hubert (IP adresa zaznamenána)
Datum: 2010-01-18, 16:45

Díky za rychlou pomoc. Bohužel mi to nějak nefunguje. Styl už to má, ale zase se neobrazuje žádný obrázek. Popravdě tomu moc nerozumím a už nevím co vyzkoušet. Budu rád za každou pomoc.
Diky

Re: PHP skript v bloku
Zaslán uživatelem/kou: zdenekh (IP adresa zaznamenána)
Datum: 2010-01-18, 18:43

Jen jsem tak koukal do manuálu php, tak přes readfile asi nejde načítat do proměnné. Tahle funkce asi jen otevře, vypíše a nazdar. V tom manuálu jsem vykoukal jednu možnost a to nahradit funkci readfile za funkci file_get_contents (http://www.php.net/manual/en/function.file-get-contents.php), která načte soubor a narve ho do proměnné a pak by to snad mohlo fungovat. Nic nezaručuju, třeba to fungovat nebude. Nejsem nějakej borec přes php a tak trochu tu pálim od boku. Někdo lepší by poradil asi lépe ;-)

A to ještě koukám, to je tahání obrázku z Gallery2. Je tvou uvedený postup, jak ten obrázek získat, opravdu OK dle možností práce s tou galerií a jak k ní externě přistupovat? Není tam ještě nějaká jiná možnost?

T. O. Severka Děčín | New r.č. | Old Good Tom | Jinak už v tom nefrčím... :-)



Celkem upraveno 1×. Poslední úprava zdenekh v 18.01.2010 18:54.

Re: PHP skript v bloku
Zaslán uživatelem/kou: Hubert (IP adresa zaznamenána)
Datum: 2010-01-18, 19:57

Já doufám, že ten kód, kterým externě přistupuju ke Gallery2 je v pořádku. Mám ho přímo z admin rozhraní, kde je uveden. Jinak ho pužívám na webu, který neběží na phpRS (jen statické stránky s tímto kódem) a tam to funguje.

Ještě se zeptám, když použiju ten, kód a jen ho vložím do pluginu, tak to obrázek zobrazí a dokonce má i třídu. A kdybych mu nastavil nějaké formátování extra, bez bloku phpRS, bude to něčemu vadit? Není to sice elegatní řešení, ale asi bude fungovat.



Lituji, ale pouze registrovaní uživatelé mohou zasílat příspěvky do této sekce.
This forum powered by Phorum and designed by STaNBoSS.