Чето непойму где ошибка. хочу модернизировать свой скрипт чтобы вступал в группы по диапазону и добавлял фотку. вот скрипт PHP: <form method="POST"> <center> Email:<input type="text" name="email"><br> Pass:<input type="text" name="pass"><br> Стартовать с ID:<input type="text" name="start"><br> Закончить на ID:<input type="text" name="end"><br> Таймаут:<input type="text" name="sleep"><br> <input type=submit value="НАчать РАботать!!!"></center> <?php //Бот для вступления в группы и встречи по диапазону... set_time_limit(0); function curl($url,$post) { $cfile = 'cookies.txt'; $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox/3.0.4"); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); curl_setopt($ch, CURLOPT_COOKIEJAR, $cfile); curl_setopt($ch, CURLOPT_COOKIEFILE, $cfile); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_POST, 1); $result = curl_exec($ch); curl_close($ch); return $result; }; $start = $_POST['start']; $end = $_POST['end']; $email = $_POST['email']; $pass = $_POST['pass']; $sleep = $_POST['sleep']; if(!$email||!$pass||!$start||!$end||!$sleep){exit;} $result = curl("http://vkontakte.ru/login.php","email=$email&pass=$pass"); for($i=$start; $i<=$end; $i++) { //$rand = rand(1, 21); $foto = 'C:\foto.jpg'; $result = curl("http://vkontakte.ru/club".$i,""); preg_match_all ('#</li><li><a href=\'(.*)\'>#iU', $result, $regs); $ssil = $regs[1][0]; $result = curl("http://vkontakte.ru".$ssil,""); preg_match_all ('#\/photos\.php\?act=add(.*)\"#iU', $result, $regs); $photo = $regs[0][0]; $photo = str_replace('"', '', $photo); $photo = "http://vkontakte.ru".$photo; $result = curl($photo,""); echo $result; preg_match_all ('#upload\" action=\"(.*)\"#iU', $result, $regs); $ssil = $regs[1][0]; preg_match_all ('#name=\"id\" value=\"(.*)\"#iU', $result, $regs); $id = $regs[1][0]; preg_match_all ('#name=\"mid\" value=\"(.*)\"#iU', $result, $regs); $mid = $regs[1][0]; preg_match_all ('#name=\"hash\" value=\"(.*)\"#iU', $result, $regs); $hash = $regs[1][0]; preg_match_all ('#name=\"rhash\" value=\"(.*)\"#iU', $result, $regs); $rhash = $regs[1][0]; echo "<br>".$ssil."<br>".$id."<br>".$mid."<br>".$hash."<br>".$rhash."<br>".$i."<br>"; $result = curl($ssil, array( 'act' => 'do_add', 'id' => $aid, 'aid' => $aid, 'gid' => $i, 'mid' => $mid, 'hash' => $hash, 'rhash' => $rhash, 'vk' => 0, 'file1' => "@".$foto)); echo $result; /* sleep(2); $result = curl("http://vkontakte.ru/events.php?act=s&gid=".$i,""); preg_match_all ('#<a href=\"events\.php\?act=enter\&gid=(.*)\">#iU', $result, $regs); $ssil = $regs[1][0]; $result = curl("http://vkontakte.ru/events.php?act=enter&gid=".$ssil,""); sleep($sleep); */ } ?> надаюсь поможете. а то завтра уезджаю, времени уже завтра небудет, а изза того что скрипт не закончил отдохгуть нормально не смогу
дошёл до такого результата: PHP: HTTP/1.1 100 Continue HTTP/1.1 302 Found Server: nginx/0.7.59 Date: Tue, 13 Oct 2009 09:16:50 GMT Content-Type: text/html; charset=windows-1251 Connection: keep-alive X-Powered-By: PHP/5.2.0-8+etch13 Pragma: no-cache Cache-control: private, must-revalidate Location: http://vk.com/photos.php?act=done_add&mid=11299865&aid=97211801&gid=0&server=4166&photos=8acc51df52x&hash=d133027aebf89a1c55163ddd4b3224bd Content-Length: 0
ты скинь полный вариант скрипта я заточу тебе под конкретную задачу, тебе нужен постраничный вывод, например по принципу выдачи серча в гугл я правильно понял?
подскажите, при записи в txt файл все данные записываются в одну строку. как сделать перевод строки? Чтобы каждая новая запись производилась со следующей строки PHP: /*if (strtoupper(substr(PHP_OS,0,3)) === "WIN") { $per = 'rn'; // перевод строки для Windows-систем } else { $per = 'n'; // перевод строки для UNIX-систем } */ $adres="http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; $file=fopen ("module/deystvie.txt","a"); fwrite ($file,$adres); fclose ($file);
ПХП злодей, у меня такой вопрос, есть БД ну допусти чата где хранятся к слову (ник,сообщение) надо мне вывести тор-10 у кого сумма сообщений больше всего , какой ни будь кривой скрипт но рабочий я сам могу, надо что бы быстро выводил и не перебирал базу по сто раз или может как то в одном запросе к БД можно сделать это. на пример: select nic , count(mes) from ... order by count(mes) limit 10
Вопрос такой, мне необходимо периодически с сайта (гдето раз в 5 сек) подгружать определенную информацию (несколько цифровых значений) для отображения этих данных на странице, обновлять всю страницу будет слишком долго и будет расходоваться много трафика. Т.е. это должно быть чтото наподобии регистрации на mail.ru, когда производится проверка занятости ящека. Интересует как это можно организовать на php с учетом того что это выполнять будет самописный компонент для joomla
Используй технологию AJAX (на JS). Например, подключаешь к странице js-фреймворк jQuery (jquery.com), затем в коде пишешь: PHP: $.getJSON("http://site.com/page.php?get_json_data", function(data) { // Операции с объектом data // (берёшь его поля и рассовываешь по нужным тегам) $("#имя_элемента").text(data.SomeField); }); Ссылка http://site.com/page.php?get_json_data должна отсылать клиенту объект с данными в формате json. Как выставить периодическое выполнение - почитай в мануале.
Есть проблема с сесиями в пхп. На локалхосте написал сценарий для хранения в сесии некоторых даных, и все прекрасно работало, но после закачки на хостинг сесии почему то не работают нормально. Ошыбки не выдает, а просто не работает. Листинг файла таков PHP: <?php session_start(); $id = $_GET['id']; if($id) { $cart = array(); $totalPrice = 0; $_SESSION['totalPrice']; if($_SESSION['cart'][$id]) // если есть такой тогда увеличиваем на единицу { $_SESSION['cart'][$id]++; } else // Если нет тогда создаем { $_SESSION['cart'][$id]=1; } } ?> проблема в том что новые елементы масива cart не создаються так как будто они храняться не в масиве сесий а в обычном масиве. То есть они не сохраняються после перехода между страницами. Непойму в чем дело. Могут ли настройки на хостинге влиять на работу сесий?
PHP код: $cart = array(); $totalPrice = 0; $_SESSION['totalPrice'] Что делает 3 строка? оО В етой строке об`вляеться переменная totalPrice. Но дело не в етом. А дело в том что на локалхосте все пашет и нормально создаються переменние и передаються сесией по страницам. А на хостинге виглядит как обычный масив и каждий раз просто создает в масиве $_SESSION один елемент как будто ето обычный масив а не масив сесии, и после вихода не сохраняет.
А зачем ето делать? У меня так PHP: <?php session_start(); $id = $_GET['id']; if($id) { $cart = array(); $totalPrice = 0; $_SESSION['totalPrice']; if($_SESSION['cart'][$id]) // если есть такой тогда увеличиваем на единицу { $_SESSION['cart'][$id]++; } else // Если нет тогда создаем { $_SESSION['cart'][$id]=1; } } ?> У меня сначала обявляеться $cart = array(); Потом он стает елементом масива $_SESSION (получаеться многомерный масив) А потом просто циклом прохожу по $_SESSION['cart']. foreach ($_SESSION['cart'] as $item=>$countitems) { echo ' Товар '.$item.' Количество '.$countitems.' '; } И все работает на денвере. А на хостинге в $_SESSION['cart'] не сохраняеться ничего, а каждий раз просто новый елемент появляеться. На всех старницах где требуеться использовать $_SESSION['cart'] стартует сесия сначала типа так: <?php session_start(); ?>