Autor Zpráva
Werner
Profil
Sháním skript, který vrátí obrázek s s-rankem. Cena dohodou.
kontakt: grimmich@seznam.cz
armin
Profil
http://srank.armin.sk/ - cena dohodou :) Pokud chces, tak mi napis, kontakt na me na webu, prip. zde v profilu.
prosim
Profil *
Prodám za 100 Kč nebo vyměním za nějaký script co ještě nemám, radu nebo něco podobného!

prosim@seznam.cz
Gekon
Profil
Kdybys uměl hledat, tak ho za minutu máš zadarmo:)
armin
Profil
Gekon: psst :) Na lidske blbosti se preci vydelava :D
Peca
Profil
armin
Dobré vědět, že hostingová společnost vydělává na lidské blbosti. Dobrá reklama :-)
armin
Profil
Peca: tak jak jinak mam oznacit cloveka poptavajici neco, co je primo zde v tomto foru detailne rozebrano, hezky pripraveno k downloadu? :)
djlj
Profil
http://www.webkitchen.cz/lab/srank/
Werner
Profil
Díky, hledal jsem a myslel jsem si, že hledat umím, zřejmě neumím ;-)
Werner
Profil
Akorát mi ten skript na http://www.webkitchen.cz/lab/srank/ nechce běžet... Může to být problém nastavení serveru, když zavolám funkci getRank(), tak:

Warning: domdocument() expects at least 1 parameter, 0 given
Fatal error: Call to undefined function: loadxml()
DJ Miky
Profil
Werner
Asi bude opravdu chyba v nastavení. Překopíroval jsem si to a funguje to bez problémů.
Werner
Profil
Možná, že to špatně používám - deklaruji tu funkci a pak ji použiju např.:

getRank(www.seznam.cz);

Je to divné něběží mi to na C4, Active24, Českým hostingu ani WebZdarma
Dero
Profil
getRank("www.seznam.cz");
Werner
Profil
Hmm stejně mi to neběží ;-)
Werner
Profil
Cannot instantiate non-existent class: domdocument
MartinHujer
Profil
getRank("http://www.seznam.cz"); ?
Werner
Profil
Ne, připadám si jako blázen:
<?php
function getRank($url) {
...
...
}
getRank("http://www.seznam.cz");
?>

Na tom není nic špatného?
MartinHujer
Profil
Funguje to naprosto bez problémů:
http://tmp.hujer.org/srank.php?url=http://www.jakpsatweb.cz
bukaj
Profil
co to vypisuje? vrací to -1? popřípadě je na těch server nainstalované rozšíření DOM?
Werner
Profil
Vypisuje jenom Cannot instantiate non-existent class: domdocument in /usr/local/apache/.....
DOM je údajně nainstalované http://www.webhosting-c4.cz/php5info
armin
Profil
jako nic proti, ale tady ty vase dotazy jsou fakt famozni. Samo sebou ze se kazdy povazujete za profi webmastry, ale neprijde vam divne, ze fce getRank () vraci vysledek pres return()? To pak klobouk dolu. Pro lidi tezce IN prikladam src:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
<meta name="generator" content="PSPad editor, [url=http://www.pspad.com">
]www.pspad.com">
[/url]
<title>Zjistovani S-RANKu</title>
</head>
<body>
<form action="." method="post">
<label for="url">URL:</label>
<input id="url" name="url" value="<? echo htmlspecialchars($_POST['url']); ?>" size="40" />
<input type="submit" value="Zjisti S-Rank" />
</form>
<?
if ($_POST['url']) {
$_POST['url']=str_replace("www.","http://www.",str_replace("http://htt p://","http://",$_POST['url']));
if (getRank($_POST['url'])==-1) {
echo 'Chybne zadana url';
} else {
echo getRank($_POST['url']).'/100';
}
}
?>
</body>
</html>

<?php
/**
* @author jakub@webkitchen.cz
* @param string $url
* @return int S-Rank | -1 on error
*/
function getRank($url) {
$postData = '<?xml version="1.0" encoding="UTF-8"?>' .
'<methodCall>' .
'<methodName>getRank</methodName>' .
'<params>' .
'<param>' .
'<value>' .
'<string>0</string>' .
'</value>' .
'</param>' .
'<param>' .
'<value>' .
'<string>' . htmlspecialchars($url) . '</string>' .
'</value>' .
'</param>' .
'<param>' .
'<value>' .
'<i4>0</i4>' .
'</value>' .
'</param>' .
'</params>' .
'</methodCall>';
$header = "POST /RPC2 HTTP/1.1
";
$header .= "Host: srank.seznam.cz
";
$header .= "Content-Type: text/xml
";
$header .= "Content-Length: " . strlen($postData) . "
";
$header .= "Connection: Close

";
$errNo = $errStr = '';
$socket = fsockopen('srank.seznam.cz', 80, $errNo, $errStr, 10);
if (!$socket) {
return -1;
}
fwrite($socket, $header . $postData);
$response = '';
while (!feof($socket)) {
$response .= fgets($socket, 128);
}
$response = preg_replace('/^(.+
)+
/', '', $response);
$doc = new DOMDocument;
if (!$doc->loadXml($response)) {
return -1;
}
$xpath = new DOMXPath($doc);
$result = $xpath->evaluate('string(//member[name = "rank"]/value)');
if (!is_numeric($result)) {
return -1;
}
$rank = round((int)$result * 100 / 255);
return $rank;
}
?>

// edit:
u te vnorene fce str_replace to ma byt bez mezery, 2x po sobe to http://, nejspis zdejsi parser to rozseknul
bukaj
Profil
to je hezké, že to tam tak ochotně píší, ale co skutečné phpinfo()?

jinak mě to na na localhostu i venku také funguje bez problémů...
Werner
Profil
Hmm, tak problém byl v PHP verzi, je třeba PHP5, já měl všude PHP4. Díky všem za ochotu
DJ Miky
Profil
armin
A ty se zase považuješ za profi programátora, ale to, že ta funkce vrací hodnotu přes return, neznamená, že to bude vyhazovat chybu na chybnou třídu.
Přece když napíšu příkaz:
getRank("http://www.seznam.cz");
Tak to nebude vracet chybu, jen to nic nevypíše.
Než tady začneš mít takovéto nejapné kecy, tak si zjisti něco o tom, jak to v PHP funguje. Takže asi tak.
Dero
Profil
armin: Nechápu, co jsi nám chtěl sdělit.
Oswald
Profil
armin opravdu mi nepřijde moc pěkné, že jsi ten můj script zkopíroval, dal ho na svůj web, odstranil copyright a ještě ho zde nabízíš nabízíš k prodeji...

Werner nemáš DOM, zkus tuhle verzi, která to z toho XML dostává pomocí regexpu (moc jsem to netestoval):

http://www.webkitchen.cz/lab/srank/srank-regexp.phps
djlj
Profil
neprijde vam divne, ze fce getRank () vraci vysledek pres return()? To pak klobouk dolu.
Za to tys snědl všechnu moudrost světa…

Pro lidi tezce IN prikladam src
Tak to asi píšeš sám pro sebe :)
armin
Profil
Oswald: poprosil bych o omluvu, nakolik nic z toho co pises neni pravda:
1) tvuj skript jsem nikomu neprodal
2) kdyz se bojis o sve skripty, nevystavuj je
3) copyright jsem neodstranil
4) jeste jednou: skript jsem neprodal, copyright jsem neodstranil pokud to neni videt, vlozil jsem prispevek s KOMPLETNIM KODEM VCETNE info v poznamce o autorovi
5) nevim odkud jsi, ale prodej skriptu se nedela tak, ze "autor" vlozi jeho obsah na forum (vcetne kopirajtu originalniho autora) a pak chce po nekom penize

// edit
6) nebo jak myslis odstraneni kopirajtu? Ve tvem php kodu jsem zadny zasah nedelal, pridal jsem akorat doplnovani http kdyz nekdo zada do formulare [url=http://www.neco.cz
]www.neco.cz
[/url]

Dero: Chtel jsem rict to, ze jsem vlozil kod vcetne formulare do ktereho napsat nazev stranky zvladne snad kazdy. Protoze divat se jak nekdo vola getRank, nebo getRank(www.neco.cz), tak... dal jsem necetl co kdo psal ze proc to nejede. Samo sebou ze alespon v soucasnosti povazuji PHP5 za standard. Nebo se pletu a i Vy doma frcite na windows 95 a windows 98?
Toto téma je uzamčeno. Odpověď nelze zaslat.