Autor | Zpráva | ||
---|---|---|---|
TTTT Profil * |
#1 · Zasláno: 24. 10. 2010, 17:16:02
Zdravím,
chtěl bych se zeptat, jakými způsoby lze získat zdrojový kód stránky v jazyce PHP po zadání stránky do formuláře (typu text). Děkuji za odpověď. |
||
tiso Profil |
#2 · Zasláno: 24. 10. 2010, 17:24:29
TTTT: hacknúť server na ktorom tá stránka beží.
|
||
drvaca Profil |
#3 · Zasláno: 24. 10. 2010, 17:45:10 · Upravil/a: drvaca
Pokud myslíš cizích stránek - nijak.
Pokud myslíš vlastních stránek, soubor get.php . <form method="get" action="get.php"> Chci zobrazit zdrojový kód stránky <input type="text" name="stranka" value="<?php echo $stranka ?>">.php . <input type="submit" value="OK"></form> <br> <?php $stranka = $_GET["stranka"]; if ($stranka=="get") { echo "Kód stránky $stranka.php nelze zobrazit."; } elseif ($stranka=="") { echo "Zadejte název stránky. "; } elseif(file_exists("./".$stranka.".php")){ echo "<pre>"; echo nl2br(htmlspecialchars(file_get_contents("./".$stranka.".php"))); echo "</pre>"; } else { echo "Stránka $stranka.php nebyla na tomto webu nalezena."; } ?> |
||
TTTT Profil * |
#4 · Zasláno: 24. 10. 2010, 19:17:58
Omlouvám se, špatně jsem to napsal. Jak dostanu zdrojový kód - výpis HTML, případně kaskádových stylů (externě připojených, nebo interních), skriptem, který je napsán v jazyce PHP (oo), nikoliv jak zobrazím zdrojový kód programu. Omlouvám se ještě jednou a kladu dotaz znova.
Jde mi o to, že budeme ve škole zkoušet nějaký menší rank raiting, který bude ovlivňován textem, nadpisy, odkazy, apod. :-) Nejradši bych byl, kdyby bylo řešení v objektovým PHP. :-) |
||
Alphard Profil |
#5 · Zasláno: 24. 10. 2010, 19:27:05
Existuje několik funkcí pro načtení souboru (i vzdáleného), např. file_get_contents(). Tímto načtete zdroják hlavní stránky a parsování si vyberete odkazy na další stranky, které chcete načíst.
|
||
TTTT Profil * |
#6 · Zasláno: 24. 10. 2010, 19:32:06
a nějaké kompaktní, známé řešení?
|
||
panther Profil |
#7 · Zasláno: 24. 10. 2010, 19:37:19
TTTT:
co se ti na výše uvedené funkci nelíbí? |
||
AM_ Profil |
#8 · Zasláno: 24. 10. 2010, 20:24:55
TTTT:
„výpis HTML, případně kaskádových stylů (externě připojených, nebo interních), skriptem, který je napsán v jazyce PHP“ HTML je napsané v HTML, CSS je napsané v CSS. Jakým systémem tu stránku generuješ je úplně jedno, to je jako kdybys hledal program na otvírání souborů TXT napsaných v notepadu. Proto to tu zřejmě ostatní zmátlo. Zdroják natáhneš výše popsanou funkcí, pro jeho parsování použij nějaký HTML parser, PHP má jeden typu DOM vestavěný (http://php.net/manual/en/book.dom.php) |
||
TTTT Profil * |
#9 · Zasláno: 25. 10. 2010, 10:23:26
Problém je, že pomocí
$pageSource = file_get_contents('http://www.neco.cz/'); převedu všechny značky znovu do kódu, a proto mi prohlížeč vyhodí už vykreslené formuláře, tabulky, apod... místo zdrojového kódu, tudíž se entity nepřepíší... |
||
Webotikon Profil |
#10 · Zasláno: 25. 10. 2010, 10:26:52 · Upravil/a: Webotikon
TTTT:
„převedu všechny značky znovu do kódu, a proto mi prohlížeč vyhodí už vykreslené formuláře, tabulky, apod... místo zdrojového kódu, tudíž se entity nepřepíší...“ Použi funkciu htmlspecialchars. $pageSource = htmlspecialchars (file_get_contents ('http://www.neco.cz/')); |
||
__construct Profil |
#11 · Zasláno: 25. 10. 2010, 10:36:24
highlight_string(); |
||
TTTT Profil * |
#12 · Zasláno: 25. 10. 2010, 11:01:21
__construct:
použil jsem tvoje řešení, ovšem nevíš o nějaké knihovně, kde je již s tím spojený řešení v css? přeci jen je to pracné vše psát a určitě už to někde někdo udělal, rád bych totiž, aby syntaxe byla odlišena, stačí pouze HTML a CSS, protože nic jinýho vypisovat nebudu, děkuji |
||
__construct Profil |
#13 · Zasláno: 25. 10. 2010, 11:13:00
V tom prípade Ti stačí použiť nejaký javascriptový syntax highlighter, napr. ten ktorý sa používa na tejto diskusii - JUSH
|
||
Časová prodleva: 13 let
|
0