Autor Zpráva
niceworld
Profil *
ahoj mam problém mam skript který zjištuje informace o stránkách ale funguje to pouze s jednou když dám víc odkazů ta mi to hlásí chybu ve function že už je použitá tak se ptám jak se to dá udělat aby to fungovalo. Děkuji za radu
<?php
$text="test1 http://www.youtube.com/watch?v=BCKEEpegCEc test2";
$name="aa";

$text2=$text;
$text3=$text;
$text4=$text;
if(preg_match("[http://]", $text2) OR preg_match("[www.]", $text2)){
$text2=preg_replace("/((http:\/\/)|(www\.))([^ ]+[^,. ])/i", "<a title='Přejít na stránku' href=\"http://$3$4\" target=_blank>$2$3$4</a>", $text2);
echo"<span style='FONT-SIZE: 10pt;color:#000000'>$text2</span><br>";
$what="/((http:\/\/)|(www\.))([^ ]+[^,. ])/i";
preg_match_all($what, $text4, $text4);
foreach($text4[0] as $text4);
}
preg_match_all('#(http://www.youtube.com)?/(v/([-|~_0-9A-Za-z]+)|watch\?v\=([-|~_0-9A-Za-z]+)&?.*?)#i',$text3,$output);
foreach($output[4] AS $video_id){
echo"<table><tr><td valign=top>";
echo" <a onclick=zobrazSkryj('$video_id$name') href='#?s=$name'><table><tr><td style='background-image: url(http://i2.ytimg.com/vi/$video_id/1.jpg);'><img src='styles/play.png' title='Přehrát video'></td></tr></table></a>";
echo"</td><td><div id='$video_id$name' class='okno'>";
echo $embed_code='<object width="240" height="144"><param name="movie" value="http://www.youtube.com/v/'.$video_id.'&hl=en&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/'.$video_id.'&hl=en&fs=1&autoplay=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="240" height="144"></embed></object><br>';
echo"</div></td></tr></table>";
}

function curlGetContents($url_page)
{
$url_ch=curl_init();
curl_setopt($url_ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($url_ch,CURLOPT_URL,$url_page);
$url_result=curl_exec($url_ch);
curl_close($url_ch);
return $url_result;
}

function showData($url_show)
{        
$url_f=curlGetContents($url_show);
$url_regular=preg_match('~<title>(.+?)<\/title>~s',$url_f,$url_out);
$url_regular=preg_match('~<meta name="description" content="(.+?)" \/>~s',$url_f,$url_out2);
$url_my_data='<span style="color:#000000;FONT-SIZE: 10pt;">'.$url_out[1].'<span><br>';
$url_my1=$url_my_data .='<span style="FONT-SIZE: 7pt;color:#6e926d">'.$url_out2[1].'<span><br>';
$url_my3=$url_my_data=iconv("utf-8", "utf-8",$url_my_data);
return $url_my_data;
} 
$url_show=$text4;
echo showData($url_show); 



$text="test1 http://www.zive.cz test2";
$name="bb";

$text2=$text;
$text3=$text;
$text4=$text;
if(preg_match("[http://]", $text2) OR preg_match("[www.]", $text2)){
$text2=preg_replace("/((http:\/\/)|(www\.))([^ ]+[^,. ])/i", "<a title='Přejít na stránku' href=\"http://$3$4\" target=_blank>$2$3$4</a>", $text2);
echo"<span style='FONT-SIZE: 10pt;color:#000000'>$text2</span><br>";
$what="/((http:\/\/)|(www\.))([^ ]+[^,. ])/i";
preg_match_all($what, $text4, $text4);
foreach($text4[0] as $text4);
}
preg_match_all('#(http://www.youtube.com)?/(v/([-|~_0-9A-Za-z]+)|watch\?v\=([-|~_0-9A-Za-z]+)&?.*?)#i',$text3,$output);
foreach($output[4] AS $video_id){
echo"<table><tr><td valign=top>";
echo" <a onclick=zobrazSkryj('$video_id$name') href='#?s=$name'><table><tr><td style='background-image: url(http://i2.ytimg.com/vi/$video_id/1.jpg);'><img src='styles/play.png' title='Přehrát video'></td></tr></table></a>";
echo"</td><td><div id='$video_id$name' class='okno'>";
echo $embed_code='<object width="240" height="144"><param name="movie" value="http://www.youtube.com/v/'.$video_id.'&hl=en&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/'.$video_id.'&hl=en&fs=1&autoplay=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="240" height="144"></embed></object><br>';
echo"</div></td></tr></table>";
}

function curlGetContents($url_page)
{ 
$url_ch=curl_init();
curl_setopt($url_ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($url_ch,CURLOPT_URL,$url_page);
$url_result=curl_exec($url_ch);
curl_close($url_ch);
return $url_result;
}

function showData($url_show)
{        
$url_f=curlGetContents($url_show);
$url_regular=preg_match('~<title>(.+?)<\/title>~s',$url_f,$url_out);
$url_regular=preg_match('~<meta name="description" content="(.+?)" \/>~s',$url_f,$url_out2);
$url_my_data='<span style="color:#000000;FONT-SIZE: 10pt;">'.$url_out[1].'<span><br>';
$url_my1=$url_my_data .='<span style="FONT-SIZE: 7pt;color:#6e926d">'.$url_out2[1].'<span><br>';
$url_my3=$url_my_data=iconv("utf-8", "utf-8",$url_my_data);
return $url_my_data;
} 
$url_show=$text4;
echo showData($url_show); 
?>
niceworld
Profil *
function curlGetContents($url_page)
{
$url_ch=curl_init();
curl_setopt($url_ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($url_ch,CURLOPT_URL,$url_page);
$url_result=curl_exec($url_ch);
curl_close($url_ch);
return $url_result;
}

function showData($url_show)
{        
$url_f=curlGetContents($url_show);
$url_regular=preg_match('~<title>(.+?)<\/title>~s',$url_f,$url_out);
$url_regular=preg_match('~<meta name="description" content="(.+?)" \/>~s',$url_f,$url_out2);
$url_my_data='<span style="color:#000000;FONT-SIZE: 10pt;">'.$url_out[1].'<span><br>';
$url_my1=$url_my_data .='<span style="FONT-SIZE: 7pt;color:#6e926d">'.$url_out2[1].'<span><br>';
$url_my3=$url_my_data=iconv("utf-8", "utf-8",$url_my_data);
return $url_my_data;
} 
$url_show=$text4;
echo showData($url_show); 

tohle jsou ty funkce
Stano
Profil *
function nazov_funkcie($premenne) toto vytvára funkciu keď ju chceš zavolať tak už dávaš iba nazov_funkcie($premenna_ktoru_chcem)
Tori
Profil
niceworld:
A co kdybyste to udělal takhle: na začátek definice těch dvou funkcí. Pak pole, do kterého budete psát url adresy všech prověřovaných stránek. Pak cyklus (foreach), který tohle pole bude procházet a do něj dát řádky 5-22 a 44-45 z prvního výpisu.
niceworld
Profil *
Stano:
No výpis tam mam ale právě jak ten skript se opakuje tak to pak neveme protože ta proměnná je stejná. výpis je echo showData($url_show);
niceworld
Profil *
Tori:
to pole nevidim jako vhodné neboť mimo tohodle se tam vypisuje mnoho dalších věcí ke každému videu nebo odkazu jako jsou komentáře fotky uživatelů a hlavně každý příspěvek není video nebo odkaz.
Stano
Profil *
na 24 riadku definuješ function curlGetContents($url_page)
na 75 riadku zasa definuješ tú istú funkciu function curlGetContents($url_page)

v php je zakázané nazvať dve funkcie rovnako, funkcie sa nedajú predefinovať , a niesu case sensitive.

takže to máš zle ak chceš na 75 riadku zavolať funkcie tak tam daj len curlGetContents($url_page);
niceworld
Profil *
yes dík už to funguje ;) jsem prostě nepochopil jak ta funkce vlastně pracuje ted už by mi to mělo fungovat jak jsem koukal dík jak stano tak tori.

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: