Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
sonnys
Člen
Avatar
sonnys:26.5.2014 9:25

Ahoj
Lze nějak prostřednictvým PHP,Mysql udělat pokud vytvořím nějakou stránku,aby uměla načitat data ze stránek z netu?Např:Vytvořím stránku s fotbalovými utkáními,a chci aby se automaticky aktualizoval výsledek,až utkání skončí

 
Odpovědět
26.5.2014 9:25
Avatar
Odpovídá na sonnys
Martin Suchodol:26.5.2014 10:42

jistě slouží k tomu curl je to vlastně jednoduché musíš znát co kde je na webu ze kterého taháš data jelikož se ptáš na toto tak předpokládám že oop neznáš takže ti to napíšu takto

<?php
function curlGetContents($page)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_URL, $page);
    $result= curl_exec ($ch);
    curl_close ($ch);
    return $result;
}
?>

do proměnné $url (proměnou $page necháš na pokoji)dáš web ze kterého taháš a řeněme že chceš získat nějaké příspěvky (názvy tagů a jejich třídi zjistíš ve zdrojovém kódu webu ze kterého taháš)

<?php
function showData($url)
{
    $f = curlGetContents($url);
    $regular    = preg_match('~<decription>(.+?)<\/decription>~s', $f, $out);
    $regular    = preg_match('~<Date>(.+?)</Date>~s', $f, $out2);
    /* Zde do $my_data uložím data které poté vypisuji */
    $my_data = '<strong>decription: </strong>'.$out[1].'<br />';
    $my_data .= '<strong>Description: </strong>'.$out2[1].'<br />';
    $my_data = iconv("utf-8", "utf-8", $my_data);
    return $my_data;
}
?>

ale bacha na to curl musíš mít aktivní dostupné na linuxu většinou není v základu pokud instaluješ z repository ve windows to většinou problém není a pokud se ti kód nespustí tak většinou není curl jen povolené v php.ini to jen odkomentuješ (smažeš středník na začátku řádku) a hlavně si hlídej zdrojovou stránku jakmile pozmění kód tak musís na to reagovat jinak ti to přestane fungovat

proměnnou $url můžeš naplnit ve funkci showData nebo to pak udláš ve výpisu takto

<?php
$url = 'http://nějakýweb.cz';
echo showData($url);
?>

pak existuje ještě jedna možnot a to alow_url_fopen dříve to byla nebezpečná direktiva ale dnes už ne ale nepoužívam to tak se co se tohoto týče mrkni sem http://php.vrana.cz/…vne-curl.php

Editováno 26.5.2014 10:45
 
Nahoru Odpovědět
26.5.2014 10:42
Avatar
sonnys
Člen
Avatar
Odpovídá na Martin Suchodol
sonnys:26.5.2014 11:57

Dobře díky,moc jsi mi pomohl

 
Nahoru Odpovědět
26.5.2014 11:57
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.