Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 5 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.11.11
Prihlásený: 28.03.21
Príspevky: 28
Témy: 10
Príspevok NapísalOffline : 17.11.2011 21:18

Zdravím, mám problém s týmto kódom
Kód:
function nahrada($m) {
  return $m[1] . htmlspecialchars($m[2], ENT_QUOTES, 'UTF-8', false) . $m[3]; 
}
preg_replace_callback('~(<pre>)(.*)(</pre>)~isU', 'nahrada', $text);

Tento kód má za úlohu prehodiť všetky HTML znaky na entity, no keď do premennej $text načítam súbor, v ktorom je napríklad toto
Kód:
preg_match_all("/<h2>(.*)<\/h2>/Us",$text,$nadpis, PREG_SET_ORDER);
echo "<h2>";
echo $nadpis[0][1];
echo "</h2>";
(Výpis h2jek zo súboru na výpis článkov)
Tak spracuje všetko po značku <h2>. Túto značku vyhodnotí, a potom už nič. Nevypíše obsah echa, ale vypíše mi celý kód ako ";echo $nadpis [0][1];echo... Viete mi poradiť aký je tu problém?


Offline

Čestný člen
Čestný člen
Problém s prevodom HTML na entity

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34
Bydlisko: Brno
Príspevok NapísalOffline : 17.11.2011 22:01

Ten tvoj horny kod nerobi to, co si mozno predstavujes - on na entity prevedie iba tie znaky, ktore su medzi <pre> a </pre>. Takze by bolo asi vhodne ujasnit si, co presne pozadujes, a ten kod, ktory chces v HTML interpretovat presne tak, ako je, dat bud do <pre> a podhodit tej funkcii, alebo upravit funkciu.
A dalsia vec, ty ocakavas, ze ten spodny kod sa ti bude vykonavat? Lebo tak nejak som to pochopil z tvojho "Nevypíše obsah echa".


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.11.11
Prihlásený: 28.03.21
Príspevky: 28
Témy: 10
Príspevok Napísal autor témyOffline : 18.11.2011 14:20

Viem, že sa to má prehadzovať len medzi značkami <pre>, a ten spodný kód má vybrať zo súboru $text obsah medzi tagmi <h2> a potom ho echom vypísať, a to aj robí, ak ho otvorím samostatne, no keď ho otvorím v tom hornom a následne celý vypíšem tak mi to najskôr ten horný kód odserie... Zjednodušene, keď otvorím celý súbor (z ktorého mám časť v druhom kóde) samostatne, tak robí čo má. No keď ho otvorím v nadradenom súbore (z ktorého je prvý kód), načítam ho do premennej, prebehnem cez ten prvý kód a vyechujem to čo mi výjde z preg_replace_callback tak to po spomínanej značke <h2> odchádza.

// pridané po 16 hodinách 7 minútach od posledného príspevku

Tak čo je s tým?


Offline

Čestný člen
Čestný člen
Problém s prevodom HTML na entity

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34
Bydlisko: Brno
Príspevok NapísalOffline : 18.11.2011 14:39

Nenahanaj nas, nikto tu nie je povinny odpovedat ti.
Mohol by si zaslat co najjednoduchsi, ale kompletny kod, ktory by sme len spustili a videli by sme, aky je vystup a aky konkretny vystup by si si miesto toho predstavoval? Nemozeme vediet, ci chybu nerobis niekde inde, a cim podrobnejsie sa svoju situaciu snazis popisat, tym viacej som domotany.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.11.11
Prihlásený: 28.03.21
Príspevky: 28
Témy: 10
Príspevok Napísal autor témyOffline : 19.11.2011 11:43

Prepáč, v hlavnom súbore (weby.php) mám to menenie HTML entít-
Kód:
if (!isset($_GET['clanok'])) {
$strankaa= "index"; }
else {$strankaa= $_GET['clanok'];}
$soubor= "weby/".$strankaa.".php" or ".html" ;
if (!file_exists($soubor)) {
$soubor= "nenaslo.php"; };

$vstup= file_get_contents($soubor);

function nahrada($m) {
  return $m[1] . htmlspecialchars($m[2], ENT_QUOTES, 'UTF-8', false) . $m[3]; 
}
$vypis = preg_replace_callback('~(<pre>)(.*)(</pre>)~isU', 'nahrada', $vstup);

echo $vypis;


Potom mám vo vypísanom súbore (premenná $subor- vstup $vypis- vystup toho HTML konvertovania) takýto kód:
Kód:
if (!isset($_GET['clanok'])) {
$stranka= "index"; }
else {$stranka= $_GET['clanok'];}
$subor= "weby/".$stranka.".php" or ".html" ;
if (!file_exists($subor)) {
$subor= "nenaslo.php"; };


$soubor="1"; // Základná hodnota

// OVEROVANIA

while (file_exists("weby/".$soubor.".php")) {  // $subor zväčšujem kým existuje
$vyber = $soubor; // načítam ho aj do $vyber
$soubor++;} // $subor zväčšujem kým existuje

while (file_exists("weby/".$vyber.".php")) {  // kým existuje $vyber

// VYBER SLOV

$text= file_get_contents("weby/".$vyber. ".php");  // otvorím momentálny súbor

preg_match_all("/<h2>(.*)<\/h2>/Us",$text,$nadpis, PREG_SET_ORDER);
echo "<h2>";
echo $nadpis[0][1];
echo "</h2>";

preg_match_all("/<small>(.*)<\/small>/Us",$text,$male, PREG_SET_ORDER);
echo "<small>";
echo $male[0][1];
echo "</small>";

preg_match_all("/<p>(.*)<\/p>/Us",$text,$obsah, PREG_SET_ORDER);
echo "<p>";

$slov = 40; // počet slov ve zkráceném článku...
$text_out = explode(" ", $obsah[0][1]); // spočítání slov podle mezer
   
for($y=0; $y < $slov; $y++) {  // cyklus pro zobrazení zadaného počtu slov   



// VYPIS
if (isset($text_out[$y])) {
echo $text_out[$y]." "; } ; // Výpis zkráceného článku
}
echo "...</p>";

echo "<a href='?str=weby&clanok=" .$vyber. "' class='citaj'>";
echo "(Čítaj viac)";
echo "</a>";
echo "<br><br>";

// ETC.
$vyber--; // Zmenšujem číslo súboru a beží to znova
}

Prepáčte, za tú fúru kódu, ale vážne netuším, čo môže z toho byť najdôležitejšie :/ K tomu čo to robí a to čo to má robiť. Hlavný súbor (weby.php) má zmeniť všetky HTML znaky na entity (medzi značkami <pre>) a do tohto súboru vkladám súbor index.php, ktorý mi vypisuje články (prvých 40 slov). Tento súbor index.php funguje samostatne, ale ak ho vložím do hlavného súboru weby.php a tam mám tú funkciu na zmenu HTML značiek tak mi to vysype von iba kód, tzn. nespracuje ho, len ho prosto vypíše celý na výstup. Toto mi vypisuje až po značke <h2> v prvom preg_replace_callback(). Prakticky mi to spracuje HTML značky, ale zvyšok kódu nie, takže sa mi žiadne kúsky článkov nezobrazia, akurát tak kódy ktoré ich majú vytiahnúť. Snáď ste pochopili aspoň niečo.

// pridané po 1 hodine 36 minútach od posledného príspevku

Vie niekto prečo to hapruje?


Odpovedať na tému [ Príspevkov: 5 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie. HTML entity a SEO

v Internetový marketing, SEO, reklama

22

1022

10.11.2011 23:39

shaggy Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Problém s prevodom AND na NAND

v Ostatné

2

334

25.10.2014 16:30

EmeriX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. cannot generate system identifier for general entity

v HTML, XHTML, XML, CSS

8

569

29.04.2008 20:41

Tominator Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. platba prevodom do Nemecka

v Obchody, reklamácie a právo

5

925

09.12.2010 18:36

Xaltotun Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. assembler pomoc s prevodom

v Assembler, C, C++, Pascal, Java

2

692

27.03.2010 19:10

blw90 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. assembler uloha pomoc s prevodom...

v Assembler, C, C++, Pascal, Java

1

604

28.03.2009 17:39

bbeni Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako mam zaplatit fakturu , prevodom na ucet

v Obchody, reklamácie a právo

17

4094

15.11.2010 18:28

walther Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. HTML problém

v Delphi, Visual Basic

0

873

08.08.2008 21:20

hackerwoody Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. PROBLÉM HTML frame

v HTML, XHTML, XML, CSS

6

582

01.06.2011 15:51

mrPavolM Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. html validacia problem

v HTML, XHTML, XML, CSS

17

1344

19.12.2006 16:27

itsgoingd Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Problem v HTML

v HTML, XHTML, XML, CSS

3

1153

04.06.2006 11:02

shaggy Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. html,css problém

v HTML, XHTML, XML, CSS

6

1891

07.03.2019 17:00

weroro Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. html,css - opacity problem

v HTML, XHTML, XML, CSS

4

355

30.10.2019 20:53

OnO Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. problem s vloženim do html

v PHP, ASP

2

378

02.08.2009 12:58

dartanan Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Problem s konverziou BBCode na HTML tagy

v PHP, ASP

0

341

28.06.2010 21:11

newboy1 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. mam problem neviem vkladat text do odkazov HTML

v HTML, XHTML, XML, CSS

7

1177

10.03.2006 18:43

Intelman Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra