Pokaż wyniki 1 do 10 z 14

Temat: file_get_contents [ bad request]

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Zarejestrowany
    Jan 2007
    Skąd
    somewhere in time
    Postów
    510

    Domyślnie file_get_contents [ bad request]

    hej, mam pytanie....dlaczego kiedy próbuję tą funkcją na dole pobrać metatagi z youtube.pl to dostaje error bad request blablabla failed to open stream blablabal
    mogłbym co prawda normalnie pobrać strone za pomocą surowego otwierania soketów i przesylania komunikatow do serwa ale mimo to chcialbym wiedziec dlaczego przy stronie pl.youtube.com/index.php nie dziala file_get_contents a na kazdej innej stronie dziala
    Kod php:
    <?php
    function show_meta_tags($a)
    {
        
        
    $file=file_get_contents($a);
        
        
    preg_match_all('#<link rel=\"Stylesheet\".*href=\"(?P<styl>[^\"]*)\"|<title>(?P<tytul>.*)</title>|<meta name=\"keywords\" content=\"(?P<keywords>.*)">|<meta name=\"description\" content=\"(?P<opis>.*)">#i',$file,$ar);
        foreach(
    $ar['styl'] as $value)
        {
            if(!empty(
    $value)){
            
    $styl.=$value.",";}
        }
        foreach(
    $ar['tytul'] as $value)
        {
            if(!empty(
    $value))
            {
            
    $tytul.=$value.",";}
        }
        foreach(
    $ar['keywords'] as $value)
        {
            if(!empty(
    $value))
            {    
                
    $keywords.=$value.",";
            }
        }
        foreach(
    $ar['opis'] as $value)
        {
            if(!empty(
    $value))
            {
                
    $opis.=$value.",";
            }
        }
        
    $out=array("styl"=>$styl,"tytul"=>$tytul,"slowa kluczowe"=>$keywords,"opis"=>$opis);
        return 
    $out;
    }
    print_r(show_meta_tags("http://pl.youtube.com/index.php"));

    ?>
    ten kod chyba bez znaczenia bo glownie chodzi mi wlasnie oto czemu jest bad request przy file_get_contents a kod to............moze komuś sie przyda

  2. Domyślnie

    Może coś źle robię ale mi to w ogóle nie działa
    www.lingubot.pl - projekt sztucznej inteligencji.

  3. #3
    Zarejestrowany
    Jan 2007
    Skąd
    somewhere in time
    Postów
    510

    Domyślnie

    przeciez oto mi wlasnie chodzi ze nie dziala
    wpisz sobie dam zamiast
    print_r(show_meta_tags("http://pl.youtube.com/index.php"));
    print_r(show_meta_tags("http://iron0088.yoyo.pl/index.php"));

  4. #4
    Zarejestrowany
    Sep 2007
    Skąd
    Tu
    Postów
    1,236

    Domyślnie

    moze masz allow_url_fopen = off
    http://gogulas.yoyo.pl/h.gif

  5. #5
    Zarejestrowany
    Sep 2007
    Skąd
    Tu
    Postów
    1,236

    Domyślnie

    a widziales jakei ch***we naglowki daje ta funkcja/skrypt/wrapper? :P

    Kod:
    [2008-04-23 20:44:35:700]
    GET /index.php HTTP/1.0
    Host: pl.youtube.com
    
    
    [2008-04-23 20:44:38:884]
    HTTP/1.1 400 Bad Request
    Date: Wed, 23 Apr 2008 18:43:47 GMT
    Server: Apache
    Expires: Tue, 27 Apr 1971 19:44:06 EST
    Cache-Control: no-cache
    Connection: close
    Content-Type: text/plain
    zrob na fsockopen(), niektore serwki wymagaja naglowka 'user agent'.

    to mi sie spodobalo: (?P<tytul>.*) nie widzialem ze tak mozna
    Ostatnio edytowane przez gogulas : 04-23-2008 - 19:57
    http://gogulas.yoyo.pl/h.gif

  6. #6

    Domyślnie

    zrób to na normalnych sockach.. będzie:
    1. szybciej
    2. łatwiej*
    3. czytelniej...

    OFFTOPIC: czy mi sie zdaje, czy "PHPowych napaleńców" przybywa ;>? dobrze dobrze! PHP rox!

Podobne wątki

  1. na luzie - bad idea...
    By eMCe in forum Off Topic
    Odpowiedzi: 4
    Autor: 04-29-2007, 22:18

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj