PHP-Nuke Services - Addons, Modules, Blocks Vizitati www.westdesign.ro Select Interface Language:EnglishRomanian
  Login or Register HomeForumsDownloadsYour AccountWeb LinksContact   
SectionsShow\Hide
MultiheadlinesShow\Hide
LoginShow\Hide
~ Welcome, alien
Nickname Password
(Register)

~ Membership:

Greetings to the newest member jincesoft
~ New Today: 0
~ New Yesterday: 0
~ Overall: 4306

~ People Online:
~ Visitors: 8
~ Members: 0
~ Total: 8
~Aikon is offline
on Yahoo Msg.
Link to meShow\Hide

aikons.net
Search in FeedsShow\Hide
Search in feeds
HistoryShow\Hide
On 21 May


Speed Up   Pause   Speed Down
DictionaryShow\Hide
Enter the word

Romanian users only

- aikons.net - PHP-Nuke Services Forum Index


Reply to topic Page 1 of 1
Probleme php (folosirea functiei fopen)
Message Author
Reply with quote
Post Posted: Wednesday 07 September, 2005 21:18

Salut aikon!
Mi-a placut foarte mult ideea folosirii functiilor explode() si ereg_replace() pentru a citi date de la o adresa URL pe care tu ai folosit-o la blocul "Curs valutar".
Asa ca mi-a trecut prin cap sa folosesc si eu metoda pentru a citi stiri de pe www.edu.ro intr-un bloc.
Numai ca am intalnit o problema, vezi codul urmator:
Code:

$url1="http://localhost/nuke/blocks/comunicate_presa_";
//$url1="http://www.edu.ro/comunicate_presa_";
$an=date(y);
$luna=date(m);
$url=$url1.$luna.$an.".htm";
$filename = $url;
$fisier = @fopen($filename, "r");

Daca folosesc url1 din primul caz (necomentat) totul e OK!
Problema este cand incerc sa folosesc linia comentata.
Nu afiseaza nimic. Banuiesc ca nu deschide fisierul dar nu inteleg de ce pentru ca folosesc atributul "r" iar pagina respectiva se deschide separat fara nici-o problema.
Ai vreo idee, ceva?

View user's profile Send private message
Reply with quote
Post Posted: Wednesday 07 September, 2005 22:14

Baga un
Code:
echo $url;

dupa linia
Code:
$url=$url1.$luna.$an.".htm";

si vezi daca adresa formata [$url] ii cea a paginii pe care vrei sa o citesti.

Daca coincide cu pagina dorita inseamna ca nu poate sa deschida pagina respectiva in timp util.
Btw si din browser daca ii dai la una din adresele alea se deschide foarte greu [mie mi se deschide cam in 25-30 de secunde], cred ca ai observat asta. Deci s-ar putea din cauza asta.

View user's profile Send private message Visit poster's website
Reply with quote
Post Posted: Wednesday 07 September, 2005 22:55

Aikon wrote:
Baga un
Code:
echo $url;

dupa linia
Code:
$url=$url1.$luna.$an.".htm";

si vezi daca adresa formata [$url] ii cea a paginii pe care vrei sa o citesti.

Am incercat chestia asta. Este identic!
Aikon wrote:
Btw si din browser daca ii dai la una din adresele alea se deschide foarte greu [mie mi se deschide cam in 25-30 de secunde], cred ca ai observat asta. Deci s-ar putea din cauza asta.

E posibil din cauza asta?
Atunci o sa incerc altadata, poate merge atunci.
Merci mult!

View user's profile Send private message
Reply with quote
Post Posted: Thursday 08 September, 2005 00:54

Uite incearca asa:
Code:

<?php
function citeste_pagina($url){
   $filename = $url;
      $fisier = @fopen($filename, "r");
   if ($fisier) {
   $continut="";
   while (!feof($fisier)) {
   $continut .=fread($fisier, 8192);
   }
   fclose($fisier);
} else {
echo "Nu s-a putut face citirea";
}
return $continut;
}


$url="http://www.edu.ro/comunicate_presa_0905.htm";
echo citeste_pagina($url);
//sau de aici poti sa prelucrezi mai departe rezultatul functiei citeste_pagina(care este de fapt continutul paginii).
?>


Asa merge, acuma l-am incercat! Numai sa nu uiti sa golesti cache-ul de la browser daca faci mai multe incercari.

View user's profile Send private message Visit poster's website
Reply with quote
Post Posted: Thursday 08 September, 2005 22:17

Eu unul nu mai inteleg nimic!
Tot cam asa am facut si eu numai ca nu am folosit functia (nu-mi plac functiile).
Gasesti scriptul complet aici: http://www.klausnet.lx.ro/modules.php?name=Downloads&d_op=viewdownload&cid=3

View user's profile Send private message
Reply with quote
Post Posted: Friday 09 September, 2005 00:12

Ok deci uite ti-am trimis prin mail pe yahoo blocul respectiv functional.

Probabil ca exista si alte modalitati de a-l realiza. Ideea ii ca trebuie sa faci un "cache" al blocului respectiv in baza de date, pentru ca fiecare vizitator de pe situl tau va genera o citire si de pe situl edu.ro si daca sa zicem ca sunt o gramada de vizitatori atunci nu-i bine pentru ca aceasta operatie dureaza relativ mult timp.

Deci continutul $content poti sa-l salvezi in baza de date in tabelul blocks--->coloana content---> la linia corespunzatoare blocului Edu.

Cam cum am facut eu cu Cursul valutar.

Si dupa aia la o noua afisare totul se va face local din baza de date. Simplu si foarte eficient.
Dupa un timp de...se citeste inca odata pagina respectiva [de pe edu.ro] si se face o noua salvare in baza de date. Avand in vedere ca cei de la edu.ro scot poate un comunicat pe zi poti sa-i dai timpul de improspatare la 1 zi sau cat vrei tu.

View user's profile Send private message Visit poster's website
Display posts from previous:
Reply to topic Page 1 of 1
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
  


Page Generation: 0.58 Seconds