Autor Zpráva
TTTT
Profil *
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
TTTT: hacknúť server na ktorom tá stránka beží.
drvaca
Profil
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 *
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
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 *
a nějaké kompaktní, známé řešení?
panther
Profil
TTTT:
co se ti na výše uvedené funkci nelíbí?
AM_
Profil
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 *
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
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
highlight_string();
TTTT
Profil *
__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
V tom prípade Ti stačí použiť nejaký javascriptový syntax highlighter, napr. ten ktorý sa používa na tejto diskusii - JUSH

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0