Вы теоретик? Счего Вы взяли, что этот запрос будет долго выполняться? Я на милионах записей делал довольно быстрые выборки. Зависит от индексов и "правильности" запросов, ну память еще и т.д.
Вы запрос то пробовали делать? Если да то скажите: есть такой-то запрос, есть такая-то таблица, выполняется столько-то, как оптимизировать?
Запрос делали? Проблема в чем?
class SomeModule { private $path = '/path/to/module'; public function somefunc($var) { retutn $this->path . $var; } }
внутри класса не используй var - это php4, используй public, protected, private - это php5.
переменные внутри класса называются свойствами. в моем примере $path - это свойство. обращаться к свойствам класса можно через $this, т.е. так: $this->path.
чтобы, добавить новые функции, если я тебя правильно понял, нужно использовать наследование.
например мой класс SomeModule имеет публичную (доступную из вне) ф-цию somefunc и приватное (доступное только внутри класса) свойство $path. используя наследование мы можем сделать так:
class NewModule extends SomeModule { public function test() { return true; } }
теперь класс NewModule имеет публичную ф-цию somefunc, приватное свойство $path и публичную ф-цию test
это в двух словах.
а вобще читай мануал - там есть все.
в php.ini попробуй написать extension=php_openssl.dll---------- Добавлено 23.06.2012 в 10:23 ----------и еще должно быть включено allow_url_fopen = On
SET NAMES 'utf-8'---------- Добавлено 23.06.2012 в 00:16 ----------A SET NAMES 'x' statement is equivalent to these three statements:
SET character_set_client = x;
SET character_set_results = x;
SET character_set_connection = x;
Даже не знаю, как объяснить... Да простят меня знатоки :)
Грубо говоря, есть 2 вида аутентификации:
Basic и Digest - это один тип (их два конечно же, но они очень похожи, поэтому я их записываю в один).
Второй тип - это аутентификация, через форму на сайте. Я не знаю как он по-научному называется :) Этот тип, например, используется на этом форуме, в гугле, вконтакте и т.д.
В случае с сайтом из этого топика - это Basic auth. Это видно по окну, которое просит пароль. Если видите такое окно, знайте - это Basic auth (или Digest).
Для работы с этим типом аутентификации, у curl'а есть опция CURLOPT_USERPWD, которая принимает строку "юзер:пароль". Это работает и для Basic и для Digest, т.е. на первых порах Вам простительно не отличать эти два типа.
Если бы, Вы пытались логинится на этом форуме, Вам следовало бы использовать что-то типа curl_setopt($ch, CURLOPT_POSTFIELDS,"LOGIN=".$login."&PASSWORD=".$paswd).
По коду:
//открываем файл на запись и получаем его дескриптор/идентификатор $f = fopen($file, 'w'); //инициализируем курл и передаем нужный нам урл $ch = curl_init($url); //устанавливаем данные для аутентификации curl_setopt($ch, CURLOPT_USERPWD, $user . ":" . $pass); //говорим курлу, что ответ не нужно выводить в браузер (кстати, я не тестил, но возможно эта строка и не нужна :)) писал по памяти curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //говорим курлу что полученные по урлу данные хотим писать в файл и указываем дескриптор файла curl_setopt($ch, CURLOPT_FILE, $f); //запускаем всю эту хрень curl_exec($process);
Как-то спутанно получилось написать, но надеюсь кому-нибудь пригодится.
посмотрел на сайт - тебе нужна базовая авторизация, а мой предыдущий пост - бред :) не слушай меня :)---------- Добавлено 22.06.2012 в 19:57 ----------
$url = 'http://api2.gifts.ru/export/catalogue/1198.46_jpg_280x280b1.jpg'; $file = '/path/to/file/saved.jpg'; $user = 'sjsjsjsjsjsjsj'; $pass = 'vnfjvnjfnvjfn'; $f = fopen($file, 'w'); $ch = curl_init($url); curl_setopt($ch, CURLOPT_USERPWD, $user . ":" . $pass); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FILE, $f); curl_exec($process);
это не нужно
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
ты забыл
curl_setopt($ch, CURLOPT_POST, true);
также нужно сделать
$login = urlencode('***');
$paswd = urlencode('***');
Посмотрел обе версии. Везде ок. Таких проблем как у тебя нет.
Понимаешь, чтобы лечить пациента, нужен именно пациент (внезапно, да?), а не его брат, пусть даже и близнец.
Ligue-1, телепаты в отпуске. Сайт покажи, не по скрину же тебе подсказывать.
Ligue-1, поправить css