Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

RE: Вопросы по PHP (для новичков)

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> RE: Вопросы по PHP (для новичков)
Имя
Сообщение << Старые топики   Новые топики >>
RE: Вопросы по PHP (для новичков) - 2009-09-15 17:46:04.930000   
covetnik

Сообщений: 6
Оценки: 0
Присоединился: 2009-09-15 12:20:45.890000
rgo спасибо, ты был прав. Добавил заголовков и все заработало. Теперь буду двигаться дальше. Просто я сегодня был в панике с утра. Вроде думал все правильно сделал, а ничего не пашет. Уже все перепробовал… всю голову себе сегодня сломал. А щас вот Интерцептер"ом отснифал заголовок и добавил чего не хватает и все заработало :))
Post #: 1041
RE: Вопросы по PHP (для новичков) - 2009-09-15 18:35:15.763333   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
Да-да, всё правильно, только чтобы ТОЧНО знать, какие заголовки посылаются. достаточно иметь tamper data в FireFox. Плагин такой. И не гадать на кофейной гуще.
Post #: 1042
RE: Вопросы по PHP (для новичков) - 2009-09-17 13:11:06.163333   
orthoxor

Сообщений: 110
Оценки: 0
Присоединился: 2009-08-07 13:46:30.943333
Люди! Подскажите, как в PHP использовать безусловный переход после выполнения команды? Нужно, чтобы сразу возвращался на исходную страницу.
Post #: 1043
RE: Вопросы по PHP (для новичков) - 2009-09-17 13:12:41.753333   
QunneD

Сообщений: 833
Оценки: 0
Присоединился: 2008-11-09 20:54:38.113333
Header("Location: url");
Post #: 1044
RE: Вопросы по PHP (для новичков) - 2009-09-17 13:13:00.746666   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
header("Location: http://rambler.ru");
Post #: 1045
RE: Вопросы по PHP (для новичков) - 2009-09-17 13:17:33.320000   
orthoxor

Сообщений: 110
Оценки: 0
Присоединился: 2009-08-07 13:46:30.943333
Че-то не догоняю. Может, вопрос глупый, но: как это сделать без ссылок, локально? После ввода программа пишет строку и сразу же возвращается на страницу с полями ввода.
Скрипт должен быть без привязки к определенному адресу.
Post #: 1046
RE: Вопросы по PHP (для новичков) - 2009-09-17 13:22:50.140000   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
quote:

сразу же возвращается на страницу с полями ввода.


а что, у этой страницы нет адреса? Она в другой галактике?
Post #: 1047
RE: Вопросы по PHP (для новичков) - 2009-09-17 13:24:34.226666   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
exit; нет?
Post #: 1048
RE: Вопросы по PHP (для новичков) - 2009-09-17 13:27:49.740000   
Pashkela

Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
header("Location: http://rambler.ru") or die();
exit;

:)
Post #: 1049
RE: Вопросы по PHP (для новичков) - 2009-09-17 13:34:01.693333   
orthoxor

Сообщений: 110
Оценки: 0
Присоединился: 2009-08-07 13:46:30.943333
quote:

а что, у этой страницы нет адреса? Она в другой галактике?
Да, если я захочу скрипт на 500 страниц(адресов) поставить. Менять каждый раз неудобно.
Спасибо! :) Но exit не помог :(
Post #: 1050
RE: Вопросы по PHP (для новичков) - 2009-09-17 13:39:51.070000   
QunneD

Сообщений: 833
Оценки: 0
Присоединился: 2008-11-09 20:54:38.113333
quote:

Спасибо! :) Но exit не помог :(

echo "<script language=\"javascript\">document.location.href='URL';</script>";
Post #: 1051
RE: Вопросы по PHP (для новичков) - 2009-09-17 19:25:03.903333   
covetnik

Сообщений: 6
Оценки: 0
Присоединился: 2009-09-15 12:20:45.890000
Приветствую всех. Трубуется опять ваша помощь. Скрипт должен логиниться на сайте и отправлять новость. Движок DLE.
Алгоритм:
1. Получить PHPSESSID.
2. Получить dle_password
3. Получаем user_hash. user_hash генериться при загрузке страницы добавления новости.(н-р: сайт.ру/admin.php?mod=addnews&action=addnews)
4. Отправляем готовую статью с вычлененными PHPSESSID, dle_password и user_hash.

Сам скрипт:
&lt;? $username = "admin"; // логин $password = "999999999"; // пароль $hostname = "ng77.ru"; $site = "/y.php"; // путь к админке $adm = "/y.php?mod=addnews&action=addnews"; // ссылка на добавление новости $fp = fsockopen($hostname, 80, $errno, $errstr, 30); // Устанавливаем соединение if (!$fp) echo "Ошибка: $errstr ($errno)&lt;br /&gt;\n"; // Проверяем успешность установки соединения else { // Формируем HTTP-заголовки для передачи его серверу $headers = "GET $site HTTP/1.1\r\n"; $headers .= "Host: $hostname\r\n"; $headers .= "Connection: Close\r\n\r\n"; fwrite($fp, $headers); // Отправляем HTTP-запрос серверу while (!feof($fp)) // Получаем ответ { $line = fgets($fp, 1024); preg_match("|Set-Cookie: PHPSESSID=([\d\w]+);|i",$line,$out); if(!empty($out[1])) { $SID = $out[1]; echo "Показываю сессию".$SID."&lt;br&gt;&lt;br&gt;"; break; } } fclose($fp); } $line = ""; $hostname = "ng77.ru"; // Логинимся и получаем dle_password ////////////////////////////// $fp = fsockopen($hostname, 80, $errno, $errstr, 30); if (!$fp) echo "$errstr ($errno)&lt;br /&gt;\n"; // Проверяем успешность установки соединения else { // Данные POST-запроса $data = "subaction=dologin&username=$username&password=$password"; $headers = "POST $site HTTP/1.1\r\n"; $headers .= "User-Agent: ANTI - NG7.RU\r\n"; $headers .= "Host: $hostname\r\n"; $headers .= "Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1\r\n"; $headers .= "Referer: http://$hostname\r\n"; $headers .= "Cookie: PHPSESSID=$SID\r\n"; $headers .= "Cookie2 : $Version=1\r\n"; $headers .= "Connection: Keep-Alive, TE\r\n"; $headers .= "Content-Length: ".strlen($data)."\r\n"; $headers .= "Content-Type: application/x-www-form-urlencoded\r\n\r\n"; fwrite($fp, $headers.$data); while (!feof($fp)) { $line .= fgets($fp, 1024); preg_match("|Set-Cookie: dle_password=([\d\w]+)|i",$line,$out); if(!empty($out[1])) { $D_PASS = $out[1]; echo "Показываю dle_password".$D_PASS."&lt;br&gt;&lt;br&gt;"; break; } } fclose($fp); } $line = ""; $hostname = "ng77.ru"; // получаем user_hash ////////////////////////////// $fp = fsockopen($hostname, 80, $errno, $errstr, 30); if (!$fp) echo "$errstr ($errno)&lt;br /&gt;\n"; // Проверяем успешность установки соединения else { $headers = "GET $adm HTTP/1.1\r\n"; $headers .= "User-Agent: ANTI - NG7.RU\r\n"; $headers .= "Host: $hostname\r\n"; $headers .= "Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1\r\n"; $headers .= "Referer: http://ng77.ru/y.php?\r\n"; $headers .= "Cookie: PHPSESSID=$SID; dle_user_id=1; dle_password=$D_PASS\r\n"; $headers .= "Cookie2 : $Version=1\r\n"; $headers .= "Connection: Keep-Alive, TE\r\n"; $headers .= "Content-Length: ".strlen($data)."\r\n"; $headers .= "Content-Type: application/x-www-form-urlencoded\r\n\r\n"; fwrite($fp, $headers); while (!feof($fp)) { $line .= fgets($fp, 1024); preg_match("|name=user_hash value=([\d\w]+)|i",$line,$out2); if(!empty($out2[1])) { $U_HASH = $out2[1]; echo "Показываю user_hash".$U_HASH."&lt;br&gt;&lt;br&gt;"; break; } } fclose($fp); } $line = ""; $hostname = "ng77.ru"; //выдергиваем новость и отправляем на сайт $title = "заголовок статьи"; $short = "короткая статья"; $full = "полная статья"; $title = urlencode($title); $short = urlencode($short); $full = urlencode($full); // отправляем новость ////////////////////////////// $fp = fsockopen($hostname, 80, $errno, $errstr, 30); if (!$fp) echo "$errstr ($errno)&lt;br /&gt;\n"; // Проверяем успешность установки соединения else { // Данные POST-запроса $data = "title=$title&newdate=&allow_date=yes&category%5B%5D=2&bbfont=0&bbsize=0&short_story=$short&full_story=$full&approve=1&allow_br=1&vote_title=&frage=&vote_bоdу=&catalog_url=&alt_name=&tags=&expires=&expires_action=0&meta_title=&descr=&keywords=&group_extra%5B2%5D=0&group_extra%5B3%5D=0&group_extra%5B4%5D=0&group_extra%5B5%5D=0&mod=addnews&action=doaddnews&user_hash=$U_HASH"; $headers = "POST $site HTTP/1.1\r\n"; $headers .= "User-Agent: ANTI - NG7.RU\r\n"; $headers .= "Host: $hostname\r\n"; $headers .= "Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1\r\n"; $headers .= "Referer: http://$hostname\r\n"; $headers .= "Cookie: PHPSESSID=$SID; dle_user_id=1; dle_password=$D_PASS\r\n"; $headers .= "Cookie2 : $Version=1\r\n"; $headers .= "Connection: Keep-Alive, TE\r\n"; $headers .= "Content-Length: ".strlen($data)."\r\n"; $headers .= "Content-Type: application/x-www-form-urlencoded\r\n\r\n"; fwrite($fp, $headers.$data); while (!feof($fp)) { $line .= fgets($fp, 1024); } echo $line; fclose($fp); } ?&gt; Прогу запускал частями. Работает только до момента получения dle_password. Дальше она зависает. Видимо ей не нравится как я ищу user_hash. Где то допустил ошибку наверное. Подскажите люди добрые, где она. А то весь день код ковыряю и безрезультатно. Только ради бога, не надо этот скрипт переписывать под курл. Мне нужно просто найти ошибку(и).
Post #: 1052
RE: Вопросы по PHP (для новичков) - 2009-09-18 12:25:42.313333   
covetnik

Сообщений: 6
Оценки: 0
Присоединился: 2009-09-15 12:20:45.890000
Спасибо за внимание. Я сам разобрался. Всем удачи)
Post #: 1053
RE: Вопросы по PHP (для новичков) - 2009-09-20 13:45:13.583333   
МегаЛамер

Сообщений: 64
Оценки: 0
Присоединился: 2009-05-14 20:39:48.716666
может кто подскажет как решить проблему которую о которой я писал вот тут http://forum.xakep.ru/m_1580345/tm.htm

если бы данные выводились в 1 блок то былобы все легко и понятно
но тут выводится в 2 блока :( и я не могу сообразить как это сделать
Post #: 1054
RE: Вопросы по PHP (для новичков) - 2009-09-22 22:12:19.986666   
Head Crusher

Сообщений: 10
Оценки: 0
Присоединился: 2009-09-03 18:46:21.893333
Не получается создать таблицу пишет таблицу создать не удалось!!!!!!! В чем может быть причина ??

<?php
$Link = mysql_connect('localhost', 'root', '12345');

if (!$Link) echo "Не удалось подключиться к серверу";
 else
{
  mysql_select_db('Test');

  $sql = "CREATE TABLE 'Users' ('UserID' VARCHAR(5) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci NOT NULL, ".
       "'Name1' VARCHAR(25) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci, ".
       "'Name2' VARCHAR(25) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci, ".
       "'Name3' VARCHAR(25) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci)";
 
   if (mysql_query($sql))
   echo "Создание таблицы завершено";
 else
   echo "Таблицу создать не удалось";
}

?>
Помогите плз разобраться[:(]
Post #: 1055
RE: Вопросы по PHP (для новичков) - 2009-09-22 22:14:28.010000   
Head Crusher

Сообщений: 10
Оценки: 0
Присоединился: 2009-09-03 18:46:21.893333
Я использую - php-5.2.9-2-win32-installer(2).msi
                    mysql-essential-5.0.67-win32.msi
                    apache_2.2.13-win32-x86-openssl-0.9.8k.msi
Post #: 1056
RE: Вопросы по PHP (для новичков) - 2009-09-22 22:37:47.936666   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
Нужно из запроса убрать апострофы. Или использовать обратные.
Post #: 1057
RE: Вопросы по PHP (для новичков) - 2009-09-22 22:57:00.556666   
Head Crusher

Сообщений: 10
Оценки: 0
Присоединился: 2009-09-03 18:46:21.893333
Неа нефига !!!
Я только учусь. Ну я так понял если бы оно не подлючалось к серверу была бы така надпись                echo "Не удалось подключиться к серверу"; в браузере !!! а так ничего нету и я немогу разобраться в чем дело (((((((((
Post #: 1058
RE: Вопросы по PHP (для новичков) - 2009-09-22 23:17:01.963333   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
quote:

пишет таблицу создать не удалось
quote:

а так ничего нету
Так все-таки пишет "Таблицу создать не удалось" или вообще ничего не пишет ?
Добавьте в конец скрипта строку echo mysql_error();
Post #: 1059
RE: Вопросы по PHP (для новичков) - 2009-09-22 23:26:32.850000   
Head Crusher

Сообщений: 10
Оценки: 0
Присоединился: 2009-09-03 18:46:21.893333
Таблицу создать не удалосьYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''Users' ('UserID' VARCHAR(5) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci NO' at line 1
Post #: 1060
RE: Вопросы по PHP (для новичков) - 2009-09-22 23:27:43.010000   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
quote:

Нужно из запроса убрать апострофы. Или использовать обратные.
Post #: 1061
RE: Вопросы по PHP (для новичков) - 2009-09-22 23:29:13.493333   
FriLL

Сообщений: 2539
Оценки: 335
Присоединился: 2007-08-11 17:14:26.703333

quote:

ORIGINAL: Head Crusher

Не получается создать таблицу пишет таблицу создать не удалось!!!!!!! В чем может быть причина ??

&lt;?php
$Link = mysql_connect('localhost', 'root', '12345');

if (!$Link) echo "Не удалось подключиться к серверу";
else
{
mysql_select_db('Test');

$sql = "CREATE TABLE 'Users' ('UserID' VARCHAR(5) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci NOT NULL, ".
      "'Name1' VARCHAR(25) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci, ".
      "'Name2' VARCHAR(25) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci, ".
      "'Name3' VARCHAR(25) CHARACTER SET cp1251 COLLATE cp1251_ukrainian_ci)";

  if (mysql_query($sql))
  echo "Создание таблицы завершено";
else
  echo "Таблицу создать не удалось";
}

?&gt;
Помогите плз разобраться[:(]

создай таблицу в PHpmyadmin а потом скопируй сгенерированный SQL код
Post #: 1062
RE: Вопросы по PHP (для новичков) - 2009-09-22 23:31:22.850000   
Head Crusher

Сообщений: 10
Оценки: 0
Присоединился: 2009-09-03 18:46:21.893333
Всё ))) спс 
Post #: 1063
RE: Вопросы по PHP (для новичков) - 2009-09-23 12:45:42.976666   
cyberx

Сообщений: 83
Оценки: 0
Присоединился: 2009-01-04 11:47:38.966666
у меня вопрос по cookies. есть такой код
&lt;?php if (isset($_SERVER['HTTP_REFERER'])){$link = $_SERVER['HTTP_REFERER'];} else {$link = $_SERVER['REQUEST_URI'];} $agent = $_SERVER['HTTP_USER_AGENT']; if($agent==''){$agent="None";} $ip = getenv("HTTP_X_FORWARDED_FOR"); if(empty($ip) || $ip =='unknown') {$ip = getenv("REMOTE_ADDR");} mysql_query ("insert into monitoring (ip,date,agent,link) values('$ip',NOW(),'$agent','$link')"); ?&gt;
он срабатывает при какой нибудь ошибке. кроме этого я хочу добавить кражу cookies. если кто то будет пытаться взламывать чтоб кроме этих данных я мог украсть cookies. как добавить сюда этот код и имеет ли смысл это делать?
Post #: 1064
RE: Вопросы по PHP (для новичков) - 2009-09-23 13:37:20.260000   
codeismy.name

Сообщений: 618
Оценки: 0
Присоединился: 2009-07-19 00:30:13.200000
смысла если честно не имеет так как возьмёт только куки с твоего сайта… но опять же если это один из зарегеных то можно вычислить кто
куки все находятся в суперглобальном массиве
$_COOKIE
делаеш
print_r($_COOKIE);
и тебе все куки юзера для данного сайта принтит….
есть конечно вариант яваскриптом по хистори полазить но это уже не серверная технология
Post #: 1065
RE: Вопросы по PHP (для новичков) - 2009-09-23 13:54:58.916666   
cyberx

Сообщений: 83
Оценки: 0
Присоединился: 2009-01-04 11:47:38.966666
а есть еше способ украсть COOKIE?
Post #: 1066
RE: Вопросы по PHP (для новичков) - 2009-09-23 14:02:33.930000   
codeismy.name

Сообщений: 618
Оценки: 0
Присоединился: 2009-07-19 00:30:13.200000
есть способ украсть всю хистори с идентификаторами сессий, что теоретически может привести к уязвимости… но опять же, чужие куки никак не стащить :)
Post #: 1067
RE: Вопросы по PHP (для новичков) - 2009-09-23 14:33:45.226666   
cyberx

Сообщений: 83
Оценки: 0
Присоединился: 2009-01-04 11:47:38.966666
еще один вопрос, в панели админа у меня выводится Ip нарушителей и сделал так что выбрав любого могу блокировать, ну выбираю ip и даю вписать в .htaccess, но есть проблема. в .htaccess надо вписать так
 ## USER IP BANNING
<Limit GET POST>
 order allow,deny
 deny from 77.88.27.25
 deny from 80.92.181.16
 allow from all
</Limit>

не знаю как вписать именно так чтоб добавлялось deny from 80.92.181.16 а не в конец или в начале текста
Post #: 1068
RE: Вопросы по PHP (для новичков) - 2009-09-23 21:13:26.903333   
Скрипт

Сообщений: 4
Оценки: 0
Присоединился: 2009-09-23 20:53:22.550000
Вопрос такой:
Помогите авторизоваться методом post через php разумеется и спарсить данные.
Вот сам код.
&lt;?php &nbsp;&nbsp;&nbsp; //логин и пароль &nbsp;&nbsp;&nbsp; $login = 'user'; &nbsp;&nbsp;&nbsp; $pass = 'user_pass'; &nbsp;&nbsp;&nbsp; // Создаем подключение &nbsp;&nbsp;&nbsp; if( $curl = curl_init() ){ &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Нужно загрузить главную страниц &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; curl_setopt($curl,CURLOPT_URL,'http://testsite.ru/'); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Нужно помнить куки &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; curl_setopt($curl, CURLOPT_COOKIESESSION, TRUE); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; curl_setopt($curl, CURLOPT_COOKIEFILE, "cookiefile"); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Скачанный код возвращаем в переменную, а не в поток &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; curl_setopt($curl,CURLOPT_RETURNTRANSFER,true); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // "Следовать туда, куда зовут". Если сервис выдает 302 код &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; curl_setopt($curl,CURLOPT_FOLLOWLOCATION,true); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Таймаут, если сервис не отвечает больше 30 секунд, выходим &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,30); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; curl_setopt($curl,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3'); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Если все ок, в $html вернется html код главной страницы &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if( $html = curl_exec($curl) ){ &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Указываем куда отправлять запрос &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; curl_setopt($curl,CURLOPT_URL,'http://testsite.ru/login.php'); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Указываем, что именно отправлять в POST данных, на этой стадии происходит ввод логина/пароля &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; curl_setopt($curl,CURLOPT_POSTFIELDS,"LOGIN_redirect=1&amp;login=$login&amp;lreseted=1&amp;pass=$pass&amp;preseted=1&amp;lbut.x=0&amp;lbut.y=0"); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Если все ок, в $html вернется html код главной страницы &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if( $html = curl_exec($curl) ){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //спарсим главную страницу после входа &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ht = file_get_contents('http://testsite.ru/home.php'); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; preg_match_all('@(.+?)@',$ht,$matches); &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; foreach($matches[0] as $match){ &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp; print "$match"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } } }&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // Закрываем подключение, очищаем память &nbsp;curl_close($curl); } ?&gt;
Форма ввода располагается на главной странице.
После ввода, данные отправляются в login.php и оттуда идет переадресовка в home.php
НО, меня выкидывает на index.php =\ Тем самым показывая снова форму вводу…

Помогите пожалуйста.


Post #: 1069
RE: Вопросы по PHP (для новичков) - 2009-09-23 21:32:53.623333   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
Адресок то дашь?
Post #: 1070
RE: Вопросы по PHP (для новичков) - 2009-09-23 21:40:07.910000   
Скрипт

Сообщений: 4
Оценки: 0
Присоединился: 2009-09-23 20:53:22.550000
heroeswm.ру
Post #: 1071
RE: Вопросы по PHP (для новичков) - 2009-09-23 21:43:37.740000   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
надо www. перед адресом поставить. в скрипте)
Post #: 1072
RE: Вопросы по PHP (для новичков) - 2009-09-23 21:55:56.990000   
cyberx

Сообщений: 83
Оценки: 0
Присоединился: 2009-01-04 11:47:38.966666
может кто скажет можно ли в файл записать данные так
## USER IP BANNING
<Limit GET POST>
order allow,deny
deny from 77.88.27.25
deny from 80.92.181.16
allow from all
</Limit>
и чтоб добавлялось только deny from ****** 
Post #: 1073
RE: Вопросы по PHP (для новичков) - 2009-09-23 22:03:37.206666   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
Можно.
Считываешь файл в массив с помощью file();, производишь нужные действия, сохраняешь массив в файл.
Как-нибудь попозжа сделаю две функции, insert_deny($ip) {} и remove_deny($ip) {}
Post #: 1074
RE: Вопросы по PHP (для новичков) - 2009-09-23 22:39:32.213333   
Скрипт

Сообщений: 4
Оценки: 0
Присоединился: 2009-09-23 20:53:22.550000
quote:

ORIGINAL: Cep}|{

надо www. перед адресом поставить. в скрипте)

Да, авторизацию проходит. Но по прежнему не прокатывает парсинг home.php, www. тоже подставил…


Post #: 1075
RE: Вопросы по PHP (для новичков) - 2009-09-23 22:41:55.003333   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
Нужная инфа есть в получаемой курлом переменной ?
Post #: 1076
RE: Вопросы по PHP (для новичков) - 2009-09-23 22:57:40.536666   
Скрипт

Сообщений: 4
Оценки: 0
Присоединился: 2009-09-23 20:53:22.550000
Нет.
Мне вообще не понятно: логин проходит и остается он-лайн, а сам парсинг пишет "Вы не авторизованы" и нет возможности парсить страницы, которые доступны залогинным.
Post #: 1077
RE: Вопросы по PHP (для новичков) - 2009-09-23 23:09:53.086666   
Cep}|{

Сообщений: 1396
Оценки: 0
Присоединился: 2007-06-26 01:11:51.416666
Конечно там ничего не будет) Надо получать страницу курлом а не file_get_contents();ом.
Это $ht = file_get_contents('http://testsite.ru/home.php'); здесь не надо. Страница лежит в $html
Post #: 1078
RE: Вопросы по PHP (для новичков) - 2009-09-23 23:32:20.520000   
cyberx

Сообщений: 83
Оценки: 0
Присоединился: 2009-01-04 11:47:38.966666
да хорошо было бы если объяснили как это делается. Принцип та я знаю, просто я новичок в php и точно не знаю как написать 
Post #: 1079
RE: Вопросы по PHP (для новичков) - 2009-09-24 00:16:39.983333   
cyberx

Сообщений: 83
Оценки: 0
Присоединился: 2009-01-04 11:47:38.966666
вот этот код и я хочу его модифицировать
quote:

&lt;?php
if (isset($_POST['s_ip'])) {$s_ip = $_POST['s_ip'];}
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;
&nbsp; $filename = ".htaccess";
&nbsp; $newfile = @fopen($filename, "a+") or exit("Невозможно открыть файл");
&nbsp; $file_contents = "\n$s_ip";
&nbsp; fwrite($newfile, $file_contents);
&nbsp; fclose($newfile);
&nbsp; echo "&lt;html&gt;&lt;head&gt;&lt;meta http-equiv='Refresh' content='0; URL=monitoring.php'&gt;&lt;/head&gt;&lt;/html&gt;";
?&gt;

Post #: 1080
Страниц:  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 [27] 28 29 30 31 32 33 34 35 36 37 38
Все форумы >> [Веб-программинг] >> RE: Вопросы по PHP (для новичков)







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.