Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

3 Stron V   1 2 3 >  
Reply to this topicStart new topic
> [PHP]pobranie za pomoca 'getElementsByTagName'
shtoc
post
Post #1





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


Czy za pomoca takiego wyrazenia :

  1. <?php
  2. $dane = $DOM->getElementsByTagName('user_vid_list');
  3. ?>


dam rade wyciagnac ze strony rzeczy kryjace sie wewnatrz user_vid_list??

ewentualnie jak to wywolac zeby dalo efekt
bo echo $dane; nie dziala

Ten post edytował shtoc 2.12.2008, 13:29:01
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




1) Czy $DOM jest prawidlowym obiektem DOM xml, ktorego przeszukujesz?
2) "echo $dane; nie dziala " to ci co najwyzej wyswietli slowo OBJECT.
getElementsByTagName zwraca obiekt DOMNodeList i musisz po nim przeiterowac by dobrac sie do jego elementow
Go to the top of the page
+Quote Post
shtoc
post
Post #3





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


  1. <?php
  2. foreach ($DOM->getElementsByTagName('meta') as $meta)
  3.        {
  4.            if(strtolower($meta->getAttribute('name'))  == 'description')
  5.            {
  6.                $description = $meta->getAttribute('content');
  7.              
  8.                echo "[ DESC ] $description\n";
  9.                
  10.            }
  11.        }
  12. ?>

Tu mam takie fragmencik kodu ($DOM = new DOMDocument()(IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) i on mi wyciaga ze strony z meta tagów informacje na temat descryption.
A ja potrzebuje wyciagnac informacje z body strony www.
Jak przejsc do :
...
<div id="content">
<div id="user_files">
<div id="user_video" class="zakladka type1">
<div id="user_vid_list">
<ul class="row spis type1">
<li id="user_vid_id_wgzAZMnaN9v">
<div class="file_mini_user">
<div class="thumbnail"> <div class="title"></div> <div class="more"></div> <div class="author"></div> <div class="tags"></div>
zeby wyciagnac informacje na temat tych rzeczy?


Ten post edytował shtoc 2.12.2008, 13:30:09
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




przeciez user_vid_list to ID a nie nazwa znacznika. No patrz troche co piszesz i czego uzywasz

Musisz pobrac wszystkie divy i sprawdzic, ktory ma Twoje ID.
Go to the top of the page
+Quote Post
shtoc
post
Post #5





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


Cytat(nospor @ 1.12.2008, 14:58:54 ) *
Musisz pobrac wszystkie divy


tzn? za pomoca czego to zrobic??
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




hmmm....no nie wiem......
Zastanawiasz sie choc troche nad funkcjami, ktorych uzywasz?
getElementsByTagName('div')
Go to the top of the page
+Quote Post
shtoc
post
Post #7





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


Cos takiego??
  1. <?php
  2. foreach ($DOM->getElementsByTagName('div') as $div)
  3.    {
  4.        if(strtolower($div->getAttribute('id'))  == 'wrzuta')
  5.            {
  6.                $wrzuta = $div->getAttribute('wrzuta');
  7.  
  8.                echo $wrzuta;
  9.  
  10.            }
  11.    }
  12. ?>

ale to chyba nie dokonca tak?? :/

z tym ze atrybut to musi byc juz chyba wyrazenie class??

Ten post edytował shtoc 2.12.2008, 13:30:37
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
ale to chyba nie dokonca tak?? :/

A no nie tak, gdyz na poczatku mowiles cos o user_vid_list a teraz dopierasz sie do wrzuta (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Kod ogolnie wyglada ok. Wyswietl sobie bez warunku pobrane divy i zobaczysz co pobrales. Czy takie proste sprawdzenie co sie ma to tez trzeba tlumaczyc?
Go to the top of the page
+Quote Post
shtoc
post
Post #9





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


zaraz bede dalej kombinowal bo mnie nie bylo!!

ale ogolnie o to chodzi zeby dobrac sie do poszczegolnych filmikow na wrzuta.pl

i tam w kodzie strony tworzy sie takie spore drzewo od poczatku <div id="main"> do <div class="file_mini_user"> w ktorym zawarte sa <div class="title"> itp. i chodzi o wyciagniecie wlasnie informacji z tych div class.

przy probie wywolania pobranego diva

$a=$DOM->getElementsByTagName('div');

echo $a;

dostaje takiego błenda :

Catchable fatal error
: Object of class DOMNodeList could not be converted to string in C:\Program Files\WebServ\httpd\nauka.php on line 16

to moze jeszcze raz bardziej sensownie.
ponizej zaklaczylem screen z kodem strony i chialbym wyciagnac z niej informacje z div class= file_mini_user ( title more author tags)

(IMG:http://fotoo.pl/hosting-zdjec/img/b62af68ea4b9bda96c8d272b27574888/scr.JPG)


i mam cos takiego napisane ale to nie dziala.

CODE
$adres = 'http://www.wrzuta.pl/filmy/najnowsze/';
$url = curl_init($adres);
curl_setopt($url, CURLOPT_USERAGENT, 'holmes/3.10.1 (OnetSzukaj/5.0; +http://szukaj.onet.pl)');
curl_setopt($url, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($url, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($url, CURLOPT_HEADER, 0);
$strona=curl_exec($url);
#curl_close($url);

$DOM = new DOMDocument();
@$DOM->LoadHTML(iconv("ISO-8859-2","UTF-8",$strona));

foreach ($DOM->getElementsByTagName('div') as $div)
{
if(strtolower($div->getAttribute('id')) == 'file_mini_user')
{
$user = $div->getAttribute('title');

echo $user;

}
}
?>



ktos moze mi powiedziec co jest nie tak (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
czy chociaz trop jest dobry??

Ten post edytował shtoc 2.12.2008, 12:56:58
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




przeciez file_mini_user to class a nie id .... normalnie brak slow.... mysl troche chlopie bo normalnie marnujesz swoj i nasz czas...

  1. <?php
  2. foreach ($DOM->getElementsByTagName('div') as $div)
  3. {
  4.    if(strtolower($div->getAttribute('class')) == 'file_mini_user')
  5.    {
  6.  
  7.        foreach ($div->getElementsByTagName('div') as $div2){
  8.            if (strtolower($div2->getAttribute('class')) == 'title')
  9.                echo 'Twoj div to $div2 i rob z nim co chcesz';
  10.        }
  11.    }
  12. }
  13. ?>
Go to the top of the page
+Quote Post
shtoc
post
Post #11





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


no spoko juz kumam jest tylko jedna sprawa nie mozna wypisac z objektu dom za pomoca echo.
ktos mi powiedzial ze mozna to zrobic za pomoca nodevalue lub nodetext. ale w manualu nie ma takich fujnkcji.
Go to the top of the page
+Quote Post
nospor
post
Post #12





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




  1. <?php
  2. echo $div2->nodeValue;
  3. ?>
Go to the top of the page
+Quote Post
mike
post
Post #13





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(shtoc @ 2.12.2008, 10:02:18 ) *
ale w manualu nie ma takich fujnkcji.
Bo to nie funkcja (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Klasa DOMElement dziedziczy po DOMNode, która posiada publiczne właściwości typu nodeName, nodeValue, nodeType, ...
Go to the top of the page
+Quote Post
shtoc
post
Post #14





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


ok fajnie smiga z tym ze wyswietlaja mi sie informacje na temat wszystkich 16 filmikow.
i chcialbym to zapakowac w tablice ale nie moge
  1. <?php
  2. foreach ($tablica as $div5)
  3.   {
  4.   echo $div5->nodeValues;
  5.   }
  6. ?>

co jest nie tak??

Ten post edytował shtoc 2.12.2008, 13:31:21
Go to the top of the page
+Quote Post
nospor
post
Post #15





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




przeciez ty tu ni do tablicy nie pakujesz
  1. <?php
  2. $tablica= array();
  3. foreach ($DOM->getElementsByTagName('div') as $div)
  4. {
  5.   if(strtolower($div->getAttribute('class')) == 'file_mini_user')
  6.   {
  7.  
  8.       foreach ($div->getElementsByTagName('div') as $div2){
  9.           if (strtolower($div2->getAttribute('class')) == 'title')
  10.               $tablica[] = $div2->nodeValue;
  11.       }
  12.   }
  13. }
  14. print_r($tablica);
  15. ?>
Go to the top of the page
+Quote Post
shtoc
post
Post #16





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


to w sumie mam taki kod :

  1. <?php
  2. $adres = 'http://www.wrzuta.pl/filmy/najnowsze/';
  3. $url = curl_init($adres);
  4. curl_setopt($url, CURLOPT_USERAGENT, 'holmes/3.10.1 (OnetSzukaj/5.0; +http://szukaj.onet.pl)');
  5. curl_setopt($url, CURLOPT_RETURNTRANSFER, 1);
  6. curl_setopt($url, CURLOPT_CONNECTTIMEOUT, 5);
  7. curl_setopt($url, CURLOPT_HEADER, 0);
  8. $strona=curl_exec($url);
  9. #curl_close($url);
  10.  
  11. $DOM = new DOMDocument();
  12. @$DOM->LoadHTML(iconv("ISO-8859-2","UTF-8",$strona));
  13.  
  14. $tablica= array();
  15.  
  16. foreach ($DOM->getElementsByTagName('div') as $div)
  17. {
  18.   if(strtolower($div->getAttribute('class')) == 'file_mini_user')
  19.   {
  20.       foreach ($div->getElementsByTagName('div') as $div2)
  21.       {
  22.           if (strtolower($div2->getAttribute('class')) == 'title')
  23.  
  24.             foreach ($div->getElementsByTagName('div') as $div3 )
  25.             {
  26.                 if (strtolower($div3->getAttribute('class')) == 'author')
  27.                      
  28.                       foreach ($div->getElementsByTagName('div') as $div4 )
  29.                       {
  30.                        if (strtolower($div4->getAttribute('class')) == 'more')
  31.                        
  32.                                     foreach ($div->getElementsByTagName('div') as $div5 )
  33.                                     {
  34.                                       if (strtolower($div5->getAttribute('class')) == 'tags')
  35.  
  36.                                      $tablica[] = $div5->nodeValue;
  37.                                        
  38.                                        
  39.                       }
  40.             }
  41.       }
  42. }
  43. }
  44.  
  45. }
  46. #print_r($tablica);
  47. for($i=0;$i<16;$i++)
  48. {
  49. echo 'TAB ['.$i.']'.$tablica[$i].'
  50. ';
  51. }
  52. ?>

ktory mi wyswietla w zaleznosci od podania diva informacje wszystkie o plikach albo odpowiednie.

a czy jest mozliwosc po urzyciu diva ktory wyswietla tytulrozmiarczasautoraslowakluczowe jako jeden rekord wyciagnac z niego poszczegolne informacje??
czy trzeba to robic tak jak mowilem za pomoca zmiany diva??

Ten post edytował shtoc 2.12.2008, 13:31:45
Go to the top of the page
+Quote Post
mike
post
Post #17





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Proszę poprawić wszystkie swoje posty i umieścić kody źródłowe w odpowiednich znacznikach bbCode!
Go to the top of the page
+Quote Post
nospor
post
Post #18





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Zacznij uzywac wkoncu BBCODE!!

  1. <?php
  2. $tablica = array();
  3. $i = 0;
  4. foreach ($DOM->getElementsByTagName('div') as $div)
  5. {
  6.    if(strtolower($div->getAttribute('class')) == 'file_mini_user')
  7.    {
  8.  
  9.        $tablica[$i] = array();
  10.        foreach ($div->getElementsByTagName('div') as $div2){
  11.            $class = strtolower($div2->getAttribute('class'));
  12.            if (!empty($class))
  13.                $tablica[$i][$class] = $div2->nodeValue;
  14.        }
  15.        $i++;
  16.    }
  17. }
  18. print_r($tablica);
  19. ?>

Włóż to troche myslenia (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
shtoc
post
Post #19





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


z tym ze nie dokonca wiem jak tego urzyc?? ;p

wstaw : CODEBOX?? to nie dokonca wyglada tak jak Twoje.

jest jeszcze taki przycisk PHP ale nie dziala albo nie wiem jak go do konca uzyc??
sry za to!!
Go to the top of the page
+Quote Post
mike
post
Post #20





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(shtoc @ 2.12.2008, 12:58:42 ) *
z tym ze nie dokonca wiem jak tego urzyc?? ;p
To jak się dowiesz to otworzę wątek.

Otwieram.

P.S.
Jakby co to w tryb edycji wchodzi się za pomocą (IMG:http://forum.php.pl/style_images/1/p_edit.gif)
Go to the top of the page
+Quote Post
shtoc
post
Post #21





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


dobra wszystko fajnie jest!!

zabieram sie za jakis tutorial o PDO co by wyslac teraz to do bazy danych (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

No wiec (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)
probuje sie łączyć z baza za pomoca

  1. <?php
  2. try
  3.   {
  4.    $pdo = new PDO('mysql:host=localhost;dbname=nazwa bazy', 'admin', 'haslo');
  5.      echo 'Połączenie nawiązane!';
  6.         }
  7.        catch(PDOException $e)
  8.         {
  9.      echo 'Połączenie nie mogło zostać utworzone: ' . $e->getMessage();
  10. ?>


i dostaje blad :
Połšczenie nie mogło zostać utworzone: could not find driver
dlaczego??
Go to the top of the page
+Quote Post
nospor
post
Post #22





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




a masz mysql zainstalowanego? i liby mysql dla php?
Go to the top of the page
+Quote Post
mike
post
Post #23





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(shtoc @ 2.12.2008, 15:31:47 ) *
i dostaje blad :
Połšczenie nie mogło zostać utworzone: could not find driver
dlaczego??
A szukałeś odpowiedzi? Nie. A masz obowiązek zanim zapytasz!
Go to the top of the page
+Quote Post
shtoc
post
Post #24





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


posiadam
- webserver 2.0
- Apache 2.2.6
- PHP 5.2.5
- MySQL 5.0.45


odp zaraz poszukam!!

Pogrzebalem i znalazlem taka odp na posta podobnego do mojego :

"Could not find driver" - nie można znależć sterownika. Nie chodzi o to, że on nie działa tylko nie masz go zainstalowanego.
A może łączysz się przez pdo?

Skorzystaj z PERL/PECL.



CODE
perl install pdo
perl install pdo_mysql


nie jest tam napiane ze to na 100% to!!
ale jesli tak to jak tego urzyc?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
albo czy moze odznaczyc jakies fragmenty w php.ini?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

czy chodzilo o odblokowanie tego??

extension=php_pdf.dll
extension=php_pdo.dll
extension=php_pdo_firebird.dll
extension=php_pdo_ibm.dll
extension=php_pdo_informix.dll
extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
extension=php_pdo_oci.dll
extension=php_pdo_oci8.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
extension=php_pdo_sqlite_external.dll

nie dlao to rezultatow (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Ten post edytował shtoc 2.12.2008, 16:27:58
Go to the top of the page
+Quote Post
mike
post
Post #25





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Po każdej zmianie konfiguracji PHP musisz zrestartować serwer, na którym to PHP działa.
Zrobiłeś to?
Go to the top of the page
+Quote Post
shtoc
post
Post #26





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


:/ nie ale juz robie!!

a czyli dobrze tylko nie bylo restarta (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) tera dziala!! (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

z tym ze mi jakies bledy z dll wyskakuja przy uruchamianiu serwera :/
Go to the top of the page
+Quote Post
mike
post
Post #27





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Hmm, "jakieś" błedy mówisz...
Myślę że rowiązaniem będzie ... "coś".
Go to the top of the page
+Quote Post
shtoc
post
Post #28





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


no wiec tak serwer sie uruchamia ale podczas uruchamiania wydkakuje blad wynikajacy z braku plikow dll:
- gds32.dll
- DB2CLI.dll
- ICLIT09B.dll
- ntwdblib.dll
- OCI.dll
- sqlite.dll

powtarza sie to 2 krotnie. i jest info jeszcze ze ponowna instalacja moze naprawic ten blad!
poszukac plikow na google i wrzucic do programu??
Go to the top of the page
+Quote Post
mike
post
Post #29





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


A korzystasz z tych rozszerzeń? One często wymagają dodatkowych bibliotek ale wątpię, że to Cię powinno dotyczyć bo Ty nie potrzebujesz tych bibliotek.
Ciebie dotyczy tylko extension=php_pdo_mysql.dll.
Go to the top of the page
+Quote Post
shtoc
post
Post #30





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


faktycznie masz racje wylaczenie i pozostawienie tylko tej jednej naprawilo wszystko i polaczenie dalej dziala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

dziekuje

Witam ponownie.
Dodaje do skryptu taki kod laczacy sie z baza i zapisujacy w niej rekordy.
Tylko dlaczego on zapisuje mi $tablica[1] jako ciag liter a nie zapisuje tego co miesci sie pod zmienna?? (przed zmienna tablica jest \ ' ) jak to rozdziele to nie widac \ a jak dam razem to mam &#)
  1. <?php
  2. try
  3.        {
  4.                $pdo = new PDO('mysql:host=localhost;dbname=wrzuta', 'admin', 'haslo);
  5.                $pdo -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  6.  
  7.                $ilosc = $pdo -> exec('INSERT INTO `filmy` (`info`)   VALUES(
  8.                          ' $tablica[1]')');
  9.  
  10.                if($ilosc > 0)
  11.                {
  12.                        echo 'Dodano: '.$ilosc.' rekordow';
  13.                }
  14.                else
  15.                {
  16.                        echo 'Wystąpił błąd podczas dodawania rekordów!';
  17.                }
  18.        }
  19.        catch(PDOException $e)
  20.        {
  21.                echo 'Wystąpił błąd biblioteki PDO: ' . $e->getMessage();
  22.        }
  23. ?>
Go to the top of the page
+Quote Post
mike
post
Post #31





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


A teraz czytamy podstawy: stringi.
Po tej lekturze znamy różnicę pomiędzy ' a " (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
shtoc
post
Post #32





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


  1. <?php
  2. $ilosc = $pdo -> exec('INSERT INTO `filmy` (`info`)   VALUES  \"$tablica[1]\" ');
  3. ?>


moim zdaniem powinno byc cos takiego. ujecie zmiennej w " " ale nie dziala
Go to the top of the page
+Quote Post
nospor
post
Post #33





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




  1. <?php
  2. $ilosc = $pdo -> exec("INSERT INTO `filmy` (`info`)   VALUES  ('$tablica[1]') ");
  3. ?>

Ale jak juz korzystasz z PDO, to moze zainteresuj sie bindowaniem
Go to the top of the page
+Quote Post
mike
post
Post #34





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Nie. $tablica[1] nadal tak naprawdę jest w apostrofach.
Masz do wyboru:
  1. <?php
  2.  
  3. $ilosc = $pdo -> exec('INSERT INTO `filmy` (`info`)   VALUES  ' . $tablica[1]);
  4. $ilosc = $pdo -> exec("INSERT INTO `filmy` (`info`)   VALUES  {$tablica[1]}");
  5.  
  6. ?>
Go to the top of the page
+Quote Post
nospor
post
Post #35





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




@mike ale generujesz nadal niepoprawne skladniowo zapytania:
http://dev.mysql.com/doc/refman/5.0/en/insert.html

niechwaląc się, jam zapodał w poprzednim poscie poprawne skladniowo zapytanie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
mike
post
Post #36





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(nospor @ 3.12.2008, 11:25:19 ) *
niechwaląc się, jam zapodał w poprzednim poscie poprawne skladniowo zapytanie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Ale marne z punktu widzenia estetyki kodu (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
  1. <?
  2.  
  3. $ilosc = $pdo -> exec("INSERT INTO `filmy` (`info`) VALUES ('" . $tablica[1] . "')");
  4. $ilosc = $pdo -> exec("INSERT INTO `filmy` (`info`) VALUES ('{$tablica[1]}')");
  5.  
  6. ?>
Go to the top of the page
+Quote Post
nospor
post
Post #37





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




tak samo marne jak twoj kod:
$ilosc = $pdo -> exec("INSERT INTO `filmy` (`info`) VALUES ('{$tablica[1]}')");
Moj bez {} jest tak samo poprawny jak twoj (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) . Ale to nie miejsce na takie klotnie.
Podsumowując: niechwalac sie, jam pierwszy podal dobrze (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

@shtoc NIe dawaj kazdemu postowi pomogl
Go to the top of the page
+Quote Post
shtoc
post
Post #38





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


Mam wiec opisy!! Przydaly by sie filmiki na serwerze.

znalazlem na formu kod do sciagania zdjec

  1. <?PHP
  2. $fContents = file_get_contents("http://c.wrzuta.pl/wi4667/c405e0de002c64f2492da921/e4gy7nbd?type=i&key=jjsRXHUPyb&ft=f");
  3. $plik=fopen("C:Program FilesWebServhttpdbbb.jpg","w");
  4. fwrite($plik,$fContents);
  5. ?>


i kod zapisuje fotke z podanego linku.

sprobowalem z filmem ale jest poroblem ze znlezieniem linku zeby pobrac taki film ale pogrzebalem w kodzie strony i znalazlem ze w linku

  1. http://bartusors.wrzuta.pl/wrzuta.swf?file_key=A4Zymk7aeO&file=http://bartusors.wrzuta.pl/vid/file/A4Zymk7aeO/salto_do_basenu&stream=1&tt=Salto%20do%20basenu%20&img=http://c8.wrzuta.pl/wm19809/7d047eaa0004d66d493665a2/Salto%20do%20basenu%20


mozna wyciagnac fragment zaczynajacy sie od file= czyli :

  1. http://bartusors.wrzuta.pl/vid/file/A4Zymk7aeO/salto_do_basenu&stream=1&tt=Salto%20do%20basenu%20&img=http://c8.wrzuta.pl/wm19809/7d047eaa0004d66d493665a2/Salto%20do%20basenu%20


i wrzucajac go do kodu zaczyna nam go sciagac!!

ale napotkalem na 2 bledy tzn.
1. Fatal error: Maximum execution time of 30 seconds exceeded in C:\Program Files\WebServ\httpd\xxxx.php on line 2
2. Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 8126464 bytes) in C:\Program Files\WebServ\httpd\xxxx.php on line 2

jak pierwszy rozumiem ze jest za krotki czas to w 2 cos jest nie tak z pamiecia??
jak mozna sie tego pozbyc??
i jak wyciagnac dany fragment linku z calego linku??
Go to the top of the page
+Quote Post
skowron-line
post
Post #39





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


  1. <?php
  2. ini_set('memory_limit', '400M');
  3. ?>
Go to the top of the page
+Quote Post
shtoc
post
Post #40





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


a jeszcze czegos zapomnialem (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)

jak zapisuje pliki to z jakim rozszerzeniem?? bo dalem dla przykladu aaa.avi to nie moge tego otworzyc!!

  1. <?PHP
  2. ini_set('memory_limit', '400M');
  3. $fContents = file_get_contents("http://max1906.wrzuta.pl/vid/file/juDDuDplxb/mov00001&stream=1&tt=MOV00001&img=http://c6.wrzuta.pl/wm6859/52fbe8ca0004c53c49366b9e/MOV00001");
  4. $plik=fopen("C:Program FilesWebServhttpdbbb.avi","w");
  5. fwrite($plik,$fContents);
  6. ?>


dzial sciage teraz cale filmiki! ale dalej nie wiem jakie rozszerzenie??

ok mam rozszerzenie .flv

a mam jeszcze takie pytanie
czy jest jakies polecenie ktore zamieni fragment ciagu na inny podany przezemnie??

bo jest strstr ale to wyszukuje dany fragment

Ten post edytował shtoc 3.12.2008, 13:52:31
Go to the top of the page
+Quote Post
mike
post
Post #41





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(shtoc @ 3.12.2008, 15:49:53 ) *
czy jest jakies polecenie ktore zamieni fragment ciagu na inny podany przezemnie??
str_replace() + ostrzeżenie
Go to the top of the page
+Quote Post
shtoc
post
Post #42





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


wczoraj pisalem z kolega skrypt i u niego smiga a ja dostaje u siebie bład :

Fatal error: Call to a member function fetch() on a non-object in C:\Program Files\WebServ\httpd\pobieranie3.php on line 8

(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
mike
post
Post #43





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


A może podasz kod jaki napisaliście? Skąd mamy wiedzieć co za bazdury masz napisanie?
Go to the top of the page
+Quote Post
shtoc
post
Post #44





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


ja ma takie pytanie jak za pomoca DOM wyciagnac link do strony z kodu :

  1. <div class="row link"><h4><label for="link_do_pliku">Link do pliku:</label></h4><input class="text" type="text" value="http://www.wrzuta.pl/film/9d0sF1wDwq/" readonly="readonly" onclick="select(this);" id="link_do_pliku" />


bo nie wiem jak sie tam dostac??
podobno jak jest to bardziej skomplikowane??
Go to the top of the page
+Quote Post
skowron-line
post
Post #45





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Kod
var link = document.getElementsByClassName( 'text' );
alert( link[0].value ); // jezeli jest to pierwszy element bo link jest tablica wszystkich elementow ktorry ma klase text


* sorki myslalem ze JS

Ten post edytował skowron-line 8.12.2008, 12:54:27
Go to the top of the page
+Quote Post
shtoc
post
Post #46





Grupa: Zarejestrowani
Postów: 128
Pomógł: 0
Dołączył: 18.11.2008
Skąd: Polska

Ostrzeżenie: (10%)
X----


a moge dostac poprawny zapis tego??

CODE
var link = document.getElementsByClassName( 'text' );
alert( link[0].value ); // jezeli jest to pierwszy element bo link jest tablica wszystkich elementow ktorry ma klase text


bo ja swoje wyciaganie innych elementow robie tak
  1. <?php
  2. foreach ($DOM->getElementsByTagName('meta') as $meta)
  3. {
  4.    $tag = $meta->getAttribute('name');
  5.    if($tag == 'keywords')
  6.    {
  7.        $tagi = $meta->getAttribute('content');
  8.    }
  9. }
  10. ?>


a po wklejeniu tamtego to mam jedno wielkie podkresnlenie na czerowo (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

jeszcze jedno pytanie!!

  1. <?php
  2.  
  3. $pdo = new PDO('mysql:host=localhost;dbname=wrzuta', 'admin', 'xxx'); #połączenie z baza danych
  4. $pdo -> query ('SET NAMES utf8');
  5. #$sql = "select * from videos where title is null limit 1"; # pobranie 1 filmiku z bazy
  6. #$statement = $pdo->query($sql);
  7. #$pdo -> query ('SET NAMES utf8');
  8. #$row = $statement->fetch(PDO::FETCH_ASSOC);
  9. #unset($statement);
  10.  
  11. $adres ='http://www.wrzuta.pl/film/pXfo5OvPjs/';
  12.  
  13. $url = curl_init($adres);
  14. curl_setopt($url, CURLOPT_USERAGENT, 'holmes/3.10.1 (OnetSzukaj/5.0; +http://szukaj.onet.pl)');
  15. curl_setopt($url, CURLOPT_RETURNTRANSFER, 1);
  16. curl_setopt($url, CURLOPT_CONNECTTIMEOUT, 5);
  17. curl_setopt($url, CURLOPT_HEADER, 0);
  18. $strona=curl_exec($url);
  19. #curl_close($url);
  20.  
  21. $DOM = new DOMDocument();
  22. @$DOM->LoadHTML(iconv("ISO-8859-2","UTF-8",$strona));
  23.  
  24. $tablica = array();  #deklaracja tablicy
  25.  
  26. $i = 0;
  27. foreach ($DOM->getElementsByTagName('div') as $div)
  28. {
  29.    $id = $div->getAttribute('id');
  30.    if($id == 'file_info_desc')
  31.    {
  32.        $desc= $div->nodeValue;
  33.    }
  34.  
  35.    $class = $div->getAttribute('class');
  36.    if($class == 'thumbnail')
  37.    {
  38.        foreach($div->getElementsByTagName('a') as $a)
  39.        {
  40.            $href = $a->getAttribute('href');
  41.            $array[$i]['href'] = $href;
  42.        }
  43.        foreach($div->getElementsByTagName('img') as $img)
  44.        {
  45.            $alt = $img->getAttribute('alt');
  46.            $array[$i]['alt'] = $alt;
  47.        }
  48.        $i++;
  49.    }
  50. }
  51. foreach ($array as $abc)
  52. {
  53.    $sql = "INSERT INTO test(`url`, `title`) VALUES(:url, :title)";
  54.    $statement = $pdo->prepare($sql);
  55.    $statement->bindValue(':url', $href, PDO::PARAM_STR);
  56.    $statement->bindValue(':title', $alt, PDO::PARAM_STR);
  57.    $statement->execute();
  58.    #var_dump($statement->errorInfo());
  59. }
  60.  
  61. ?>


dlaczego petla foreach ($array as $abc) zapisuje mi bazie 8 razy ostatni obiekt z tablicy a nie 8 roznych ktore posiada w tablicy?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 4.10.2025 - 11:10