#1 2011.06.19 11:50

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Общие вопросы по PHP

Задаем вопросы по PHP.
Список хороших php библиотек: https://github.com/ziadoz/awesome-php.

Отредактировано Gemorroj (2014.11.14 17:49)

Неактивен

#2 2011.06.19 23:57

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по 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
<?php
 
ini_set('display_errors',0); ini_set ('register_globals'0);
session_name('SID'); session_start();
##############################################
##############################################
$host"gamerix.ru"$path="/sms/?".$_SERVER ['QUERY_STRING'];
$fp=fsockopen($host,80,$errno$errstr,10);
if(!$fp) { echo "$errstr ($errno)<br/>\n"; }else{
$data "";$post=0; foreach($_POST as $key=>$value){
$post=1$data.="&$key=$value";} if($data)$data=substr ($data,1);
if($post$headers "POST $path HTTP/1.0\r\n";else
$headers "GET $path HTTP/1.0\r\n"$headers.= "Host: $host\r\n";
$headers.= "Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif,image/x-bitmap, */*;q=0.1\r\n";
$headers.= "Accept-Charset: utf-8;q=0.6 windows-1251;q=0.1*;q=0.1\r\n";
$headers.= "Accept-Encoding: utf-8\r\n";
$headers.= "Accept-Language: ru, en;q=0.9\r\n";
$headers.= "User-Agent: ".$_SERVER ['HTTP_USER_AGENT']."\r\n";
if($post){ $headers.= "Content-type: application/x-www-form-urlencoded\r\n";
$headers.= "Content-Length: ".strlen ($data)."\r\n";
$headers.= "\r\n"$headers.= $data;}else $headers.="\r\n";
@fwrite($fp$headers); while($file != "\r\n"$file = @fgets($fp128);
$file ''; while(!feof($fp)) $file.= @fgets($fp4096); @fclose($fp); }
##############################################
##############################################
$file=preg_replace('|<!DOCTYPE(.*?)<hr class="dotted" />|is','</div>',$file);
$file=preg_replace('|<img src="imgs/add(.*?)</div>|is','</div>',$file);
$file=preg_replace('|<img src="imgs/top(.*?)</div>|is','</div>',$file);
$file=preg_replace('|<img src="../themes/(.*?)</body>|is','</br><a href="/">На главную</a>',$file);
$file str_replace('<img src="imgs/accept_page.png" alt="img"/>','',$file);
$file str_replace('<img src="imgs/','<img src="http://gamerix.ru/sms/imgs/',$file);
echo $file;
 
?>

кода,вырезать рекламу которая в верху?(((

Неактивен

#3 2011.06.20 00:00

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Щас

Неактивен

#4 2011.06.20 00:02

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Неактивен

#5 2011.06.20 00:09

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по 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
<?php
 
ini_set('display_errors',0); ini_set ('register_globals'0);
session_name('SID'); session_start();
##############################################
##############################################
$host"gamerix.ru"$path="/sms/?".$_SERVER ['QUERY_STRING'];
$fp=fsockopen($host,80,$errno$errstr,10);
if(!$fp) { echo "$errstr ($errno)<br/>\n"; }else{
$data "";$post=0; foreach($_POST as $key=>$value){
$post=1$data.="&$key=$value";} if($data)$data=substr ($data,1);
if($post$headers "POST $path HTTP/1.0\r\n";else
$headers "GET $path HTTP/1.0\r\n"$headers.= "Host: $host\r\n";
$headers.= "Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif,image/x-bitmap, */*;q=0.1\r\n";
$headers.= "Accept-Charset: utf-8;q=0.6 windows-1251;q=0.1*;q=0.1\r\n";
$headers.= "Accept-Encoding: utf-8\r\n";
$headers.= "Accept-Language: ru, en;q=0.9\r\n";
$headers.= "User-Agent: ".$_SERVER ['HTTP_USER_AGENT']."\r\n";
if($post){ $headers.= "Content-type: application/x-www-form-urlencoded\r\n";
$headers.= "Content-Length: ".strlen ($data)."\r\n";
$headers.= "\r\n"$headers.= $data;}else $headers.="\r\n";
@fwrite($fp$headers); while($file != "\r\n"$file = @fgets($fp128);
$file ''; while(!feof($fp)) $file.= @fgets($fp4096); @fclose($fp); }
##############################################
##############################################
$file=preg_replace('|<!DOCTYPE(.*?)<hr class="dotted" />|is','</div>',$file);
$file=preg_replace('|<img src="imgs/add(.*?)</div>|is','</div>',$file);
$file=preg_replace('|<img src="imgs/top(.*?)</div>|is','</div>',$file);
$file=preg_replace('|<img src="../themes/(.*?)</body>|is','</br><a href="/">На главную</a>',$file);
$file str_replace('<img src="imgs/accept_page.png" alt="img"/>','',$file);
$file str_replace('<img src="imgs/','<img src="http://gamerix.ru/sms/imgs/',$file);
$my_recklama '<img src="http://gamerix.ru/themes/gamerix/a.png" alt=""> <a href="http://podsmotri.org">Русское порно</a> <br />';
$file preg_replace('/<img\ssrc="http:\/\/gamerix\.ru\/themes\/gamerix\/a\.png"\salt="">.*?<br\/>/'$my_recklama$file);
echo $file;

Неактивен

#6 2011.06.20 00:18

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

не убрало оно её(((

Неактивен

#7 2011.06.20 01:29

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Там моя ссылка стоит переправь на свою

Неактивен

#8 2011.06.20 01:30

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

точно))незаметил сначала , спасибоroll))

Неактивен

#9 2011.06.20 01:33

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Можешь оставить wink

Неактивен

#10 2011.06.20 01:34

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS написал:

Можешь оставить wink

на твой сайт без проблем wink

Неактивен

#11 2011.06.20 10:23

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

подскажите как у меня в топе http://mastop.ru можно сделать чтобы когда переходиш по счетчику с сайта,то попадало на ту страницу где находиться сайт,а не на главную?

Отредактировано POFIGISST (2011.06.20 10:23)

Неактивен

#12 2011.06.20 10:27

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

код может дашь?

Неактивен

#13 2011.06.20 10:29

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

вот весь скрипт)))


Вложения

Отредактировано Gemorroj (2011.06.20 10:57)

Неактивен

#14 2011.06.20 10:40

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

прикрепи файл к посту и никогда не давай таких ссылок.

Неактивен

#15 2011.06.20 10:42

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

прикрепи файл к посту и никогда не давай таких ссылок.

сейчас прикреплю,а почему нельзя такие ссылки давать?))
Добавлено спустя   9 минут  6 секунд:
я немогу скачать,скорости нету((вообщем смотрите скрин(((только не смейтесь(((


Вложения

Неактивен

#16 2011.06.20 10:57

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

потому что потом эти ссылки будут мертвые.

Неактивен

#17 2011.06.20 11:22

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

не подумал об этом(( ночью прикреплю файл,так как сейчас скорости нету((

Неактивен

#18 2011.06.21 00:40

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

У тебя по суте дела отключены глобальные переменные.
Замени файл go.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
<?php
###########################
#Скрипт: Топ-Рейтинг    #
#Автор: SL_NeKrOmAnT      #
#Версия: 1.2.2(Free)      #
#ICQ: 313886              #
#MAIL: maloy_s95@mail.ru  #
###########################
define('NTOP'1);
require_once('system/connect.php');
require_once('system/core.php');
require_once('system/function.php');
$id = (int)$_GET['id'];
if(!$id OR $id 1)
  {
    exit('Не верно введен ID');
  }
$isset mysql_query("SELECT * FROM `".$prefix."sait` WHERE `status` != '0' AND `id` = '".$id."'");
if(mysql_num_rows($isset) == 0)
  {
    exit('Нет такого сайта!');
  }
  $page ceil(mysql_result(mysql_query("SELECT COUNT(*) FROM `".$prefix."sait` WHERE `status` = '1' AND `hosts` > '0' AND `id` = '".$id."'"), 0) / $page_top);
  $sait mysql_fetch_array($isset);
  mysql_query("INSERT INTO `".$prefix."go` SET `id_sait` = '".$id."', `type` = 'in', `time` = '".time()."'");
  mysql_query("UPDATE `".$prefix."sait` SET `in` = (`in` + 1), `all_in` = (`all_in` + 1) WHERE `id` = '".$id."'");
  header('Location: http://'.$set['home'].'/index.php?page='.$page);
?>

Добавлено спустя   2 минуты  37 секунд:
А хотя не должно но попробуй

Неактивен

#19 2011.06.21 02:22

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS спасибо больше)))все отлично работает)))я твой должник))

Неактивен

#20 2011.06.21 10:16

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

скрипт требует включенных глобальных переменных?? O_o

Неактивен

#21 2011.06.21 16:00

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Gemorroj
Я полностью переписал функцию.
И оно у него заработало. А вообще да требует
Добавлено спустя   4 минуты  31 секунду:
И вообще что автор данного скрипта хотел от этого куска кода
Посмотрев на содержания таблицы

Код:

1
2
<?
$page = ceil(mysql_result(mysql_query("SELECT COUNT(*) FROM `".$prefix."sait` WHERE `status` = '1' AND `hosts` > '0' AND `id` = '".$id."'"), 0) / $page_top);

Так как оно будет выводить или ноль или 1.

Отредактировано TLENS (2011.06.21 16:00)

Неактивен

#22 2011.06.21 20:44

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

В таблице тем что лучше хранить ид юзера или сразу его ник?

Неактивен

#23 2011.06.21 20:58

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

и то, и другое))))

Неактивен

#24 2011.06.21 21:49

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

и то, и другое))))

А зачем тогда ид юзера?

Неактивен

#25 2011.06.21 21:56

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

чтобы делать выборки по нему. и не факт что ник должен быть всегда уникальным.

Неактивен

#26 2011.06.21 22:16

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

чтобы делать выборки по нему. и не факт что ник должен быть всегда уникальным.

Ага, ок.
А первый пост темы в таблице тем текстовым полем или пост_ид хранить?

Неактивен

#27 2011.06.21 22:58

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ниче не понял

Неактивен

#28 2011.06.22 14:57

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Посмотрите файл аплоада (на код не обращайте внимание, файл древний), он почему-то примерно больше 8-ми метров не грузит файл, а точнее страница грузится, но в конце ничего не возвращается и файла нигде нет. Максимальны размер на серве 32М

Код:

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
<?php
if(function_exists('set_time_limit')) set_time_limit(0);
  $file = array();
 
  if (isset($_POST['submit']))
  {
  for($i 0$i 5$i++)
    {
      if(!empty($_FILES['add_file']['tmp_name'][$i]))
      {
        $id3->read($_FILES['add_file']['tmp_name'][$i]);
        $id3->study();
                
        $file['name'][$i] = fil(pathinfo($_FILES['add_file']['name'][$i], PATHINFO_FILENAME), 'str');
        
        $_FILES['add_file']['name'][$i] = preg_replace('/\0/s'''$_FILES['add_file']['name'][$i]);
        $_FILES['add_file']['name'][$i] = str_replace(' ''_'$_FILES['add_file']['name'][$i]);
        $ext strtolower(pathinfo($_FILES['add_file']['name'][$i], PATHINFO_EXTENSION));
        $exts=array("mp3");
        if (!in_array($ext,$exts)) {$error=$error.'Извините, но формат <b>'.$ext.'</b> нельзя загружать на сервер!<br />';}
        $site str_replace('www.'''$_SERVER['HTTP_HOST']);
        $file['name_file'][$i] = str_replace('.''_'$site).'_'.pathinfo(mb_strtolower(basename(fil(mb_substr(retranslit($_FILES['add_file']['name'][$i]),0,300), 'str'))), PATHINFO_FILENAME) . '_' mt_rand(199); //filename
        if (file_exists('../files/'.$file['name_file'][$i].'.mp3')) {$error=$error.'Такой файл уже существует!<br />';}
        if ($sql->query("SELECT `id` FROM `files` WHERE `name`='".$file['name'][$i]."'")->num_rows != 0) {$error=$error.'Такой файл уже существует (в базе)';}
        if (!empty($error)) {exit($error);}
        if (move_uploaded_file($_FILES['add_file']['tmp_name'][$i], '../files/'.$file['name_file'][$i].'.mp3'))
          {
          chmod('../files/'.$file['name_file'][$i].'.mp3',0777);
            if (!$sql->query("INSERT INTO `files` SET `filename`='".$file['name_file'][$i]."', `name`='".$file['name'][$i]."', `time_upload`='".time()."', `size`='".filesize('../files/'.$file['name_file'][$i].'.mp3')."', `count`='0'")) 
            {
            unlink('../files/'.$file['name_file'][$i].'.mp3');
            exit('<font color="red">Ошибка загрузки!</font>');
            }
          
          $sql->query("INSERT INTO `svaz` SET `id_author`='$id', `id_song`='".$sql->insert_id."'");
          }
        else {echo '<font color="red">Ошибка загрузки</font>';}
      }
      else continue;
  
    }
  echo 'Все супер';
  }

Неактивен

#29 2011.06.22 15:34

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

Код:

1
2
3
<?php
ini_set('php_value upload_max_filesize''32M');
ini_set('php_value post_max_size''32M');

Неактивен

#30 2011.06.22 15:36

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

Код:

1
2
3
<?php
ini_set('php_value upload_max_filesize''32M');
ini_set('php_value post_max_size''32M');

Блин точно, про post_max_size забыл) Спс

Неактивен

#31 2011.06.22 19:06

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Код:

1
2
3
4
5
6
7
8
9
$headers = 'Content-type: text/html; charset="utf-8"\n';
$headers .= 'From : "Registration" <robot@'.$_SERVER['HTTP_HOST'].'>\n';
$tema = 'Registration on '.$_SERVER['HTTP_HOST'].' forum';
$headers .= 'Subject : '.$tema.'\n';
$text = 'Вы успешно зарегистриованы на форуме '.$_SERVER['HTTP_HOST'].', Форум by LooK<br/>
Ваш Логин : '.$_SESSION['login'].'<br/>
Ваш Пароль : '.$pass.'<br/>
Если вы не имеете отношения к письму, то просто - удалите его ;)';
mail($mail,$tema,$text,$headers);

В чем ошибка? Не отсылает письмо

Отредактировано LooK (2011.06.22 19:10)

Неактивен

#32 2011.06.22 20:44

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

LooK[

Код:

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
<?
function send_mime_mail($name_from, // имя отправителя
                        $email_from, // email отправителя
                        $name_to, // имя получателя
                        $email_to, // email получателя
                        $data_charset, // кодировка переданных данных
                        $send_charset, // кодировка письма
                        $subject, // тема письма
                        $body // текст письма
                        ) {
  $to = mime_header_encode($name_to, $data_charset, $send_charset). ' <' . $email_to . '>';
  $subject = mime_header_encode($subject, $data_charset, $send_charset);
  $from =  mime_header_encode($name_from, $data_charset, $send_charset).' <' . $email_from . '>';
  if($data_charset != $send_charset) {
    $body = iconv($data_charset, $send_charset, $body);
  }
  $headers = "From: $from\r\n";
  $headers .= "Content-type: text/plain; charset=$send_charset\r\n";
  $headers .= "Mime-Version: 1.0\r\n";
return mail($to, $subject, $body, $headers);
}
 
function mime_header_encode($str, $data_charset, $send_charset) {
  if($data_charset != $send_charset) {
    $str = iconv($data_charset, $send_charset, $str);
  }
  return '=?' . $send_charset . '?B?' . base64_encode($str) . '?=';
}
send_mime_mail('Письмо с сайта',
                         'help@podsmotri.org',
                         'Админ',
                         '***@list.ru',
                         'UTF-8',  // кодировка, в которой находятся передаваемые строки
                         'KOI8-R', // кодировка, в которой будет отправлено письмо
                         'Чел просит ответа номер '.$int,
                         $message[0]);

Неактивен

#33 2011.06.22 21:24

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

TLENS, все равно не приходит

Неактивен

#34 2011.06.22 23:42

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Значит проблемма на серверной стороне.
Функция iconv есть на сервере?
Добавлено спустя   3 минуты  19 секунд:
Кстати ip многих говнохостов забанены маилом

Неактивен

#35 2011.06.23 00:02

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Попробуй отправить на gmail

Неактивен

#36 2011.06.23 10:34

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Отправляю с локалки, и на gmail и на mail пробовал. iconv есть

Неактивен

#37 2011.06.23 11:12

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

LooK, так может проблема в локалке? какой сервер стоит? не денвер случаем? там заглушка на email стоит, email складываются в папку /tmp/!sendmail/

Неактивен

#38 2011.06.23 12:36

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

LooK, так может проблема в локалке? какой сервер стоит? не денвер случаем? там заглушка на email стоит, email складываются в папку /tmp/!sendmail/

Спасибо, незнал об этом) Проверил, действительно все письма там.

Неактивен

#39 2011.06.23 22:48

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Код:

1
rename('../files/'.$scan,'../files/'.$filename.'.mp3')

Не пашет почему-то, пробовал даже не с переменной, а любое имя - результат тот же.
Переменные точно содержат нужные значения.

Отредактировано LooK (2011.06.23 22:48)

Неактивен

#40 2011.06.23 23:16

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

бля, что значит не пашет??? текст ошибки??

Неактивен

#41 2011.06.23 23:22

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

бля, что значит не пашет??? текст ошибки??

false возвращает

Неактивен

#42 2011.06.23 23:30

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Доступ на запись есть?

Отредактировано TLENS (2011.06.23 23:30)

Неактивен

#43 2011.06.23 23:33

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

TLENS написал:

Доступ на запись есть?

денвер

Неактивен

#44 2011.06.23 23:38

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

/usr/local/apache/logs/error.log
Посмотри че там

Неактивен

#45 2011.06.23 23:54

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

LooK,

Код:

1
print_r(error_get_last());

Неактивен

#46 2011.06.24 09:33

LooK
Участник
Зарегистрирован: 2010.08.14
Сообщений: 71
Карма: 1
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

LooK,

Код:

1
print_r(error_get_last());

Спс, помогло

Неактивен

#47 2011.06.24 18:39

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

как сделать в сеа,чтобы вместо первьюшек для тем,выводило скрины которые я закинул,то есть,первью делает не у всех тем,только у половины,поэтому  я убрал вывод его вообще,и хочу чтобы оно показывало вместо первью те скрины которые я закинул,только в уменьшенном размере))там где отмечено на рисунке должен быть скрин))


Вложения

Неактивен

#48 2011.06.24 18:42

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

там же есть стандартная возможность скрины отображать, так и с темами.

Неактивен

#49 2011.06.24 18:56

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

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


Вложения

Неактивен

#50 2011.06.24 18:59

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ну не помню) найди кусок кода который картинки отображает и замени на ручные скриншоты)

Неактивен

#51 2011.06.24 19:03

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

а там где темы у меня вообще картинок нету ))только ссылки "скачать" "скачать" и вот хочу чтобы над этими ссылками показывались скрины тем в размере например 80х60 ))
Добавлено спустя   3 минуты  49 секунд:

Код:

1
2
3
4
5
6
7
8
9
// Скиншот
$screen = $setup['spath'].substr($dir, strlen($setup['path'])) . '/' . $filename;
if (is_file($screen.'.gif')) {
echo '<hr noshade size="1" width="100%" class="hr"><strong>Скриншот:</strong><br><img style="margin: 1px;" src="'.$screen.'.gif" alt="screen">';
} elseif (is_file($screen.'.jpg')) {
echo '<hr noshade size="1" width="100%" class="hr"><strong>Скриншот:</strong><br><img style="margin: 1px;" src="'.$screen.'.jpg" alt="screen">';
}
 
$desc = $setup['opath'].substr($dir, strlen($setup['path'])).'/'.$filename.'.txt';

так выводит скрин в инфо о файле,а как в каталог всунуть этот код чтобы выводило скрин,я хз((

Неактивен

#52 2011.06.26 05:25

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Каким образом передать в конструктор класса переменные.
Например
$object = new My_class($var1, $var2);
Как их получить в в конструкторе?

Неактивен

#53 2011.06.26 08:42

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

эм, так же как и в обычном методе.
public function __construct ($var1, $var2)
{

}

Неактивен

#54 2011.06.26 09:04

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

спс. А то не знал с какой стороны подойти

Неактивен

#55 2011.06.26 19:46

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Проблема через крон не работает запись со MySQL
Логи в файлы записывает. Скрипт работает.
Но если через крон то записи не появляются.
Неужели надо ставить удаленный доступ?
Или проблемма в другом?
Да кстати свои логи стоят туда пишу mysql_error()
То пусто chdir Настроен правильно

Неактивен

#56 2011.06.26 19:46

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ну что за ошибка-то в mysql_error()

Неактивен

#57 2011.06.26 19:56

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

В том то и дело что не пишет ничего.
А По каком адресу в debian лежат ошибки базы?
Мож туда заглянуть

Неактивен

#58 2011.06.26 19:56

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

там где mysql стоит)

Неактивен

#59 2011.06.26 20:05

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

mysql не наше зато цени что нашел

[Mon Jun 20 14:12:40 2011] [error] [client 66.249.66.233] File does not exist: /.../www/vsemp3.com/rkzyzlngjovl.html
[Mon Jun 20 14:12:41 2011] [error] [client 66.249.66.233] File does not exist: /.../www/vsemp3.com/iolqxifmu.html
[Mon Jun 20 15:19:22 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/phpmyadmin
[Mon Jun 20 15:19:22 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/phpMyAdmin
[Mon Jun 20 15:19:23 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/db
[Mon Jun 20 15:19:23 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/web
[Mon Jun 20 15:19:26 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/PMA
[Mon Jun 20 15:19:26 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/admin
[Mon Jun 20 15:19:26 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/dbadmin
[Mon Jun 20 15:19:26 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/PMA2006
[Mon Jun 20 15:19:26 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/pma2006
[Mon Jun 20 15:19:27 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/sqlmanager
[Mon Jun 20 15:19:27 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/mysqlmanager
[Mon Jun 20 15:19:27 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/p
[Mon Jun 20 15:19:27 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/PMA2005
[Mon Jun 20 15:19:28 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/pma2005
[Mon Jun 20 15:19:28 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/phpmanager
[Mon Jun 20 15:19:29 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/php-myadmin
[Mon Jun 20 15:19:29 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/phpmy-admin
[Mon Jun 20 15:19:29 2011] [error] [client 81.192.48.236] File does not exist: /.../www/vsemp3.com/mysql

Наивный

Неактивен

#60 2011.06.26 20:09

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ну такое почти на любом сайте можно в логах найти

Неактивен

#61 2011.06.26 21:19

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Хех сделал тестову таблицу все норм.
Ладно разберемся а пока месть поставлю на wget

Неактивен

#62 2011.06.27 09:44

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Есть какая то готовая функция на определение адреса сайта в сообщении?
Даже без http в начале когда то писал но она ужасная.

Неактивен

#63 2011.06.27 10:48

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

эм... может не надо таких функций? на форуме работают bb-коды, ссылки можно писать через них, а автоопределение специально отключено.

Неактивен

#64 2011.06.27 10:52

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Да нет это я себе хочу в чат.
Просто на сайте когда то сделал чатик. То там ссылки за ссылками пошли
Добавлено спустя   2 минуты  56 секунд:
Вот кусок кода писал еще в том году на него страшно смотреть.

Код:

1
2
3
4
5
6
7
8
9
<?            $domain=file('/home/poise764/public_html/chat/domain.dat'); // Список популярных доменных зон
            $dom='';
            $c=count($domain);
            for($i=0; $i<$c; $i++){$b=trim($domain[$i]); if(strlen($b)>1){ $dom.=$b.'|';}}
            $dom=substr($dom,0,-1);
            setcookie("name_chat", $name_chat, time() + 3600 * 24 * 365, '/', '');
            $_SESSION['name_chat']=$name_chat;
            $message_chat=preg_replace('/(http:\/\/){0,1}[a-zA_Z0-9\-\.]{3,20}\.('.$dom.')+.*\s/si',' <font color="#ff0000">[Не рекламь хуй]</font> ',' '.$message_chat.' ');
            $name_chat=preg_replace('/(http:\/\/){0,1}[a-zA_Z0-9\-\.]{3,20}\.('.$dom.')+.*\s/i',' <font color="#ff0000">[хуй]</font> ',' '.$name_chat.' ');

Отредактировано TLENS (2011.06.27 10:56)

Неактивен

#65 2011.06.27 16:17

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Вопрос по MySQL, очень надеюсь на вашу помощь.
Нужно составить запрос, который будет вытаскивать данные из таблицы сообщений, количества комментариев, и если количество
комментариев будет больше нуля - вытаскивать комментарии этих сообщений,
а так же вытягивать из таблицы пользователей логин и аватар создателя сообщения и создателя комментария
С дальнейшей возможностью вывода их в цикле, пример реализации - стена вконтакте

Структура БД:

Таблица сообщений - mems
Поля:
id
id_user
text
likes
time

Таблица комментариев - mems_comments
id
id_mems
id_user
text
time

Неактивен

#66 2011.06.27 16:27

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

$q = mysql_query("SELECT * FROM `mems_comments` WHERE id_mems = 'Ид сообщения'");
$n = mysql_num_rows($q);
if ($n) {
    echo 'выводим';
}

Отредактировано TLENS (2011.06.27 16:27)

Неактивен

#67 2011.06.27 16:48

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

TLENS, чувак, ты гений, но это не то, нужно сделать всё одним запросом к бд.

Отредактировано ByVlad (2011.06.27 16:49)

Неактивен

#68 2011.06.27 16:49

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

smile

Неактивен

#69 2011.06.27 16:50

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

Код:

1
2
3
4
5
SELECT `users`.*, `mems`.*, `mems_comments`.*, (COUNT(1) - 1) AS `cnt`
FROM `users`, `mems`
LEFT JOIN `mems_comments` ON `mems`.`id` = `mems_comments`.`id_mems`
WHERE `mems`.`id` = 1
AND `users`.`id` = `mems`.`id_user`;

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

Неактивен

#70 2011.06.27 17:23

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj, как всегда спасибо smile.

Неактивен

#71 2011.06.27 18:03

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj, всё бы хорошо, только этот запрос берет только одну запись из таблицы mems, а нужно все удовлетворяющие условию.
Немного подкорректировал запрос:
SELECT `users`.`login` AS `us_login`, `users`.`avatar` AS `us_avatar`,
`mems`.*, `mems_comments`.`text` AS `mc_text`, `mems_comments`.`time` AS `mc_time`, (COUNT(1) - 1) AS `cnt`
FROM `users`, `mems`
LEFT JOIN `mems_comments` ON `mems`.`id` = `mems_comments`.`id_mems`
WHERE `mems`.`id_user` = " . $query['id'] . "
AND `users`.`id` = `mems`.`id_user`

Неактивен

#72 2011.06.27 18:07

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

Код:

1
GROUP BY `mems`.`id`

Неактивен

#73 2011.06.27 18:13

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj, ага, оно, спасибо.

Неактивен

#74 2011.06.27 20:42

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

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


Вложения

Неактивен

#75 2011.06.27 21:12

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

POFIGISST, ага щас все бросятся тебе топ переписывать.

Неактивен

#76 2011.06.27 21:53

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

я не просил переписывать,я просто спросил в каком файле "в каком файле это нужно прописать?)))" hmm

Неактивен

#77 2011.06.27 23:58

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj, (COUNT(1) - 1) AS `cnt`
он должен подсчитать количество записей из таблицы mems_comments где `mems_comments`.`id_mems` = `mems`.`id`
но чет нифига не считает sad
и `users`.`login` AS `us_login`, `users`.`avatar` AS `us_avatar`
нужно ещё достать эти же данные, только `users`.`id` = `mems_comments`.`id_user`

Неактивен

#78 2011.06.28 04:35

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj, ^^ вопрос больше неактуален)
Теперь новый вопрос, в цикличном выводе через {foreach} в smarty
в каждом выводимом объекте идет {php}{/php} в него нужно передать {$row.id}

как это сделать?

Неактивен

#79 2011.06.28 11:22

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ByVlad, начнем с того, что от {php}{/php} нужно бы отказаться. Иначе попахивает смешиванием логики и представления.

Неактивен

#80 2011.06.28 12:04

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj, смотри, мне нужно сделать вывод записей с комментариями как вконтакте, у меня других вариантов нет.
Запрос тот я поправил, но там получалось что если комментария нет, то и записи из таблицы mems в массиве тоже нет.

Неактивен

#81 2011.06.28 12:07

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

начнем с того, что нужно выложить свой код, еба. иначе что- то обсуждать бесполезно.
давай поправленный SQL запрос и smarty шаблон.

Неактивен

#82 2011.06.28 12:28

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SELECT (
SELECT COUNT(1) FROM `mems_comments` WHERE `id_mems` = `mems`.`id`
) AS `count`,
`users`.`login` AS `us_login`,
`users`.`avatar` AS `us_avatar`,
`mems`.`text` AS `mems_text`,
`mems`.`time` AS `mems_time`,
`mems_comments`.`text` AS `mc_text`,
`mems_comments`.`time` AS `mc_time`,
`mems_comments`.`id` AS `mc_id`
FROM `users`, `mems`, `mems_comments`
WHERE `mems`.`id_user` = 1
AND `users`.`id` = `mems_comments`.`id_user`
AND `mems_comments`.`id_mems` = `mems`.`id`
GROUP BY `mems`.`id`, `mems_comments`.`id` DESC LIMIT 1

Код:

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
<?php
// шаблон
  {foreach item=row from=$mems}
  <table id="{$row.id}">
  <tr>
    <td valign="top"><div class="ava"><a href="/{$querylogin}"><img src="{if !empty($query.avatar)}/files/avatar/s_{$query.avatar}.jpg{else}/template/web/ru/user_mid.gif{/if}" alt="" />
</a></div></td>
    <td valign="top" width="100%"><div class="test"><a href="/{$query.login}"><b>{$query.login}</b></a> {if $user.id == $query.id}<div style="float:right;"> <span class="del"><a href="/mems_delete_{$row.id}.html" title="Удалить запись">удалить</a></span> {if $row.id_added == 0}<span class="del"><a href="/mems_edit_{$row.id}.html" title="Редактировать запись">изменить</a></span>{/if}{/if}<br/></div><br/>{$row.text}<br/>
<span class="time"><a href="/mems_view_{$row.id}.html">{$row.time|clock}</a></span></div>
<!-- Комментарииих нужно в цикле вывести ещёно как? -->
{if $row.count 0}
<div class="com_post_br"></div>
{if $row.cnt 3}
<div class="comms">3 последних комментария из <a href="/mems_view_{$mems.id}.html">{$row.cnt}</a></div>
{/if}
<div class="fontsize">
<a href="/{$row.us_login}"><b>{$row.us_login}</b></a> {$row.mc_text}<br />
<span class="time">{$row.mc_time|clock}</span>
 <span class="del"><a href="/mems_comment_delete_{$row.mc_id}">x</a></span>
</div>
<div class="hr_"></div>
{/if}
<!-- Конец комментариев -->
<div class="hr_"></div> <span class="nr">
<a title="Добавить комментарий" href="/{$query.login}?act=add_comment&amp;id={$row.id}#{$row.id}">прокомментировать</a></span> - <span class="nr">
<a href="/{$query.login}?act=add_me&amp;id={$row.id}#{$row.id}">добавить себе</a></span> -
<span class="nr"><a href="/{$query.login}?act=like&amp;id={$row.id}#{$row.id}">мне нравится </a>
</span> </td>
  </tr>
</table><div class="br_1"></div>
{foreachelse}
Нифига нету.
{/foreach}

Неактивен

#83 2011.06.28 12:35

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

{php}{/php} не вижу.
верни LEFT JOIN

Неактивен

#84 2011.06.28 12:51

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj, я думал сделать в {php}{/php} цикл вывода с комментариями, так бы получалось ~5 запросов в цикле, при кешировании норм, у меня получилось только с обычным JOIN.

Неактивен

#85 2011.06.28 13:56

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj, с {php}{/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
{foreach item=row from=$mems}
<table id="{$row.id}">
<tr>
<td valign="top"><div class="ava"><a href="/{$querylogin}"><img src="{if !empty($query.avatar)}/files/avatar/s_{$query.avatar}.jpg{else}/template/web/ru/user_mid.gif{/if}" alt="" />
</a></div></td>
<td valign="top" width="100%"><div class="test"><a href="/{$query.login}"><b>{$query.login}</b></a> {if $user.id == $query.id}<div style="float:right;"> <span class="del"><a href="/mems_delete_{$row.id}.html" title="Удалить запись">удалить</a></span> {if $row.id_added == 0}<span class="del"><a href="/mems_edit_{$row.id}.html" title="Редактировать запись">изменить</a></span>{/if}{/if}<br/></div><br/>{$row.text}<br/>
<span class="time"><a href="/mems_view_{$row.id}.html">{$row.time|clock}</a></span></div>
<!-- Комментарии -->
{if $row.count > 0}
{php} $si = 0; {/php}
<div class="com_post_br"></div>
{if $row.cnt > 3}
<div class="comms">3 последних комментария из <a href="/mems_view_{$mems.id}.html">{$row.cnt}</a></div>
{/if}
{php}
global $isql,$tpl,$si;
$query = $isql -> cycle("SELECT `users`.`avatar` AS `us_avatar`, `users`.`login` AS `us_login`, `mems_comments`.*
FROM `mems_comments`,`users`
WHERE `users`.`id` = `mems_comments`.`id_user` AND `mems_comments`.`id_mems` = '".$mems['id']."'
ORDER BY `mems_comments`.`id` DESC LIMIT 3");
echo "SELECT `users`.`avatar` AS `us_avatar`, `users`.`login` AS `us_login`, `mems_comments`.*
FROM `mems_comments`,`users`
WHERE `users`.`id` = `mems_comments`.`id_user` AND `mems_comments`.`id_mems` = '".$si."'
ORDER BY `mems_comments`.`id` DESC LIMIT 3";
$si++;
print_r($tpl['tpl_vars']);
echo '<div class="fontsize">
<a href="/{$row.us_login}"><b>{$row.us_login}</b></a> {$row.mc_text}<br />
<span class="time">{$row.mc_time|clock}</span>
<span class="del"><a href="/mems_comment_delete_{$row.mc_id}">x</a></span>
</div>
<div class="hr_"></div>';
{/php}
{/if}
<!-- Конец комментариев -->
<div class="hr_"></div> <span class="nr"><a title="Добавить комментарий" href="/admin/comm681#681">прокомментировать</a></span> - <span class="nr"><a href="/admin/post/681">добавить себе</a></span> - <span class="nr"><a href="/admin/plus/681" onclick="get()">мне нравится </a></span> </td>
</tr>
</table><div class="br_1"></div>
{foreachelse}
 
{/foreach}

Отредактировано ByVlad (2011.06.28 13:58)

Неактивен

#86 2011.07.01 15:38

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

^^ Все вопросы не актуальны big_smile
Нужно достать данные из таблицы mems где `id_user` равняется записям из таблицы follows, что-то такое написал, но естесна оно не работает)

Код:

1
SELECT `mems`.* FROM `mems` WHERE `mems`.`id_user` IN(SELECT `follows`.* FROM `follows` WHERE `follows`.`id_user` = 1) ORDER BY `mems`.`time` DESC

Неактивен

#87 2011.07.01 15:41

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

Код:

1
2
3
4
SELECT `mems`.*
FROM `mems`
INNER JOIN `follows` ON `follows`.`id_user` = `mems`.`id`
ORDER BY `mems`.`id` DESC

Неактивен

#88 2011.07.04 15:22

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Нужно узнать id_user из трех таблиц mems, mems_comments, mems_likes
и отсортировать их по количеству записей для определенного id_user
как-то так.

Неактивен

#89 2011.07.04 17:04

Вапамнет
Гость

Re: Общие вопросы по PHP

Привет. Как зделать чтоб в песне mр3 при скачеванию менялся альбом, название, исполнитель и т.д на адрес сайта ? Пример ссылки такой  site.ru/load.php?file=(адрес песни. например)wapinet.ru/music.mp3. Какой код нужна вписать в файл load.php чтоб изминить альбом, название и т.д?

#90 2011.07.04 17:47

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Вапамнет написал:

Привет. Как зделать чтоб в песне mр3 при скачеванию менялся альбом, название, исполнитель и т.д на адрес сайта ? Пример ссылки такой  site.ru/load.php?file=(адрес песни. например)wapinet.ru/music.mp3. Какой код нужна вписать в файл load.php чтоб изминить альбом, название и т.д?

если у тебя сеа,то там есть возможность к всем мп3 устанавливать эти данные))

Неактивен

#91 2011.07.09 01:29

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Помогите с мафией,у всех  она норм работает,а у меня там пустая страница((   тест акк что это может быть?

Неактивен

#92 2011.07.10 09:12

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

\Но у меня не пустая

Неактивен

#93 2011.07.10 10:34

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

POFIGISST, достаточно просто проверить html код валидатором, чтобы понять что из себя представляет скрипт wink

Неактивен

#94 2011.07.10 19:18

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS написал:

\Но у меня не пустая

все говорят что у них все нормик,а у меня пусто(( вот скрин прикрепляю))
Добавлено спустя   2 минуты  42 секунды:

Gemorroj написал:

POFIGISST, достаточно просто проверить html код валидатором, чтобы понять что из себя представляет скрипт wink

Это я согласен Паш))но от паблика не стоит ожидать что выложат хороший скрипт без ошибок и багов на халяву))Поэтому спасибо кодерам которые выкладывают хоть какие то скрипты в паблик(и тебе тоже спасибо) )))


Вложения

Неактивен

#95 2011.07.10 23:44

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Сейс зайду по ftp к тебе гляну че там.\
Надеюсь пароль не поменял
Добавлено спустя   2 минуты  22 секунды:
А у тебя этот сайт на другом сервере. Покажи файл maf.php

Неактивен

#96 2011.07.11 10:30

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

конкретно на той странице 500 ошибка. проверь синтаксис php кода.

Неактивен

#97 2011.07.13 08:37

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

Помогите с запросом. Есть таблица
id | name | categor
Все данные в разброс, нужно выводить из определённой категории и повторяющиеся имена только один раз
пример:
2 | иван | mebel
3 | иван | paleno
4 | саня | mebel
5 | иван | mebel

Нужно только
2 | иван | mebel
4 | саня | mebel

Плохо в SQL шарю, простое что-нибудь запросто, а потяжелее не мого, помогите, если не троудно.

Отредактировано DarkRiDDeR (2011.07.13 08:38)

Неактивен

#98 2011.07.13 10:02

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

GROUP BY name

Неактивен

#99 2011.07.13 14:00

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

О, точно! И так просто. А то я уже в подзапросы полез. Спасибо!

Неактивен

#100 2011.07.13 22:13

Anwap
Участник
Зарегистрирован: 2009.09.19
Сообщений: 26
Карма: 0
Профиль

Re: Общие вопросы по PHP

Gemorroj, А как сделать чтоб в таблице постом выше еще и считало,например сколько mebel,сколько poleno?

Неактивен

#101 2011.07.13 23:08

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

Anwap думаю, тут может помочь GROUP_CONCAT

Неактивен

#102 2011.07.14 00:32

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Как оптимизировать данный запрос?
А то выполняется пол минуты.

Код:

1
2
3
4
5
<?php
$q mysql_query("SELECT * FROM `video` ORDER BY `id`");
while($row = @mysql_fetch_array($q)) {
    mysql_query("UPDATE `video` SET `url_letit` = '" . (($arr[$row['id']]) ? $arr[$row['id']] : '') . "' WHERE id = '{$row['id']}'");
}

Добавлено спустя   1 минуту  1 секунду:
В смысле можно ли его сделать одним запросом?

Неактивен

#103 2011.07.14 01:00

Nu3oN
Moderator
Откуда: БелгородЭ
Зарегистрирован: 2010.04.28
Сообщений: 869
Карма: 11
Профиль Веб-сайт

Re: Общие вопросы по PHP

Как комментируются константы в классах?
например свойства так:

Код:

1
2
3
4
5
6
7
<?php
    /**
    * Переменная с настройками.
    * @var array
    */
    private static $_arr;
?>

как быть с константами?


Я буду лучше голоден, но между креслом и рулем и на дороге.

Неактивен

#104 2011.07.14 10:56

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

TLENS, что в массиве $arr?
Nu3oN,
http://pear.php.net/manual/ru/standards.naming.php

Имена констант всегда должны быть в верхнем регистре с подчеркиваниями для разделения слов. В качестве префикса в именах констант должно использоваться имя пакета/класса, в котором они используются. Например, все константы, которые используются в пакете DB::, начинаются с "DB_".

пример (почему-то с синтаксической ошибкой php, но суть уловить можно) http://pear.php.net/manual/ru/standards.sample.php

Код:

1
2
3
4
5
<?php
/**
 * Methods return this if they succeed
 */
define('NET_SAMPLE_OK'1);

Неактивен

#105 2011.07.14 13:56

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

что в массиве $arr?

Код:

1
2
3
4
5
6
7
8
9
<?php
$f file('data_link.dat'); // ~70000 строк
$arr = array();
foreach ($f as $v) {
    preg_match('/id_(\d+)_-_/'$v$b);
    if ($b[1]) $arr[$b[1]] = $v;
 
}
unset($f);

В общем ссылки

Отредактировано TLENS (2011.07.14 14:43)

Неактивен

#106 2011.07.14 19:10

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Паша а с каких айпишников идет спам?
Они разные?

Неактивен

#107 2011.07.14 20:23

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

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

Неактивен

#108 2011.07.14 20:24

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Gemorroj =D
Добавлено спустя   4 минуты  46 секунд:
А как на счет оптимизации, с ним можно что то сделать?

Отредактировано TLENS (2011.07.14 20:29)

Неактивен

#109 2011.07.15 03:15

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Как насчет такого интелекта для вырезания ссылок?

Код:

1
2
<?
$commit = preg_replace('/([\s"\'\(\{\|]{0,1})((https{0,1}:\/\/){0,1}(([a-z\-]){3,20}\.){1,5}[a-z]{2,6}[0-9a-z\/\?\.\-\~&;_=%:#\+]*)([\s"\'\)\}\|]{0,1})/usi', ' <font color="#f00">Ссылка вырезаная</font> ', $commit);

Неактивен

#110 2011.07.15 10:35

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

хз) пробуй)

Неактивен

#111 2011.07.15 16:39

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Да попробуваль разные варианты да и множество текстов обработал вроде норм лишнего не хавает

Неактивен

#112 2011.07.15 23:21

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

xavier053, Как ты уже задолбал

Неактивен

#113 2011.07.16 00:05

Akdmeh
Участник
Откуда: Киев и рядом;)
Зарегистрирован: 2008.11.30
Сообщений: 257
Карма: 9
Профиль Веб-сайт

Re: Общие вопросы по PHP

Tlens, удалил)


Желание стать программистом из-за того, что вам нравляться компьютерные игры-это все равно, что желание стать гинекологом из-за того, что вам нравиться сексwink

Неактивен

#114 2011.07.17 08:05

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Есть возможность в php выполнить несколько операций одновременно?

Неактивен

#115 2011.07.17 09:59

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

TLENS, нативно нет. можно извращаться всякими exec'ами.

Неактивен

#116 2011.07.17 10:01

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

А можешь помочь в этом вопросе? А то я с exec практически не работал. А точнее вообще не работал.

Неактивен

#117 2011.07.17 10:59

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

Неактивен

#118 2011.07.19 03:13

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Вообщем нужно составить запрос сортировки пользователей по активности, что-то типа этого только нормальный:
SELECT * FROM `users` ORDER BY (SELECT COUNT(*) FROM `mems` WHERE `id_user` = что-то),(SELECT COUNT(*) FROM `mems_comments` WHERE `id_user` = что-то),(SELECT COUNT(*) FROM `mems_likes` WHERE `id_user` = чтото) DESC LIMIT 10

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

Отредактировано ByVlad (2011.07.19 03:14)

Неактивен

#119 2011.07.19 10:23

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Вообщем я наверное неверно объяснил, есть 4 таблицы:

mems:
структура:
id
id_user
и ещё ненужные поля

mems_comments:
структура:
id
id_user
id_mems
и ещё ненужные поля

mems_likes:
структура:
id
id_user
id_mems
и ещё ненужные поля.

Нужно составить ТОП-10 самых активных пользователей исходя из количества записей в этих таблицах с приоритетом таблиц mems,mems_comments,mems_likes.

Таблица пользователей:
users:
id
login
и ещё ненужные поля.

Неактивен

#120 2011.07.19 10:29

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

Код:

1
2
3
4
5
6
7
8
SELECT `users`.*,
(
(SELECT COUNT(1) FROM `mems` WHERE `id_user` = `users`.`id`) +
(SELECT COUNT(1) FROM `mems_comments` WHERE `id_user` = `users`.`id`) +
(SELECT COUNT(1) FROM `mems_likes` WHERE `id_user` = `users`.`id`)
) AS `cnt`
FROM `users`
ORDER BY `cnt` DESC LIMIT 10

Неактивен

#121 2011.07.19 11:30

ByVlad
Участник
Откуда: Киев
Зарегистрирован: 2010.03.27
Сообщений: 82
Карма: 1
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj, ты гений, как всегда спасибо)
Добавлено спустя   6 минут  3 секунды:
Gemorroj, а ещё отдельную статистику реально сделать тоесть AS `cnt_mems`, пробовал, не получилось...

Неактивен

#122 2011.07.26 23:05

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Поставил зц мобивап себе,а там ошибка вот такая "Warning: Invalid argument supplied for foreach() in /home2/d4cc1zrx/public_html/index.php on line 62" и я как обычно х\з как её исправить,выкладываю код страницы

Код:

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
<?php
 
/**
 * @author [FaNiska]
 * @copyright 2009
 * Загруз центр
 * Предложения, идеи, вопросы и об ошибках писать в icq 65-64-538 или на mobi-m-ru@ya.ru
 */
 
include 'inc/db_connect.php';
include 'inc/function.php';
include 'inc/set.php';
include 'inc/head.php';
/*
echo '<div class="post">Реклама:<br />';
include 'link.php'; 
include 'link.php';    
echo '<hr /></div>';
*/
/// ВЫВОД Разделов
if ($index == && !isset($_GET['c']))
{
 
    mysql_query("DELETE FROM `cache` WHERE `time` < " . ($time - ($setup['cache_time']) * 60 10) . " LIMIT 50");
 
 
    $category mysql_query("SELECT * FROM `category` ORDER BY `por`;");
    echo '<table border="2" width="100%">';
    while ($cat mysql_fetch_array($category))
    {
 
        if ($cat['s_name'] == 'vrazdel')
        {
            echo '<tr class="vraz"><td colspan="2"><img src="ico/' $cat['ico'] .
                '.gif" alt="+" width="16" height="16" /> &nbsp; &nbsp; &nbsp;' $cat['r_name'] . '</td></tr>';
        } elseif ($cat['s_name'] == 'link')
        {
            $tid explode('|'$cat['folder']);
            $link mysql_fetch_array(mysql_query("SELECT * FROM `$tid[0]` WHERE `id`='$tid[1]';"));
            $count explode('i'$link['p_i_f']);
            echo '<tr class="menu"><td><img src="ico/' $cat['ico'] . '.gif" alt="+" width="16" height="16" /> <a href="?c=' $tid[0] .
                '&amp;id=' $tid[1] . '">' $cat['r_name'] . '</a></td><td> [' $count['0'] . $count['1'] . ']</td></tr>';
        } elseif ($cat['s_name'] == 'vlink')
        {
            echo '<tr class="vraz"><td colspan="2"><img src="ico/' $cat['ico'] .
                '.gif" alt="+" width="16" height="16" /> <a href="' $cat['folder'] . '">' $cat['r_name'] . '</a></td></tr>';
        } else
        {
            $count explode('i'$cat['p_i_f']);
            $cat['s_name'] = str_replace('files/'''$cat['s_name']);
            echo '<tr class="menu"><td><img src="ico/' $cat['ico'] . '.gif" alt="+" width="16" height="16" /> <a href="?c=' $cat['s_name'] .
                '">' $cat['r_name'] . '</a></td><td> [' $count['0'] . $count['1'] . ']</td></tr>';
        }
 
    }
    echo '</table>';
    echo '<hr />';
    echo '<div class="navi"><a href="stat.php">Статистика ЗЦ</a> : <a href="set.php">Настройки</a></div>';
    /// Удаление временных файлов из папки temp/
    $arr_temp glob('temp/*');
    $i 0;
    foreach ($arr_temp as $value)
    {
        @unlink($value);
        $i++;
        if ($i 50)
        {
            break;
        }
    }
}
/// ВЫВОД Категорий
elseif (isset($_GET['c']))
{
    if ($id != 0)
    {
        $head_cat mysql_fetch_array(mysql_query("SELECT `s_name`, `sizetime` FROM `$table` WHERE `id`='$id';"));
    }
    if (!is_dir($head_cat['s_name'] . '/'))
    {
        exit('Выбранный раздел не существует');
 
    }
 
    if ($head_cat['sizetime'] < ($time 3600))
    {
 
 
        $allfiles mysql_fetch_array(mysql_query('SELECT COUNT(*) FROM `' $table '` WHERE `folder` LIKE  "' $head_cat['s_name'] .
            '%" AND `type`=2;'));
        $allfiles $allfiles['0'];
        $allnew mysql_fetch_array(mysql_query('SELECT COUNT(*) FROM `' $table '` WHERE `folder` LIKE  "' $head_cat['s_name'] .
            '%" AND `type`=2 AND `up_time`>' $new_time ';'));
        $allnew '/+' $allnew['0'];
        if ($id != 0)
        {
            mysql_query("UPDATE `$table` SET `p_i_f`='" $allfiles "i" $allnew "', `sizetime`='$time' WHERE `id`=$id LIMIT 1;");
        } else
        {
            mysql_query("UPDATE `category` SET `p_i_f`='" $allfiles "i" $allnew "', `sizetime`='$time' WHERE `s_name` = 'files/$table' LIMIT 1;");
        }
 
 
    }
 
    ////////// START - ПОСТРАНИЧНАЯ НАВИГАЦИЯ
    $k_post mysql_fetch_array(mysql_query('SELECT COUNT(`id`) FROM `' $table '` WHERE `id_p`=' $id ''));
    $k_post $k_post['0'];
 
    $k_page k_page($k_post$step);
    $page page($k_page);
    $start $step $page $step;
    ////////// END - ПОСТРАНИЧНАЯ НАВИГАЦИЯ
    $parametr "$table|$id|$sort|$p|$step|$page|$prev_set|$prev_w|$prev_h|$d_w|$d_h";
    if (isset($_GET['set']))
    {
        include 'inc/set_inc.php';
    } else
    {
        echo "<div class='navi'>
    &raquo; <a href=\"?c=$table&amp;id=$list[id]&amp;sort=$sort&amp;p=$p&amp;step=$step&amp;page=$page&amp;set\">Настройки</a> : <a href='search.php?c=$table&amp;search'>Поиск</a><br />
    &raquo; Самые: <a href='top.php?c=$table&amp;id=$id'>скачиваемые</a> : <a href='new.php?c=$table&amp;id=$id'>новые</a><br />
    </div>";
    }
    if (mysql_result(mysql_query("SELECT COUNT(*) FROM `cache` WHERE `parametr` = '$parametr' && `time` > " . ($time - ($setup['cache_time']) *
        60) . ""), 0) == 0)
    {
 
        $s mysql_query("SELECT * FROM `$table` WHERE `id_p`=$id ORDER BY `$sort$por LIMIT $start$step");
 
        $content '<table width="100%">';
        while ($list mysql_fetch_array($s))
        {
            if ($list['type'] == 1)
            {
 
 
                $count explode('i'$list['p_i_f']);
                $allfiles $count['0'];
                $allnew $count['1'];
 
 
                $list['r_name'] = str_replace('*'''$list['r_name']);
                if ($list['gr_id'] > && $list['gr_id'] < 6)
                {
                    switch ($list['gr_id'])
                    { // Стандартные иконки групп. Можете изменять тут.
                        case '1':
                            $ico "<img src='ext/mo.gif' alt='+' width='16' height='16'/> ";
                            break;
                        case '2':
                            $ico "<img src='ext/jar.gif' alt='+' width='16' height='16'/> ";
                            break;
                        case '3':
                            $ico "<img src='ext/mp3.gif' alt='+' width='16' height='16'/> ";
                            break;
                        case '4':
                            $ico "<img src='ext/sis.gif' alt='+' width='16' height='16'/> ";
                            break;
                        case '5':
                            $ico "<img src='ext/3gp.gif' alt='+' width='16' height='16'/> ";
                            break;
                    }
 
 
                    $content $content "<tr><td> $ico <a href='group.php?c=$table&amp;id=$list[id]'>$list[r_name]</a></td><td>[$allfiles$allnew]</td></tr>";
                } else
                {
                    $content $content "<tr><td><img src='ico/$list[ico].gif' alt='+' /> <a href='index.php?c=$table&amp;id=$list[id]'>$list[r_name]</a></td><td>[$allfiles$allnew]</td></tr>";
                }
 
            } elseif (in_array($list['f_ras'], $arr_ext)) //////  ФИЛЬТР ПО РАСШИРЕНИЮ
 
            {
                $list['r_name'] = str_replace('*'''$list['r_name']);
                if ($prev_set == && isset($prev_h) && isset($prev_w))
                { // Если предпросмотр включен
 
                    if ($list['f_ras'] == 'jpg' || $list['f_ras'] == 'jpeg' || $list['f_ras'] == 'png' || $list['f_ras'] == 'gif')
                    {
                        $content $content "<tr class='block'><td colspan='2'> $list[r_name] <a class='info' href='file.php?c=$table&amp;id=$list[id]'>подробности</a></td></tr><tr><td class='img' width='$prev_w'><img src='image.php?c=$table&amp;id=$list[id]&amp;W=$prev_w&amp;H=$prev_h' alt='скачать " .
                            $file_name "'/> </td><td  class='info'><a class='info' href='file.php?c=$table&amp;id=$list[id]'>$list[r_name]</a> " .
                            size_file($list['size']) . "<br />";
                        if (function_exists('getimagesize'))
                        {
                            $img_size getimagesize($list['s_name']);
                            $x "($img_size[0]x$img_size[1])";
                        } else
                        {
                            $x '';
                        }
 
                        $content $content "<a class='info' href='load_img.php?c=$table&amp;id=$list[id]'>Скачать оригинал $x</a><br />
              Кол-во скачиваний: $list[count]<br />";
 
 
                        if (isset($d_w) && isset($d_h))
                        {
                            $content $content '<a class=\'info\' href="image.php?c=' $table '&amp;id=' $list['id'] . '&amp;act=d&amp;W=' .
                                $d_w '&amp;H=' $d_h '">Скачать ' $d_w 'x' $d_h '</a>
          </td></tr>';
                        } else
                            $content $content "</td></tr>";
 
                    } elseif ($list['f_ras'] == '3gp' || $list['f_ras'] == 'mp4' || $list['f_ras'] == 'avi')
                    // можете расширить сами если ваш хостинг поддерживает другие форматы
 
                    {
                        $content $content "<tr class='block'><td colspan='2'> $list[r_name] <a class='info' href='file.php?c=$table&amp;id=$list[id]'>подробности</a></td></tr><tr><td class='img' width='$prev_w'><img src='ffmpeg.php?c=" .
                            $table "&amp;id=" $list['id'] . "&amp;W=" $prev_w "&amp;H=" $prev_h "&amp;k=20' alt='" $list['r_name'] .
                            " " $list['f_ras'] . "'/></td><td  class='info'>Размер: " size_file($list['size']) .
                            "<br /><a class='info' href='load.php?c=$table&amp;id=$list[id]'>Скачать $list[f_ras]</a><br />
          Кол-во скачиваний: $list[count]</td></tr>";
                    } else
                    {
                        $screen eregi_replace($list['f_ras'] . '$'''$list['s_name']);
 
                        $arr_sc glob($screen '*');
                        foreach ($arr_sc as $value)
                        {
                            if (eregi('\.gif$|\.png$|\.jpeg$|\.jpg$'$value))
                            {
                                $img "<img src=\"screen.php?file={$value}\" alt=\"\" />";
                                break;
                            } else
                            {
                                $img '';
                            }
                        }
                        if (!isset($img) || empty($img))
                        {
                            $img "<img src='ext/$list[f_ras].gif' alt='+' width='16' height='16'/>";
                        }
                        $content $content "<tr class='block'><td colspan='2'> $list[r_name] <a class='info' href='file.php?c=$table&amp;id=$list[id]'>подробности</a></td></tr><tr><td class='img' width='$prev_w'>$img</td><td  class='info'>
            
             Размер: " size_file($list['size']) . "<br />
             Скачиваний: $list[count]<br />
             <a class='info' href='load.php?c=$table&amp;id=$list[id]'>скачать $list[f_ras]</a></td></tr>";
                    }
 
                } else
                {
                    $content $content "<tr><td><img src='ext/$list[f_ras].gif' alt='+' width='16' height='16'/> <a href='file.php?c=$table&amp;id=$list[id]'>$list[r_name]</a></td><td>" .
                        size_file($list['size']) . "</td></tr>";
                }
 
 
            }
 
        }
        $content $content '</table>';
        echo $content;
        include_once 'inc/str.php';
        mysql_query("REPLACE INTO `cache` (`parametr`, `content`, `str`, `time`, `count`) VALUES ('$parametr', '" .
            mysql_real_escape_string($content) . "', '" mysql_real_escape_string($str) . "', '$time', '1')");
    } else
    {
        $cache mysql_fetch_array(mysql_query("SELECT * FROM `cache` WHERE `parametr`='$parametr' LIMIT 1"));
        echo $cache['content'] . $cache['str'];
    }
}
echo '<div class="navi"><a href="http://mobiwap.su">wap знакомства на WapLover.Net</a><br />';
echo '<b><a href="readme.php">Купить скрипт загруз центра</a></b></div><div>';
include 'inc/foot.php';
 
?>

валидатор показал что нет ошибок((

Неактивен

#123 2011.07.26 23:18

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

POFIGISST написал:

валидатор показал что нет ошибок((

тут не в синтаксисе проблема.
Пустая переменная $arr_temp
Добавлено спустя   1 минуту  6 секунд:
т.е. $arr_temp = glob('temp/*');
не вернул нифига.
сейчас дам исправления

Неактивен

#124 2011.07.26 23:21

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

а что в ней должно находиться? или она вообще не должна существовать?))

Неактивен

#125 2011.07.26 23:22

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Код:

1
2
3
4
5
6
7
8
9
10
11
12
<?php
  $arr_temp glob('temp/*');
    $i 0;
    foreach ($arr_temp as $value)
    {
        @unlink($value);
        $i++;
        if ($i 50)
        {
            break;
        }
    }

замени

Код:

1
2
3
4
5
6
7
8
9
10
11
12
<?php
    $arr_temp glob('temp/*');
    $i 0;
    if (is_array($arr_temp)) {
        foreach ($arr_temp as $value) {
            @unlink($value);
            $i++;
            if ($i 50) {
                break;
            }
        }
    }

Отредактировано TLENS (2011.07.26 23:25)

Неактивен

#126 2011.07.26 23:23

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

спасибо Дим)))

Неактивен

#127 2011.07.26 23:27

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

А хотя можно было просто вставить собаку перед foreach для заглушки эта ошибка не страшная просто нет файлов в папке temp
Добавлено спустя   8 минут  56 секунд:

POFIGISST написал:

а что в ней должно находиться

Глупый вопрос.
заходишь например на php.su кликаешь по ссылке функции по алфавиту и ищешь функцю glob, и смотриш что она должна вернуть

Неактивен

#128 2011.08.03 21:34

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Странно почему в ОПП переменная description не работает.

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
class Themes {
    public $title;
    public $nav;
    public $description 1;
    public $content;
 
    public function __destruct () {
        global $_SET;
        $this->parse();
        header("Content-type: text/html; charset=utf-8");
   
            var_dump($this);
            //highlight_string($r);
            echo $r;
    }
  
}

результат

Код:

1
2
3
4
object(Themes)#2 (4) {
["description"]=>
string(0) ""
}

["description"]=>string(0) "" вот почему?
В то время как

Код:

1
2
3
4
5
6
<?
class Test {
    public $description = 1;
}
$test = new Test;
var_dump($test);

Все норм.

Отредактировано TLENS (2011.08.03 22:28)

Неактивен

#129 2011.08.03 22:03

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

здесь какой-то маразм, а не ООП.
начнем с того, что вот так "global $_SET;" никогда писать нельзя.
и результат - как ты его получил? может ты сам же description и обнулил.

Неактивен

#130 2011.08.03 22:09

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Не понял на счет global, Нужно было сразу в конструкторе принять нужные параметры с set/
Кстати да этот кла вовсе не клас просто совокупность функций. Писал его когда только начинал учить ООП.
Сейчас то уже понял для чего надо ООП.
Но все же я публике тоже ввел в переменную данные то нет их.

Отредактировано TLENS (2011.08.03 22:13)

Неактивен

#131 2011.08.03 22:26

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Ты был прав додумался пробить поиском description когда то тестил класс и стоит строчка $Themes->description = '';
Почему я о ней забыл. спс. уберу ту срань с форума. Надо бы и с сервера ее убрать.

Неактивен

#132 2011.08.05 16:08

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

Народ как сделать в Mysql сортировку по русским буквам? С английским всё норм, а с русским проблы. Кодировка UTF-8

Неактивен

#133 2011.08.05 17:37

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

DarkRiDDeR, подозреваю, что нихрена не utf-8. Потому как при корректной работе с кодировками, никаких проблем не возникает.

Неактивен

#134 2011.08.06 06:20

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

Да при создании таблицы задал DEFAULT CHARSET utf8, всю запись вёл тоже с utf-8. Выводится всё норм, а сортировка что-то никак.

Неактивен

#135 2011.08.06 09:55

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

соединение с бд должно быть еще настроено на работу с utf-8

Неактивен

#136 2011.08.06 11:30

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

Кажись понял. Я не настраивал, что utf, и mysql при записи считал, что это latin1(по умолчанию), а записывалось utf. Поэтому при выводе всё норм, но при сортироке, mysql сортирует utf, как lаtin. Но как теперь от этого избавиться: данные, которые уже записаны, нужны?

Неактивен

#137 2011.08.06 11:40

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

SET NAMES utf8

Неактивен

#138 2011.08.06 12:45

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

Нет, это уже пробовал. Выходит: MySQL перекодирует, что в UTF, из latin1 в UTF. И получается воопще муть.

Неактивен

#139 2011.08.06 22:19

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

DarkRiDDeR, твои проблемы) перводи бд в UTF-8

Неактивен

#140 2011.08.07 05:53

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

Решил сделать так: сниму дамп в lаtin1 и запихну его, как utf8. Кстати, есть скрипт, который дамп снимает? Рhрmуаdmin не подходит.

Неактивен

#141 2011.08.07 09:53

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

Фу-у... Рушил проблему. Хороший скрипт Sypex Dumper v.2.0.6 B (дампы делает). В нём снял дамп в latin1, а потом запихнул, как UTF8. Всё!!! Работает!!!

Неактивен

#142 2011.08.07 10:01

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

почему phpmyadmin не подходит? лучшее что есть на php для работы с mysql.

Неактивен

#143 2011.08.07 10:07

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

Sypex Dumper v.2.0.6 в 4 раза быстрее, если верить разработчику. phpmyadmin на хосте стоит, я сначала через него хотел дамп снять, но там только он в UTF8 даёт. И опять выходит: что хранится в UTF, перекодировается из latin в utf, как-то так. Главное проблему решил smile

Неактивен

#144 2011.08.07 11:03

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ну какая разница, отдаст оно тебе страницу, за 0.4 или 0.1 сек? возможностей-то у phpmyadmin не в 4, а в 1000 раз больше.

Неактивен

#145 2011.08.07 11:13

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

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

Неактивен

#146 2011.08.11 00:23

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

помогите сделать приват в чате только с 50 постов,идет вот такая

Код:

1
2
3
4
echo "<select name=\"prvt\">";
echo "<option value=\"0\">Всем</option>";
echo "<option value=\"1\">Приватно</option>";
echo "</select><br/>";

кнопка переключатель,хочу чтоб из базы users['posts'] брало сколько у человека постов,и если меньше 50 постов,то срабатывала функция if else ,то есть,если постов 50 или больше,то в кнопке появляется "Приватно" а если же постов нету,то "Приватно" просто исчезает,и можно говорить только "всем" вот как это сделать?((

Неактивен

#147 2011.08.11 00:32

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

POFIGISST очень просто.

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
$posts 49// в эту переменную вставь с базы количество постов юзера.
$limit 50// Лимит
 
if ($posts >= $limit) {
    echo "<select name=\"prvt\">";
    echo "<option value=\"0\">Всем</option>";
    echo "<option value=\"1\">Приватно</option>";
    echo "</select><br/>";
}
 
// А также чтобы не было дырки вставь такое же возле приема поста.
 
$posts 49// в эту переменную вставь с базы количество постов юзера.
$limit 50// Лимит
 
if ($posts >= $limit) {
    // разрешаем
} else {
    // не разрешаем
}

Неактивен

#148 2011.08.11 00:36

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

спасиб Дим,а "А также чтобы не было дырки вставь такое же возле приема поста." это где прием поста идет?((

Неактивен

#149 2011.08.11 00:42

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

а я *** дай файл на который ссылается форма

Отредактировано TLENS (2011.08.11 00:42)

Неактивен

#150 2011.08.11 00:51

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

вот вся страница,теперь оно определяет сколько постов у того юзера которому я пишу,и если у него нету 50 постов,то я не могу ему в приват ответить,а он мне может если у меня больше 50 постов(


Код:

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
<?
 
require'config.php';
$user['avr'] = 0;
$align='left';
$title='Сказать';
head();
aut();
 
if (!ctype_digit($_GET['rm'])){header('Location: index?'.SID);die;}
if (!ctype_digit($_GET['nk'])){header('Location: index?'.SID);die;}
$rm = intval($_GET['rm']);
$nk = intval($_GET['nk']);
who_add($rm,'room'); // Занисываем Кто онлайн...
$db->sql_query ("Select rm from rooms where rm='".$rm."';");
if (mysql_affected_rows() == 0){echo "Такой комнаты не существует!";foot();exit;}
 
 
$select = @$db->sql_query ("Select * from users where id='".intval($nk)."'");
 
 
 
if (mysql_affected_rows() == 0){
echo "Юзер не найден. Возможно ник удалён.<br/>";
echo gb.'<a href="room?rm='.$rm.'">В чат </a>'.div;
foot();
exit;
}
$inf = $db->sql_fetchrow ($select);
 
if (ignor(user_inf($inf['id']),$user['id'])==1){
echo 'Пользователь <b>'.$inf['user'].'</b> отправил вас в игнор!<br />';
echo gb.'<a href="room?rm='.$rm.'">В чат </a>'.div;
foot();
exit;
}
 
$usid = $inf["id"];
$nick = $inf["user"];
$usname = $inf["name"];
$birth = $inf["birth"];
$sex = $inf["sex"];
$city = $inf["city"];
$mail = $inf["mail"];
$site = $inf["site"];
$infa = $inf["infa"];
$icq = $inf["icq"];
 
$credits = $inf["credits"];
$gposts = $inf["gposts"];
$status = $inf["status"];
$date = $inf["date"];
$op = $inf["op"];
$onl = $inf["onl"];
$mob = $inf["mob"];
$us_ip = $inf["user_ip"];
$us_soft = $inf["user_soft"];
$img = $inf["img"];
$nastroi = $inf["nastroi"];
$visit = $inf["visit"];
$room = $inf["room"];
$byeotv = $inf["byeotv"];
$number = $inf["number"];
$level = $inf["level"];
$fr = $inf["friends"];
$mysmile = $inf["mysmile"];
$votefoto = $inf["votefoto"];
$ign = $inf["ignor"];
$bee = $inf["site"];
$myavatar = $inf["myavatar"];
$version = $inf["version"];
$postmag = $inf["postmag"];
$alltraf = $inf["alltraf"];
$postsf = $inf["postsf"];
$idpass = $inf["pass"];
$rating = $inf["rating"];
$clan = $inf["clan"];
$myblogs = $inf["myblogs"];
$monets = $inf["money"];
$presentset = $inf["presentset"];
 
 
 
if ($credits>=0 && $credits<100) $victstatus="Ученик";
if ($credits>=100 && $credits<500) $victstatus="Студент";
if ($credits>=500 && $credits<1000) $victstatus="Бакалавр";
if ($credits>=1000 && $credits<2000) $victstatus="Магистр";
if ($credits>=2000 && $credits<5000) $victstatus="Кандидат в доктора";
if ($credits>=5000 && $credits<7000) $victstatus="Доктор наук";
if ($credits>=7000) $victstatus="Учитель НеЗнайки =)";
 
 
$levelselect = @$db->sql_query ("Select * from levels where level='".$level."'");
$levels = @$db->sql_fetchrow($levelselect);
$levname = $levels["name"];
 
 
echo "Сообщение для <b>".$nick."</b><br/>";
 
 
 
if ($ver!='wml')echo '<form action="tell?rm='.$rm.'&amp;act=add&amp;nk='.$nk.'&amp;'.SID.'" method="post">';
if ($ver=='wml')echo '<br/><input name="msg'.$ref.'" maxlength="512" title="Text"/><br/>';
else echo '<br/><input type="text" name="msg" maxlength="512" title="Text"/><br/>';
 
 
 
 
$posts = $inf["posts"]; // в эту переменную вставь с базы количество постов юзера.
$limit = 50; // Лимит
 
if ($posts >= $limit) {
    echo "<select name=\"prvt\">";
    echo "<option value=\"0\">Всем</option>";
    echo "<option value=\"1\">Приватно</option>";
    echo "</select><br/>";
}
 
// А также чтобы не было дырки вставь такое же возле приема поста.
 
$posts = $inf["posts"]; // в эту переменную вставь с базы количество постов юзера.
$limit = 50; // Лимит
 
if ($posts >= $limit) {
    // разрешаем
} else {
    // не разрешаем
}
 
 
 
 
$posts = $inf["posts"];
 
 
 
 
if ($user['dd']!=0){
if ($user['level']>=4){
echo '<select name="dd">
<option value="0" selected="selected">Шрифт</option>
<option value="1">Наклонный</option>';
if ($user['level']>=5) echo '<option value="2">Подчёркнутый</option>';
if ($user['level']>=6) echo '<option value="3">Накл. и подч.</option>';
if ($user['level']>=6) echo '<option value="4">Жирный</option>';
if ($user['level']>=7) echo '<option value="5">Жирн. и подч.</option>';
if ($user['level']>=7) echo '<option value="6">Огромный</option>';
echo '</select><br />';
}
}
if ($user['emo']!=0){
echo '<select name="emo">
<option value="0" selected="selected">Эмоции</option>
<option value="1">Радостно</option>
<option value="2">Печально</option>
<option value="3">Удивленно</option>
<option value="4">Ласково</option>
<option value="5">Смущенно</option>
<option value="6">Кокетливо</option>
<option value="7">Обиженно</option>
<option value="8">Настойчиво</option>
<option value="9">Шепотом</option>
<option value="10">Задумчиво</option>
<option value="11">Злобно</option>
</select><br />';
}
if ($user['color']!=0){
echo '<select name="color">
<option value="0" selected="selected">Цвет</option>
<option value="1">Красный</option>
<option value="2">Синий</option>
<option value="3">Сереневый</option>
<option value="4">Зеленый</option>
</select><br />';
 
}
if ($ver=='wml'){
echo '<anchor title="go">Сказать<go href="tell?rm='.$rm.'&amp;act=add&amp;nk='.$nk.'&amp;'.SID.'" method="post">';
echo '<postfield name="msg" value="$msg'.$ref.'"/>
<postfield name="dd" value="$dd"/>
<postfield name="emo" value="$emo"/>
<postfield name="color" value="$color"/>
<postfield name="prvt" value="$prvt"/>
</go></anchor><br />';
 
}else{
echo '<input type="submit" class="ibutton" value="Сказать"/></form><br />';
}
echo '<br />';
 
$b_ip = $db->sql_fetchrow($db->sql_query ("Select * from bannip;"));
$db->sql_query ("Select * from bannlist WHERE (ip = '".$inf[user_ip]."')and(soft = '".$inf[user_soft]."') LIMIT 1;");
if ((mysql_affected_rows()!=0)||($inf[bann]>$time)||(substr_count($ip, $b_ip[ip])!=0)){
echo "<font color=\"red\"><b>Пользователь в бане!</b></font><br />";
}
 
$k_g=$db->sql_fetchfield($db->sql_query("select count(*) as num from group_users where user_id = '".$inf['id']."' and access != '1'"),0);
if($k_g!=0){
echo '<dl></dl>';
 
 
$r = $db->sql_query ("Select * from group_users where user_id = '".$inf['id']."' and access != '1' order by id LIMIT 100");
while($a = @$db->sql_fetchrow($r)){
$g = @$db->sql_fetchrow($db->sql_query ("Select * from groups where id = '".$a['gid']."'"));
$lider = @$db->sql_fetchrow($db->sql_query ("Select * from groups where id = '".$g['id']."'"));
 
echo 'В клане: <a href="/groups/group'.$g['id'].'">'.$g['name'].'</a><br>';
if ($lider['lider_id']==$inf['id']) echo ' (<b>Лидер</b>)';
echo '<br />';
}
}
 
 
 
 
 
 
 
$sit = $_SERVER['HTTP_HOST'];
if($inf['myavatar']!='')echo '<img src="http://'.$sit.'/'.$inf['myavatar'].'"><br>';
 
$k_a = $db->sql_fetchfield($db->sql_query("select count(*) as num from foto_albom where user_id = '".$inf[id]."'"),0);
if ($k_a!=0)echo links.' <a href="'.H.'album'.$inf[id].'">Альбомы ('.$k_a.')</a>'.div;
$aud = $db->sql_fetchfield($db->sql_query("select count(*) as num from audio where user_id = '".$inf[id]."'"),0);
if ($aud!=0)echo links.'f <a href="'.H.'audio'.$inf[id].'">Личный звук</a>'.div;
 
 
 
 
echo "<u>Ник</u>:  $inf[user]";
 
 
if($onl+300>time()){
echo"  <u><img src='/img/online/on.gif'/></u><br/>";
}else{
echo"  <u><img src='/img/online/off.gif'/></u></br>";
}
 
 
 
 
echo ' <u>Имя</u>: '.$inf[name].'<br/>';
echo ' <u>Статус</u>: <b>'.$inf[status].'</b><br/>';
if(($inf[level]>3)) echo " <u>Должность</u>: <b>$levname</b><br/>";
if ($inf[sex]==1)echo " <u>Пол</u>: М<br/>";
else if ($inf[sex]==0)echo " <u>Пол</u>: Ж<br/>";
if($inf[day]!=0||$inf[month]!=0||$inf[year]!=0)echo " <u>Дата рождения</u>: $inf[day]-$inf[month]-$inf[year]<br/>";
echo " <u>Постов</u>: $posts (+ ".$inf['dayp'].")<br>";
echo " <u>Монеток</u>: $inf[rur]<br/>";
 
if ($inf[para]>=1){
if ($inf[sex]==0){
echo ' <u><font color="black">Замужем за </font></u>:   '.nik($inf[para]).' <br />'; 
}else{
echo ' <u><font color="black">Женат на </font></u>:   '.nik($inf[para]).' <br />'; 
}
}
 
$mail=explode('|',$inf['mail']);
$mobtel=explode('|',$inf['mobtel']);
$hometel=explode('|',$inf['hometel']);
$icq=explode('|',$inf['icq']);
 
if ($inf[site]!='' || $mail[0]!='' || $mobtel[0]!='' || $hometel[0]!='' || $icq[0]!=''){
echo '<dl></dl>';
 
if (($mail[0]!='') && (($mail[1]==0)||(friends($inf['id'],$user['id'])==1)))echo " <u>Email</u>: <a href=\"mail?to=$mail[0]\">$mail[0]</a><br/>";
if (($mobtel[0]!='') && (($mobtel[1]==0)||(friends($inf['id'],$user['id'])==1)))echo " <u>Моб. телефон</u>: $mobtel[0]<br/>";
if (($hometel[0]!='') && (($hometel[1]==0)||(friends($inf['id'],$user['id'])==1)))echo " <u>Дом. телефон</u>: $hometel[0]<br/>";
if (($icq[0]!='') && (($icq[1]==0)||(friends($inf['id'],$user['id'])==1)))echo "<u>ICQ</u>: $icq[0]<br/>";
if ($inf[site]!='')echo " <u>Вап-сайт</u>: <a href=\"http://$inf[site]\">http://$inf[site]</a><br/>";
 
}
 
 
echo " <u>О себе</u>: $infa<br/>";
 
echo " <u>Дата реги</u>: $date<br/>";
echo " <u>День рождения</u>: $inf[day]-$inf[month]-$inf[year]<br/>";
echo " <u>Город</u>: $inf[city]<br/>";
echo " <u>ID</u>: $inf[id]<br/>";
echo '<br />';
 
 
$k_st=$db->sql_fetchfield($db->sql_query("select count(*) as num from stena where user_id = '".$inf['id']."'"),0);
$v0=$db->sql_fetchfield($db->sql_query("select count(*) as num from vote_us where user_id = '".$inf['id']."'"),0);
echo links.' <a href="'.H.'stena'.$inf['id'].'">Стена '.$inf['user'].'</a> ('.$k_st.')'.div;
$k_g = $db->sql_fetchfield($db->sql_query("select count(*) as num from gifts where gift_id = '".$inf['id']."'"),0);
echo links.' <a href="gifts'.$inf['id'].'">Подарки '.$inf['user'].'</a>('.$k_g.')'.div;
 
$usf = $db->sql_fetchfield($db->sql_query ("select count(*) as num from friends where user_id ='".$inf[id]."' and yes = '1';"),0);
echo "<u><a href=\"my/friends?mod=friends&nk=$inf[id]\">Друзья ".$inf['user']."</a></u><br/>";
if (friends($inf[id],$user['id'])==0)echo links.' <a href="my/friends?mod=add&act=add&nick='.$inf[id].'">В друзья</a><br><br>'.div;
else echo links.' <a href="my/friends?del='.friends($inf[id],$user[id],'id').'">Из друзей</a><br><br>'.div;
 
echo links.' <a href="my/privat?mod=add&to='.$inf[id].'">Написать ему(ей) письмо</a>'.div;
 
 
 
 
if($user[level]>=7){
echo '<br /><b><a href="admin/users?mod=view&amp;nick='.$inf[id].'">Апдейт юзера</a></b><br/><br />'; }
 
 
if($user["level"]>5){
if(($inf["level"]<7)||($user["level"]>6)){
echo $div5;
echo "<b>IP:</b> ".$us_ip." (".opsos($us_ip).")<br/>";
echo "<b>Soft:</b> ".$us_soft."<br/>";
if ($inf[ver]==wml) echo "<b>Версия сайта:</b> WML<br/>";
else echo "<b>Версия сайта:</b> xHTML<br/>";
echo $div5;
}
}
 
 
 
 
 
/*echo "<a href=\"forum/?$ses&amp;nk=$usid&amp;mod=temus\">Все темы пользователя на форуме</a><br/>";
echo "<a href=\"forum/?$ses&amp;nk=$usid&amp;mod=postus\">Все сообщения пользователя на форуме</a><br/>";*/
 
echo gb.'<a href="room?rm='.$rm.'">В чат </a>'.div;
foot();
?>

Неактивен

#151 2011.08.11 01:02

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Ты уверен что такой столбец существует "posts"?
Что в столбце qposts?

Отредактировано TLENS (2011.08.14 08:17)

Неактивен

#152 2011.08.11 01:07

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

в столбце gposts пусто,а в столбце posts посты записаны, идет таблица users столбец posts  в ней))

Неактивен

#153 2011.08.11 01:09

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Ты не тот файл мне дал. дай тот куда отправляются данные

Отредактировано TLENS (2011.08.11 01:10)

Неактивен

#154 2011.08.11 01:15

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по 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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
<?
require'config.php';
aut();
if (!ctype_digit($_GET['rm'])){header('Location: index');die;}
$rm = check(intval($_GET['rm']));
if (check(intval($_GET['del']))==1){
if ($user['level']>=7){
mysql_query("DELETE FROM `message` WHERE `rm` = '".$rm."'");
}
}
who_add($rm,'room'); // Занисываем Кто онлайн...
$rooms = mysql_fetch_array(mysql_query("SELECT * FROM `rooms` WHERE `rm` = '$rm'"));
if (mysql_affected_rows() == 0){
$align='center';
$title='Ошибка!';
head();
echo 'Такой комнаты не существует!<br />';
echo gbinroom.'<a href="enter">Прихожая</a>'.div;
foot();
}
 
if ($rooms['intim']==1){
if(!isset($_POST['inps']) && isset($_SESSION['inps']))$inps = check(intval($_SESSION['inps']));
else $inps = check(intval($_POST['inps']));
$_SESSION['inps'] = $inps;
}
if(empty($inps)) $inps = 0;
 
if ($user['level']<$rooms['level']){
$align='center';
$title='Ошибка!';
head();
 
echo 'Извините, но в эту комнату Вам доступ запрешен!<br />';
 
echo gbinroom.'<a href="enter">Прихожая</a>'.div;
foot();
}
 
if (($rooms['sartir']!=1) && ($user['kik']>$time)){
$align='center';
$title='Вы выпнуты!';
head();
echo '<b>'.user($user['whokik']).'</b> выпнул вас из чата на <b>'.kikt($user['kik']).'</b> <br />Причина: <b>'.$user['whykik'].'</b><br />';
$rooms = mysql_query("SELECT * FROM `rooms` WHERE sartir = '1' ORDER BY `pos` ASC");
if(mysql_num_rows($rooms)!=0)echo 'Вам разрешен доступ только в<br />';
while($room = mysql_fetch_array($rooms)){
if ($room['level']<=$user['level'])echo '<a href="room?rm='.$room['rm'].'">'.$room['name'].'</a><br />';}
echo '<br />';
echo gbinroom.'<a href="enter">Прихожая</a>'.div;
foot();
}
 
 
if ((check($_GET['sartir']==sartir))&&($rooms['sartir']==1)){
$align='left';
$title=$rooms['name'];
head();
echo '<b>Внимание!</b><br/>';
echo 'Сейчас вы попадете в '.$rooms['name'].'<br/>
Здесь вы можете делать все, что угодно (кроме рекламы и флуда).<br/>
И за весь происходящий здесь беспредел администрация чата никакой ответственности не несет.<br/>
Людям со слабыми нервами и тонкой душевной организацией заходить в '.$rooms['name'].' настоятельно не рекомендуется.<br/>';
 
echo gbinroom.'<a href="room?rm='.$rm.'">Войти</a>'.div;
echo gbinroom.'<a href="enter">Прихожая</a>'.div;
foot();
}
 
if ((check($_GET['strip']==strip))&&($rooms['strip']==1)){
$align='left';
$title=$rooms['name'];
head();
echo '<center><a><img src="strip/xen/58.JPG" alt=""></a></center>';
echo 'стриптиз команды <br/><br/>
!хентай  (1рубль)<br/>
!мужик (1рубль)<br/>
!баба (1рубль)<br/>
!бомжую  (бесплатно)<br/><br/>';
echo 'дурь <br/><br/>
!пива  (1 рубль)<br/>
!водки (2 рубля)<br/>
!косяк (5 рублей)<br/>
!лекарство  (1 рубль)<br/>';
echo gbinroom.'<a href="room?rm='.$rm.'">до +18 </a>после не входить</a>'.div;
echo gbinroom.'<a href="enter">Прихожая</a>'.div;
foot();
}
 
if ((check($_GET['zags']==zags))&&($rooms['zags']==1)){
$zag= mysql_query ("Select * from zags WHERE `status` ='1' LIMIT 1 ");
$zags = mysql_fetch_array ($zag);
$align='left';
$title=' '.$rooms['name'].'';
head();
if($zags[status]==1){
require'sys/calendar.php';
echo ' '.date("H:i", $time).' ';
echo '<center><bgsound src="zags/logo.mid"loop="1"><a><img src="zags/zags.jpeg" alt=""></a></center>';
echo 'Сейчас состоится священное таинство бракосочетания<br/>';
echo links.'<a><img src="man.gif" alt=""></a> жених '.nik($zags[genix]).'  '.div;
echo links.'<a><img src="woman.gif" alt=""></a> невеста '.nik($zags[nevesta]).'  '.div;
echo ' свидетель '.nik($zags[svid]).' <br /> ';
echo ' свидетельница '.nik($zags[svidet]).' <br /> ';
echo 'дата свадьбы: '.$zags[d].'-'.$zags[m].'-'.$zags[g].' <br />';
echo 'время: '.$zags[cm].':'.$zags[min].' <br />';
echo 'ведущий:   '.nik($zags[ved]).' <br /><br/>';
echo gbinroom.'<a href="room?rm='.$rm.'">Войти</a>'.div;
echo gbinroom.'<a href="enter">Прихожая</a>'.div;
}else{
echo '<b>Cейчас пока сюда нельзя. о начале проведения церемонии вам сообщат</b><br/>';
echo gbinroom.'<a href="enter">Прихожая</a>'.div;
}
foot();
}
 
 
 
if (($rooms['intim']==1)&&((check($_GET['intim']==intim))||(empty($inps))||(strlen2($inps)<4)||($inps==0))){
$align='left';
$title=$rooms['name'];
head();
 
if ($ver!='wml')echo '<form action="room?rm='.$rm.'" method="post">';
echo '* Ключ(min: 4):<br /><input name="inps" maxlength="30" title="Название"/><br/>';
if ($ver=='wml'){
echo '<br /><anchor title="go">Войти<go href="room?rm='.$rm.'" method="post"><br />';
echo '<postfield name="inps" value="$inps"/>
</go></anchor><br />';
}else{
echo '<br /><input type="submit" class="ibutton" value="Войти"/></form><br /><br />';
}
echo '<b>*</b> Ключ должен быть длиннее 4 символов (латинских) и не должен состоять из одних 0<br />';
echo gbinroom.'<a href="enter">Прихожая</a>'.div;
foot();
}
 
$bs=explode('|',$user['binds']);
 
$align='left';
$title=$rooms['topic'].'-'.date("H:i", $time);
head();
 
if ($user['softk']!=1){
if ($rooms['intim']!=1)echo '[<a href="who_room?rm='.$rm.'" accesskey="'.$bs[2].'">Кто в комнате?</a>]';
 
echo '[<a href="who?rm='.$rm.'" accesskey="'.$bs[3].'">Кто где?</a>]';
echo '[<a href="http://x4atix.ru/my/index.php">Личный кабинет</a>]';
 
if ($user['level']>=4&&$rooms['intim']!=1)echo '[<a href="topic?rm='.$rm.'" accesskey="'.$bs[5].'">Топ</a>]<br />';
 
 
}
 
echo gbinroom.'<a href="tell?rm='.$rm.'" accesskey="'.$bs[0].'">Сказать ['.$bs[0].']</a><br>';
if ($user['polevv']!=2&&$user['polevv']!=0){
if ($ver!='wml')echo '<form action="tell?rm='.$rm.'&act=add" method="post">';
if ($ver=='wml')echo '<input name="msg'.$ref.'" maxlength="512" title="Text"/><br/>';
else echo '<input name="msg" maxlength="512" title="Text"/><br/>';
 
if ($user['dd']!=0){
if ($user['level']>=4){
echo '<select name="dd">
<option value="0" selected="selected">Шрифт</option>
<option value="1">Наклонный</option>';
if ($user['level']>=5) echo '<option value="2">Подчёркнутый</option>';
if ($user['level']>=6) echo '<option value="3">Накл. и подч.</option>';
if ($user['level']>=6) echo '<option value="4">Жирный</option>';
if ($user['level']>=7) echo '<option value="5">Жирн. и подч.</option>';
if ($user['level']>=7) echo '<option value="6">Огромный</option>';
echo '</select><br />';
}
}
if ($user['emo']!=0){
echo '<select name="emo">
<option value="0" selected="selected">Эмоции</option>
<option value="1">Радостно</option>
<option value="2">Печально</option>
<option value="3">Удивленно</option>
<option value="4">Ласково</option>
<option value="5">Смущенно</option>
<option value="6">Кокетливо</option>
<option value="7">Обиженно</option>
<option value="8">Настойчиво</option>
<option value="9">Шепотом</option>
<option value="10">Задумчиво</option>
<option value="11">Злобно</option>
</select><br />';
}
 
if ($user['color']!=0){
echo '<select name="color">
<option value="0" selected="selected">Цвет</option>
<option value="1">Красный</option>
<option value="2">Синий</option>
<option value="3">Сереневый</option>
<option value="4">Зеленый</option>
</select><br />';
}
 
 
echo '<input type="submit" class="ibutton" value="Сказать"/></form><br />';
 
}
echo '<a href="room?rm='.$rm.'&obn=obn" accesskey="'.$bs[1].'">Обновить ['.$bs[1].']</a> '.div;
if (check($_GET['obn'])==obn){header ('Location: room?rm='.$rm.'');  exit;}
 
 
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
 
$k_post=mysql_result(mysql_query("select COUNT(*) from message WHERE `rm` = '".$rm."' and `inps` = '".$inps."';"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
 
if ($k_post == 0)echo 'Здесь сообщений пока нет :(<br />';
if (isset($_GET['err']) && $_GET['err'] == 't')echo '<b>Промежуток между сообщениями должен быть больше '.$rooms['flyd'].' сек.</b><br />';
 
 
 
if (isset($_GET['delete'])){
if ($user['level']>=5){
mysql_query("DELETE FROM `message` WHERE `id` = '".$_GET['delete']."'");
echo 'Сообщение удалено<br />';
}else{
echo 'Сообщение не удалено<br />';
}
}
 
if ($rooms['umnik']!=0) require H.'bots/umnik1.php';
if ($rooms['shut']!=0) require H.'bots/shut.php';
if ($rooms['znatok']!=0) require H.'bots/znatok.php';
if ($rooms['anek']!=0) require H.'bots/anek.php';
if ($rooms['tupica']!=0) require H.'bots/umnikmat1.php';
if ($rooms['tupica']!=0) require H.'bots/tupica.php';
 
 
 
 
 
 
$mess = @mysql_query( @"SELECT * from `message` WHERE `rm` = '".$rm."' and `inps` = '".$inps."' order by id DESC limit $start, $max;" );
while($msg = @mysql_fetch_array($mess)){
$text = $msg['msg'];
if ($msg['color']>0) $text =  color_msg($text);
if ($msg['bb']>0)$text =  bb_msg($text);
if ($msg['emo']>0)$text = emo_msg($text);
if (($rooms['tupica']==0) && ($rooms['sartir']==0))if ($rooms['antim']>0)$text = antim($text);
if ($rooms['antir']>0)$text = antir($text);
 
if ($msg['komu']!=0) {
if ($user['id']==$msg['komu']) $komu = '<span style="color: #FF0000;">'.user($msg['komu']).'</span>,';
else $komu = user($msg['komu']).',';
}else{
$komu = '';
}
 
if ($msg['privat']==0){
if ($msg['user_id']!=0)echo nik($msg['user_id'],''.H.'inside?rm='.$rm.'&nk='.$msg['user_id'].'').date("(H:i", $msg['time']).')';
else echo '<img src="'.H.'img/bot.gif" alt="" /><font color="#000000">'.$msg['user'].'</font>'.date("(H:i", $msg['time']).')';
if ($user['level']>=5)echo '<small><a href="room?rm='.$rm.'&delete='.$msg['id'].'">[X]</a></small>';
echo '>'.$komu.text($text).'<br />';
 
}else if ($msg['privat']==$user['id']||$msg['user_id']==$user['id']){
if ($msg['user_id']!=0)echo nik($msg['user_id'],''.H.'inside?rm='.$rm.'&nk='.$msg['user_id'].'').date("(H:i", $msg['time']).')';
else echo '<img src="'.H.'img/bot.gif" alt="" /><font color="#ffff00">'.$msg['user'].'</font>'.date("(H:i", $msg['time']).')';
echo '<b>[P!]</b>';
if ($user['level']>=5)echo '<small><a href="room?rm='.$rm.'&delete='.$msg['id'].'">[X]</a></small>';
echo '>'.$komu.text($text).'<br />';
} else if (($msg['privat']!=$user['id']||$msg['user_id']!=$user['id']) && $user['level']>=$set['privat'] && $set['privat']!=0){ // Чтение привата супер админами...
if ($msg['user_id']!=0)echo nik($msg['user_id'],''.H.'inside?rm='.$rm.'&nk='.$msg['user_id'].'').date("(H:i", $msg['time']).')';
else echo '<img src="'.H.'img/bot.gif" alt="" /><font color="#ffff00">'.$msg['user'].'</font>'.date("(H:i", $msg['time']).')';
echo '<b>[!!!]</b>';
if ($user['level']>=5)echo '<small><a href="room?rm='.$rm.'&delete='.$msg['id'].'">[X]</a></small>';
echo '>'.$komu.text($text).'<br />';
}
 
}
 
 
if ($user['polevv']!=1&&$user['polevv']!=0){
echo gbinroom.'Сказать:'.div;
if ($ver!='wml')echo '<form action="tell?rm='.$rm.'&act=add" method="post">';
if ($ver=='wml')echo '<input name="msg'.$ref.'" maxlength="512" title="Text"/><br/>';
else echo '<input name="msg" maxlength="512" title="Text"/><br/>';
 
if ($user['dd']!=0){
if ($user['level']>=4){
echo '<select name="dd">
<option value="0" selected="selected">Шрифт</option>
<option value="1">Наклонный</option>';
if ($user['level']>=5) echo '<option value="2">Подчёркнутый</option>';
if ($user['level']>=6) echo '<option value="3">Накл. и подч.</option>';
if ($user['level']>=6) echo '<option value="4">Жирный</option>';
if ($user['level']>=7) echo '<option value="5">Жирн. и подч.</option>';
if ($user['level']>=7) echo '<option value="6">Огромный</option>';
echo '</select><br />';
}
}
if ($user['emo']!=0){
echo '<select name="emo">
<option value="0" selected="selected">Эмоции</option>
<option value="1">Радостно</option>
<option value="2">Печально</option>
<option value="3">Удивленно</option>
<option value="4">Ласково</option>
<option value="5">Смущенно</option>
<option value="6">Кокетливо</option>
<option value="7">Обиженно</option>
<option value="8">Настойчиво</option>
<option value="9">Шепотом</option>
<option value="10">Задумчиво</option>
<option value="11">Злобно</option>
</select><br />';
}
 
if ($user['color']!=0){
echo '<select name="color">
<option value="0" selected="selected">Цвет</option>
<option value="1">Красный</option>
<option value="2">Синий</option>
<option value="3">Сереневый</option>
<option value="4">Зеленый</option>
</select><br />';
}
 
if ($ver=='wml'){
echo '<anchor title="go">Сказать<go href="tell?rm='.$rm.'&act=add" method="post">';
echo '<postfield name="msg" value="$msg'.$ref.'"/>
<postfield name="dd" value="$dd"/>
<postfield name="emo" value="$emo"/>
<postfield name="color" value="$color"/>
</go></anchor>';
echo '<br/>';
}else{
echo '<input type="submit" class="ibutton" value="Сказать"/></form><br />';
}
}
 
echo gbinroom;
if(check($_GET['histiri'])==histiri){
str(H.'room?rm='.$rm.'&histiri=histiri&',$k_page,$page);
}else{
echo '<a href="room?rm='.$rm.'&histiri=histiri" accesskey="'.$bs[6].'">История ['.$bs[6].']</a>';
}
echo div;
 
if ($user['softk']!=0){
if ($ver=='wml'){
if ($rooms['intim']!=1)echo '<do type="options" name="who_room" label="Кто в комнате?"><go href="who_room?rm='.$rm.'"/></do>';
echo '<do type="options" name="who" label="Кто где?"><go href="who?rm='.$rm.'"/></do><do type="options" name="smiles" label="Смайлы"><go href="smiles/index?rm='.$rm.'"/></do>';
 
if ($user['level']>=4&&$rooms['intim']!=1)echo '<do type="options" name="topic" label="Сменить Топик"><go href="topic?rm='.$rm.'"/></do>';
 
if ($user['level']>=7)echo '<do type="options" name="topic" label="Очистить комнату"><go href="room?rm='.$rm.'&del=1"/></do>';
 
echo '<br />';
}else{
if ($rooms['intim']!=1)echo '[<a href="who_room?rm='.$rm.'" accesskey="'.$bs[2].'">Кто в комнате?['.$bs[2].']</a>]';
echo '[<a href="who?rm='.$rm.'" accesskey="'.$bs[3].'">Кто где?['.$bs[3].']</a>][<a href="smiles/index?rm='.$rm.'" accesskey="'.$bs[4].'">Смайлы['.$bs[4].']</a>]';
if ($user['level']>=4&&$rooms['intim']!=1)echo '[<a href="topic?rm='.$rm.'" accesskey="'.$bs[5].'">Сменить Топик['.$bs[5].']</a>]<br />';
if ($user['level']>=7)echo '[<a href="room?rm='.$rm.'&del=1">Очистить комнату</a>]<br />';
}
}
if ($rooms['intim']==1)echo gbinroom.'<a href="enter?intim">Выйти</a>'.div;
echo gbinroom.'<a href="enter" accesskey="'.$bs[7].'">Прихожая ['.$bs[7].']</a>'.div;
 
 
foot();
?>

вот файл комнат,в него данные которые юзер пишет отправляются))

Неактивен

#155 2011.08.11 01:22

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

И это не он коточь там поидее реврайт стоит. дай мне файл на который ссылается tell и что в config.php?

Неактивен

#156 2011.08.11 01:33

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Вот файл телл,он ссылается на переменную rm

Код:

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
<?
require'config.php';
$user['avr'] = 0;
$align='left';
$title='Сказать';
aut();
head();
 
 
$act = check($_GET['act']);
$rm = intval($_GET['rm']);
 
if (empty($rm)) header ('Location: enter');
$rooms = mysql_fetch_array(mysql_query("SELECT * FROM `rooms` WHERE `rm` = '$rm'"));
 
if ($rooms['intim']==1){
if(!isset($_POST['inps']) && isset($_SESSION['inps']))$inps = check(intval($_SESSION['inps']));
else $inps = check(intval($_POST['inps']));
$_SESSION['inps'] = $inps;
}
if(empty($inps)) $inps = 0;
 
 
if (($rooms['sartir']!=1) && ($user['kik']>$time)){
echo '<b>'.user($user['whokik']).'</b> выпнул вас из чата на <b>'.kikt($user['kik']).'</b> <br />Причина: <b>'.$user['whykik'].'</b><br />';
$rooms = mysql_query("SELECT * FROM `rooms` WHERE sartir = '1' ORDER BY `pos` ASC");
if(mysql_num_rows($rooms)!=0)echo 'Вам разрешен доступ только в<br />';
while($room = mysql_fetch_array($rooms)){
if ($room['level']<=$user['level'])echo '<a href="room?rm='.$room['rm'].'">'.$room['name'].'</a><br />';}
echo '<br />';
echo gbinroom.'<a href="enter">Прихожая</a>'.div;
foot();
}
 
if (empty($act)){
if ($ver!='wml')echo '<form action="tell?rm='.$rm.'&amp;act=add" method="post">';
if ($ver=='wml')echo '<br/><input name="msg'.$ref.'" maxlength="512" title="Text"/><br/>';
else echo '<br/><input name="msg" maxlength="512" title="Text"/><br/>';
 
if ($user['dd']!=0){
if ($user['level']>=4){
echo '<select name="dd">
<option value="0" selected="selected">Шрифт</option>
<option value="1">Наклонный</option>';
if ($user['level']>=5) echo '<option value="2">Подчёркнутый</option>';
if ($user['level']>=6) echo '<option value="3">Накл. и подч.</option>';
if ($user['level']>=6) echo '<option value="4">Жирный</option>';
if ($user['level']>=7) echo '<option value="5">Жирн. и подч.</option>';
if ($user['level']>=7) echo '<option value="6">Огромный</option>';
echo '</select><br />';
}
}
if ($user['emo']!=0){
echo '<select name="emo">
<option value="0" selected="selected">Эмоции</option>
<option value="1">Радостно</option>
<option value="2">Печально</option>
<option value="3">Удивленно</option>
<option value="4">Ласково</option>
<option value="5">Смущенно</option>
<option value="6">Кокетливо</option>
<option value="7">Обиженно</option>
<option value="8">Настойчиво</option>
<option value="9">Шепотом</option>
<option value="10">Задумчиво</option>
<option value="11">Злобно</option>
</select><br />';
}
 
if ($user['color']!=0){
echo '<select name="color">
<option value="0" selected="selected">Цвет</option>
<option value="1">Красный</option>
<option value="2">Синий</option>
<option value="3">Сереневый</option>
<option value="4">Зеленый</option>
</select><br />';
}
 
if ($ver=='wml'){
echo '<br /><anchor title="go">Сказать<go href="tell?rm='.$rm.'&amp;act=add" method="post">';
echo '<postfield name="msg" value="$msg'.$ref.'"/>
<postfield name="dd" value="$dd"/>
<postfield name="emo" value="$emo"/>
<postfield name="color" value="$color"/>
</go></anchor>';
echo '<br/><br />';
}else{
echo '<br /><input type="submit" class="ibutton" value="Сказать"/></form><br /><br />';
}
 
 
 
}else{
 
 
function latrus($textw) 
{return str_replace( 
array('Ё','Ё','Ж','Ж','Ч','Ч','Щ','Щ','Щ','Ш','Ш','Э','Э','Ю', 
'Ю','Я', 'Я','ч','ш','щ','э','ю','я','ё','ж','A','Б','В','Г', 
'Д','E','З','И','Й ','К','Л','М','Н','О','П','Р','С','Т','У', 
'Ф','Х','Ц','Ы','а','б','в', 'г','д','е','з','и','й','к','л', 
'м','н','о','п','р','с','т','у','ф','х ','ц','ы','Ъ','ъ','Ь', 
'ь'), 
array('YO','Yo','ZH','Zh','CH','Ch','SHC','SHc','Shc','SH', 
'Sh','YE','Ye','YU','Yu','YA','Ya','ch','sh','shc','ye','yu', 
'ya','yo ','zh','A','B','V','G','D','E','Z','I','Y','K','L', 
'M','N','O','P','R' ,'S','T','U','F','H','C','X','a','b','v', 
'g','d','e','z','i','y','k',' l','m','n','o','p','r','s','t', 
'u','f','h','c','x','','','',''),$textw); 
}
 
if ($setss[pivo]==1 || $setss[pivo]==2 || $setss[vodka]==1 || $setss[vodka]==2 ){
$strr=check($_POST['msg']);
$str =latrus($strr); 
}
 
if ($setss[kosak]==1 ){
$strr=check($_POST['msg']);
$str =latrus($strr); 
}
 
 
 
function vodka ($t){ 
$c = strlen($t); 
for($i=0;$i<$c;$i++) { 
$t[$i] = (is_int($i/2)) ? strtoupper($t[$i]) : $t[$i]; 
$ret[] = $t[$i]; 
return implode('',$ret); 
 
function pivo ($t){ 
$c = strlen($t); 
for($i=0;$i<$c;$i++) { 
$t[$i] = (is_int($i/3)) ? strtoupper($t[$i]) : $t[$i]; 
$ret[] = $t[$i]; 
return implode('',$ret); 
 
 
if ($setss[pivo]==1 || $setss[pivo]==2 ){
$msg =translit(pivo($str));
}
 
if ($setss[vodka]==1 || $setss[vodka]==2 ){
$msg =translit(vodka($str));
}
 
 
if ($setss[kosak]==1 ){
$msg =vodka($str);
}
 
 
 
if ($setss[pivo]+$setss[vodka]+$setss[kosak]==0){
$msg =check($_POST['msg']);
}
 
$dd = check($_POST['dd']);
$emo = check($_POST['emo']);
$color = check($_POST['color']);
$prvt = check($_POST['prvt']);
 
if(isset($_GET['nk'])) $nk = intval($_GET['nk']);
else $nk = 0;
 
if($prvt!=0){
if(isset($_POST['prvt']) && isset($_GET['nk'])) $privat = intval($_GET['nk']);
}else $privat = 0;
 
if (strlen2($msg)<2){header ('Location: room?rm='.$rm.''); exit;}
 
$msg = iconv('utf-8', 'windows-1251', $msg);
$msg = substr($msg,0,512);
$msg = iconv('windows-1251', 'utf-8', $msg);
if ($user['translit']==1)$msg = translit($msg);
 
$mess=mysql_result(mysql_query("select COUNT(*) from message WHERE `user_id` = '$user[id]'  and `time`>'".($time - $rooms['flyd'])."';"),0);
if ($mess > 0){ header ('Location: room?rm='.$rm.'&err=t'); exit;}
 
if ($rooms['inkog']!=0){
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,emo,bb,color,komu,privat) VALUES ('Инкогнито','0','$time','$msg','$rm','$emo','$dd','$color','$nk','$privat')");
}else{
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,emo,bb,color,komu,privat,inps) VALUES ('$user[user]','$user[id]','$time','$msg','$rm','$emo','$dd','$color','$nk','$privat','$inps')");
}
 
posts_add();
 
if ($rooms['umnik']!=0) require H.'bots/umnik3.php';
if ($rooms['tupica']!=0) require H.'bots/umnikmat2.php';
if ($rooms['tupica']!=0) require H.'bots/tupica2.php';
if ($rooms['flyder']!=0) require H.'bots/flyder.php';
 
 
if ($rooms['strip']!=0){
if ($msg=='!пива'||$msg=='!пиВа'){
if ($rooms['striper']!=0){
if ($user['rur']>=1){
mysql_query ("Update users set rur='".($user['rur']-1)."' where id='".$user["id"]."'");
mysql_query ("Update setus set pivo='1',vodka='0',timer='".(time()+600)."' where user_id='".$user["id"]."'");
mysql_query ("Update setus set potr='".($setss[potr]+1)."' where user_id='".$user["id"]."'");
$mes = '[yellow]держи пивка[/yellow] ';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
 
$mes="<a><img src=\"/strip/bar/pivo.jpeg\" alt=\"\" /></a>";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]')");
}else{
$mes = '[yellow]У вас недостаточно рубликов![/yellow] надо то всего один.... слюнки глотай!';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
}
}else{
$mes = "Извините, но в этой комнате  я не работаю...";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm')");
}
}
if ($msg=='!водки'||$msg=='!воДки'){
if ($rooms['striper']!=0){
if ($user['rur']>=2){
mysql_query ("Update users set rur='".($user['rur']-2)."' where id='".$user["id"]."'");
mysql_query ("Update setus set vodka='1',timer='".(time()+1200)."',pivo='0' where user_id='".$user["id"]."'");
mysql_query ("Update setus set potr='".($setss[potr]+2)."' where user_id='".$user["id"]."'");
$mes = '[yellow]хватай стакан крепче![/yellow] ';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
 
$mes="<a><img src=\"/strip/bar/vodka.jpeg\" alt=\"\" /></a>";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]')");
}else{
$mes = '[yellow]У вас недостаточно рубликов![/yellow] надо то всего один.... слюнки глотай!';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
}
}else{
$mes = "Извините, но в этой комнате  я не работаю...";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm')");
}
}
 
 
if ($msg=='!косяк' || $msg=='!коСяК' || $msg=='!kOsYaK'){
if ($rooms['striper']!=0){
if ($user['rur']>=15){
mysql_query ("Update users set rur='".($user['rur']-15)."' where id='".$user["id"]."'");
mysql_query ("Update setus set kosak='1',pivo='0',vodka='0',timkos='".(time()+1800)."' where user_id='".$user["id"]."'");
mysql_query ("Update setus set potr='".($setss[potr]+5)."' where user_id='".$user["id"]."'");
$mes = '[yellow]пыхай...[/yellow] ';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
 
$mes="<a><img src=\"/strip/bar/kosak.jpeg\" alt=\"\" /></a>";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]')");
}else{
$mes = '[yellow]У вас недостаточно рубликов![/yellow] надо то всего один.... слюнки глотай!';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
}
}else{
$mes = "Извините, но в этой комнате  я не работаю...";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm')");
}
}
 
if ($msg=='! LeKaRsTvO' || $msg=='! лЕкаРстВо' || $msg=='! ЛеКаРсТвО'){
if ($rooms['striper']!=0){
if ($user['rur']>=1){
mysql_query ("Update users set rur='".($user['rur']-10)."' where id='".$user["id"]."'");
mysql_query ("Update setus set kosak='0',pivo='0',vodka='0',timer='0',timkos='0' where user_id='".$user["id"]."'");
mysql_query ("Update setus set potr='".($setss[potr]+10)."' where user_id='".$user["id"]."'");
$mes = '[yellow]ща мы тебя вылечим - 1 рубль[/yellow] ';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
 
$mes="<a><img src=\"/strip/bar/tabletka.jpeg\" alt=\"\" /></a>";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]')");
}else{
$mes = '[yellow]У вас недостаточно рубликов![/yellow] надо то всего десять.... торчи дальше!';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
}
}else{
$mes = "Извините, но в этой комнате  я не работаю...";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm')");
}
}
 
 
 
 
 
 
if ($msg=='!хентай' || $msg=='!хЕнтАй' || $msg=='!хеНтАй' || $msg=='!хeNtAy'){
if ($rooms['striper']!=0){
if ($user['rur']>=1){
mysql_query ("Update users set rur='".($user['rur']-1)."' where id='".$user["id"]."'");
mysql_query ("Update users set rurmag='".($user['rurmag']+1)."' where id='".$user["id"]."'");
$mes = '[yellow]минус рублик гг[/yellow] ';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
$rand=rand(1,200);
$mes="<a><img src=\"/strip/xen/".$rand.".JPG\" alt=\"\" /></a>";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]')");
}else{
$mes = '[yellow]У вас недостаточно рубликов![/yellow] надо то всего один.... в щелку подсматривай за другими или сбегай в банк';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
}
}else{
$mes = "Извините, но в этой комнате  я не работаю...";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm')");
}
}
 
if ($msg=='!мужик' || $msg=='!муЗхиК' || $msg=='!мУзХиК' || $msg=='!mUzHiK'){
if ($rooms['striper']!=0){
if ($user['rur']>=1){
mysql_query ("Update users set rur='".($user['rur']-1)."' where id='".$user["id"]."'");
mysql_query ("Update users set rurmag='".($user['rurmag']+1)."' where id='".$user["id"]."'");
$mes = '[yellow]минус рублик гг[/yellow] ';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
$rand=rand(1,1001);
$mes="<a><img src=\"/gifts/3/".$rand.".jpg\" alt=\"\" /></a>";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]')");
}else{
$mes = '[yellow]У вас недостаточно рубликов![/yellow] надо то всего один.... в щелку подсматривай за другими или сбегай в банк';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
}
}else{
$mes = "Извините, но в этой комнате  я не работаю...";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm')");
}
}
 
 
if ($msg=='!бомжую' || $msg=='!боМзхУю' || $msg=='!бОмЗхУйУ' || $msg=='!bOmZhUyU'){
if ($rooms['striper']!=0){
$mes = '[yellow]Нравится? гг[/yellow] ';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
$rand=rand(1,1381);
$mes="<a><img src=\"/gifts/2/".$rand.".jpg\" alt=\"\" /></a>";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]')");
 
}else{
$mes = "Извините, но в этой комнате  я не работаю...";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm')");
}
}
 
if ($msg=='!баба' || $msg=='!баБа' || $msg=='!бАбА' || $msg=='!bAbA'){
if ($rooms['striper']!=0){
if ($user['rur']>=1){
mysql_query ("Update users set rur='".($user['rur']-1)."' where id='".$user["id"]."'");
mysql_query ("Update users set rurmag='".($user['rurmag']+1)."' where id='".$user["id"]."'");
$mes = '[yellow]минус рублик гг[/yellow] ';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
$rand=rand(1,208);
$mes="<a><img src=\"/strip/baba/".$rand.".jpg\" alt=\"\" /></a>";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]')");
}else{
$mes = '[yellow]У вас недостаточно рубликов![/yellow] надо то всего один.... в щелку подсматривай за другими или сбегай в банк';
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm','$user[id]','$user[id]')");
}
}else{
$mes = "Извините, но в этой комнате  я не работаю...";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_striper','0','".($time+1)."','".$mes."','$rm')");
}
}
}
 
if ($rooms['zags']!=0){
if ($rooms['svaisch']!=0){
$zag= mysql_query ("Select * from zags WHERE `status` ='1' LIMIT 1 ");
$zags = mysql_fetch_array ($zag);
if($zags[status]==1){
$zag2= mysql_query ("Select * from users WHERE `id` ='".$zags[genix]."' LIMIT 1 ");
$zags2 = mysql_fetch_array ($zag2);
$zag3= mysql_query ("Select * from users WHERE `id` ='".$zags[nevesta]."' LIMIT 1 ");
$zags3 = mysql_fetch_array ($zag3);
$zag4= mysql_query ("Select * from users WHERE `id` ='".$zags[svid]."' LIMIT 1 ");
$zags4 = mysql_fetch_array ($zag4);
$zag5= mysql_query ("Select * from users WHERE `id` ='".$zags[svidet]."' LIMIT 1 ");
$zags5 = mysql_fetch_array ($zag5);
$zag1= mysql_query ("Select * from users WHERE `id` ='".$zags[ved]."' LIMIT 1 ");
$zags1 = mysql_fetch_array ($zag1);
if($user['id']==1 || $user[level]==9 || $zags[ved]==$user[id]){
if ($msg=='!начать'||$msg=='!nachat'){
$mes = "Мы собрались сдесь чтобы скрепить брачными узами два любящих сердца $zags2[user] и $zags3[user] . Прошу свидетелей засвидетельствовать что это святое действие не по принуждению ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm')");
$mes = "свидетельствуеш  ли ты $zags4[user] что $zags2[user] по доброй воли женится сегодня на $zags3[user]" ;
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm')");
$mes = "набери команду !да или !da ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm','$zags[svid]','$zags[svid]')");
if (mysql_query('UPDATE `zags` SET `nach` = "1" WHERE `id` ="'.$zags[id].'" LIMIT 1 '));
}
}
if($zags[nach2]==0){
if($zags[nach]==1){
if($user['id']==1 || $user[level]==9 || $zags[svid]==$user[id] ){
if ($msg=='!да' || $msg=='!da'){
$mes = "свидетельствуеш ли ты $zags5[user] что $zags3[user] по доброй воли выходит замуж сегодня за $zags2[user]" ;
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm')");
$mes = "набери команду !да или !da ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm','$zags[svidet]','$zags[svidet]')");
if (mysql_query('UPDATE `zags` SET `nach2` = "1" WHERE `id` ="'.$zags[id].'" LIMIT 1 '));
}
}
}
}
if($zags[nach3]==0){
if($zags[nach2]==1){
if($user['id']==1 || $user[level]==9 || $zags[svidet]==$user[id] ){
if ($msg=='!да' || $msg=='!da'){
$mes = "и так начнем церемонию" ;
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm')");
$mes = "[yellow]Обручается раб Божий $zags2[user] рабе Божией $zags3[user] во имя Отца и Сына и Святаго Духа, ныне и присно и во веки веков. Аминь.[/yellow]";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm' )");
$mes = " $zags2[user] [yellow]Имеешь ли произволение благое и непринужденное и крепкую мысль взять себе в жены [/yellow]  $zags3[user] ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm' )");
$mes = "набери команду !имею или !imeu ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm','$zags[genix]','$zags[genix]')");
if (mysql_query('UPDATE `zags` SET `nach3` = "1" WHERE `id` ="'.$zags[id].'" LIMIT 1 '));
}
}
}
}
if($zags[nach4]==0){
if($zags[nach3]==1){
if($user['id']==1 || $user[level]==9 || $zags[genix]==$user[id] ){
if ($msg=='!имею' || $msg=='!imeu'){
$mes = "$zags3[user] [yellow] Имеешь ли произволение благое и непринужденное, и твердую мысль, взяти себе в мужа сего [/yellow] $zags2[user]  ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm' )");
$mes = "набери команду !имею или !imeu ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm','$zags[nevesta]','$zags[nevesta]')");
if (mysql_query('UPDATE `zags` SET `nach4` = "1" WHERE `id` ="'.$zags[id].'" LIMIT 1 '));
}
}
}
}
if($zags[nach5]==0){
if($zags[nach4]==1){
if($user['id']==1 || $user[level]==9 || $zags[nevesta]==$user[id] ){
if ($msg=='!имею' || $msg=='!imeu'){
$mes = "$zags3[user] и $zags2[user] [yellow] в знак искренности своих намерений, дайте друг другу клятвы вечной любви и согласия! [/yellow]";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm' )");
$mes = "[yellow]Клянешся ли ты раб божий $zags2[user] в радости и в горе любить и оберегать рабу божью[/yellow] $zags3[user] ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm')");
$mes = "набери команду !клянусь или !klenus ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm','$zags[genix]','$zags[genix]')");
if (mysql_query('UPDATE `zags` SET `nach5` = "1" WHERE `id` ="'.$zags[id].'" LIMIT 1 '));
}
}
}
}
if($zags[nach6]==0){
if($zags[nach5]==1){
if($user['id']==1 || $user[level]==9 || $zags[genix]==$user[id] ){
if ($msg=='!клянусь' || $msg=='!klenus'){
$mes = "[yellow]Клянешся ли ты раба божья $zags3[user] в радости и в горе любить и оберегать раба божьего[/yellow] $zags2[user] ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm')");
$mes = "набери команду !клянусь или !klenus ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm,komu,privat) VALUES ('".$zags1[user]."','0','".($time+1)."','".$mes."','$rm','$zags[nevesta]','$zags[nevesta]')");
if (mysql_query('UPDATE `zags` SET `nach6` = "1" WHERE `id` ="'.$zags[id].'" LIMIT 1 '));
}
}
}
}
if($zags[nach6]==1){
if($user['id']==1 || $user[level]==9 || $zags[nevesta]==$user[id] ){
if ($msg=='!клянусь' || $msg=='!klenus'){
$mes = "[yellow]И десница раб Твоих благословится! Жених и невеста, обменяйтесь кольцами в ознаменование благодатной помощи в сохранении супружеской любви, немеркнущей благодаря Божией милости! [/yellow] ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm')");
$mes = "$zags3[user] и $zags2[user] [green]объявляю вас мужем и женой! Присуствующие, можете поздравить новобрачных! [/green] ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm')");
mysql_query ("INSERT INTO zags2 (genix,nevesta,time) VALUES ('".$zags[genix]."','".$zags[nevesta]."','".$time."')");
if (mysql_query('UPDATE `users` SET `para` ="'.$zags[nevesta].'" WHERE `id` ="'.$zags[genix].'" LIMIT 1 '));
if (mysql_query('UPDATE `users` SET `para` ="'.$zags[genix].'" WHERE `id` ="'.$zags[nevesta].'" LIMIT 1 '));
mysql_query("DELETE FROM `zags` WHERE `id`='".$zags[id]."' LIMIT 1");
}
}
}
}else{
$mes = "нет открытых церемоний ";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm')");
}
}else{
$mes = "извините но в этой комнате я не работаю";
mysql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_svaisch','0','".($time+1)."','".$mes."','$rm')");
}
}
 
 
 
header ('Location: room?rm='.$rm.'');exit;
 
}
 
 
echo gb.'<a href="room?rm='.$rm.'">В чат </a>'.div;
 
foot();
?>

Добавлено спустя   1 минуту  50 секунд:
в конфиг вродь ток подключение к базе идет,и паро мелких настроек)) ну вот его тоже выкладываю))

Код:

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
<?
// НАСТРОЙКИ СОЕДИНЕНИЯ С БД
define('DB_host','localhost'); // Хост
define('DB_user','114464'); // Пользователь БД
define('DB_pass','114464'); // Пароль
define('DB_db','114464');   // БД
// ПРОЧИЕ НАСТРОЙКИ///////////
 
// ЭТО НЕ ТРОГАЕМ!/////////|||/
require_once'sys/start.php'; //
include_once 'sys/sys.php'; //
/////////////////////////////
// Настройки групп
$set['p_add_gr'] = 1; // Посты для создания группы
$set['s_gr_logo'] = 50; // Вес лого
$set['w_logo_gr'] = 200;// Высота лого (отображение)
$set['h_logo_gr'] = 100;// Ширина лого (отображение)
// Настройки обменника файлов
$set['path'] = 'files';// папка с файлами
$set['fo_size'] = 10;  // макс размер в мб
$set['fo_day_new'] = 2; // сколько файл считается новым
$set['prev_size'] = '80*80'; // размер превьюшек
$set['marker'] = 1;// включен - 1, нет - 0
$set['text_marker'] = 'Gggg';//   текст маркера
$set['rur_1mb'] = 1; // + рублей за 1мб загружаемых файлов
$set['top_num'] = 20; // Топ ... Юзеров и файлов
$set['eval_change'] = 1; // не меняем
 
 
 
require_once H."sys/bann.php";
?>

Неактивен

#157 2011.08.11 01:37

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Корочь давай архив с чатом а то мы так будем месяц искать

Неактивен

#158 2011.08.11 01:38

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

А что если просто так

Код:

1
2
3
4
5
6
7
8
echo '<select name=\"prvt\">
<option value=\"0\">Всем</option>';
if($user['posts']>'50')
{
echo '<option value=\"1\">Приватно</option>';
}
 
echo '</select><br/>';

прписать,ну только ошибку в этом коде исправить((
Добавлено спустя   1 минуту  18 секунд:
В Этой теме он ))

Неактивен

#159 2011.08.13 21:35

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

подскажите как сделать при нажатии на ссылку занос число в базу? например ссылка "Слить" нажимаешь на нее и в базу в определенное поле записывается значение "1" ,как такое сделать?)

Неактивен

#160 2011.08.14 05:46

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по PHP

Подскажите, делает ли что-то с кодировкой функция strtr() и strtolower(), т.к. у меня глюки с кодировкой начинались и на хосте.

Отредактировано tipsun (2011.08.14 14:21)

Неактивен

#161 2011.08.14 09:57

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

да. эти функции некорректно работают с мультибайтовыми кодировками.
используй mbstring.

Неактивен

#162 2011.08.14 12:37

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по PHP

Мой мозг никак не высрет функцию антимата.
Можно простым str_ireplace(); то, что есть в архиве, но будет проходить м-а.т

Неактивен

#163 2011.08.14 14:03

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

tipsun, мат всегда будет проходить. Я бы вообще не заморачивался такими глупостями.

Неактивен

#164 2011.08.16 04:06

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

подскажите как всунуть таблу из базы в переменную,идет табла foto_add,и там поле adres,что типа такого должно быть $zzz = foto_add['adres'];,только это не правильно(

Отредактировано POFIGISST (2011.08.16 04:09)

Неактивен

#165 2011.08.16 04:20

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Код:

1
2
3
4
<?php
$q mysql_query("SELECT ...");
$foto_add mysql_fetch_array($q);
echo $foto_add['adres'];

Неактивен

#166 2011.08.16 04:23

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS написал:

Код:

1
2
3
4
<?php
$q mysql_query("SELECT ...");
$foto_add mysql_fetch_array($q);
echo $foto_add['adres'];

Спасибо большое Дим))

Неактивен

#167 2011.08.16 04:54

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

как можно  3 переменных прикрепить? примерно вот так

Код:

1
echo '<img src="http://'.$sit.''.$foto_add['adres'].''.jpg"><br>';

тут 2 переменных,и незнаю как их скрепить в одной строке((

и еще вопрос,какая у меня вот тут

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
 
require'config.php';
 
$q mysql_query("SELECT ...");
$foto_add mysql_fetch_array($q);
echo $foto_add['adres'];
 
 
//$sit = $_SERVER['HTTP_HOST'];
 
echo '<img src="http://test4.ru'.$foto_add['adres'].'.jpg"><br>';  
?>

ошибка?((

Отредактировано POFIGISST (2011.08.16 04:57)

Неактивен

#168 2011.08.16 04:57

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Код:

1
2
3
4
5
<?php
$a1 1;
$a2 2;
$a3 3;
echo '[' $a1 $a2 $a3 .']';

[123]
Добавлено спустя   1 минуту  12 секунд:
но можно и таким образом как это делал ты $a1 . '' . $a2

Неактивен

#169 2011.08.16 05:12

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

ну вот у мя такой говнокод вышел

Код:

1
2
3
4
5
6
7
8
9
10
11
<?php
 
require'config.php';
 
$q mysql_query("SELECT ...");
$a2 mysql_fetch_array($q);
$sit $_SERVER['HTTP_HOST'];
 
 
echo '<img src ="http://[' $sit $a2 .'].jpg"><br>';
?>

Неактивен

#170 2011.08.16 05:14

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

SELECT ... замени на нормальный запрос
Добавлено спустя   1 минуту  10 секунд:
и $a2 это массив уверен у тебя пишет array

Неактивен

#171 2011.08.16 05:17

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

$q = mysql_query("SELECT * FROM  foto_add");

на такой заменить?))прост с базами у мя ваще беда((
Добавлено спустя   1 минуту  16 секунд:
ты прав насчет массива,пишет вот так "<img src ="http://[test4.ruArray].jpg"><br>" (((

Неактивен

#172 2011.08.16 05:22

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

бля я как тебе написал? $a2['adres']
вставь var_dump($a2);
Добавлено спустя   1 минуту  1 секунду:
лан я спать

Неактивен

#173 2011.08.16 05:25

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

массив уже убрал,теперь так

Код:

1
<img src ="http://[test4.ru/files/album/album_2_3].jpg"><br>

если убрать [ скобочки,то картинка норм будет появляться))

Неактивен

#174 2011.08.16 05:26

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

ну так в чем проблема?

Неактивен

#175 2011.08.16 05:26

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS написал:

бля я как тебе написал? $a2['adres']
вставь var_dump($a2);
Добавлено спустя   1 минуту  1 секунду:
лан я спать

приятных тебе))

вот такой код

Код:

1
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg"><br>';

все норм выводит))спасибо еще раз))
Добавлено спустя   1 минуту  20 секунд:

TLENS написал:

ну так в чем проблема?

ну так я же думал,что если уберу их,то ошибка синтаксиса будет((

Неактивен

#176 2011.08.16 05:29

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

новый вызов mysql_fetch_array покажет следующий столбец. ну вообщем спрашивай если что не понятно. да и не забывай читать инфу о функциях

Неактивен

#177 2011.08.16 05:31

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS написал:

новый вызов mysql_fetch_array покажет следующий столбец. ну вообщем спрашивай если что не понятно. да и не забывай читать инфу о функциях

а если мне нужен именно не следующий столбец,а 5 или 10 например?

Неактивен

#178 2011.08.16 10:24

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

не столбец, а строку.
у тега img атрибут alt обязательный.

Неактивен

#179 2011.08.16 10:32

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

не столбец, а строку.
у тега img атрибут alt обязательный.

а ну да

Неактивен

#180 2011.08.16 22:03

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

а с альтом это вот так

Код:

1
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg"><alt="фото"/><br/>';

?)

Неактивен

#181 2011.08.16 22:11

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по PHP

Неактивен

#182 2011.08.16 22:12

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

POFIGISST написал:

а с альтом это вот так

Код:

1
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg"><alt="фото"/><br/>';

?)

ГГ

Код:

1
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg alt="фото" /><br/>';

Неактивен

#183 2011.08.16 22:16

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по 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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
<?
require'../config.php';
$align='left';
$title='Подарки';
aut();
head();
who_add(0,'enter');
 
$mod = check($_GET['mod']);
 
if(!isset($_GET['nk']) && isset($_SESSION['nk']))$nk = check($_SESSION['nk']);
else {$nk = check($_GET['nk']);
$_SESSION['nk']=$_GET['nk'];}
 
 
switch($mod){
 
default:
echo 'Подароки <b>'.user_inf($nk,'user').'</b><br/><br />';
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=mysql_result(mysql_query("select count(*) as num from gifts where gift_id = '".$nk."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
 
$r = mysql_query ("Select * from gifts where gift_id = '".$nk."' order by time desc LIMIT $start, $max");
if ($k_post == 0)echo 'Подарков пока нет...<br />';
$post_k=$start+1;
while($a = @mysql_fetch_array($r)){
 
if ($a[publ]!=0){
if ($user[id]==$nk||$user[id]==$a[user_id])echo '<a href="'.H.'gifts'.$nk.'_'.$a[id].'"><img src="'.H.'gifts/'.$a['gift'].'" title="Личный подарок!"/></a> ';
else echo '<img src="'.H.'img/gl.gif"/> ';
 
}else{
echo '<a href="'.H.'gifts'.$nk.'_'.$a[id].'"><img src="'.H.'gifts/'.$a['gift'].'" title="Информация о подарке"/></a> ';
}
 
}
 
if ($k_page>1){
echo '<dl><dt></dt></dl>';
str(''.H.'gifts'.$nk.'?',$k_page,$page);
echo '<br /><dl><dt></dt></dl>';
}
 
echo '<br /><a href="gifts/index?mod=add&amp;nk='.$nk.'">Сделать подарок</a><br />';
 
break;
 
case 'read':
$gift = check(intval($_GET['gift']));
$a = @mysql_fetch_array(mysql_query ("Select * from gifts where gift_id = '".$nk."' and id = '".$gift."'"));
 
echo '<img src="'.H.'gifts/'.$a['gift'].'"/><br />';
if ($a[anonim]==0)$gu = nik($a[user_id]); else $gu = 'Аноним';
if ($a[publ]==0)$publ = ''; else $publ = ' </b>(<u title="Подарок виден только вам!">Лично</u>)<b>';
echo '<u>Подарил:</u> <b>'.$gu.$publ.'</b> ('.times($a['time']).')<br />';
echo '<u>Комментарий:</u><br />'.$a['kom'].'<br />';
 
if($user[id]==$nk || $user[level]>=5)echo '<br /><a href="'.H.'gifts'.$nk.'_'.$a[id].'?del">Удалить</a><br />';
 
if (isset($_GET['del'])){
if($user[id]==$nk || $user[level]>=5){
mysql_query("DELETE FROM gifts where gift_id = '".$nk."' and id = '".$gift."'");
}
 
header ('Location: '.H.'gifts'.$nk.'?'.SID);
 
}
 
break;
 
 
case 'add':
 
if (!user($nk)){echo 'Такого пользователя не существует!'; exit; }
echo 'Подарок для <b>'.user_inf($nk,'user').'</b><br/>';
 
require_once(H."sys/func/count_dir.php");
 
$downdir_array = array();
 
$dir = opendir (".");
while ($file = readdir ($dir)) {
if (is_dir($file)) {
if($file=="."||$file=="..") continue;
$downdir_array[]=$file;
}}
closedir ($dir);
 
sort($downdir_array);
 
$total = count($downdir_array);
for ($i = 0; $i < $total; $i++){
 
echo '<img src="../img/dir.gif" alt=""/> <a href="?mod=addi&amp;path='.$downdir_array[$i].'&amp;'.SID.'">Подарки по '.$downdir_array[$i].' рублей</a> ('.count_dir($downdir_array[$i]).')<br/>';
}
 
 
 
break;
 
case 'addi':
 
$path = check(intval($_GET['path']));
$d=opendir("$path");
if(isset($_GET['list']))$list = check(intval($_GET['list']));
else $list = check(intval($_POST['list']));
if(!$list) $list = "1";
$n = "1";
while(($k=readdir($d))!==false){
if ($k=='.'||$k=='..'||$k=="index.php"||$k==".htaccess"||$k==".Thumbs.db") continue;
$n++;
}
closedir($d);
$num=($n/$user['max']);if ($num!==(int)$num){$foo = (int) $num;$fo = ($foo + 1);}else{$fo=$num;}
if ($list == "") {$c="0";}else{$c=($user['max']*($list-1));}
$d=opendir("$path");
$la = "-1";
 
echo 'Подарок для <b>'.user_inf($nk,'user').'</b><br/>';
echo 'Стоймость подарка: <b>'.$path.'</b> рублей<dl></dl>';
 
 
while(($e=readdir($d))){
if ($e=='.'||$e=='..'||$e=="index"||$e==".htaccess"||$e==".Thumbs.db") continue;
$la = $la + 1;
if($la>$c-1 and $la<$c+$user['max']){
 
 
$laa = $la + 1; // Номер файла
echo "<a href=\"index?mod=gift&amp;path=$path&amp;gift=$e\"><img src=\"$path/$e\" alt=\"$e1\"/></a> ";
}
}
for ($i=0; $i<=$fo; $i++)
if ($list == "$path") {
$c=0;
}else{
$c=($user['max']*($list-1));
}
$lis = $list + 1;
$lis1 = $list - 1;
echo '<br/>';
if ($lis1 < 1){echo "&lt;&lt;пред.";}else{echo "<a href=\"index?list=$lis1&amp;mod=".$mod."&amp;path=$path\">&lt;&lt;пред. </a>";}
if ($lis == $i){echo "| след.&gt;&gt;<br/>";
}else{echo "| <a href=\"index?list=$lis&amp;mod=".$mod."&amp;path=$path\">след.&gt;&gt;</a><br/>";}
if ($ver!='wml') echo "<form method=\"POST\" action=\"index?mod=".$mod."&amp;path=$path\" name=\"auth\">";
echo "Перейти к:<br/>";
echo "<input name=\"list\" format=\"*N\" size=\"3\"/><br/>";
echo "странице<br/>";
 
if ($ver=='wml'){
 
echo "<anchor title=\"go\">Пошёл<go href=\"index?mod=".$mod."&amp;path=$path\" method=\"post\">";
echo "<postfield name=\"list\" value=\"$(list)\"/>";
echo "</go></anchor>";
 
echo "<br/>";
}else{
echo "<input type=\"submit\" class=\"ibutton\" value=\"Пошёл\" name=\"enter\"><br/>";
}
$alls = $i - 1;
echo "<br/>";
echo "Подарков:<b> $n</b><br/>Страницa:<b> $list/$alls</b><br/>";
 
closedir($d);
break;
 
case 'gift':
 
$path = check(intval($_GET['path']));
$gift = check($_GET['gift']);
 
if ($user['rur']<$path)$err = 'У вас нет <b>'.$path.'</b> рублей!';
 
if (empty($err)){
 
 
 
$act = check($_GET['act']);
if (empty($act)){
echo '<b>Подарок:</b><br /><img src="'.$path.'/'.$gift.'"/><br />';
if ($ver!='wml')echo '<form action="index?mod='.$mod.'&amp;act=add&amp;&amp;path='.$path.'&amp;gift='.$gift.'&amp;'.SID.'" method="post">';
echo 'Комментарий:<br /><input name="kom" title="Комментарий"/><br/>';
echo '<input type="checkbox" name="anonim" value="1"/> Анонимный<br/>';
echo '<input type="checkbox" name="publ" value="1"/> Личный<br/>';
 
if ($ver=='wml'){
echo '<br /><anchor title="go">Сделать подарок<go href="index?mod='.$mod.'&amp;act=add&amp;&amp;path='.$path.'&amp;gift='.$gift.'&amp;'.SID.'" method="post"><br />';
echo '<postfield name="kom" value="$kom"/>
<postfield name="anonim" value="$anonim"/>
<postfield name="publ" value="$publ"/>
</go></anchor><br /><br />';
}else{
echo '<br /><input type="submit" class="ibutton" value="Сделать подарок" class="cp"><br />';
}
 
}else{
 
$kom = check($_POST['kom']);
$anonim = check(intval($_POST['anonim']));
$publ = check(intval($_POST['publ']));
 
if ($user['translit']==1)$kom = translit($kom);
mysql_query("INSERT INTO `gifts` (user_id,gift_id,time,kom,gift,anonim,publ) values('$user[id]','".user_inf($nk)."','$time','$kom','".$path."/".$gift."','$anonim','$publ')");
$rurm = $user['rur']-$path;
mysql_query('UPDATE `users` SET `rur` = "'.$rurm.'" WHERE `id` = "'.$user['id'].'"');
echo 'Подарок отправлен пользователю <b>'.user_inf($nk,'user').'</b>!<br />';
if ($anonim==1)$podaril = 'Аноним';
else $podaril = $user['user'];
if (user_inf($nk,'fr_notify')==1){
if ($user['sex']==1)$sex = 'сделал'; else $sex = 'сделала';
$ids = mysql_fetch_array(mysql_query("SELECT * FROM `gifts` WHERE `kom` = '".$kom."'"));
$idi=$ids['id'];
$msg = 'Пользователь [b]'.$podaril.'[/b] '.$sex.' Вам [url=/gifts'.$nk.'_'.$idi.']подарок[/url].';
mysql_query ("INSERT INTO privat (user,user_id,to_user,to_id,time,msg) VALUES ('$user_system','0','".user($nk)."','".user_inf($nk)."','$time','$msg')");
 
$subject = $_SERVER['HTTP_HOST'];
$msgmail = ''.$podaril.' '.$sex.' Вам подарок.\r Просмотреть Ваши подарки можно на странице:\r http://'.$_SERVER['HTTP_HOST'].'/gifts'.$nk.' \r\r С уважением,
Администрация '.$_SERVER['HTTP_HOST'].'\r\r\r_ _ _ _ _
Вы можете поменять настройки e-mail оповещений на странице:
http://'.$_SERVER['HTTP_HOST'].'/my/setting?mod=notify';
$adds = "From: <admin@".$_SERVER['HTTP_HOST'].">";
$adds .= "X-sender: <admin@".$_SERVER['HTTP_HOST'].">";
$adds .= "Content-Type: text/plain; charset=utf-8";
$mail=explode('|',user_inf($to,'mail'));
mail($mail[0],$subject,$msgmail,$adds);
}
 
 
 
}
 
 
 
 
}else echo $err;
break;
 
}
 
echo '<br />';
echo gb.'<a href="/gifts'.$nk.'">Подарки</a>'.div;
echo gb.'<a href="'.H.$nk.'">В анкету</a>'.div;
echo gb.'<a href="'.H.'enter">Прихожая</a>'.div;
foot();
?>

Это идет вывод подарков,значение сколько картинок выводить на страницу,берется из базы, табла users поле max ,смысл в том что в это поле заносятся настройки сколько сообщений выводить в комнатах,хочу изменить,чтоб значение бралось не из базы,а просто так сразу выводило по 5 подарков на страницу,полностью без базы,только как это сделать,не совсем понимаю((
Добавлено спустя   1 минуту  53 секунды:

tipsun написал:

http://htmlbook.ru

я как раз там и смотрел синтаксис его)))
Добавлено спустя   3 минуты :

TLENS написал:

POFIGISST написал:

а с альтом это вот так

Код:

1
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg"><alt="фото"/><br/>';

?)

ГГ

Код:

1
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg alt="фото" /><br/>';

спасибо))вопрос не по теме ,а как ты сделал такой шрифт,которым у тя подпись,ну это "Мое творчество.
the-best-xxx.ru
podsmotri.org
И еще пару покамест не стоящих внимания."

Неактивен

#184 2011.08.16 22:41

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Не понял вопроса. [ size=8][/size ]

Отредактировано TLENS (2011.08.16 22:45)

Неактивен

#185 2011.08.16 22:44

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS написал:

Не понял вопроса.

какого из всех?а то я много задал((сорри((

Неактивен

#186 2011.08.16 23:51

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по 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
<?php
 
//$max = $user['max'];
$max 5;
 
/*
а вообще ноги растут с /sys/user.php файла, может и в нем поменять, может не только тут этот параметр используется
*/
 
// Запрос в базе данных по юзеру
if ($us && $pass) {
$req $db->sql_query("SELECT * FROM `users` WHERE `id` = '".check(intval($us))."' LIMIT 1");
if ($db->sql_numrows($req)) {
$user $db->sql_fetchrow($req);
 
//можно и так:
$user['max'] = 5;
 
if (md5($pass) === $user['pass']) {
 
 // =D
}
else {
// Если пароль не совпадает, уничтожаем переменные сессии и чистим куки
unset ($_SESSION['id']);
unset ($_SESSION['ps']);
setcookie('id''');
setcookie('ps''');
$user false;
}
 
?>

Отредактировано tipsun (2011.08.16 23:58)

Неактивен

#187 2011.08.17 00:17

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Офигеть yikes  работает ,спасибо,пассы и так в мд5 в базе храняться  big_smile

Неактивен

#188 2011.08.17 11:10

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

check(intval($us))
wtf?

Неактивен

#189 2011.08.20 00:19

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

что это за ошибка при заливке базы?


Вложения

Неактивен

#190 2011.08.20 08:56

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ну, там же написано. записываешь данные в колонку, которой не существует.

Неактивен

#191 2011.08.23 01:34

Nu3oN
Moderator
Откуда: БелгородЭ
Зарегистрирован: 2010.04.28
Сообщений: 869
Карма: 11
Профиль Веб-сайт

Re: Общие вопросы по PHP

Голова уже лопается... необходимо при создании объекта класса, передавать неопределенное колличество аргументов!
Например:

Код:

1
2
3
4
5
6
<?php
function getClass($name$args=array())
{
    $a = new $name(/* Сюда надо как то вставить аргументы из массива $args */);
    return $a;
}

потом

Код:

1
2
3
<?php
$a getClass('class_one', array(1234));
$b getClass('class_two', array('a''b''c'));

Как это можно реализовать? __autoload даже не предлагать гг

Пробовал еще так:

Код:

1
2
3
<?php
$a = new $name();
call_user_func_array(array($a'__construct'), $args);

Но тогда фигня выходит... Обьекты дублируются:

array(0) { }
array(4) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) }
array(0) { }
array(3) { [0]=> string(1) "a" [1]=> string(1) "b" [2]=> string(1) "c" }

это хорошо если аргументы не указаны в конструкторе! а если указаны...
Должно быть как минимум два, и я введу эти два аргумента, а мне будет выдавать ошибку, и скрипт будет спокойно работать дальше!


Я буду лучше голоден, но между креслом и рулем и на дороге.

Неактивен

#192 2011.08.23 02:36

Nu3oN
Moderator
Откуда: БелгородЭ
Зарегистрирован: 2010.04.28
Сообщений: 869
Карма: 11
Профиль Веб-сайт

Re: Общие вопросы по PHP

Все! разобрался!
Мне интересно почему так получается, если в функции создать класс, то выдаст ошибку, если же в этой же функции подключить файл (через include / require) то все нормально?


Я буду лучше голоден, но между креслом и рулем и на дороге.

Неактивен

#193 2011.08.23 19:51

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

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

Неактивен

#194 2011.08.23 20:18

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Nu3oN
Возможно проблема из за не глобальных переменных

Отредактировано TLENS (2011.08.23 20:20)

Неактивен

#195 2011.08.23 22:16

Nu3oN
Moderator
Откуда: БелгородЭ
Зарегистрирован: 2010.04.28
Сообщений: 869
Карма: 11
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj написал:

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

Код:

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
<?php
 
function getClass($name$args=array())
{
 
    require($name '.class.php');
    require('PassingArguments.class.php');
 
    result new PassingArguments($args);
}
 
И сам файл PassingArguments:
 
eval('
      class PassingArguments extends '.$name.
      { 
          function __construct($args) 
          {       
            call_user_func_array(\'parent::__construct\', $args); 
          }   
      }
');
 
 
?>

Добавлено спустя   2 минуты  31 секунду:
Можно еще так:

Код:

1
2
3
4
<?php
$reflection = new ReflectionClass('NameClass');
$object $reflection -> newInctanceArgs(array(/* аргументы */));
?>

Но не у всех есть такая библа smile


Я буду лучше голоден, но между креслом и рулем и на дороге.

Неактивен

#196 2011.08.23 22:41

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Как решить проблему?
Когда файл отдается php скриптом (fread) встречается проблема пока отдается файл то не загружает остальные страницы пока полностью не отдастся файл.

Неактивен

#197 2011.08.23 22:57

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

Nu3oN, я тоже переодически сталкиваюсь с такой проблемой с аргументами, пока нормальных решений не знаю. что eval, что Reflection - говно..
Добавлено спустя   1 минуту  20 секунд:
TLENS, подробнее код. по-моему, это уже обсуждали, возможно, загружен канал

Неактивен

#198 2011.08.23 23:47

Nu3oN
Moderator
Откуда: БелгородЭ
Зарегистрирован: 2010.04.28
Сообщений: 869
Карма: 11
Профиль Веб-сайт

Re: Общие вопросы по PHP

Gemorroj написал:

Nu3oN, я тоже переодически сталкиваюсь с такой проблемой с аргументами, пока нормальных решений не знаю. что eval, что Reflection - говно..

Лучших вариантов на ближайшее время не вижу (= точнее вообще никаких не наблюдаю гг


Я буду лучше голоден, но между креслом и рулем и на дороге.

Неактивен

#199 2011.08.25 01:02

Nu3oN
Moderator
Откуда: БелгородЭ
Зарегистрирован: 2010.04.28
Сообщений: 869
Карма: 11
Профиль Веб-сайт

Re: Общие вопросы по PHP

В общем очередной раз переписываю свою cms, и вот решил изменить полностью структуру MVC...
В прошлый раз я писал все иначе, все делилось просто: "/папка/контроллер/переменные" без права на выбор!
Теперь решил все сделать как должно быть! и мне необходимо из URL получить путь к контроллеру, класс контроллера и выводимый метод, с учетом того-что папок может быть очень много! решил это реализовать так:

Код:

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
<?php
 
        $_GET['do'] = '/dir/dir/dir/class/method/'// Образец (папок может быть хоть сколько)
 
        $arrDefault = array('path' => 'home''class' => 'welcome''method' => 'index''vars' => 'null');
 
        $arrPath array_filter(explode('/'$_GET['do']), 'trim');
        $intPath count($arrPath);
 
        $i=0$get = array('str'=>'''dir'=>'''class'=>'');
 
        foreach ($arrPath as $key) {
 
            $get['str'] = (empty($get['dir']) ? null $get['dir']) . $key;
 
            if (is_dir(PS_EXTRA_CONTROLLERS $get['str']. '/')) {
                $get['dir'] = $get['str'] . '/';
            } else {
                if (is_file(PS_EXTRA_CONTROLLERS $get['str'] . '.php')) {
                    $get['class'] = $arrPath[$i];
                }
            }
 
            ++$i;
        }
 
        $arrDefault['path']  = empty($get['dir'])   ? $arrDefault['path']  : $get['dir'];
        $arrDefault['class'] = empty($get['class']) ? $arrDefault['class'] : $get['class'];
 
?>

Насколько это гуманно?


Я буду лучше голоден, но между креслом и рулем и на дороге.

Неактивен

#200 2011.08.25 11:30

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ну да, 2 вариант - маппинг. т.е. разработчик сам прописывает в диспетчере все возможные запросы, и в бутстрапе просто ищутся соответствия с заранее определенными правилами.

Неактивен

#201 2011.08.28 06:18

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по PHP

Это короче надо искать другие варианты соединения?

Код:

1
2
3
4
5
Внимание:
curl_setopt_array(): CURLOPT_FOLLOWLOCATION
не может быть активирована, когда safe_mode включен
или open_basedir установлен в
/usr/home/tipsun/htdocs/cinema/index.php

Отредактировано tipsun (2011.08.28 06:18)

Неактивен

#202 2011.08.28 22:29

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по PHP

Хотя можно и другим способом эту переадресацию поймать: get_headers('url', 1);.
Да и вообще file_get_contents(); обойтись. Думал как получше замаскироваться, чтоб граб долго работал.
- - - -
Эта переадресация 1 раз встечается (в месяц: /2011-08/).

Отредактировано tipsun (2011.08.28 22:45)

Неактивен

#203 2011.09.01 11:31

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

tipsun, скорее всего там не совсем корректно переадресация сделана. в соответствии с протоколом HTTP 1.1, путь всегда должен быть абсолютным. т.е. не /index.php, а http://wapinet.ru/index.php
curl работает только со 2 вариантом. в 90% случаев, проблема именно в этом.

Неактивен

#204 2011.09.01 13:46

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по PHP

Спс.
Я там смотрел, полный адрес идет, ну во всяком случае в Chrome в загловках. (этот Chrome не поймешь, он сам разметку исправляет, лишние теги убирает, добавляет итп)

Отредактировано tipsun (2011.09.01 13:46)

Неактивен

#205 2011.09.01 13:54

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

смотри в фаербаге или драгонфлае

Неактивен

#206 2011.09.01 15:41

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по PHP

Ок, спс.
Я там по-другому сделал. Переадресация встречается 1 раз.
Эту переадресацию ловлю при помощи get_headers().
Далее цикл по находжению ссылок, в котором попутно идет запись нужной инфы в базу.
Подключаюсь при помощи cURL.
Что плохо, более подробная инфа лежит в ссылке (как бы подробнее), и надо получается каждый раз на ссылку заходить за более подробной инфой. Но зато 1 раз.
Можно после сканирования сделать, я думаю.
Это еще предстоит написать.

Ну короче вот сие бот-недоразумение...

Код:

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
<?php
//////////
//Автор: TiPsun
// ICQ : 34142776
//////////
require_once 'db.php';
function scanerBot($url=null) {
        
        GLOBAL $db;
        GLOBAL $n;
        
        $agent 'Nokia6070/2.0 (04.00) Profile/MIDP-2.0 Configuration/CLDC-1.1';
        
        $net curl_init();
        curl_setopt_array($net, array(
        CURLOPT_URL            => $url,
        CURLOPT_RETURNTRANSFER => 1,
        CURLOPT_USERAGENT      => $agent,
        CURLOPT_AUTOREFERER    => 1));
        $out curl_exec($net);
        curl_close($net);
        
        $html mb_convert_encoding($out'utf-8''windows-1251');
        preg_match_all('/movie\/(\d+)\/.{2}([^\<]+)/'$html$matches);
        
        $date baseName($url);
        
        $db->beginTransaction();
        foreach ($matches[1] as $key => $value) {
            
            $query $db->prepare("INSERT INTO `films` SET `id`=?, `date`=?, `name`=?;");
            $query->execute(array($value$date$matches[2][$key]));
        }
        $db->commit();
        
        $n += 1;
        
        if (preg_match('/(http:\/\/m\.kinopoisk\.ru\/premier\/\d{4}-\d{2}\/).{2}&rarr;/'$html$match)) {
            
            scanerBot($match[1]);
        }
        else {
            
            exit('Отсканировано '.$n.' страниц!');
        }
    }
//////////
$url 'http://m.kinopoisk.ru/premier/';
$url get_headers($url1);
$n 0;
scanerBot($url['Location']);
//////////
?>

Можно и свою дату ставить. Год-Месяц и подключиться...
Ну чем для каждого такую работу выполнять, лучше наверно все у себя сохранить.

Отредактировано tipsun (2011.09.01 16:07)

Неактивен

#207 2011.09.02 13:56

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

baseName - исправь на basename, php хоть и регистронезависим в названиях функций, но есть посылки для изменения такого поведения к более жесткому наименованию функций, т.е. регистрозависимому.
а так норм. для таких скриптов - главное чтобы они просто выполняли свою задачу.

Неактивен

#208 2011.09.02 18:31

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по PHP

=0 неужели, наконец норм, Ура! smile

Отредактировано tipsun (2011.09.02 18:31)

Неактивен

#209 2011.09.03 16:36

DarkRiDDeR
Участник
Откуда: Вам это не надо знать
Зарегистрирован: 2011.05.12
Сообщений: 163
Карма: 4
Профиль Веб-сайт

Re: Общие вопросы по PHP

Можно ли хранить конфиденциальные данные в сессиях?

Неактивен

#210 2011.09.03 16:38

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

да

Неактивен

#211 2011.09.08 18:45

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

В чем дело при отдаче файла отдается нормально до 99.9% и когда уже в браузере остается 0 сек. идет задержка где то пол минуты. И потом только пишет загружено. Вот код отдачи файлов.

Код:

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
67
68
69
70
71
72
73
74
75
76
<?php
error_reporting(0);
ini_set('zlib.output_compression''Off');
ini_set('output_handler''');
ini_set('max_execution_time'999);
set_time_limit(999);
require './sistem/sistem.class.php';
$_SET  = new Start;
$down  true;
require './sistem/informator.class.php';
$query $_SERVER['QUERY_STRING'];
 
$id = @explode('/'$_SERVER['REQUEST_URI']);
if (substr($id[2], 03) == 'id_') {
    preg_match('/id_(\d+)/'$id[2], $id);
    $id = (int)$id[1];
} else {
    $id =(int) $id[2];
}
 
$q mysql_query("SELECT * FROM `video` WHERE `id` = {$id}");
 
if (mysql_num_rows($q)) {
    $row mysql_fetch_array($q);
    $url $row['url_file'];
}
 
if (substr($_SERVER['REQUEST_URI'], -3) == 'flv') {
    $url preg_replace('/\.[^\.]+$/'''$url) . '.flv';
}
$url = @parse_url($url);
$fp = @fsockopen($url['host'], 80$errno$errstr10);
if (!$fp) {
    exit('Warning. Server problem');
}
foreach($_SERVER as $k=> $v) {
    $http=substr($k05);
    if($http == 'HTTP_') {
        $h=substr($k5);
        if($h == 'HOST'$headers .= 'Host: ' $url['host'] . "\r\n";
        elseif($h == 'REFERER'$headers .= 'Referer: http://' $url['host'] . "\r\n";
        else $headers .= $h.': '.$v."\r\n";
    }
}
 
fputs ($fp"GET " $url['path'] . " HTTP/1.0\r\n" $headers "\r\n");
$headers = array();
while (!feof($fp)) {
    $b trim(fgets($fp));
    if(!$b) break;
    if(substr($b05) == 'HTTP/')
    {
        $headers['HTTP'] = $b;
    }else
    {
        $buf=explode(': '$b);
        $headers[$buf[0]] = $buf[1];
    }
}
$name 'the-best-xxx_ru-' basename($url['path']);
 
                               //header($headers['HTTP']);
                               header('Connection: Close');
                               header('Content-Transfer-Encoding: binary');
                               header('Content-Disposition: attachment; filename="' $name '"');
                               header('Content-Type: '   $headers['Content-Type']);
if($headers['Content-Range'])  header('Content-Range: '  $headers['Content-Range']);
if($headers['Content-Length']) header('Content-Length: ' $headers['Content-Length']);
if($headers['Accept-Ranges'])  header('Accept-Ranges: '  $headers['Accept-Ranges']);
 
 
while (!feof($fp)) {
    echo fread($fp1024);
    //usleep(1000);
    flush();
}

Неактивен

#212 2011.09.08 19:46

Игорь482
Гость

Re: Общие вопросы по PHP

Подскажите пожалуйста, сайт стоит на сервере но после обновления ПО Текст: функция toGDImage
выдает ошибку /ffmpeg.so:
undefined symbol:
img_convert...
Зарание спасибо

#213 2011.09.08 20:07

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

TLENS, это антивирус скорее всего) посмотри загрузку проца что жрет ресурсы.
Добавлено спустя    38 секунд:
Игорь482, код приведи плз.

Неактивен

#214 2011.09.08 21:14

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

это антивирус скорее всего) посмотри загрузку проца что жрет ресурсы.

Антивирь даже отключил тоже самое, да и на процессах ничего заметного не происходит загрузчик жрет.
Но вот выполнил copy на денвере то он без задержки скопировал.
Я запутался. Если даже проблема в юзер-агенте то почему на других сайтах норм а с моего задержка пробовал оперу и хром.
Может проблема в скрипте?

Отредактировано TLENS (2011.09.08 21:14)

Неактивен

#215 2011.09.09 12:45

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Что то с загрузчиком. Пробовал с мобильного 300 кб качает и все. сейчас буду раздуплять

Неактивен

#216 2011.09.09 13:25

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ну, я не вижу проблем в скрипте..(

Неактивен

#217 2011.09.09 13:27

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Изза чего может быть 300 кб?

Неактивен

#218 2011.09.09 13:37

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

возможно, дело в Content-Encoding. Удаленный сервер его передает, а ты нет.

Неактивен

#219 2011.09.09 13:47

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Поставил то же самое. Сейчас напишу код похож и буду ему давать заголовки прослежу как он отвечает

Неактивен

#220 2011.09.09 22:22

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Паша ответь мне плис что это такое, Какие есть предположения?

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
 
    //--- Выдача файла --//
    public function readfile () {
        //fpassthru($this->fp);
        $starttime microtime(1);
        $fp fopen('info.txt''a');
        while (!feof($this->fp)) {
            $len strlen(fread($this->fp1024));
            $stt microtime(1);
            fputs($fp$len ' - ' . ($stt $starttime) . "\n");
            $starttime $stt;
        }
    }

Дак вот в файле info.txt ряд ожидаемых строчек.
Но последние:

1024 - 5.00679016113E-6
1024 - 0.001140832901
1024 - 2.00271606445E-5
1024 - 1.09672546387E-5
348 - 60.0000932217
0 - 14.9743289948

Это слишком!
---------------------
С другими хостами например с твого норм только с одним сайтом такая трабла.
Предположение бан по маске.
Так как с других серверов норм.
Но почему файлы дает фиг его знает.

Отредактировано TLENS (2011.09.09 22:24)

Неактивен

#221 2011.09.09 22:36

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

я чето не догоняю.
$fp = fopen('info.txt', 'a'); // открыли только для записи
while (!feof($this->fp)) { // тут проверка на конец файла, но модификатор "a" как раз помещает указатель на конец файла, так что внутрь while мы не должны попасть

Неактивен

#222 2011.09.09 22:37

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Ты не понял Есть $fp а есть $this->fp который открыт выше
в $this->fp открыт вайл со стороннего хоста.

Отредактировано TLENS (2011.09.09 22:38)

Неактивен

#223 2011.09.09 22:38

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

а епт)
дай весь код. запущу на своей фряхе.

Неактивен

#224 2011.09.09 22:40

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Я его запускал на других работает как надо. скорее ip

Код:

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<?php
error_reporting(0);
ini_set('zlib.output_compression''Off');
ini_set('output_handler''');
ini_set('max_execution_time'999);
//var_dump($GLOBALS["HTTP_SERVER_VARS"]);
 
class Parser {
    public $host;
    public $path;
    public $name;
    public $url;
    public $header;
    public $fp;
    public $err;
    public $accept_headers;
    public function __construct($url$name '') {
        if (!$name) {
            $this->name basename($url);
        } else {
            $this->name $name;
        }
        
        $url parse_url($url);
        $this->host $url['host'];
        $this->path $url['path'];
        $this->accept_headers $this->get_accept_headers();
    }
    
    //--------- Подготовка принятых заголовков для передачи ------//
    private function get_accept_headers () {
        foreach($_SERVER as $k => $v) {
            $http substr($k05);
            if($http == 'HTTP_') {
                $h substr($k5);
                if($h == 'HOST')
                    $headers .= 'Host: ' $this->host "\r\n";
                    
                elseif($h == 'REFERER')
                        $headers .= 'Referer: http://' $this->host "\r\n";
                
                else $headers .= $h ': ' $v "\r\n";
            }
        }
        return $headers;
    }
    //----- Соеденение и передача заголовков ------//
    public function connect () {
        $this->fp = @fsockopen($this->host80$errno$errstr10);
        if (!$this->fp) {
            $this->err '<h1>' $errno '</h1>' "\n" '<p>' $errstr '</p>';
            return false;
        } else {
            fputs ($this->fp"GET " $this->path " HTTP/1.0\r\n" $this->accept_headers "\r\n");
            return true;
        }
    }
    //----------- Получаю заголовки -------//
    public function get_headers () {
        $headers = array();
        while (!feof($this->fp)) {
            $b trim(fgets($this->fp));
            if(!$b) break;
            if(substr($b ,05) == 'HTTP/') {
                $headers['HTTP'] = $b;
            } else {
                $buf explode(': '$b);
                $headers[$buf[0]] = $buf[1];
            }
        }
        return $headers;
    }
    //--- Выдача файла --//
    public function readfile () {
        //fpassthru($this->fp);
        $starttime microtime(1);
        $fp fopen('info.txt''a');
        while (!feof($this->fp)) {
            $f fread($this->fp1024);
            $len strlen($f);
            $stt microtime(1);
            fputs($fp$len ' - ' . ($stt $starttime) . "\n");
            if ($len 1024) {
                fputs($fp$f "\n\n\n");
            }
            $starttime $stt;
        }
    }
}
set_time_limit(999);
 
$file = new Parser ('http://ds.sasisa.ru/fc/upload_files/1199739600/wap_sasisa_ru_homevideo_tanya_xxx.3gp');
if (!$file->connect()) exit($file->err);
$headers $file->get_headers();
//var_dump($headers); exit;
 
 
//header($headers['HTTP']);
//header('Keep-Alive: timeout=10, max=60');
//header('Connection: Keep-Alive, close');
//header ("Cache-Control: None");
//header('Content-Encoding: binary');
//header('Content-Disposition: attachment; filename="' . $file->name . '"');
 
//if($headers['Content-Range'])
    //header('Content-Range: '  . $headers['Content-Range']);
    
//if($headers['Accept-Ranges'])
    //header('Accept-Ranges: '  . $headers['Accept-Ranges']);
    
//header('Content-Length: ' . $headers['Content-Length']);
    
//header('Content-Type: ' . $headers['Content-Type']);
 
$file->readfile();

Добавлено спустя   4 минуты  54 секунды:
Ну что там?

Неактивен

#225 2011.09.09 22:57

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

последние строчки:

1024 - 1,5020370483398E-5
1024 - 1,5020370483398E-5
348 - 60,271856069565

а дальше пидарасня какая-то. такое ощущение, что сам файл пишется. щас код повнимательнее посмотрю.

Неактивен

#226 2011.09.09 22:59

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

А та не парся то я решил глянуть что там 83 строка
Добавлено спустя   6 минут  41 секунду:
Я конечно люблю загадки но не до такой степени.
Выполнил

Код:

1
2
3
4
<?php
$starttime microtime(1);
copy('http://ds.sasisa.ru/fc/upload_files/1199739600/wap_sasisa_ru_homevideo_tanya_xxx.3gp''test.file');
echo round(microtime(1) - $starttime4);

Результат 0.6344
Все таки проблема в коде.
Паша вся надежда на тебя. Сейчас попробую отправляемые заголовки перевести в нижний регистр. Но мало верится что поможет я уже не знаю что делать.

Неактивен

#227 2011.09.09 23:15

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Подожди дак у тебя тоже вис, это статы с твоего сервера?
1024 - 1,5020370483398E-5
1024 - 1,5020370483398E-5
348 - 60,271856069565

Неактивен

#228 2011.09.09 23:16

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

да.
смотрю в чем дело.

Неактивен

#229 2011.09.09 23:45

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

smile)
вобщем так)
Добавлено спустя    20 секунд:

Код:

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
<?php
//error_reporting(0);
 
ini_set('zlib.output_compression''Off');
ini_set('output_handler''');
ini_set('max_execution_time'999);
//var_dump($GLOBALS["HTTP_SERVER_VARS"]);
 
class Parser
{
    public $host;
    public $path;
    public $name;
    public $url;
    public $header;
    public $fp;
    public $err;
    public $accept_headers;
 
 
    public function __construct($url$name '')
    {
        if (!$name) {
            $this->name basename($url);
        } else {
            $this->name $name;
        }
 
        $url parse_url($url);
        $this->host $url['host'];
        $this->path $url['path'];
        $this->accept_headers $this->get_accept_headers();
    }
 
 
    public function __destruct()
    {
        is_resource($this->fp) ? fclose($this->fp) : null;
    }
 
 
    /**
     * Подготовка принятых заголовков для передачи
     * 
     * @return string
     */
    private function get_accept_headers ()
    {
        $headers '';
        foreach ($_SERVER as $k => $v) {
            $http substr($k05);
            if ($http == 'HTTP_') {
                $h substr($k5);
                if ($h == 'HOST') {
                    $headers .= 'Host: ' $this->host "\r\n";
                } else if ($h == 'REFERER') {
                    $headers .= 'Referer: http://' $this->host "\r\n";
                } else if ($h == 'CONNECTION') {
                    $headers .= "Connection: close\r\n";
                } else if ($h == 'ACCEPT_ENCODING' || $h == 'TE') {
                    // пропускаем
                } else {
                    $headers .= str_replace('_''-'ucwords(strtolower($h))) . ': ' $v "\r\n";
                }
            }
        }
        return $headers;
    }
 
 
    /**
     * Соеденение и передача заголовков
     * 
     * @return bool
     */
    public function connect ()
    {
        $this->fp = @fsockopen($this->host80$errno$errstr10);
        if (!$this->fp) {
            $this->err '<h1>' $errno '</h1>' "\n" '<p>' $errstr '</p>';
            return false;
        } else {
            fputs ($this->fp"GET " $this->path " HTTP/1.0\r\n" $this->accept_headers "\r\n");
            return true;
        }
    }
 
 
    /**
     * Получаю заголовки
     * 
     * @return array
     */
    public function get_headers ()
    {
        $headers = array();
        while (($b fgets($this->fp)) !== false) {
            $b trim($b);
            if ($b === '') break;
 
            if (substr($b05) == 'HTTP/') {
                $headers['HTTP'] = $b;
            } else {
                $buf explode(': '$b);
                $headers[$buf[0]] = $buf[1];
            }
        }
        return $headers;
    }
 
 
    /**
     * Запись файла
     */
    public function readfile ()
    {
        $starttime microtime(1);
        $fp fopen('info.txt''a');
        fputs($fp$this->accept_headers "\n\n\n\n");
 
        while (($f fgets($this->fp)) !== false) {
            $len strlen($f);
            $stt microtime(1);
            fputs($fp$len ' - ' . ($stt $starttime) . "\n");
            $starttime $stt;
        }
    }
}
set_time_limit(999);
 
$file = new Parser ('http://ds.sasisa.ru/fc/upload_files/1199739600/wap_sasisa_ru_homevideo_tanya_xxx.3gp');
if (!$file->connect()) exit($file->err);
$headers $file->get_headers();
//var_dump($headers); exit;
 
 
//header($headers['HTTP']);
//header('Keep-Alive: timeout=10, max=60');
//header('Connection: Keep-Alive, close');
//header ("Cache-Control: None");
//header('Content-Encoding: binary');
//header('Content-Disposition: attachment; filename="' . $file->name . '"');
 
//if($headers['Content-Range'])
    //header('Content-Range: '  . $headers['Content-Range']);
    
//if($headers['Accept-Ranges'])
    //header('Accept-Ranges: '  . $headers['Accept-Ranges']);
    
//header('Content-Length: ' . $headers['Content-Length']);
    
//header('Content-Type: ' . $headers['Content-Type']);
 
$file->readfile();

Неактивен

#230 2011.09.09 23:45

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Слушаю

Неактивен

#231 2011.09.09 23:47

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

Конкретно проблема в 60 задержке - в заголовке Connection: Keep-Alive
Там еще была ошибка в работе с feof

Неактивен

#232 2011.09.09 23:50

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Я твой должник. Я до сих пор толком не понял для чего Keep-Alive сейчас почитаю, А что на счет EOF?

Неактивен

#233 2011.09.09 23:56

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ну там получалось что 1 раз считывал лишнюю строчку.
ну там еще и сзаголовками была проблема, они же в php типа как ACCEPT_CHARSET, а передавать нужно Accept-Charsert. Как минимум _ заменить на - надо.

Неактивен

#234 2011.09.10 00:02

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

А блин куда я смотрел. Но тоже кстати собирался рыть в get_accept_headers ().
Моя бабушка всегда мне говорила если долго мучится что нибудь получится.
Меня очень запутало то что с Твоего сайта не было проблем.
Спасибо огромное еще раз!

Неактивен

#235 2011.09.10 01:01

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

вапинет отдает такое: Keep-Alive: timeout=5, max=100
т.е. задержка 5 сек, а не 60 сек, как на сасисе.

Неактивен

#236 2011.09.26 20:26

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Помогите плиз написать функцию,которая будет блокировать смайлы в чате в одном посте,вернее чтоб лимит был,например чтоб в одном посте показывало только 2 смайла,а остальные чтоб не выводило,а то есть умники которые в одном посте ставят по 20 смайлов,и страниц х.з. сколько грузиться,к посту прикрепляю файл отвечающий за это(( сам пробовал,но нифига не вышло,только ошибок кучу сделал((


Вложения

Неактивен

#237 2011.09.26 20:34

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Это ты писал скрипт?

Неактивен

#238 2011.09.26 20:37

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS написал:

Это ты писал скрипт?

нет,файл был написан Шахтером,а мод личных смайлов на заказ писали((
Добавлено спустя   8 минут  41 секунду:
примерно таким

Код:

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
define('MAX_SMILES',2); // Максимальное количество смайлов
 
$cache_sml;
$cache_pat;
$n = 0;
 
function sml_replace_callback($match)
{
global $cache_sml,$n;
if($n == MAX_SMILES)
return '';
$n++;
return $cache_sml[$match[1]];
}
function smiles($msg)
{
global $cache_pat,$cache_sml,$user,$n;
 
if(empty($cache_sml) or empty($cache_pat))
{
$file = file_get_contents(H.'smiles/smiles.txt');
preg_match_all('%(.+) (.+)%',$file,$arr);
$cache_pat = array_map('sml_mk_pat',$arr[2]);
$arr[1] = array_map('sml_mk_img',$arr[1]);
$cache_sml = array_combine($arr[2],$arr[1]);
}

кодом можно сделать наверное,но не соображу как это замутить((

Неактивен

#239 2011.09.26 20:53

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Сейчас напишу дополнение.
Ток скажи честно сколько заплатил за него.

Неактивен

#240 2011.09.26 20:56

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS написал:

Сейчас напишу дополнение.
Ток скажи честно сколько заплатил за него.

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

Неактивен

#241 2011.09.26 21:43

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по 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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
<?
$count_smiles = 3;
 
/**
 * Замена по ограничению
 * @return (string)
 * By TLENS 26.09.2011
 */
function my_replace($var1, $var2, $str, $count = 0)
{
    if ($count <= 0) {
        return str_replace($var1, $var2, $str);
    }
    $arr = explode($var1, $str);
    $c = sizeof($arr);
    if ($c <= $count) {
        return str_replace($var1, $var2, $str);
    } 
    $result = (string)'';
    for ($i = 0; $i<$c; $i++) {
        if ($i < $count) {
            $result .= $arr[$i] . $var2;
        } else {
            $result .= $arr[$i] . ((($i + 1) < $c) ? $var1 : '');
        }
    }
    return $result;
}
//-------------------------------------//
 
function smiles($msg)
{
    global $db, $set,$user, $count_smiles;
    
    $f_smiles=file(H."smiles/smiles.txt");
    for ($i=0;$i<count($f_smiles);$i++)
    {
    $str_sm=explode(' ',trim($f_smiles[$i]));
    $str_sm2='';
    for ($z=1;$z<count($str_sm);$z++)
    {
    if ($z>1){$str_sm2.=' ';}
    $str_sm2.=$str_sm[$z];
    }
    $str_sm2=explode(',',$str_sm2);
    for ($i2=0;$i2<count($str_sm2);$i2++)
    {
    $str_sm2[$i2]=stripcslashes(htmlspecialchars($str_sm2[$i2]));
    $msg=str_replace("$str_sm2[$i2]", "<img src=\"/smiles/$str_sm[0].gif\" alt=\"\" />", $msg);
    }
    }
    $q=mysql_query("SELECT * FROM `user_smiles_spis`"); //Личные смайлы
    while($post = mysql_fetch_array($q)){
    $msg = str_replace($post['sim'], '<a><img src="/smiles/usersmiles/'.$post['name'].'.gif" alt="'.$post['name'].'"/></a>', $msg);
    }
    if ($user['level']>3){
    $f_smiles=file(H."smiles/smiles_mod.txt");
    for ($i=0;$i<count($f_smiles);$i++)
    {
    $str_sm=explode(' ',trim($f_smiles[$i]));
    $str_sm2='';
    for ($z=1;$z<count($str_sm);$z++)
    {
    if ($z>1){$str_sm2.=' ';}
    $str_sm2.=$str_sm[$z];
    }
    $str_sm2=explode(',',$str_sm2);
    
    for ($i2=0;$i2<count($str_sm2);$i2++)
    {
    $str_sm2[$i2]=stripcslashes(htmlspecialchars($str_sm2[$i2]));
    $msg=my_replace("$str_sm2[$i2]", "<img src=\"/smiles/$str_sm[0].gif\" alt=\"\" />", $msg, $count_smiles);
    }
    }}
    return $msg;
}
 
function links_preg1($arr)
{
return '<a href="'.$arr[1].'">'.$arr[2].'</a>';
}
function links_preg2($arr)
{
return $arr[1].'<a href="'.$arr[2].'">'.$arr[2].'</a>'.$arr[4];
}
 
function links($msg)
{
$msg=preg_replace_callback('~\[url=([^ \r\n\t`\'"]+)\](.*?)\[/url\]~iu', 'links_preg1', $msg);
$msg=preg_replace_callback('~(^|\s)([a-z]+://([^ \r\n\t`\'"]+))(\s|$)~iu', 'links_preg2', $msg);
return $msg;
}
$versiya = '4.0';
function bbcodehightlight($arr)
{
$arr[0]=html_entity_decode($arr[0], ENT_QUOTES, 'UTF-8');
$arr[0]=preg_replace('#<img src="(.*?)" alt="(.*?)" />#sui', '\\2', $arr[0]);
return '<div class="" style="overflow:scroll;clip:auto;max-width:480px;">'.preg_replace('#<code>(.*?)</code>#si', '\\1' ,highlight_string($arr[0],1)).'</div>'."\n";
}
 
 
 
function BBcode($msg)
{
$msg=preg_replace('#\[b\](.*?)\[/b\]#si', '<span style="font-weight: bold;">\1</span>', $msg);
$msg=preg_replace('#\[i\](.*?)\[/i\]#si', '<span style="font-style: italic;">\1</span>', $msg);
$msg=preg_replace('#\[u\](.*?)\[/u\]#si', '<span style="text-decoration: underline;">\1</span>', $msg);
 
$msg=preg_replace('#\[b\](.*?)\[/b\]#si', '<span style="font-weight: bold;">\1</span>', $msg);
$msg=preg_replace('#\[i\](.*?)\[/i\]#si', '<span style="font-style: italic;">\1</span>', $msg);
$msg=preg_replace('#\[q\](.*?)\[/q\]#si', '<span style="text-decoration: underline;">\1</span>', $msg);
$msg=preg_replace('#\[del\](.*?)\[/del\]#si', '<del>\1</del>', $msg);
 
$msg=preg_replace('#\[small\](.*?)\[/small\]#si', '<span style="font-size: small;">\1</span>', $msg);
$msg=preg_replace('#\[big\](.*?)\[/big\]#si', '<span style="font-size: large;">\1</span>', $msg);
$msg=preg_replace('#\[blink\](.*?)\[/blink\]#si', '<blink>\1</blink>', $msg);
 
$msg=preg_replace('#\[red\](.*?)\[/red\]#si', '<span style="color:#FF0000;">\1</span>', $msg);
$msg=preg_replace('#\[green\](.*?)\[/green\]#si', '<span style="color:#00FF00;">\1</span>', $msg);
$msg=preg_replace('#\[blue\](.*?)\[/blue\]#si', '<span style="color:#0000FF;">\1</span>', $msg);
 
$msg=preg_replace('#\[yellow\](.*?)\[/yellow\]#si', '<span style="color:#ffff22;">\1</span>', $msg);
 
$msg=preg_replace('#\[fea\](.*?)\[/fea\]#si', '<span style="color:#FF00FF;">\1</span>', $msg);
return $msg;
}define('vb12', true);
 
function br($msg,$br='<br />')
{
$msg=eregi_replace("((<br( ?/?)>)|\n|\r)+",$br, $msg);
return $msg;
}
function page2($page2){$page2=str_replace('</body>','<div align="center"><small><a href="http://masteram.us">© -=ШАХТЕР=-</a></small></div></body>',$page2);$page2=str_replace('</card>','<div align="center"><small><a href="http://masteram.us">© -=ШАХТЕР=-</a></small></div></card>',$page2);return $page2;}
if ((eregi('^/enter\.php',$_SERVER['SCRIPT_NAME']))||(eregi('^/index\.php',$_SERVER['SCRIPT_NAME']))){ob_start(page2);define('set2.0', true);
}else if ((eregi('^'.dirname($_SERVER['PHP_SELF']).'/enter\.php',$_SERVER['SCRIPT_NAME']))||(eregi('^'.dirname($_SERVER['PHP_SELF']).'/index\.php',$_SERVER['SCRIPT_NAME']))){ob_start(page2);}
function esc($text,$br=NULL)
{
if ($br!=NULL)
for ($i=0;$i<=31;$i++)$text=str_replace(chr($i), NULL, $text);
else{
for ($i=0;$i<10;$i++)$text=str_replace(chr($i), NULL, $text);
for ($i=11;$i<20;$i++)$text=str_replace(chr($i), NULL, $text);
for ($i=21;$i<=31;$i++)$text=str_replace(chr($i), NULL, $text);
}
return $text;
}
 
 
function text($str,$br=true,$html=true,$smiles=true,$links=true,$bbcode=true)
{
 
if ($html==true)
 
if ($smiles==true)
$str=smiles($str);
 
 
 
if ($links==true)
$str=links($str);
 
 
if ($bbcode==true)
$str=bbcode($str);
 
 
 
if ($br==true){
$str=br($str);
$str=esc($str);
}
else
{
 
$str=esc($str);
}
 
return $str;
}
 
 
function color_msg($text)
{
global $db, $set,$user, $msg;
if ($msg['color']==1)$text = '[red]'.$msg['msg'].'[/red]';
elseif ($msg['color']==2)$text = '[blue]'.$msg['msg'].'[/blue]';
elseif ($msg['color']==3)$text = '[fea]'.$msg['msg'].'[/fea]';
elseif ($msg['color']==4)$text = '[green]'.$msg['msg'].'[/green]';
return $text;
}
 
function bb_msg($text)
{
global $db, $set,$user, $msg;
if ($msg['bb']==1)$text = '[i]'.$text.'[/i]';
elseif ($msg['bb']==2)$text = '[u]'.$text.'[/u]';
elseif ($msg['bb']==3)$text = '[i][u]'.$text.'[/u][/i]';
elseif ($msg['bb']==4)$text = '[b]'.$text.'[/b]';
elseif ($msg['bb']==5)$text = '[i][b]'.$text.'[/b][/i]';
elseif ($msg['bb']==6)$text = '[big]'.$text.'[/big]';
return $text;
}
 
function emo_msg($text)
{
global $db, $set,$user, $msg;
if ($msg['emo']==1) $text = '[Радостно] '.$text;
elseif ($msg['emo']==2) $text = '[Печально] '.$text;
elseif ($msg['emo']==3) $text = '[Удивленно] '.$text;
elseif ($msg['emo']==4) $text = '[Ласково] '.$text;
elseif ($msg['emo']==5) $text = '[Смущенно] '.$text;
elseif ($msg['emo']==6) $text = '[Кокетливо] '.$text;
elseif ($msg['emo']==7) $text = '[Обиженно] '.$text;
elseif ($msg['emo']==8) $text = '[Настойчиво] '.$text;
elseif ($msg['emo']==9) $text = '[Шепотом] '.$text;
elseif ($msg['emo']==10) $text = '[Задумчиво] '.$text;
elseif ($msg['emo']==11) $text = '[Злобно] '.$text;
return $text;
}
 
 
function antir($msg){
global $db, $set,$user;
$msg = str_replace("((http://))((([a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z;]{2,3}))|(([0-9]{1,3}\.){3}([0-9]{1,3})))((/|\?)[a-z0-9~#%&'_\+=:;\?\.-]*)*)", "".$set['antir']."", $msg);
$msg=str_replace(".wab.","".$set['antir']."",$msg);
$msg=str_replace(".com","".$set['antir']."",$msg);
$msg=str_replace(".net","".$set['antir']."",$msg);
$msg=str_replace(".org","".$set['antir']."",$msg);
$msg=str_replace(".kz","".$set['antir']."",$msg);
$msg=str_replace(".ua","".$set['antir']."",$msg);
 
$msg=str_replace(".ru","".$set['antir']."",$msg);
$msg=str_replace(",ru","".$set['antir']."",$msg);
$msg=str_replace("-ru","".$set['antir']."",$msg);
 
$msg=str_replace("-ru","".$set['antir']."",$msg);
$msg=str_replace("_ru","".$set['antir']."",$msg);
$msg=str_replace("-net","".$set['antir']."",$msg);
$msg=str_replace(",net","".$set['antir']."",$msg);
 
$msg=str_replace("-su","".$set['antir']."",$msg);
$msg=str_replace("_su","".$set['antir']."",$msg);
$msg=str_replace(".su","".$set['antir']."",$msg);
$msg=str_replace(",su","".$set['antir']."",$msg);
 
$msg=str_replace("-mobi","".$set['antir']."",$msg);
$msg=str_replace("_mobi","".$set['antir']."",$msg);
$msg=str_replace(".mobi","".$set['antir']."",$msg);
$msg=str_replace(",mobi","".$set['antir']."",$msg);
 
$msg=str_replace("-info","".$set['antir']."",$msg);
$msg=str_replace("_info","".$set['antir']."",$msg);
$msg=str_replace(".info","".$set['antir']."",$msg);
$msg=str_replace(",info","".$set['antir']."",$msg);
 
$msg=str_replace("-com","".$set['antir']."",$msg);
$msg=str_replace("_com","".$set['antir']."",$msg);
$msg=str_replace(".com","".$set['antir']."",$msg);
$msg=str_replace(",com","".$set['antir']."",$msg);
 
$msg=str_replace("-msk","".$set['antir']."",$msg);
$msg=str_replace("_msk","".$set['antir']."",$msg);
$msg=str_replace(".msk","".$set['antir']."",$msg);
$msg=str_replace(",msk","".$set['antir']."",$msg);
 
$msg=str_replace("-tk","".$set['antir']."",$msg);
$msg=str_replace("_tk","".$set['antir']."",$msg);
$msg=str_replace(".tk","".$set['antir']."",$msg);
$msg=str_replace(",tk","".$set['antir']."",$msg);
 
$msg=str_replace(".in","".$set['antir']."",$msg);
 
 
$msg=str_replace("-cn","".$set['antir']."",$msg);
$msg=str_replace("_cn","".$set['antir']."",$msg);
$msg=str_replace(".cn","".$set['antir']."",$msg);
$msg=str_replace(",cn","".$set['antir']."",$msg);
 
$msg=str_replace("-biz","".$set['antir']."",$msg);
$msg=str_replace("_biz","".$set['antir']."",$msg);
$msg=str_replace(".biz","".$set['antir']."",$msg);
$msg=str_replace(",biz","".$set['antir']."",$msg);
 
$msg=str_replace("-h2m","".$set['antir']."",$msg);
$msg=str_replace("_h2m","".$set['antir']."",$msg);
$msg=str_replace(".h2m","".$set['antir']."",$msg);
$msg=str_replace(",h2m","".$set['antir']."",$msg);
 
$msg=str_replace("-wen","".$set['antir']."",$msg);
$msg=str_replace("_wen","".$set['antir']."",$msg);
$msg=str_replace(".wen","".$set['antir']."",$msg);
$msg=str_replace(",wen","".$set['antir']."",$msg);
 
$msg=str_replace("-ua","".$set['antir']."",$msg);
$msg=str_replace("_ua","".$set['antir']."",$msg);
$msg=str_replace(".ua","".$set['antir']."",$msg);
$msg=str_replace(",ua","".$set['antir']."",$msg);
return $msg;
}
 
function antim($text){
$text=strtr($text,array('сука'=>'***','блядь'=>'***','блядь'=>'***','хуй'=>'***','пизда'=>'***','сучка'=>'***','пидор'=>'***','пидар'=>'***','пидор'=>'***','пидрила'=>'***','чмо'=>'***','ебать'=>'***','бля'=>'***'));
return $text;
}
 
 
function url_replace($m) {
if( !isset($m[3]) ) {
return '<a href="' . $m[1] . '">' . $m[2] . '</a>';
} else {
return '<a href="' . $m[3] . '">' . $m[3] . '</a>';
}}
 
function img_replace($m) {
if( !isset($m[3]) ) {
return '<img src="' . $m[1] . '" alt="' . $m[2] . '">';
} else {
return '<img src="' . $m[3] . '" alt="' . $m[3] . '">';
}}
 
//------------------ Функция вставки BB-кода --------------------//
function bb2($text){
$text = preg_replace_callback('~\\[link=(http://.+?)\\](.+?)\\[/link\\]|(http://(www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&amp;_=/%-:#]*)~', 'url_replace', $text);
$text = preg_replace_callback('~\\[imgs=(.+?)\\](.+?)\\[/imgs\\]|((www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&amp;_=/%-:#]*)~', 'img_replace', $text);
 
return $text;
}
 
 
 
 
?>

Код ужасный. Даж я такого в детстве не писал. Думал подправить потом плюнул
Добавлено спустя    57 секунд:
вверху настройка количества

Отредактировано TLENS (2011.09.26 21:46)

Неактивен

#242 2011.09.26 21:46

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS
с этим кодом весь чат не работает,просто белая страница(((

Неактивен

#243 2011.09.26 21:48

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Включи показ ошибок

Неактивен

#244 2011.09.26 21:52

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

не показывает((или я не правильно включаю,хотя вот error_reporting(-1); должно выводить ошибки((
Добавлено спустя   2 минуты  17 секунд:
error_reporting (E_ALL); и так включить пытался((нифига(((

Неактивен

#245 2011.09.26 21:56

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Попробуй поставить в самом начале ведь этот инклюдится куда то
error_reporting(E_ALL);
ini_set("display_errors", 1);
Добавлено спустя   1 минуту  2 секунды:
В общем код дал рабочий. Ничего в нем не менял кроме одной функции она работает разбирайся сам. Включай мозги

Отредактировано TLENS (2011.09.26 21:58)

Неактивен

#246 2011.09.26 22:01

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

замени <? на
<?php

Неактивен

#247 2011.09.26 22:07

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

TLENS
спасибо Дим,это с самим файлом хуйня какая-то,хотя раньше норм вродь работал((
Добавлено спустя   2 минуты  12 секунд:

Gemorroj написал:

замени <? на
<?php

спасиб Паш,забываю это исправлять когда редачу файлы((

Неактивен

#248 2011.09.26 22:25

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по 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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
<?php
 
 
define('MAX_SMILES',2); // Максимальное количество смайлов
 
$cache_sml;
$cache_pat;
$n 0;
 
function sml_replace_callback($match)
{
global $cache_sml,$n
 
if($n == MAX_SMILES)
return '';
 
$n++;
 
return $cache_sml[$match[1]];
}
 
function smiles($msg)
{
global $cache_pat,$cache_sml,$user,$n;
 
if(empty($cache_sml) or empty($cache_pat))
{
$file file_get_contents(H.'smiles/smiles.txt');
preg_match_all('%(.+) (.+)%',$file,$arr);
 
$cache_pat array_map('sml_mk_pat',$arr[2]);
$arr[1] = array_map('sml_mk_img',$arr[1]);
$cache_sml array_combine($arr[2],$arr[1]);
}
$q=mysql_query("SELECT * FROM `user_smiles_spis`"); //Личные смайлы
 while($post mysql_fetch_array($q)){
$msg str_replace($post['sim'],'<a><img src= "/smiles/usersmiles/'.$pot['name'].'.gif" alt="'.$post['name'].'"/></a>',$msg);
}
$msg preg_replace_callback($cache_pat,'sml_replace_callback',$msg);
$n 0;
 
return $msg;
}
 
function sml_mk_pat($sml)
{
return '%('.preg_quote($sml).')%';
}
 
function sml_mk_img($sml)
{
return '<img src="/smiles/'.$sml.'.gif"/>';
}
 
function links_preg1($arr)
{
return '<a href="'.$arr[1].'">'.$arr[2].'</a>';
}
function links_preg2($arr)
{
return $arr[1].'<a href="'.$arr[2].'">'.$arr[2].'</a>'.$arr[4];
}
 
function links($msg)
{
$msg=preg_replace_callback('~\[url=([^ \r\n\t`\'"]+)\](.*?)\[/url\]~iu''links_preg1'$msg);
$msg=preg_replace_callback('~(^|\s)([a-z]+://([^ \r\n\t`\'"]+))(\s|$)~iu''links_preg2'$msg);
return $msg;
}
$versiya '4.0 Лицензионная';
function bbcodehightlight($arr)
{
$arr[0]=html_entity_decode($arr[0], ENT_QUOTES'UTF-8');
$arr[0]=preg_replace('#<img src="(.*?)" alt="(.*?)" />#sui''\\2'$arr[0]);
return '<div class="" style="overflow:scroll;clip:auto;max-width:480px;">'.preg_replace('#<code>(.*?)</code>#si''\\1' ,highlight_string($arr[0],1)).'</div>'."\n";
}
 
 
 
function BBcode($msg)
{
$msg=preg_replace('#\[b\](.*?)\[/b\]#si''<span style="font-weight: bold;">\1</span>'$msg);
$msg=preg_replace('#\[i\](.*?)\[/i\]#si''<span style="font-style: italic;">\1</span>'$msg);
$msg=preg_replace('#\[u\](.*?)\[/u\]#si''<span style="text-decoration: underline;">\1</span>'$msg);
 
$msg=preg_replace('#\[b\](.*?)\[/b\]#si''<span style="font-weight: bold;">\1</span>'$msg);
$msg=preg_replace('#\[i\](.*?)\[/i\]#si''<span style="font-style: italic;">\1</span>'$msg);
$msg=preg_replace('#\[q\](.*?)\[/q\]#si''<span style="text-decoration: underline;">\1</span>'$msg);
$msg=preg_replace('#\[del\](.*?)\[/del\]#si''<del>\1</del>'$msg);
 
$msg=preg_replace('#\[small\](.*?)\[/small\]#si''<span style="font-size: small;">\1</span>'$msg);
$msg=preg_replace('#\[big\](.*?)\[/big\]#si''<span style="font-size: large;">\1</span>'$msg);
$msg=preg_replace('#\[blink\](.*?)\[/blink\]#si''<blink>\1</blink>'$msg);
 
$msg=preg_replace('#\[red\](.*?)\[/red\]#si''<span style="color:#FF0000;">\1</span>'$msg);
$msg=preg_replace('#\[green\](.*?)\[/green\]#si''<span style="color:#00FF00;">\1</span>'$msg);
$msg=preg_replace('#\[blue\](.*?)\[/blue\]#si''<span style="color:#0000FF;">\1</span>'$msg);
 
$msg=preg_replace('#\[yellow\](.*?)\[/yellow\]#si''<span style="color:#ffff22;">\1</span>'$msg);
 
$msg=preg_replace('#\[fea\](.*?)\[/fea\]#si''<span style="color:#FF00FF;">\1</span>'$msg);
return $msg;
}define('vb3'true);
 
function br($msg,$br='<br />')
{
$msg=eregi_replace("((<br( ?/?)>)|\n|\r)+",$br$msg);
return $msg;
}
 
function esc($text,$br=NULL)
{
if ($br!=NULL)
for ($i=0;$i<=31;$i++)$text=str_replace(chr($i), NULL$text);
else{
for ($i=0;$i<10;$i++)$text=str_replace(chr($i), NULL$text);
for ($i=11;$i<20;$i++)$text=str_replace(chr($i), NULL$text);
for ($i=21;$i<=31;$i++)$text=str_replace(chr($i), NULL$text);
}
return $text;
}
 
 
function text($str,$br=true,$html=true,$smiles=true,$links=true,$bbcode=true)
{
 
if ($html==true)
 
if ($smiles==true)
$str=smiles($str);
 
 
if ($links==true)
$str=links($str);
 
 
if ($bbcode==true)
$str=bbcode($str);
 
 
 
if ($br==true){
$str=br($str);
$str=esc($str);
}
else
{
 
$str=esc($str);
}
 
return $str;
}
 
 
function color_msg($text)
{
global $db$set,$user$msg;
if ($msg['color']==1)$text '[red]'.$msg['msg'].'[/red]';
elseif ($msg['color']==2)$text '[blue]'.$msg['msg'].'[/blue]';
elseif ($msg['color']==3)$text '[fea]'.$msg['msg'].'[/fea]';
elseif ($msg['color']==4)$text '[green]'.$msg['msg'].'[/green]';
return $text;
}
 
function bb_msg($text)
{
global $db$set,$user$msg;
if ($msg['bb']==1)$text '[i]'.$text.'[/i]';
elseif ($msg['bb']==2)$text '[u]'.$text.'[/u]';
elseif ($msg['bb']==3)$text '[i][u]'.$text.'[/u][/i]';
elseif ($msg['bb']==4)$text '[b]'.$text.'[/b]';
elseif ($msg['bb']==5)$text '[i][b]'.$text.'[/b][/i]';
elseif ($msg['bb']==6)$text '[big]'.$text.'[/big]';
return $text;
}
 
function emo_msg($text)
{
global $db$set,$user$msg;
if ($msg['emo']==1$text '[Радостно] '.$text;
elseif ($msg['emo']==2$text '[Печально] '.$text;
elseif ($msg['emo']==3$text '[Удивленно] '.$text;
elseif ($msg['emo']==4$text '[Ласково] '.$text;
elseif ($msg['emo']==5$text '[Смущенно] '.$text;
elseif ($msg['emo']==6$text '[Кокетливо] '.$text;
elseif ($msg['emo']==7$text '[Обиженно] '.$text;
elseif ($msg['emo']==8$text '[Настойчиво] '.$text;
elseif ($msg['emo']==9$text '[Шепотом] '.$text;
elseif ($msg['emo']==10$text '[Задумчиво] '.$text;
elseif ($msg['emo']==11$text '[Злобно] '.$text;
return $text;
}
 
 
function antir($msg){
global $db$set,$user;
$msg str_replace("((http://))((([a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z;]{2,3}))|(([0-9]{1,3}\.){3}([0-9]{1,3})))((/|\?)[a-z0-9~#%&'_\+=:;\?\.-]*)*)""".$set['antir'].""$msg);
$msg=str_replace(".wab.","".$set['antir']."",$msg);
$msg=str_replace(".com","".$set['antir']."",$msg);
$msg=str_replace(".net","".$set['antir']."",$msg);
$msg=str_replace(".org","".$set['antir']."",$msg);
$msg=str_replace(".kz","".$set['antir']."",$msg);
$msg=str_replace(".ua","".$set['antir']."",$msg);
 
$msg=str_replace(".ru","".$set['antir']."",$msg);
$msg=str_replace(",ru","".$set['antir']."",$msg);
$msg=str_replace("-ru","".$set['antir']."",$msg);
 
$msg=str_replace("-ru","".$set['antir']."",$msg);
$msg=str_replace("_ru","".$set['antir']."",$msg);
$msg=str_replace("-net","".$set['antir']."",$msg);
$msg=str_replace(",net","".$set['antir']."",$msg);
 
$msg=str_replace("-su","".$set['antir']."",$msg);
$msg=str_replace("_su","".$set['antir']."",$msg);
$msg=str_replace(".su","".$set['antir']."",$msg);
$msg=str_replace(",su","".$set['antir']."",$msg);
 
$msg=str_replace("-mobi","".$set['antir']."",$msg);
$msg=str_replace("_mobi","".$set['antir']."",$msg);
$msg=str_replace(".mobi","".$set['antir']."",$msg);
$msg=str_replace(",mobi","".$set['antir']."",$msg);
 
$msg=str_replace("-info","".$set['antir']."",$msg);
$msg=str_replace("_info","".$set['antir']."",$msg);
$msg=str_replace(".info","".$set['antir']."",$msg);
$msg=str_replace(",info","".$set['antir']."",$msg);
 
$msg=str_replace("-com","".$set['antir']."",$msg);
$msg=str_replace("_com","".$set['antir']."",$msg);
$msg=str_replace(".com","".$set['antir']."",$msg);
$msg=str_replace(",com","".$set['antir']."",$msg);
 
$msg=str_replace("-msk","".$set['antir']."",$msg);
$msg=str_replace("_msk","".$set['antir']."",$msg);
$msg=str_replace(".msk","".$set['antir']."",$msg);
$msg=str_replace(",msk","".$set['antir']."",$msg);
 
$msg=str_replace("-tk","".$set['antir']."",$msg);
$msg=str_replace("_tk","".$set['antir']."",$msg);
$msg=str_replace(".tk","".$set['antir']."",$msg);
$msg=str_replace(",tk","".$set['antir']."",$msg);
 
$msg=str_replace(".in","".$set['antir']."",$msg);
 
 
$msg=str_replace("-cn","".$set['antir']."",$msg);
$msg=str_replace("_cn","".$set['antir']."",$msg);
$msg=str_replace(".cn","".$set['antir']."",$msg);
$msg=str_replace(",cn","".$set['antir']."",$msg);
 
$msg=str_replace("-biz","".$set['antir']."",$msg);
$msg=str_replace("_biz","".$set['antir']."",$msg);
$msg=str_replace(".biz","".$set['antir']."",$msg);
$msg=str_replace(",biz","".$set['antir']."",$msg);
 
$msg=str_replace("-h2m","".$set['antir']."",$msg);
$msg=str_replace("_h2m","".$set['antir']."",$msg);
$msg=str_replace(".h2m","".$set['antir']."",$msg);
$msg=str_replace(",h2m","".$set['antir']."",$msg);
 
$msg=str_replace("-wen","".$set['antir']."",$msg);
$msg=str_replace("_wen","".$set['antir']."",$msg);
$msg=str_replace(".wen","".$set['antir']."",$msg);
$msg=str_replace(",wen","".$set['antir']."",$msg);
 
$msg=str_replace("-ua","".$set['antir']."",$msg);
$msg=str_replace("_ua","".$set['antir']."",$msg);
$msg=str_replace(".ua","".$set['antir']."",$msg);
$msg=str_replace(",ua","".$set['antir']."",$msg);
return $msg;
}
 
function antim($text){
$text=strtr($text,array('сука'=>'***','блядь'=>'***','блядь'=>'***','хуй'=>'***','пизда'=>'***','сучка'=>'***','пидор'=>'***','пидар'=>'***','пидор'=>'***','пидрила'=>'***','чмо'=>'***','ебать'=>'***','бля'=>'***'));
return $text;
}
 
 
function url_replace($m) {
if( !isset($m[3]) ) {
return '<a href="' $m[1] . '">' $m[2] . '</a>';
} else {
return '<a href="' $m[3] . '">' $m[3] . '</a>';
}}
 
function img_replace($m) {
if( !isset($m[3]) ) {
return '<img src="' $m[1] . '" alt="' $m[2] . '">';
} else {
return '<img src="' $m[3] . '" alt="' $m[3] . '">';
}}
 
//------------------ Функция вставки BB-кода --------------------//
function bb2($text){
$text preg_replace_callback('~\\[link=(http://.+?)\\](.+?)\\[/link\\]|(http://(www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&amp;_=/%-:#]*)~''url_replace'$text);
$text preg_replace_callback('~\\[imgs=(.+?)\\](.+?)\\[/imgs\\]|((www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&amp;_=/%-:#]*)~''img_replace'$text);
 
return $text;
}
 
?>

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

<a><img src= "/smiles/usersmiles/.gif" alt="222"/>


имя не берет почему то((

Неактивен

#249 2011.09.26 22:40

WapStyle
Участник
Откуда: Ирбит
Зарегистрирован: 2008.03.26
Сообщений: 463
Карма: 3
Профиль Веб-сайт

Re: Общие вопросы по PHP

Код:

1
2
3
4
5
6
7
8
function links_preg1($arr)
{
return '<a href="'.$arr[1].'">'.$arr[2].'</a>';
}
function links_preg2($arr)
{
return $arr[1].'<a href="'.$arr[2].'">'.$arr[2].'</a>'.$arr[4];
}

Это часть кода...

Жгёш пополной big_smile

Отредактировано WapStyle (2011.09.26 22:40)

Неактивен

#250 2011.09.26 22:42

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

WapStyle написал:

Код:

1
2
3
4
5
6
7
8
function links_preg1($arr)
{
return '<a href="'.$arr[1].'">'.$arr[2].'</a>';
}
function links_preg2($arr)
{
return $arr[1].'<a href="'.$arr[2].'">'.$arr[2].'</a>'.$arr[4];
}

Это часть кода...

Жгёш пополной big_smile

чесн сказать,я сам даже такого не напишу((

Неактивен

#251 2011.09.26 22:44

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

WapStyle Заценил? гг

Неактивен

#252 2011.09.26 22:51

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Это был мой позор(((исправил все,теперь работает((правда говнокод остался((
Добавлено спустя   4 минуты  54 секунды:
смайлы личные работают,и обычные тоже,обычных смайлов выводит только по 2 смайла в одном посте,а вот личных,скок напишешь,сток и выведет,хоть 100 штук в одном посте,теперь не знаю как ограничитель личных смайлов сделать((чтоб их тоже выводило только по два в одном посте(( в какой строке или в какой части это можно сделать подскажите((

Код:

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
67
68
69
70
71
72
73
74
<?php
define('MAX_SMILES',2); // Максимальное количество смайлов
 
$cache_sml;
$cache_pat;
$n 0;
 
function sml_replace_callback($match)
{
global $cache_sml,$n
 
if($n == MAX_SMILES)
return '';
 
$n++;
 
return $cache_sml[$match[1]];
}
 
function smiles($msg)
{
global $cache_pat,$cache_sml,$user,$n;
 
if(empty($cache_sml) or empty($cache_pat))
{
$file file_get_contents(H.'smiles/smiles.txt');
preg_match_all('%(.+) (.+)%',$file,$arr);
 
$cache_pat array_map('sml_mk_pat',$arr[2]);
$arr[1] = array_map('sml_mk_img',$arr[1]);
$cache_sml array_combine($arr[2],$arr[1]);
}
$q=mysql_query("SELECT * FROM `user_smiles_spis`"); //Личные смайлы
 while($post mysql_fetch_array($q)){
$msg str_replace($post['sim'],'<a><img src= "/smiles/usersmiles/'.$post['name'].'.gif" alt="'.$post['name'].'"/></a>',$msg);
}
$msg preg_replace_callback($cache_pat,'sml_replace_callback',$msg);
$n 0;
 
return $msg;
}
 
function sml_mk_pat($sml)
{
return '%('.preg_quote($sml).')%';
}
 
function sml_mk_img($sml)
{
return '<img src="/smiles/'.$sml.'.gif"/>';
}
 
function links_preg1($arr)
{
return '<a href="'.$arr[1].'">'.$arr[2].'</a>';
}
function links_preg2($arr)
{
return $arr[1].'<a href="'.$arr[2].'">'.$arr[2].'</a>'.$arr[4];
}
 
function links($msg)
{
$msg=preg_replace_callback('~\[url=([^ \r\n\t`\'"]+)\](.*?)\[/url\]~iu''links_preg1'$msg);
$msg=preg_replace_callback('~(^|\s)([a-z]+://([^ \r\n\t`\'"]+))(\s|$)~iu''links_preg2'$msg);
return $msg;
}
$versiya '4.0 Лицензионная';
function bbcodehightlight($arr)
{
$arr[0]=html_entity_decode($arr[0], ENT_QUOTES'UTF-8');
$arr[0]=preg_replace('#<img src="(.*?)" alt="(.*?)" />#sui''\\2'$arr[0]);
return '<div class="" style="overflow:scroll;clip:auto;max-width:480px;">'.preg_replace('#<code>(.*?)</code>#si''\\1' ,highlight_string($arr[0],1)).'</div>'."\n";
}

Неактивен

#253 2011.09.27 23:39

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Блин,создаю таблицу в базе вот такую

Код:

1
2
3
4
5
6
7
`id` INT( 11 ) NULL DEFAULT NULL AUTO_INCREMENT ,
`name` INT( 20 ) NULL DEFAULT NULL AUTO_INCREMENT ,
`id_dir` INT( 50 ) NULL DEFAULT NULL ,
`sim` VARCHAR( 50 ) NULL DEFAULT NULL ,
`user` INT( 11 ) NULL DEFAULT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM ;

и выдает ошибку "#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key "
это значить что в таблице может быть только одно поле с атрибутом AUTO_INCREMENT,а мне нужно два таких поля(( как это сделать? или лучше обойтись одним полем id ? в принципе значения в поле id и name ,будут одинаковые если поставить AUTO_INCREMENT  (

Неактивен

#254 2011.09.28 00:17

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

тебе не нужно 2 автоинкремента. тут, на сколько я понял, нужна связь многие ко многим.

Неактивен

#255 2011.09.28 00:31

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

тебе не нужно 2 автоинкремента. тут, на сколько я понял, нужна связь многие ко многим.

наверное поле name нужно убрать,ведь значения в полях id и name будут одинаковые,и поле ид можно использовать в двух значениях сразу как имя(чтоб не повторялось имя файла при загрузке) и как ид ))

Отредактировано POFIGISST (2011.09.28 00:31)

Неактивен

#256 2011.09.28 00:34

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

POFIGISST
Ну оно за частую так и делается.

Неактивен

#257 2011.09.28 22:16

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по 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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<?php
require'../../config.php';
$align='left';
$title='Личные смайлы';
aut();
head();
who_add(0,'enter');
 
 
 
echo '<div class="menu">';
 
if(!isset($user)){
  echo '<div class="err">Доступ закрыт</div>';
  }
 
if($_GET['act']=='dir'){
 
if(isset($_POST['name']) && isset($_POST['pos'])){
  $name esc(stripcslashes(htmlspecialchars($_POST['name'])));
  $pos intval($_POST['pos']);
  
 
if(strlen2($name)>32){
  $err='Слишком большое название директории';
  }else if(strlen2($name)<3){
    $err='Слишком короткое название директории';
    }else if($pos<0){
      $err='Неверный выбор положения директории';
      }else{
 
mysql_query("INSERT INTO `user_smiles_dir` (`name`, `pos`, `user`) values('$name', '$pos', '$user[id]')");
mysql_query("OPTIMIZE TABLE `user_smiles_dir` where `user` = $user[id]");
print'Директория <b>'.$name.'</b> добавлена';
}
}
 
 
 
echo '<form method="post" action="add.php?act=dir">';
echo 'Название:(3-32)<br/><input name="name" maxlength="32"/><br/>';
echo 'Позиция:(от 1)<br/><input name="pos"/><br/>';
echo '<input value="Добавить" type="submit"/></form>';
 
echo '&#187;&nbsp;<a href="index.php">Отмена</a><br/>';
 
 
}else if($_GET['act']=='smile'){
if(isset($_FILES['file']) && $_FILES['file']!=NULL && isset($_POST['name']) && isset($_POST['sim']) && isset($_POST['dir'])){
  $name esc(stripcslashes(htmlspecialchars($_POST['name'])));
  $dir_s intval($_POST['dir']);
  $sim htmlspecialchars($_POST['sim']);
 
if($imgc=@imagecreatefromstring(file_get_contents($_FILES['file']['tmp_name']))){
 
  $name rus_to_lat(tolower($name));
 
if($name==NULL){
  $err 'Название файла не заполнено';
  }else if(strlen2($name)>10){
    $err 'Название слишком большое. max 10';
    }else if(strlen2($name)<1){
      $err 'Название слишком маленькое. min 1';
      }else{
 
mysql_query("INSERT INTO `user_smiles_spis` (`name`, `id_dir`, `sim`, `user`) values ('".$name."', '$dir_s', '$sim', '$user[id]')");
copy($_FILES['file']['tmp_name'], '../../smiles/usersmiles/'.$name.'.gif');
chmod('../../smiles/usersmiles/'.$name.'.gif',0666);
 
 
print"<b>Смайл загружен</b><br>";
}
}else{
  print"Это не смайл";
  }
mysql_query("OPTIMIZE TABLE `smiles_spis`");
  }
 
 
 
echo 'Загружать только *.gif<br/>';
echo '<form method="post" enctype="multipart/form-data" action="add.php?act=smile">';
echo '<input type="file" name="file" accept="image/*,image/gif"/><br/>';
echo '<b>Короткое название смайла:</b><br/><input name="name"><br/>';
echo '<b>На что заменяем?:</b><br/><input name="sim"><br/>';
echo '<b>Директория</b>:<br/><select name="dir">';
 
$q mysql_query("SELECT * FROM `user_smiles_dir` where `user` = $user[id]");
while($dir mysql_fetch_array($q)){
  echo '<option value="'.$dir['id'].'">'.esc(stripcslashes(htmlspecialchars($dir['name']))).'</option>';
  }
echo '</select><br/>';
echo '<input value="Загрузить" type="submit"/></form>';
 
echo '&#187;&nbsp;<a href="index.php">Отмена</a><br/>';
 
 
}else{
  echo '<div class="err">Неверный ввод</div>';
  }
  
 
echo '</div>';
echo gb.'<a href="'.H.'my/index">Личный кабинет</a>'.div;
echo gb.'<a href="'.H.'enter">Прихожая</a>'.div;
foot();
?>

сделать,чтоб название файла который закидывают было не то которое юзер пишет,а чтоб файл сохранялся с именем ид,то есть если ид равен 5 например,то чтоб и файл автоматически менял название на 5.gif как такое сделать?sad

Неактивен

#258 2011.09.28 23:28

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2279
Карма: 19
Профиль

Re: Общие вопросы по PHP

ID чего/кого? Юзера, смайла в дирректории по порядку?

Неактивен

#259 2011.09.28 23:38

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

tipsun написал:

ID чего/кого? Юзера, смайла в дирректории по порядку?

в таблице user_smiles_spis первое поле идет id там автоинкремент стоит,вот хочу чтоб по умолчанию картинкам присваивалось имя их ИДа,чтоб юзер сам не мог давать имя файлу который он закидывает((

Неактивен

#260 2011.09.29 19:41

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

а как можно сделать проверку данных которые юзер записывает в форму? то есть есть слова определенные в тхт файле,и над сделать проверку,чтоб если юзер в водит то слово которое в этом тхт файле , то чтоб писало ошибку((

Неактивен

#261 2011.09.29 20:26

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

ну при сабмите проверяй

Неактивен

#262 2011.09.29 20:29

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

ну при сабмите проверяй

напиши название  функции которая делает такую проверку?smile

Неактивен

#263 2011.09.29 20:41

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

==

Неактивен

#264 2011.09.29 20:48

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

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

Неактивен

#265 2011.09.29 21:01

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

да

Неактивен

#266 2011.09.29 21:08

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: Общие вопросы по PHP

Gemorroj написал:

да

спасиб))

Неактивен

#267 2011.09.30 22:12

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Общие вопросы по PHP

Посоветуйте как лучше перенести таблицы с сервера на сервер.
phpmyadmin переносит  с потерями. А в ручную писать скрипт нет времени. Надо успеть до 0:00

Неактивен

#268 2011.09.30 22:18

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6585
Карма: 107
Профиль Веб-сайт

Re: Общие вопросы по PHP

какие именно "потери"?

Неактивен