Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Pomocy!
Mac
post 27.04.2002, 09:25:18
Post #1





Grupa: Zarejestrowani
Postów: 294
Pomógł: 0
Dołączył: 9.04.2002
Skąd: miejscowosc

Ostrzeżenie: (0%)
-----


Mam pytania:
1. Jak można zrobić (moze byc w php) program (skrypt), który pobierze (wejdzie) na strone sprawdzi w źródle czy jest tam okreslony znacznik (fragment tekstu).
2. Później całość (strone,jeden znacznik,drugi znacznik (bo skrypt powinien pobierac dwa znaczniki)) zapisze do pliku.

PS Nie wiem czy dość dobrze wytłumaczyłem o co mi chodzi, ale mam nadzieje, że rozumiecie.

Z góry dzięki.
Go to the top of the page
+Quote Post
Seth
post 27.04.2002, 12:48:39
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


Mozna by zastosowac funkcje fopen() i pobrac caly plik przez podanie sciezki jako http://... A potem wyszukac w pobranym tekscie dany string i jezeli zostanie znaleziony to zapisac text do pliku
Go to the top of the page
+Quote Post
kryr
post 27.04.2002, 18:28:55
Post #3





Grupa: Zarejestrowani
Postów: 268
Pomógł: 0
Dołączył: --
Skąd: kielce

Ostrzeżenie: (0%)
-----


Jezeli chcesz pobrac strone i zamienic literki a na o to powinienes zrobic to przez fopen()
Jezeli chodzi o uzywanie "szablonow" z layoutem strony, to mozliwosci jest wiecej ... mozna uzyc na przyklad funkcji XSLT.
Wiec co dokladnie chcesz zrobic?
Go to the top of the page
+Quote Post
Mac
post 28.04.2002, 17:32:30
Post #4





Grupa: Zarejestrowani
Postów: 294
Pomógł: 0
Dołączył: 9.04.2002
Skąd: miejscowosc

Ostrzeżenie: (0%)
-----


Chodzi mi oto żeby mieć taką prosta wyszukiwarke. Na stronie wpisywało by się adres swojej strony i naciskało zarejestruj i wtedy php by wchodziło (otwierało) plik (stronę) i pobierało <META NAME="Keywords" CONTENT="cos,tam,cos tam"> i <META NAME="Description" CONTENT="Jakis opis!"> i zapisywało do pliku (z którego by wyszukiwarka (skrypt wyszukujący) pobierał dane do wyszukiwania stron).
Z góry dzięki. smile.gif
Go to the top of the page
+Quote Post
Seth
post 28.04.2002, 19:41:00
Post #5





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


Do odczytywania meta znacznikow uzyj funkcji get_meta_tags ()
Wiecej informacji o funkcji pod adresem: pl.php.net/manual/pl/function.get-meta-tags.php
Go to the top of the page
+Quote Post
Mac
post 29.04.2002, 08:19:08
Post #6





Grupa: Zarejestrowani
Postów: 294
Pomógł: 0
Dołączył: 9.04.2002
Skąd: miejscowosc

Ostrzeżenie: (0%)
-----


Cytat
Do odczytywania meta znacznikow uzyj funkcji get_meta_tags ()
Wiecej informacji o funkcji pod adresem: pl.php.net/manual/pl/function.get-meta-tags.php

Dzięki poszukam (sprawdze :wink: )! smile.gif
Go to the top of the page
+Quote Post
Mac
post 29.04.2002, 08:23:49
Post #7





Grupa: Zarejestrowani
Postów: 294
Pomógł: 0
Dołączył: 9.04.2002
Skąd: miejscowosc

Ostrzeżenie: (0%)
-----


Sprawdziłem manuala i nie rozumiem jak ta funkcja (get_meta_tags()) działa. Mógłbyś mi podać jakiś przykład zastosowania(jakiś fragment kodu, który by pobierał z jakieś strony meta tag)? smile.gif
Z góry dzięki smile.gif
Go to the top of the page
+Quote Post
Seth
post 29.04.2002, 08:29:50
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 335
Pomógł: 6
Dołączył: 7.03.2002

Ostrzeżenie: (0%)
-----


Kod
Plik HTML:

...

<meta name="keywords" content="jakis text">

<meta name="author" content="jakis autor">

...



Skrypt php:

$meta_tags = get_meta_tags("jaksi_url/jakas_strona.html");

echo $meta_tags['keywords'];   // Wynik: jakis text

echo $meta_tags['author'];     // Wynik: jakis autor
Go to the top of the page
+Quote Post
Mac
post 29.04.2002, 08:31:29
Post #9





Grupa: Zarejestrowani
Postów: 294
Pomógł: 0
Dołączył: 9.04.2002
Skąd: miejscowosc

Ostrzeżenie: (0%)
-----


Cytat
Kod
Plik HTML:

...

<meta name="keywords" content="jakis text">

<meta name="author" content="jakis autor">

...



Skrypt php:

$meta_tags = get_meta_tags("jaksi_url/jakas_strona.html");

echo $meta_tags['keywords'];   // Wynik: jakis text

echo $meta_tags['author'];    // Wynik: jakis autor

WIELKIE DZIĘKI :!: :!: :!:
Go to the top of the page
+Quote Post
steru
post 30.04.2002, 01:24:48
Post #10





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: --
Skąd: Krakow

Ostrzeżenie: (0%)
-----


Cytat
Kod
Plik HTML:

...

<meta name="keywords" content="jakis text">

<meta name="author" content="jakis autor">

...



Skrypt php:

$meta_tags = get_meta_tags("jaksi_url/jakas_strona.html");

echo $meta_tags['keywords'];   // Wynik: jakis text

echo $meta_tags['author'];     // Wynik: jakis autor

wszystko niby fajnie, ale ta funkcja jest strasznie kulawa. Jezeli na stronie jest Keywords (z duzej litery) a w skrypcie dasz $meta_tags['keywords'] to qpa. odwrotnie oczywiscie tez
Keywords. keywords, KEYWORDS ,KeYwOrDs - nie wiadomo jak pacjent to napisze sad.gif
Go to the top of the page
+Quote Post
Mac
post 30.04.2002, 15:10:45
Post #11





Grupa: Zarejestrowani
Postów: 294
Pomógł: 0
Dołączył: 9.04.2002
Skąd: miejscowosc

Ostrzeżenie: (0%)
-----


Cytat
Cytat
Kod
Plik HTML:

...

<meta name="keywords" content="jakis text">

<meta name="author" content="jakis autor">

...



Skrypt php:

$meta_tags = get_meta_tags("jaksi_url/jakas_strona.html");

echo $meta_tags['keywords'];   // Wynik: jakis text

echo $meta_tags['author'];     // Wynik: jakis autor

wszystko niby fajnie, ale ta funkcja jest strasznie kulawa. Jezeli na stronie jest Keywords (z duzej litery) a w skrypcie dasz $meta_tags['keywords'] to qpa. odwrotnie oczywiscie tez
Keywords. keywords, KEYWORDS ,KeYwOrDs - nie wiadomo jak pacjent to napisze sad.gif

Też się o tym przekonałem (próbowałem nawet z if zrobić "zabezpieczenie" przed różnymi "rodzajami" keywords-ów) to "zabezpieczenie miało działać na zasadzie mniej więcej takiej:
Gdy zmienna przyjmujaca keywords-y była pusta to zmieniał get_meta_tags() z "keywords" na "Keywords" ale to nie działało. sad.gif Ale ustawiłem ostatecznie na "Keywords", bo mam wrażenie, że na "większości" :wink: stron jest "Keywords", a nie "keywords" (ale do końca nie wiem) smile.gif
Go to the top of the page
+Quote Post
castor
post 30.04.2002, 22:02:01
Post #12





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


Napisalem cosik, poniwez na wyrazeniach regularnych nie znam sie zabardzo wiec poszedlem inna droga :wink:

FUNKCJA WYCIAGAJACA Z META TAG name i content:

Kod
function wybierz_meta_tagi($adres){

    function wyczysc_tagi($arg){

        $arg=str_replace(""","",$arg);

        $arg=str_replace("=","",$arg);

        $arg=str_replace(">","",$arg);

        return $arg;

    }

    

    $meta_tags=array();

    $meta_tmp="";

    $fp=fopen($adres,"r");

    while($bf=fgets($fp,1024)){

      $bf=strtolower($bf);

      if(substr_count($bf,"meta")!=0){

         $meta_tmp.=chop($bf);

      }

    }

    fclose($fp);  

    $meta_tmp=split("<",$meta_tmp);

    for($i=0;$i<count($meta_tmp);$i++){

      if(eregi("name(.*) content(.*)", $meta_tmp[$i], $rgs)){

          $rgs[1]=wyczysc_tagi(str_replace(" ","",$rgs[1]));

          $rgs[2]=wyczysc_tagi($rgs[2]);

          $meta_tags[$rgs[1]]=$rgs[2];

      }

    }

    if(count($meta_tags)==0){

      $meta_tags=FALSE;  

    }  

    return $meta_tags;

}


funkcja zwraca tablice asocjacyjna jesli plik zawiera meta tagi a jesli nie to zwroci nam FALSE

meta tag musi zawierac name czyli tego tagu nie wezmie pod uwage:
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=iso-8859-2">

A tak mozemy to sprawdzic:
Kod
<?php

$tagi=wybierz_meta_tagi("http://ygreg.com/");





//----teraz zobaczymy co nam wydalo---/

if($tagi){

   foreach($tagi as $k => $v){

     echo "$k = $v <br>n";

   }

}else{

   echo "BRAK";

}



?>


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
castor
post 30.04.2002, 22:08:38
Post #13





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


ahhha i nie wazne czy tagi sa z malej czy z duzej czy nawet tak:
<MeTa NAME=author content=CASTOR>


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.08.2025 - 16:09