Autor Zpráva
cink
Profil
Ahoj, potřeboval bych robota, který prostě spustí jinou stránku. Dejme tomu, že www.server1.cz bude robot, který bude spouštět www.server2.com. Šlo by to nějak udělat?
CZechBoY
Profil
Ahoj,
lze použít curl v php
cink
Profil
Můžeš mi to nějak upřesnit, třeba nějaký kód?
CZechBoY
Profil
OK, dejme tomu že chci stáhnout titulní stránku google.com
<?php
$ch = curl_init(); // inicializace (zde může být jako volitelný parametr url
$ch = curl_setopt_array($ch, array(
  CURLOPT_URL                       => 'http://www.google.com/', // chci stáhnout tuto stránku
  CURLOPT_RETURNTRANSFER => true,   // curl_exec vrátí odpověď namísto přímého vypsání do stránky
));
$html = curl_exec($ch);  // spustit stáhnutí a vrátit výsledek do $html
curl_close($ch);   // ukončit curl

echo $html;
cink
Profil
proč stahování? Já to snad stahovat nepotřebuji. Akorát aby ta stránka byla navštívená.
CZechBoY
Profil
Tak potom si ten výsledek nikam ukládat nemusíš.
Místo $html = curl_exec($ch); použiješ jen curl_exec($ch);
cink
Profil
Přitom mi to hlásí:
Fatal error: Call to undefined function curl_init() in /3w/xf.cz/c/cink/neco.php on line 2
Kubo2
Profil
cink:
To bude najskôr dané tým, že webzdarma nepodporuje PHP rozšírenie cURL. Môžeš ale skúsiť použiť FSockOpen, to by ti s veľkou pravdepodobnosťou fungovať malo.
CZechBoY
Profil
Nebo přejdi na pořádnej hosting, kde není php4.
cink
Profil
Kubo2:
to FSockOpen, to stačí upravit nějak ([#4] CZechBoY)
<?php
$ch = curl_init(); // inicializace (zde může být jako volitelný parametr url
$ch = curl_setopt_array($ch, array(
  CURLOPT_URL                       => 'http://www.google.com/', // chci stáhnout tuto stránku
  CURLOPT_RETURNTRANSFER => true,   // curl_exec vrátí odpověď namísto přímého vypsání do stránky
));
$html = curl_exec($ch);  // spustit stáhnutí a vrátit výsledek do $html
curl_close($ch);   // ukončit curl
 
echo $html;
nebo to musí být celý jiný kód?
Kubo2
Profil
[#9] CZechBoY
Nemusí prechádzať na žiadny iný hosting, na WZ beží PHP 5.2.13.

cink:
Vydrž.


[#10] cink
Ak vieš pracovať v PHP so súbormi, sockety ti nebudú robiť problém.
Najjednoduchšie je to ukázať na HTTP požiadavke.
<?php
// vytvoríš sieťové spojenie
$socket = @fsockopen("www.google.com", 80);
if (!$socket) {
    // nepodarilo sa spojiť so serverom Googlu
    die("spojenie vypadlo");
}
// zoskladáš HTTP požiadavku
$httpReq = "GET / HTTP/1.1\n";
$httpReq .= "Host: www.google.com\n\n";
//pošleš požiadavku
fwrite($socket, $httpReq);
fclose($socket);
cink
Profil
Teď ti asi neřeknu, jak to funguje, protože mi pořád vypadává spojení, ale vypadá to, že tu stránku musíš zapnout, aby se spustil jiný server (www.google.com).
Já jsem se asi nevyjádřil přesně.
Potřebuji robota, takže to bude fungovat samo. Třeba každou minutu si virtuálně zobrazí stránku www.server2.com.
Na serveru bude počítadlo návštěvnosti a po hodině tam bude 60 navštívení (60 navštívení = 60 minut).
CZechBoY
Profil
Kubo2:
Tak přejít na hosting, kde je curl.
weroro
Profil
cink:
Potrebuješ hosting, ktorý podporuje cron.
Kubo2
Profil
cink:
Na serveru bude počítadlo návštěvnosti a po hodině tam bude 60 navštívení (60 navštívení = 60 minut).
Ty chceš podvádzať a umelo si zvyšovať návštevnosť?

já potřebuji robota, takže to bude fungovat samo
Skús použiť CRON, ale [#14] Potrebuješ hosting, ktorý podporuje cron.
cink
Profil
A jaký hosting zdarma to podporuje?
CRON neznám, potřeboval bych nějaký příklad.
Rfilip
Profil
Třeba endora, má v free verzi minimální prodlevu 5 minut.
Kubo2
Profil
cink:
CRON neznám, potřeboval bych nějaký příklad.
Viď. odkaz, čo som ti poslal aj v príspevku [#15].
cink
Profil
To jde i na stránky s absolutní cestou?

Rfilip:
Já jsem se ptal na verzi zdarma. Endora:
Registrace domény         199,- Kč
Webhosting                ZDARMA
Celková cena bez DPH      199,- Kč
Celková cena s DPH        241,- Kč



Promiňte, nekoukal jsem.
Doména třetího řádu(jako na webzdarma):
Registrace domény         ZDARMA
Webhosting                ZDARMA
Celková cena bez DPH      ZDARMA
Celková cena s DPH        ZDARMA

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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