Jump to content

Xander

Active Members
  • Posts

    757
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by Xander

  1. ce vrea neme sa spuna e ca alexa rank ( inafara de faptul ca nu este foarte precis ) nu poate fi folosit intr-un sistem de afiliati pentru ca toti userii vor sa aduca cat mai mult trafic pe site ( de foarte multe ori trafic care nu are nici o legatura cu tema site-ului ) si creste artificial rank-ul mi-am facut si eu cont pe zeek rewards mai demult sa vad despre ce este vorba si cand am vazut ca nu au livrare la absolut nimic in romania m-am lasat pagubas s-a schimbat cumva chestia asta? iti livreaza si in romania acum zeekler?
  2. Cei cu peste 600 posturi primesc gratuit 300-600 : 3 euro pe luna 0 - 299 : 5 euro pe luna limita: 250 de oameni ( fiecare o sa intre cu ip-ul ) banii pe paypal/lr, contul vi-l trimit prin pm ( daca dati cb pe paypal va inchid acces-ul... daca dati dupa 30 de zile... o sa castig aproape 100% case-ul cu paypal )
  3. Xander

    @ nytro

    next meeting
  4. I will give 15x 105 USD fresh Google Adwords Coupons for $5 ( stiu ca nu sunt in ron dar totusi... ) sursa fiverr
  5. <script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script> <br>Country Code: <script language="JavaScript">document.write(geoip_country_code());</script> <br>Country Name: <script language="JavaScript">document.write(geoip_country_name());</script> <br>City: <script language="JavaScript">document.write(geoip_city());</script> <br>Region: <script language="JavaScript">document.write(geoip_region());</script> <br>Region Name: <script language="JavaScript">document.write(geoip_region_name());</script> <br>Latitude: <script language="JavaScript">document.write(geoip_latitude());</script> <br>Longitude: <script language="JavaScript">document.write(geoip_longitude());</script> <br>Postal Code: <script language="JavaScript">document.write(geoip_postal_code());</script> sursa: http://www.maxmind.com/app/javascript_city Teoretic cica ar trebui sa pui link catre maxmind daca il folosesti pe site dar nu cred ca stau sa verifice... EDIT: uz posibil: <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> $(function() { ( detect = ( function() { if(typeof geoip_country_code != "function") return setTimeout ( function() { detect(); } , 10); $.post("track.php" , { "cc": geoip_country_code(), "cn": geoip_country_name(), "ct": geoip_city(), "re": geoip_region(), "rn": geoip_region_name(), "lat": geoip_latitude(), "long": geoip_longitude(), "pc": geoip_postal_code() }); } ) )(); var _geoip = document.createElement("script"); _geoip.src = "//j.maxmind.com/app/geoip.js"; _geoip.async = true; document.body.appendChild(_geoip); }); avantaje: asincron si gratis...
  6. nu stiu ce date aveai tu dar am un prieten foarte bun care a ramas fara 2 conturi fix in perioada de plata.... si asta nu e o chestie noua ( cel putin 1-2 ani ) in plus daca nu vroiai flame wars faceai un post mai normal nu hai sa ne pisam pe x care defapt s-au pisat cum zicea benny pe tine... simplu: Din experimentele mele, google a prelungit perioada de verificare a conturilor adsense la 1-20 ( de la 1-15 ) ale lunii [PUNCT]
  7. Daca este nevoie o sa dau si explicatii mai in detaliu... am incercat sa dau niste exemple care sa acopere cat mai mult din ce poate face Ce ar trebui sa faca: sa usureze foarte mult utilizarea librariei curl in php class.curl.php: <?php class curl { var $C , $debug = false , $lastcode , $logverbose = ""; var $useCookies = true; var $agent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Chrome/9.0.597.67 Safari/534.13"; var $LastData , $proxy , $proxytype , $CJ = "./cookiejar.txt"; var $ref , $autoref = 0; // 0 = manual , 1 = normal(only GET updates ref) , 2 = full (all requests update ref) var $headers = array() , $cleanup = array() , $opts = array(); var $url; public static $debugHandle; var $error = false; var $errorMessage = ""; function __construct($opts = array()) { $this->C = curl_init(); foreach($opts as $key => $var) // jquery style options { $this->$key = $var; } $default_options = array ( CURLOPT_CONNECTTIMEOUT => 30, CURLOPT_TIMEOUT => 60, CURLOPT_FOLLOWLOCATION => 1, CURLOPT_RETURNTRANSFER => 1, CURLOPT_USERAGENT => $this->agent, CURLOPT_FORBID_REUSE => true, CURLOPT_FRESH_CONNECT => true, CURLOPT_SSL_VERIFYHOST => 0, CURLOPT_SSL_VERIFYPEER => 0 ); $this->addHeader(array("Expect" => "")); $this->setOpt($default_options); if(isset($opts['useCookies'])) { if($opts['useCookies']) $this->SetCookieJar(); } } function setAgent($agent) { $this->setOpt( array ( CURLOPT_USERAGENT => $agent ) ); $this->agent = $agent; } function __destruct() { $this->Close(); } function Close() { @curl_close($this->C); if($this->autoclear) $this->Clear(); } function getAutoRef() { return $this->autoref; } function setAutoRef($activate) { $this->autoref = (int)$activate; } function SetCookieJar($data = "") { if($data == "") $data = $this->CJ; return $this->_SetCookieJar($data); } function _SetCookieJar($data) { $this->CJ = $data; if ( $data != "" ) { $this->setOpt ( array ( CURLOPT_COOKIEJAR => $this->CJ, CURLOPT_COOKIEFILE => $this->CJ ) ); $this->ProcessCookieJar(); } } function Clear() { if ( $this->useCookies && file_exists ( $this->CJ ) ) unlink ( $this->CJ ); } function ProcessCookieJar() { if( !file_exists ( $this->CJ ) ) { file_put_contents( $this->CJ , "" ); chmod ( $this->CJ , 777 ) ; } } function Req($param , $data = "" , $update = true) //$url , $data = "" , $update = true) { if ( is_array ( $param ) ) { foreach($param as $key => $val) { $$key = $val; } } else $url = $param; if ( $this->debug ) curl::$debugHandle = fopen("log.txt" , "a"); else curl::$debugHandle = fopen("php://stderr" , "w"); if($update) $this->LastData = $this->___req($url , $data); else $temp = $this->___req($url , $data); $this->info = curl_getinfo( $this->C ); fclose(curl::$debugHandle); $this->cleanHeaders(); return $update ? $this->LastData : $temp; } function ___req($url , $data = "") { $this->error = false; $this->errorMessage = ""; if($this->ref != "") // set referer header if present $this->addHeader(array("Referer" => $this->ref)); $request = $this->getRequest($data); $opts = array ( CURLOPT_URL => $url, CURLOPT_PORT => substr_compare($url , "https://" , 0 , 8 , true) === 0 ? 443 : 80 , CURLOPT_PROXY => $this->proxy ? $this->getProxy(0) : "", CURLOPT_PROXYTYPE => $this->proxy ? $this->getProxy(1) : "", CURLOPT_VERBOSE => $this->debug ? 1 : 0, CURLOPT_STDERR => curl::$debugHandle, CURLOPT_HTTPHEADER => $this->getHeaders() ); if($this->debug && (is_callable($this->logverbose) || method_exists($this,"logverbose"))) $this->logverbose($this , "Request info (" . CURLOPT_POST . ":" . @(int)$opts[CURLOPT_POST] . "): " . $url . "<pre>" . print_r($request , true) . "</pre>"); if($request['type'] == "POST") { $opts[CURLOPT_POST] = 1; $opts[CURLOPT_POSTFIELDS] = $request['data']; if($this->debug) fwrite(curl::$debugHandle , "POSTFIELDS:\n" . print_r($request['data'],true) . "\n"); } else { $opts[CURLOPT_POSTFIELDS] = -1; $opts[CURLOPT_POST] = -1; } $this->setOpt($opts); if($this->autoref == 2) // auto update ref even if POST $this->ref = $url; else if($this->autoref == 1 && ! $request['type'] == "POST") // auto update ref only on GET $this->ref = $url; $this->_setOpts(); if( ( $ret = curl_exec($this->C) ) === false ) { $this->error = true; $this->errorMessage = 'Curl error: (' . $url . ') - ' . curl_error($this->C); if($this->debug) if (is_callable($this->logverbose) || method_exists($this , "logverbose")) $this->logverbose($this , $url . "<br />" . $ret ); else echo $this->errorMessage . "\n"; return false; } else { $this->lastcode = curl_getinfo($this->C, CURLINFO_HTTP_CODE); if($this->debug && (is_callable($this->logverbose) || method_exists($this , "logverbose"))) $this->logverbose($this , $url . "<br />" . $ret ); return $ret; } } function getResponseCode($url , $data = "") { $this->Req($url , $data); return $this->lastcode; } function getInfo($url , $data = "" , $arr = "") { $this->Req($url , $data); if($arr != "") return $this->info[$arr]; return $this->info; } function getRequest($data) { $request = array(); $request['data'] = $data; if ( !is_array($data) && $data == "" ) // not array and blank data : get $request['type'] = "GET"; else if ( is_array ( $data ) ) // array : POST { $request['type'] = "POST"; $upload = false; foreach($data as $k => $v) if( !is_array($v) && substr($v , 0 , 1) == "@" ) { $upload = true; break; } if($upload == false) // no file upload : serialize ( x-www-form-urlencoded ) else multipart/form-data $request['data'] = $this->serialize($data); } else $request['type'] = "POST"; // x-www-form-urlencoded ( already serialized ) return $request; } function getProxy($method) { if(!$method) return $this->proxy; return $this->proxytype == "http" ? CURLPROXY_HTTP : CURLPROXY_SOCKS5; } function addHeader($array , $persist = false) { foreach($array as $k => $v) { $this->headers[$k] = $v; if(!$persist) $this->cleanup[] = $k; } } function getHeaders() { $hdrs = array(); foreach($this->headers as $key => $val) $hdrs[] = $key . ": " . $val; return $hdrs; } function cleanHeaders() { foreach($this->cleanup as $key) unset($this->headers[$key]); $this->cleanup = array(); } function purgeHeaders() { $this->headers = array(); } function _setOpts() { curl_setopt_array($this->C , $this->opts); } function setOpt($opts , $v = null) { if(is_array($opts) && $v == null) foreach($opts as $key => $val) if($val == -1) unset($this->opts[$key]); else $this->opts[$key] = $val; else if($v == -1) unset($this->opts[$opts]); else $this->opts[$opts] = $v; } function opt($k , $v) { curl_setopt($this->C , $k , $v); } function serialize($arr , $name = "") { $ret = ""; foreach($arr as $key=>$val) { if(is_array($val)) $ret .= ($ret != ""?"&":"") . $this->serialize($val,$key); else { if($name != "") $ret .= ($ret !=""?"&":"") . $name . "[" . $key . "]=".$val; else $ret .= ($ret !=""?"&":"") . $key . "=" . $val; } } return $ret; } public function __call($name , $args) { if(is_callable($this->$name)) call_user_func_array($this->$name , $args); } } ?> <?php class curl_debug extends curl { public function logverbose($object ,$test) { echo "This uses a member function: " . (int)$object->error . "\n"; } } $c = new curl(array("agent" => "My curl script" , "debug" => true , "logverbose" => function($obj,$data){ echo "This uses a closure: " . (int)$obj->error . "\n";})); // direct call $c->Req("https://google.ro"); // array call $c->Req( array( "url" => "http://www.google.ro" , "data" => // daca setezi data se face automat post array( // data este un vector asociativ "q" => "searching for something", "myfile" => "@/some/existing/file", "param" => array( "multiple" => "fields", "with" => "the", "same" => "name" ) ) ) ); // direct call post $c->Req("http://google.ro" , array("q" => "searching") , false); // param 3 = (bool) update this->LastData // bad call $c->Req("https://google.rz"); // change log function $c->logverbose = function($o , $d){ echo "Changed verbose log\n"; }; $c->Req("https://google.ro"); // alta metoda de a seta functia de log $d = new curl_debug(); $d->debug = true; $d->Req("https://google.com"); ?>
  8. Xander

    Ajutor CSS

    pune ba omule htmlu daca vrei sa faci corect
  9. @wubi blochezi folderu uploads din htaccess in totalitate si se ocupa nginx de servirea fisierelor statice ( adica pe scurt: da )
  10. se poate face in 2 feluri client <-> Nginx(ip:80) <-> apache(127.0.0.1:80) sau client <-> Nginx(ip:80) <-> apache(ip:81/8080/etc...)
  11. exista cazuri cand trebuie sa lasi acces direct catre fisierele uploadate... un exemplu accelerare cu nginx reverse proxy
  12. Xander

    Ajutor CSS

    rezolvarea este de obicei foarte simpla ... dar pentru ca nu ai dat html deloc e greu sa te ajutam calumea... o chestie care ar putea sa mearga dupa cum ai structurat css-u.. incearca: body > * { margin: 0 auto; float: none; display: block; } chiar daca merge... nu e frumos daca vrei sa iti zic exact cum sa faci pune cel putin primul nivel de nesting din body ca sa pot sa iti zic exact ce css sa pui
  13. culmea la ultima poza repara si pixelarea din poza originala (pe arcada)
  14. uite si una mai buna
  15. the troll be trolling ... unu care stie arta trolling-ului intentionat sau nu
  16. @neme o monarhie ar fi mult mai buna pentru ca 1 singur om nu poate sa fure cat pot multi si daca incearca e mult mai usor "sa gasesti vinovatul" si sa il linsezi plus ca daca dai de unu care chiar e corect atunci e perfect si inca un bonus daca monarhul e 10% din nea` Vlad Dracul sa ii impuste pe aia care incearca sa fure... scapam si noi de niste jeguri alta varianta ar putea sa fie decriminalizarea/legalizarea tuturor drogurilor ca sa inceapa selectia naturala. In 10-20 de ani scapam de toti oamenii care sunt prea prosti sa traiasca... si poate atunci lumea nu o sa mai vanda votul pe 2 mici sau o galeata
  17. ce treaba are jailbreak cu gevey? unlock = deblochezi telefonu de pe o retea ... sa mearga pe orice retea neverlock = nu este blocat in nici o retea jailbreak = instalezi un rootkit pe telefon care iti da access complet asupra telefonului gevey = un adaptor care face unlock la telefon printr-un hack hardware+software daca pui gevey nu are legatura cu pc-ul. daca resetezi / inchizi telefonu pur si simplu urmezi pasii de unlock iar ( untethered = nu e nevoie sa fie conectat la itunes ) si ca sa raspund si la intrebare... daca nu te deranjeaza sa platesti banii in plus pentru neverlocked atunci asa e cel mai bine... daca ai un buget mai restrictiv si vrei/trebuie sa faci rost de telefon mult mai ieftin gevey e numa bun( se mai blocheaza cateodata si trebuie refacuti pasii de unlock )
  18. Xander

    idei !!!

    afla cumva numaru lu sorsa si dupaia poti sa faci ce vrei cu numaru lu ala daca il schimba il ceri lu sorsa si daca vrei sa i-o faci... trimite curve la el la usa dar multe... nu 2-3 ...cate 3-4 pe zi timp de 1 saptamana
  19. si ce anume faci cu zeci/sute/mii de appid-uri?
  20. nu cred se calculeaza cum zici tu probabil se calcluleaza ceva de genul : ( nr de romani * venit mediu lunar per om) / cat cheltuiesc toti romanii ... si da mult mai putin pentru ca foarte multi romani nu au venituri ( asa cred ca se calculeaza altfel nu vad de unde ar iesi cifrele )
  21. nici un trafic automat nu este full adsense safe pentru ca oamenii stau foarte putin pe site.... plus... daca au google toolbar sau google chrome cei care intra google poate sa vada ca oamenii intra pe foarte multe site-uri intr-o perioada foarte scurta si sa va arda contul:)
  22. @nytro nu este total corect ce ai zis cand faci un query pentru un nume exista 2 variante ori dns clientul tau face query-ul la fiecare server (root->com->google.com->etc) in parte ori serverul care l-ai trecut tu la dns face asta pentru tine dar nu pot sa dea drop la pachetele care vin din surse nestiute pentru ca serverele alea au miliarde de requesturi pe zi
  23. ideea e ok ... dar nu ai si tu pe site cum functioneaza... ai zis de monede... ok ai 50 ... ce faci cu ele? cate monede costa o vizita pe web? un g+? fb?... cate primesti pentru fiecare actiune? p.s. vad ca iti merge putin mai greu imi dau seama... ca fiind la inceput o sa treaca ceva timp pana ia avant ca sa faci o treaba ai putea sa bagi sa convertesti bani reali in monede si invers ( cu o limita minima de extragere) cu alte cuvinte sa dai bani "din buzunar" pentru actiunile alea ca sa iti vina agarici sa iti faca site-ul popular si odata ce ai multi oameni pe el care fac trafic o sa vina si oameni sa cumpere edit: inca o chestie... cum verifici like-urile / follow / g+ si cum faci sa verifici sa nu dea oamenii cancel dupa ce au dat? ( daca primesti multe like + unlike pe facebook iti baga un cacat de validare dupaia )
  24. e fumata si rasfumata metoda inca merge ... nu cum mergea dar merge impedimente: -twitter e ban happy mai nou -userii de pe twitter s-au cam obisnuit cu mult spam
  25. right... deaia se poate face jailbreak pentru ca sunt sigure
×
×
  • Create New...