Вы не зашли.
как из этого
Код:
<?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($fp, 128); |
$file = ''; while(!feof($fp)) $file.= @fgets($fp, 4096); @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.
TLENS
Off
(14)
Moderator
2011.06.20 00:12
Щас
#5.
TLENS
Off
(14)
Moderator
2011.06.20 00:12
Код:
<?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($fp, 128); |
$file = ''; while(!feof($fp)) $file.= @fgets($fp, 4096); @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; |
#7.
TLENS
Off
(14)
Moderator
2011.06.20 01:01
Там моя ссылка стоит переправь на свою
точно))незаметил сначала , спасибо

))
#9.
TLENS
Off
(14)
Moderator
2011.06.20 01:01
Можешь оставить
TLENS написал:Можешь оставить

на твой сайт без проблем
подскажите как у меня в топе
http://mastop.ru можно сделать чтобы когда переходиш по счетчику с сайта,то попадало на ту страницу где находиться сайт,а не на главную?
Отредактировано POFIGISST (2011.06.20 10:10)
вот весь скрипт)))
Отредактировано Gemorroj (2011.06.20 10:10)
прикрепи файл к посту и никогда не давай таких ссылок.
Gemorroj написал:
прикрепи файл к посту и никогда не давай таких ссылок.
сейчас прикреплю,а почему нельзя такие ссылки давать?))
Добавлено спустя 9 минут 6 секунд: я немогу скачать,скорости нету((вообщем смотрите скрин(((только не смейтесь(((
потому что потом эти ссылки будут мертвые.
не подумал об этом(( ночью прикреплю файл,так как сейчас скорости нету((
#18.
TLENS
Off
(14)
Moderator
2011.06.21 00:12
У тебя по суте дела отключены глобальные переменные.
Замени файл go.php на этот.
Код:
<?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 секунд: А хотя не должно но попробуй
TLENS спасибо больше)))все отлично работает)))я твой должник))
скрипт требует включенных глобальных переменных?? O_o
#21.
TLENS
Off
(14)
Moderator
2011.06.21 16:04
GemorrojЯ полностью переписал функцию.
И оно у него заработало. А вообще да требует
Добавлено спустя 4 минуты 31 секунду: И вообще что автор данного скрипта хотел от этого куска кода
Посмотрев на содержания таблицы
Код:
<? |
$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:04)
#22.
LooK
Off
(1)
Участник
2011.06.21 20:08
В таблице тем что лучше хранить ид юзера или сразу его ник?
#24.
LooK
Off
(1)
Участник
2011.06.21 21:09
Gemorroj написал:
и то, и другое))))
А зачем тогда ид юзера?
чтобы делать выборки по нему. и не факт что ник должен быть всегда уникальным.
#26.
LooK
Off
(1)
Участник
2011.06.21 22:10
Gemorroj написал:
чтобы делать выборки по нему. и не факт что ник должен быть всегда уникальным.
Ага, ок.
А первый пост темы в таблице тем текстовым полем или пост_ид хранить?
#28.
LooK
Off
(1)
Участник
2011.06.22 14:02
Посмотрите файл аплоада (на код не обращайте внимание, файл древний), он почему-то примерно больше 8-ми метров не грузит файл, а точнее страница грузится, но в конце ничего не возвращается и файла нигде нет. Максимальны размер на серве 32М
Код:
<?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(1, 99); //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 'Все супер'; |
} |
Код:
<?php |
ini_set('php_value upload_max_filesize', '32M'); |
ini_set('php_value post_max_size', '32M'); |
#30.
LooK
Off
(1)
Участник
2011.06.22 15:03
Gemorroj написал:Код:
<?php |
ini_set('php_value upload_max_filesize', '32M'); |
ini_set('php_value post_max_size', '32M'); |
Блин точно, про post_max_size забыл) Спс
#31.
LooK
Off
(1)
Участник
2011.06.22 19:07
Код:
$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:07)
#32.
TLENS
Off
(14)
Moderator
2011.06.22 20:08
LooK[
Код:
<? |
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.
LooK
Off
(1)
Участник
2011.06.22 21:09
TLENS, все равно не приходит
#34.
TLENS
Off
(14)
Moderator
2011.06.22 23:11
Значит проблемма на серверной стороне.
Функция iconv есть на сервере?
Добавлено спустя 3 минуты 19 секунд: Кстати ip многих говнохостов забанены маилом
#35.
TLENS
Off
(14)
Moderator
2011.06.23 00:12
Попробуй отправить на gmail
#36.
LooK
Off
(1)
Участник
2011.06.23 10:10
Отправляю с локалки, и на gmail и на mail пробовал. iconv есть
LooK, так может проблема в локалке? какой сервер стоит? не денвер случаем? там заглушка на email стоит, email складываются в папку /tmp/!sendmail/
#38.
LooK
Off
(1)
Участник
2011.06.23 12:12
Gemorroj написал:
LooK, так может проблема в локалке? какой сервер стоит? не денвер случаем? там заглушка на email стоит, email складываются в папку /tmp/!sendmail/
Спасибо, незнал об этом) Проверил, действительно все письма там.
#39.
LooK
Off
(1)
Участник
2011.06.23 22:10
Код:
rename('../files/'.$scan,'../files/'.$filename.'.mp3') |
Не пашет почему-то, пробовал даже не с переменной, а любое имя - результат тот же.
Переменные точно содержат нужные значения.
Отредактировано LooK (2011.06.23 22:10)
бля, что значит не пашет??? текст ошибки??
#41.
LooK
Off
(1)
Участник
2011.06.23 23:11
Gemorroj написал:
бля, что значит не пашет??? текст ошибки??
false возвращает
#42.
TLENS
Off
(14)
Moderator
2011.06.23 23:11
Доступ на запись есть?
Отредактировано TLENS (2011.06.23 23:11)
#43.
LooK
Off
(1)
Участник
2011.06.23 23:11
TLENS написал:
Доступ на запись есть?
денвер
#44.
TLENS
Off
(14)
Moderator
2011.06.23 23:11
/usr/local/apache/logs/error.log
Посмотри че там
LooK,
Код:
print_r(error_get_last()); |
#46.
LooK
Off
(1)
Участник
2011.06.24 09:09
Gemorroj написал:LooK,
Код:
print_r(error_get_last()); |
Спс, помогло
как сделать в сеа,чтобы вместо первьюшек для тем,выводило скрины которые я закинул,то есть,первью делает не у всех тем,только у половины,поэтому я убрал вывод его вообще,и хочу чтобы оно показывало вместо первью те скрины которые я закинул,только в уменьшенном размере))там где отмечено на рисунке должен быть скрин))
Вложения
скрин.PNG
93kb
{1440x900}
[
загрузок: 1020]
там же есть стандартная возможность скрины отображать, так и с темами.
ну их отображает,но это уже когда заходишь в инфо о файле,а я хочу чтоб сразу на странице где выводятся темы были показаны скрины ))вот типа как на скрине,только на скрине это картинки,и с темами хочу так же сделать))
Вложения
скрин2.PNG
165kb
{1440x900}
[
загрузок: 1018]
ну не помню) найди кусок кода который картинки отображает и замени на ручные скриншоты)
а там где темы у меня вообще картинок нету ))только ссылки "скачать" "скачать" и вот хочу чтобы над этими ссылками показывались скрины тем в размере например 80х60 ))
Добавлено спустя 3 минуты 49 секунд: Код:
// Скиншот |
$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.
TLENS
Off
(14)
Moderator
2011.06.26 05:05
Каким образом передать в конструктор класса переменные.
Например
$object = new My_class($var1, $var2);
Как их получить в в конструкторе?
эм, так же как и в обычном методе.
public function __construct ($var1, $var2)
{
}
#54.
TLENS
Off
(14)
Moderator
2011.06.26 09:09
спс. А то не знал с какой стороны подойти
#55.
TLENS
Off
(14)
Moderator
2011.06.26 19:07
Проблема через крон не работает запись со MySQL
Логи в файлы записывает. Скрипт работает.
Но если через крон то записи не появляются.
Неужели надо ставить удаленный доступ?
Или проблемма в другом?
Да кстати свои логи стоят туда пишу mysql_error()
То пусто chdir Настроен правильно
ну что за ошибка-то в mysql_error()
#57.
TLENS
Off
(14)
Moderator
2011.06.26 19:07
В том то и дело что не пишет ничего.
А По каком адресу в debian лежат ошибки базы?
Мож туда заглянуть
#59.
TLENS
Off
(14)
Moderator
2011.06.26 20:08
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
Наивный
ну такое почти на любом сайте можно в логах найти
#61.
TLENS
Off
(14)
Moderator
2011.06.26 21:09
Хех сделал тестову таблицу все норм.
Ладно разберемся а пока месть поставлю на wget
#62.
TLENS
Off
(14)
Moderator
2011.06.27 09:09
Есть какая то готовая функция на определение адреса сайта в сообщении?
Даже без http в начале когда то писал но она ужасная.
эм... может не надо таких функций? на форуме работают bb-коды, ссылки можно писать через них, а автоопределение специально отключено.
#64.
TLENS
Off
(14)
Moderator
2011.06.27 10:10
Да нет это я себе хочу в чат.
Просто на сайте когда то сделал чатик. То там ссылки за ссылками пошли
Добавлено спустя 2 минуты 56 секунд: Вот кусок кода писал еще в том году на него страшно смотреть.
Код:
<? $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:10)
Вопрос по MySQL, очень надеюсь на вашу помощь.
Нужно составить запрос, который будет вытаскивать данные из таблицы сообщений, количества комментариев, и если количество
комментариев будет больше нуля - вытаскивать комментарии этих сообщений,
а так же вытягивать из таблицы пользователей логин и аватар создателя сообщения и создателя комментария
С дальнейшей возможностью вывода их в цикле, пример реализации - стена вконтакте
Структура БД:
Таблица сообщений - mems
Поля:
id
id_user
text
likes
time
Таблица комментариев - mems_comments
id
id_mems
id_user
text
time
#66.
TLENS
Off
(14)
Moderator
2011.06.27 16:04
$q = mysql_query("SELECT * FROM `mems_comments` WHERE id_mems = 'Ид сообщения'");
$n = mysql_num_rows($q);
if ($n) {
echo 'выводим';
}
Отредактировано TLENS (2011.06.27 16:04)
TLENS, чувак, ты гений, но это не то, нужно сделать всё одним запросом к бд.
Отредактировано ByVlad (2011.06.27 16:04)
#68.
TLENS
Off
(14)
Moderator
2011.06.27 16:04
Код:
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`; |
единственное что
.* нужно заменить на конкретные поля и задать им алиасы, а то они будут друг друга перекрывать.
Gemorroj, как всегда спасибо

.
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`
Gemorroj, ага, оно, спасибо.
Блин,чет в топе не изменяет пр и тц у сайтов если показатели ростут,например если при реге сайта было пр 0,то если оно у сайта повышается,то картинка с данными не изменяется(( в каком файле это нужно прописать?)))скрипт полностью прикрепляю к посту)))
POFIGISST, ага щас все бросятся тебе топ переписывать.
я не просил переписывать,я просто спросил в каком файле "в каком файле это нужно прописать?)))"
Gemorroj, (COUNT(1) - 1) AS `cnt`
он должен подсчитать количество записей из таблицы mems_comments где `mems_comments`.`id_mems` = `mems`.`id`
но чет нифига не считает

и `users`.`login` AS `us_login`, `users`.`avatar` AS `us_avatar`
нужно ещё достать эти же данные, только `users`.`id` = `mems_comments`.`id_user`
Gemorroj, ^^ вопрос больше неактуален)
Теперь новый вопрос, в цикличном выводе через {foreach} в smarty
в каждом выводимом объекте идет {php}{/php} в него нужно передать {$row.id}
как это сделать?
ByVlad, начнем с того, что от {php}{/php} нужно бы отказаться. Иначе попахивает смешиванием логики и представления.
Gemorroj, смотри, мне нужно сделать вывод записей с комментариями как вконтакте, у меня других вариантов нет.
Запрос тот я поправил, но там получалось что если комментария нет, то и записи из таблицы mems в массиве тоже нет.
начнем с того, что нужно выложить свой код, еба. иначе что- то обсуждать бесполезно.
давай поправленный SQL запрос и smarty шаблон.
Код:
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 |
Код:
<?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&id={$row.id}#{$row.id}">прокомментировать</a></span> - <span class="nr"> |
<a href="/{$query.login}?act=add_me&id={$row.id}#{$row.id}">добавить себе</a></span> - |
<span class="nr"><a href="/{$query.login}?act=like&id={$row.id}#{$row.id}">мне нравится </a> |
</span> </td> |
</tr> |
</table><div class="br_1"></div> |
{foreachelse} |
Нифига нету. |
{/foreach} |
{php}{/php} не вижу.
верни LEFT JOIN
Gemorroj, я думал сделать в {php}{/php} цикл вывода с комментариями, так бы получалось ~5 запросов в цикле, при кешировании норм, у меня получилось только с обычным JOIN.
Gemorroj, с {php}{/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} |
{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:01)
^^ Все вопросы не актуальны

Нужно достать данные из таблицы mems где `id_user` равняется записям из таблицы follows, что-то такое написал, но естесна оно не работает)
Код:
SELECT `mems`.* FROM `mems` WHERE `mems`.`id_user` IN(SELECT `follows`.* FROM `follows` WHERE `follows`.`id_user` = 1) ORDER BY `mems`.`time` DESC |
Код:
SELECT `mems`.* |
FROM `mems` |
INNER JOIN `follows` ON `follows`.`id_user` = `mems`.`id` |
ORDER BY `mems`.`id` DESC |
Нужно узнать id_user из трех таблиц mems, mems_comments, mems_likes
и отсортировать их по количеству записей для определенного id_user
как-то так.
#89.
Вапамнет
Гость
2011.07.04 17:05
Привет. Как зделать чтоб в песне mр3 при скачеванию менялся альбом, название, исполнитель и т.д на адрес сайта ? Пример ссылки такой site.ru/load.php?file=(адрес песни. например)wapinet.ru/music.mp3. Какой код нужна вписать в файл load.php чтоб изминить альбом, название и т.д?
Вапамнет написал:
Привет. Как зделать чтоб в песне mр3 при скачеванию менялся альбом, название, исполнитель и т.д на адрес сайта ? Пример ссылки такой site.ru/load.php?file=(адрес песни. например)wapinet.ru/music.mp3. Какой код нужна вписать в файл load.php чтоб изминить альбом, название и т.д?
если у тебя сеа,то там есть возможность к всем мп3 устанавливать эти данные))
Помогите с мафией,у всех она норм работает,а у меня там пустая страница((
тест акк что это может быть?
#92.
TLENS
Off
(14)
Moderator
2011.07.10 09:09
\Но у меня не пустая
POFIGISST, достаточно просто проверить html код валидатором, чтобы понять что из себя представляет скрипт
TLENS написал:
\Но у меня не пустая
все говорят что у них все нормик,а у меня пусто(( вот скрин прикрепляю))
Добавлено спустя 2 минуты 42 секунды: Gemorroj написал:POFIGISST, достаточно просто проверить html код валидатором, чтобы понять что из себя представляет скрипт

Это я согласен Паш))но от паблика не стоит ожидать что выложат хороший скрипт без ошибок и багов на халяву))Поэтому спасибо кодерам которые выкладывают хоть какие то скрипты в паблик(и тебе тоже спасибо) )))
Вложения
маффия.PNG
52kb
{1440x900}
[
загрузок: 954]
#95.
TLENS
Off
(14)
Moderator
2011.07.10 23:11
Сейс зайду по ftp к тебе гляну че там.\
Надеюсь пароль не поменял
Добавлено спустя 2 минуты 22 секунды: А у тебя этот сайт на другом сервере. Покажи файл maf.php
конкретно на той странице 500 ошибка. проверь синтаксис php кода.
Помогите с запросом. Есть таблица
id | name | categor
Все данные в разброс, нужно выводить из определённой категории и повторяющиеся имена только один раз
пример:
2 | иван | mebel
3 | иван | paleno
4 | саня | mebel
5 | иван | mebel
Нужно только
2 | иван | mebel
4 | саня | mebel
Плохо в SQL шарю, простое что-нибудь запросто, а потяжелее не мого, помогите, если не троудно.
Отредактировано DarkRiDDeR (2011.07.13 08:08)
О, точно! И так просто. А то я уже в подзапросы полез. Спасибо!
Gemorroj, А как сделать чтоб в таблице постом выше еще и считало,например сколько mebel,сколько poleno?
Как оптимизировать данный запрос?
А то выполняется пол минуты.
Код:
<?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 секунду: В смысле можно ли его сделать одним запросом?
Как комментируются константы в классах?
например свойства так:
Код:
<?php |
/** |
* Переменная с настройками. |
* @var array |
*/ |
private static $_arr; |
?> |
как быть с константами?
Я буду лучше голоден, но между креслом и рулем и на дороге.
TLENS, что в массиве $arr?
Nu3oN,
http://pear.php.net/manual/ru/standards.naming.phpИмена констант всегда должны быть в верхнем регистре с подчеркиваниями для разделения слов. В качестве префикса в именах констант должно использоваться имя пакета/класса, в котором они используются. Например, все константы, которые используются в пакете DB::, начинаются с "DB_".
пример (почему-то с синтаксической ошибкой php, но суть уловить можно)
http://pear.php.net/manual/ru/standards.sample.phpКод:
<?php |
/** |
* Methods return this if they succeed |
*/ |
define('NET_SAMPLE_OK', 1); |
Gemorroj написал:
что в массиве $arr?
Код:
<?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:02)
Паша а с каких айпишников идет спам?
Они разные?
я не смотрел IP, особого труда удалить сообщение и забанить пользователя мне пока не составляет.
Gemorroj =D
Добавлено спустя 4 минуты 46 секунд: А как на счет оптимизации, с ним можно что то сделать?
Отредактировано TLENS (2011.07.14 20:08)
Как насчет такого интелекта для вырезания ссылок?
Код:
<? |
$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); |
Да попробуваль разные варианты да и множество текстов обработал вроде норм лишнего не хавает
xavier053, Как ты уже задолбал
Tlens, удалил)
Желание стать программистом из-за того, что вам нравляться компьютерные игры-это все равно, что желание стать гинекологом из-за того, что вам нравиться секс
Есть возможность в php выполнить несколько операций одновременно?
TLENS, нативно нет. можно извращаться всякими exec'ами.
А можешь помочь в этом вопросе? А то я с exec практически не работал. А точнее вообще не работал.
Вообщем нужно составить запрос сортировки пользователей по активности, что-то типа этого только нормальный:
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:03)
Вообщем я наверное неверно объяснил, есть 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
и ещё ненужные поля.
Код:
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 |
Gemorroj, ты гений, как всегда спасибо)
Добавлено спустя 6 минут 3 секунды: Gemorroj, а ещё отдельную статистику реально сделать тоесть AS `cnt_mems`, пробовал, не получилось...
Поставил зц мобивап себе,а там ошибка вот такая "Warning: Invalid argument supplied for foreach() in /home2/d4cc1zrx/public_html/index.php on line 62" и я как обычно х\з как её исправить,выкладываю код страницы
Код:
<?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 == 1 && !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" /> ' . $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] . |
'&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'> |
» <a href=\"?c=$table&id=$list[id]&sort=$sort&p=$p&step=$step&page=$page&set\">Настройки</a> : <a href='search.php?c=$table&search'>Поиск</a><br /> |
» Самые: <a href='top.php?c=$table&id=$id'>скачиваемые</a> : <a href='new.php?c=$table&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'] > 0 && $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&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&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 == 1 && 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&id=$list[id]'>подробности</a></td></tr><tr><td class='img' width='$prev_w'><img src='image.php?c=$table&id=$list[id]&W=$prev_w&H=$prev_h' alt='скачать " . |
$file_name . "'/> </td><td class='info'><a class='info' href='file.php?c=$table&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&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 . '&id=' . $list['id'] . '&act=d&W=' . |
$d_w . '&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&id=$list[id]'>подробности</a></td></tr><tr><td class='img' width='$prev_w'><img src='ffmpeg.php?c=" . |
$table . "&id=" . $list['id'] . "&W=" . $prev_w . "&H=" . $prev_h . "&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&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&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&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&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'; |
|
?> |
валидатор показал что нет ошибок((
POFIGISST написал:
валидатор показал что нет ошибок((
тут не в синтаксисе проблема.
Пустая переменная $arr_temp
Добавлено спустя 1 минуту 6 секунд: т.е. $arr_temp = glob('temp/*');
не вернул нифига.
сейчас дам исправления
а что в ней должно находиться? или она вообще не должна существовать?))
Код:
<?php |
$arr_temp = glob('temp/*'); |
$i = 0; |
foreach ($arr_temp as $value) |
{ |
@unlink($value); |
$i++; |
if ($i > 50) |
{ |
break; |
} |
} |
замени
Код:
<?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:11)
А хотя можно было просто вставить собаку перед foreach для заглушки эта ошибка не страшная просто нет файлов в папке temp
Добавлено спустя 8 минут 56 секунд: POFIGISST написал:
а что в ней должно находиться
Глупый вопрос.
заходишь например на php.su кликаешь по ссылке функции по алфавиту и ищешь функцю glob, и смотриш что она должна вернуть
Странно почему в ОПП переменная description не работает.
Код:
<?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; |
} |
|
} |
результат
Код:
object(Themes)#2 (4) { |
["description"]=> |
string(0) "" |
} |
["description"]=>string(0) "" вот почему?
В то время как
Код:
<? |
class Test { |
public $description = 1; |
} |
$test = new Test; |
var_dump($test); |
Все норм.
Отредактировано TLENS (2011.08.03 22:10)
здесь какой-то маразм, а не ООП.
начнем с того, что вот так "global $_SET;" никогда писать нельзя.
и результат - как ты его получил? может ты сам же description и обнулил.
Не понял на счет global, Нужно было сразу в конструкторе принять нужные параметры с set/
Кстати да этот кла вовсе не клас просто совокупность функций. Писал его когда только начинал учить ООП.
Сейчас то уже понял для чего надо ООП.
Но все же я публике тоже ввел в переменную данные то нет их.
Отредактировано TLENS (2011.08.03 22:10)
Ты был прав додумался пробить поиском description когда то тестил класс и стоит строчка $Themes->description = '';
Почему я о ней забыл. спс. уберу ту срань с форума. Надо бы и с сервера ее убрать.
Народ как сделать в Mysql сортировку по русским буквам? С английским всё норм, а с русским проблы. Кодировка UTF-8
DarkRiDDeR, подозреваю, что нихрена не utf-8. Потому как при корректной работе с кодировками, никаких проблем не возникает.
Да при создании таблицы задал DEFAULT CHARSET utf8, всю запись вёл тоже с utf-8. Выводится всё норм, а сортировка что-то никак.
соединение с бд должно быть еще настроено на работу с utf-8
Кажись понял. Я не настраивал, что utf, и mysql при записи считал, что это latin1(по умолчанию), а записывалось utf. Поэтому при выводе всё норм, но при сортироке, mysql сортирует utf, как lаtin. Но как теперь от этого избавиться: данные, которые уже записаны, нужны?
Нет, это уже пробовал. Выходит: MySQL перекодирует, что в UTF, из latin1 в UTF. И получается воопще муть.
DarkRiDDeR, твои проблемы) перводи бд в UTF-8
Решил сделать так: сниму дамп в lаtin1 и запихну его, как utf8. Кстати, есть скрипт, который дамп снимает? Рhрmуаdmin не подходит.
Фу-у... Рушил проблему. Хороший скрипт Sypex Dumper v.2.0.6 B (дампы делает). В нём снял дамп в latin1, а потом запихнул, как UTF8. Всё!!! Работает!!!
почему phpmyadmin не подходит? лучшее что есть на php для работы с mysql.
Sypex Dumper v.2.0.6 в 4 раза быстрее, если верить разработчику. phpmyadmin на хосте стоит, я сначала через него хотел дамп снять, но там только он в UTF8 даёт. И опять выходит: что хранится в UTF, перекодировается из latin в utf, как-то так. Главное проблему решил
ну какая разница, отдаст оно тебе страницу, за 0.4 или 0.1 сек? возможностей-то у phpmyadmin не в 4, а в 1000 раз больше.
Я не говорю, что он хуже, просто у него кракобязи на дампе были
помогите сделать приват в чате только с 50 постов,идет вот такая
Код:
echo "<select name=\"prvt\">"; |
echo "<option value=\"0\">Всем</option>"; |
echo "<option value=\"1\">Приватно</option>"; |
echo "</select><br/>"; |
кнопка переключатель,хочу чтоб из базы users['posts'] брало сколько у человека постов,и если меньше 50 постов,то срабатывала функция if else ,то есть,если постов 50 или больше,то в кнопке появляется "Приватно" а если же постов нету,то "Приватно" просто исчезает,и можно говорить только "всем" вот как это сделать?((
POFIGISST очень просто.
Код:
<?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 { |
// не разрешаем |
} |
спасиб Дим,а "А также чтобы не было дырки вставь такое же возле приема поста." это где прием поста идет?((
а я *** дай файл на который ссылается форма
Отредактировано TLENS (2011.08.11 00:12)
вот вся страница,теперь оно определяет сколько постов у того юзера которому я пишу,и если у него нету 50 постов,то я не могу ему в приват ответить,а он мне может если у меня больше 50 постов(
Код:
<? |
|
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.'&act=add&nk='.$nk.'&'.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.'&act=add&nk='.$nk.'&'.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&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&nk=$usid&mod=temus\">Все темы пользователя на форуме</a><br/>"; |
echo "<a href=\"forum/?$ses&nk=$usid&mod=postus\">Все сообщения пользователя на форуме</a><br/>";*/ |
|
echo gb.'<a href="room?rm='.$rm.'">В чат </a>'.div; |
foot(); |
?> |
Ты уверен что такой столбец существует "posts"?
Что в столбце qposts?
Отредактировано TLENS (2011.08.14 08:08)
в столбце gposts пусто,а в столбце posts посты записаны, идет таблица users столбец posts в ней))
Ты не тот файл мне дал. дай тот куда отправляются данные
Отредактировано TLENS (2011.08.11 01:01)
Код:
<? |
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(); |
?> |
вот файл комнат,в него данные которые юзер пишет отправляются))
И это не он коточь там поидее реврайт стоит. дай мне файл на который ссылается tell и что в config.php?
Вот файл телл,он ссылается на переменную rm
Код:
<? |
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.'&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.'&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 секунд: в конфиг вродь ток подключение к базе идет,и паро мелких настроек)) ну вот его тоже выкладываю))
Код:
<? |
// НАСТРОЙКИ СОЕДИНЕНИЯ С БД |
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"; |
?> |
Корочь давай архив с чатом а то мы так будем месяц искать
А что если просто так
Код:
echo '<select name=\"prvt\"> |
<option value=\"0\">Всем</option>'; |
if($user['posts']>'50') |
{ |
echo '<option value=\"1\">Приватно</option>'; |
} |
|
echo '</select><br/>'; |
прписать,ну только ошибку в этом коде исправить((
Добавлено спустя 1 минуту 18 секунд: В Этой теме он ))
подскажите как сделать при нажатии на ссылку занос число в базу? например ссылка "Слить" нажимаешь на нее и в базу в определенное поле записывается значение "1" ,как такое сделать?)
Подскажите, делает ли что-то с кодировкой функция strtr() и strtolower(), т.к. у меня глюки с кодировкой начинались и на хосте.
Отредактировано tipsun (2011.08.14 14:02)
да. эти функции некорректно работают с мультибайтовыми кодировками.
используй mbstring.
Мой мозг никак не высрет функцию антимата.
Можно простым str_ireplace(); то, что есть в архиве, но будет проходить м-а.т
tipsun, мат всегда будет проходить. Я бы вообще не заморачивался такими глупостями.
подскажите как всунуть таблу из базы в переменную,идет табла foto_add,и там поле adres,что типа такого должно быть $zzz = foto_add['adres'];,только это не правильно(
Отредактировано POFIGISST (2011.08.16 04:04)
Код:
<?php |
$q = mysql_query("SELECT ..."); |
$foto_add = mysql_fetch_array($q); |
echo $foto_add['adres']; |
TLENS написал:Код:
<?php |
$q = mysql_query("SELECT ..."); |
$foto_add = mysql_fetch_array($q); |
echo $foto_add['adres']; |
Спасибо большое Дим))
как можно 3 переменных прикрепить? примерно вот так
Код:
echo '<img src="http://'.$sit.''.$foto_add['adres'].''.jpg"><br>'; |
тут 2 переменных,и незнаю как их скрепить в одной строке((
и еще вопрос,какая у меня вот тут
Код:
<?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:04)
Код:
<?php |
$a1 = 1; |
$a2 = 2; |
$a3 = 3; |
echo '[' . $a1 . $a2 . $a3 .']'; |
[123]
Добавлено спустя 1 минуту 12 секунд: но можно и таким образом как это делал ты $a1 . '' . $a2
ну вот у мя такой говнокод вышел
Код:
<?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>'; |
?> |
SELECT ... замени на нормальный запрос
Добавлено спустя 1 минуту 10 секунд: и $a2 это массив уверен у тебя пишет array
$q = mysql_query("SELECT * FROM foto_add");
на такой заменить?))прост с базами у мя ваще беда((
Добавлено спустя 1 минуту 16 секунд: ты прав насчет массива,пишет вот так "<img src ="http://[test4.ruArray].jpg"><br>" (((
бля я как тебе написал? $a2['adres']
вставь var_dump($a2);
Добавлено спустя 1 минуту 1 секунду: лан я спать
массив уже убрал,теперь так
Код:
<img src ="http://[test4.ru/files/album/album_2_3].jpg"><br> |
если убрать [ скобочки,то картинка норм будет появляться))
TLENS написал:
бля я как тебе написал? $a2['adres']
вставь var_dump($a2);
Добавлено спустя 1 минуту 1 секунду:
лан я спать
приятных тебе))
вот такой код
Код:
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg"><br>'; |
все норм выводит))спасибо еще раз))
Добавлено спустя 1 минуту 20 секунд: TLENS написал:
ну так в чем проблема?
ну так я же думал,что если уберу их,то ошибка синтаксиса будет((
новый вызов mysql_fetch_array покажет следующий столбец. ну вообщем спрашивай если что не понятно. да и не забывай читать инфу о функциях
TLENS написал:
новый вызов mysql_fetch_array покажет следующий столбец. ну вообщем спрашивай если что не понятно. да и не забывай читать инфу о функциях
а если мне нужен именно не следующий столбец,а 5 или 10 например?
не столбец, а строку.
у тега img атрибут alt обязательный.
Gemorroj написал:
не столбец, а строку.
у тега img атрибут alt обязательный.
а ну да
а с альтом это вот так
Код:
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg"><alt="фото"/><br/>'; |
?)
POFIGISST написал:а с альтом это вот так
Код:
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg"><alt="фото"/><br/>'; |
?)
ГГ
Код:
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg alt="фото" /><br/>'; |
Подскажите)))вот у мя идет такой код
Код:
<? |
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&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&path='.$downdir_array[$i].'&'.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&path=$path&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 "<<пред.";}else{echo "<a href=\"index?list=$lis1&mod=".$mod."&path=$path\"><<пред. </a>";} |
if ($lis == $i){echo "| след.>><br/>"; |
}else{echo "| <a href=\"index?list=$lis&mod=".$mod."&path=$path\">след.>></a><br/>";} |
if ($ver!='wml') echo "<form method=\"POST\" action=\"index?mod=".$mod."&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."&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.'&act=add&&path='.$path.'&gift='.$gift.'&'.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.'&act=add&&path='.$path.'&gift='.$gift.'&'.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 секунды: я как раз там и смотрел синтаксис его)))
Добавлено спустя 3 минуты : TLENS написал:POFIGISST написал:а с альтом это вот так
Код:
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg"><alt="фото"/><br/>'; |
?)
ГГ
Код:
echo '<img src ="http://' . $sit . $foto_add['adres'] .'.jpg alt="фото" /><br/>'; |
спасибо))вопрос не по теме ,а как ты сделал такой шрифт,которым у тя подпись,ну это "Мое творчество.
the-best-xxx.ru
podsmotri.org
И еще пару покамест не стоящих внимания."
Не понял вопроса. [ size=8][/size ]
Отредактировано TLENS (2011.08.16 22:10)
TLENS написал:
Не понял вопроса.
какого из всех?а то я много задал((сорри((
Вроде так
Код:
<?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:11)
Офигеть

работает ,спасибо,пассы и так в мд5 в базе храняться
что это за ошибка при заливке базы?
Вложения
tot.png
5kb
{807x235}
[
загрузок: 805]
ну, там же написано. записываешь данные в колонку, которой не существует.
Голова уже лопается... необходимо при создании объекта класса, передавать неопределенное колличество аргументов!
Например:
Код:
<?php |
function getClass($name, $args=array()) |
{ |
$a = new $name(/* Сюда надо как то вставить аргументы из массива $args */); |
return $a; |
} |
потом
Код:
<?php |
$a = getClass('class_one', array(1, 2, 3, 4)); |
$b = getClass('class_two', array('a', 'b', 'c')); |
Как это можно реализовать? __autoload даже не предлагать гг
Пробовал еще так:
Код:
<?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" }
это хорошо если аргументы не указаны в конструкторе! а если указаны...
Должно быть как минимум два, и я введу эти два аргумента, а мне будет выдавать ошибку, и скрипт будет спокойно работать дальше!
Я буду лучше голоден, но между креслом и рулем и на дороге.
Все! разобрался!
Мне интересно почему так получается, если в функции создать класс, то выдаст ошибку, если же в этой же функции подключить файл (через include / require) то все нормально?
Я буду лучше голоден, но между креслом и рулем и на дороге.
не понял.. как ты создаешь класс? через eval чтоли? и как проблему с неопределенным числом аргументов решил?
Nu3oNВозможно проблема из за не глобальных переменных
Отредактировано TLENS (2011.08.23 20:08)
Gemorroj написал:
не понял.. как ты создаешь класс? через eval чтоли? и как проблему с неопределенным числом аргументов решил?
Код:
<?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 секунду: Можно еще так:
Код:
<?php |
$reflection = new ReflectionClass('NameClass'); |
$object = $reflection -> newInctanceArgs(array(/* аргументы */)); |
?> |
Но не у всех есть такая библа
Я буду лучше голоден, но между креслом и рулем и на дороге.
Как решить проблему?
Когда файл отдается php скриптом (fread) встречается проблема пока отдается файл то не загружает остальные страницы пока полностью не отдастся файл.
Nu3oN, я тоже переодически сталкиваюсь с такой проблемой с аргументами, пока нормальных решений не знаю. что eval, что Reflection - говно..
Добавлено спустя 1 минуту 20 секунд: TLENS, подробнее код. по-моему, это уже обсуждали, возможно, загружен канал
Gemorroj написал:
Nu3oN, я тоже переодически сталкиваюсь с такой проблемой с аргументами, пока нормальных решений не знаю. что eval, что Reflection - говно..
Лучших вариантов на ближайшее время не вижу (= точнее вообще никаких не наблюдаю гг
Я буду лучше голоден, но между креслом и рулем и на дороге.
В общем очередной раз переписываю свою cms, и вот решил изменить полностью структуру MVC...
В прошлый раз я писал все иначе, все делилось просто: "/папка/контроллер/переменные" без права на выбор!
Теперь решил все сделать как должно быть! и мне необходимо из URL получить путь к контроллеру, класс контроллера и выводимый метод, с учетом того-что папок может быть очень много! решил это реализовать так:
Код:
<?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']; |
|
?> |
Насколько это гуманно?
Я буду лучше голоден, но между креслом и рулем и на дороге.
ну да, 2 вариант - маппинг. т.е. разработчик сам прописывает в диспетчере все возможные запросы, и в бутстрапе просто ищутся соответствия с заранее определенными правилами.
Это короче надо искать другие варианты соединения?
Код:
Внимание: |
curl_setopt_array(): CURLOPT_FOLLOWLOCATION |
не может быть активирована, когда safe_mode включен |
или open_basedir установлен в |
/usr/home/tipsun/htdocs/cinema/index.php |
Отредактировано tipsun (2011.08.28 06:06)
Хотя можно и другим способом эту переадресацию поймать:
get_headers('url', 1);.
Да и вообще
file_get_contents(); обойтись. Думал как получше замаскироваться, чтоб граб долго работал.
- - - -
Эта переадресация 1 раз встечается (в месяц: /2011-08/).
Отредактировано tipsun (2011.08.28 22:10)
tipsun, скорее всего там не совсем корректно переадресация сделана. в соответствии с протоколом HTTP 1.1, путь всегда должен быть абсолютным. т.е. не /index.php, а http://wapinet.ru/index.php
curl работает только со 2 вариантом. в 90% случаев, проблема именно в этом.
Спс.
Я там смотрел, полный адрес идет, ну во всяком случае в Chrome в загловках. (этот Chrome не поймешь, он сам разметку исправляет, лишние теги убирает, добавляет итп)
Отредактировано tipsun (2011.09.01 13:01)
смотри в фаербаге или драгонфлае
Ок, спс.
Я там по-другому сделал. Переадресация встречается 1 раз.
Эту переадресацию ловлю при помощи get_headers().
Далее цикл по находжению ссылок, в котором попутно идет запись нужной инфы в базу.
Подключаюсь при помощи cURL.
Что плохо, более подробная инфа лежит в ссылке (как бы подробнее), и надо получается каждый раз на ссылку заходить за более подробной инфой. Но зато 1 раз.
Можно после сканирования сделать, я думаю.
Это еще предстоит написать.
Ну короче вот сие бот-недоразумение...
Код:
<?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}→/', $html, $match)) { |
|
scanerBot($match[1]); |
} |
else { |
|
exit('Отсканировано '.$n.' страниц!'); |
} |
} |
////////// |
$url = 'http://m.kinopoisk.ru/premier/'; |
$url = get_headers($url, 1); |
$n = 0; |
scanerBot($url['Location']); |
////////// |
?> |
Можно и свою дату ставить. Год-Месяц и подключиться...
Ну чем для каждого такую работу выполнять, лучше наверно все у себя сохранить.
Отредактировано tipsun (2011.09.01 16:04)
baseName - исправь на basename, php хоть и регистронезависим в названиях функций, но есть посылки для изменения такого поведения к более жесткому наименованию функций, т.е. регистрозависимому.
а так норм. для таких скриптов - главное чтобы они просто выполняли свою задачу.
=0 неужели, наконец норм, Ура!
Отредактировано tipsun (2011.09.02 18:06)
Можно ли хранить конфиденциальные данные в сессиях?
В чем дело при отдаче файла отдается нормально до 99.9% и когда уже в браузере остается 0 сек. идет задержка где то пол минуты. И потом только пишет загружено. Вот код отдачи файлов.
Код:
<?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], 0, 3) == '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, $errstr, 10); |
if (!$fp) { |
exit('Warning. Server problem'); |
} |
foreach($_SERVER as $k=> $v) { |
$http=substr($k, 0, 5); |
if($http == 'HTTP_') { |
$h=substr($k, 5); |
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($b, 0, 5) == '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($fp, 1024); |
//usleep(1000); |
flush(); |
} |
#212.
Игорь482
Гость
2011.09.08 19:07
Подскажите пожалуйста, сайт стоит на сервере но после обновления ПО Текст: функция toGDImage
выдает ошибку /ffmpeg.so:
undefined symbol:
img_convert...
Зарание спасибо
TLENS, это антивирус скорее всего) посмотри загрузку проца что жрет ресурсы.
Добавлено спустя 38 секунд: Игорь482, код приведи плз.
Gemorroj написал:
это антивирус скорее всего) посмотри загрузку проца что жрет ресурсы.
Антивирь даже отключил тоже самое, да и на процессах ничего заметного не происходит загрузчик жрет.
Но вот выполнил copy на денвере то он без задержки скопировал.
Я запутался. Если даже проблема в юзер-агенте то почему на других сайтах норм а с моего задержка пробовал оперу и хром.
Может проблема в скрипте?
Отредактировано TLENS (2011.09.08 21:09)
Что то с загрузчиком. Пробовал с мобильного 300 кб качает и все. сейчас буду раздуплять
ну, я не вижу проблем в скрипте..(
Изза чего может быть 300 кб?
возможно, дело в Content-Encoding. Удаленный сервер его передает, а ты нет.
Поставил то же самое. Сейчас напишу код похож и буду ему давать заголовки прослежу как он отвечает
Паша ответь мне плис что это такое, Какие есть предположения?
Код:
<?php |
|
//--- Выдача файла --// |
public function readfile () { |
//fpassthru($this->fp); |
$starttime = microtime(1); |
$fp = fopen('info.txt', 'a'); |
while (!feof($this->fp)) { |
$len = strlen(fread($this->fp, 1024)); |
$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:10)
я чето не догоняю.
$fp = fopen('info.txt', 'a'); // открыли только для записи
while (!feof($this->fp)) { // тут проверка на конец файла, но модификатор "a" как раз помещает указатель на конец файла, так что внутрь while мы не должны попасть
Ты не понял Есть $fp а есть $this->fp который открыт выше
в $this->fp открыт вайл со стороннего хоста.
Отредактировано TLENS (2011.09.09 22:10)
а епт)
дай весь код. запущу на своей фряхе.
Я его запускал на других работает как надо. скорее ip
Код:
<?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($k, 0, 5); |
if($http == 'HTTP_') { |
$h = substr($k, 5); |
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->host, 80, $errno, $errstr, 10); |
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 ,0, 5) == '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->fp, 1024); |
$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 секунды: Ну что там?
последние строчки:
1024 - 1,5020370483398E-5
1024 - 1,5020370483398E-5
348 - 60,271856069565
а дальше пидарасня какая-то. такое ощущение, что сам файл пишется. щас код повнимательнее посмотрю.
А та не парся то я решил глянуть что там 83 строка
Добавлено спустя 6 минут 41 секунду: Я конечно люблю загадки но не до такой степени.
Выполнил
Код:
<?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) - $starttime, 4); |
Результат 0.6344
Все таки проблема в коде.
Паша вся надежда на тебя. Сейчас попробую отправляемые заголовки перевести в нижний регистр. Но мало верится что поможет я уже не знаю что делать.
Подожди дак у тебя тоже вис, это статы с твоего сервера?
1024 - 1,5020370483398E-5
1024 - 1,5020370483398E-5
348 - 60,271856069565

)
вобщем так)
Добавлено спустя 20 секунд: Код:
<?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($k, 0, 5); |
if ($http == 'HTTP_') { |
$h = substr($k, 5); |
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->host, 80, $errno, $errstr, 10); |
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($b, 0, 5) == '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(); |
Конкретно проблема в 60 задержке - в заголовке Connection: Keep-Alive
Там еще была ошибка в работе с feof
Я твой должник. Я до сих пор толком не понял для чего Keep-Alive сейчас почитаю, А что на счет EOF?
ну там получалось что 1 раз считывал лишнюю строчку.
ну там еще и сзаголовками была проблема, они же в php типа как ACCEPT_CHARSET, а передавать нужно Accept-Charsert. Как минимум _ заменить на - надо.
А блин куда я смотрел. Но тоже кстати собирался рыть в get_accept_headers ().
Моя бабушка всегда мне говорила если долго мучится что нибудь получится.
Меня очень запутало то что с Твоего сайта не было проблем.
Спасибо огромное еще раз!
вапинет отдает такое: Keep-Alive: timeout=5, max=100
т.е. задержка 5 сек, а не 60 сек, как на сасисе.
Помогите плиз написать функцию,которая будет блокировать смайлы в чате в одном посте,вернее чтоб лимит был,например чтоб в одном посте показывало только 2 смайла,а остальные чтоб не выводило,а то есть умники которые в одном посте ставят по 20 смайлов,и страниц х.з. сколько грузиться,к посту прикрепляю файл отвечающий за это(( сам пробовал,но нифига не вышло,только ошибок кучу сделал((
TLENS написал:
Это ты писал скрипт?
нет,файл был написан Шахтером,а мод личных смайлов на заказ писали((
Добавлено спустя 8 минут 41 секунду: примерно таким
Код:
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]); |
} |
кодом можно сделать наверное,но не соображу как это замутить((
Сейчас напишу дополнение.
Ток скажи честно сколько заплатил за него.
TLENS написал:
Сейчас напишу дополнение.
Ток скажи честно сколько заплатил за него.
честно я не платил за него,писал тот чел что и тотал написал,ну код тотала ты видел,мы с ним договорились,что я привожу к нему на сайт 10 человек,а он мне за это пишет этот мод,без денег у нас был договор
Код:
<? |
$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/\?\.\~&_=/%-:#]*)~', 'url_replace', $text); |
$text = preg_replace_callback('~\\[imgs=(.+?)\\](.+?)\\[/imgs\\]|((www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&_=/%-:#]*)~', 'img_replace', $text); |
|
return $text; |
} |
|
|
|
|
?> |
Код ужасный. Даж я такого в детстве не писал. Думал подправить потом плюнул
Добавлено спустя 57 секунд: вверху настройка количества
Отредактировано TLENS (2011.09.26 21:09)
TLENSс этим кодом весь чат не работает,просто белая страница(((
не показывает((или я не правильно включаю,хотя вот error_reporting(-1); должно выводить ошибки((
Добавлено спустя 2 минуты 17 секунд: error_reporting (E_ALL); и так включить пытался((нифига(((
Попробуй поставить в самом начале ведь этот инклюдится куда то
error_reporting(E_ALL);
ini_set("display_errors", 1);
Добавлено спустя 1 минуту 2 секунды: В общем код дал рабочий. Ничего в нем не менял кроме одной функции она работает разбирайся сам. Включай мозги
Отредактировано TLENS (2011.09.26 21:09)
TLENSспасибо Дим,это с самим файлом хуйня какая-то,хотя раньше норм вродь работал((
Добавлено спустя 2 минуты 12 секунд: Gemorroj написал:
замени <? на
<?php
спасиб Паш,забываю это исправлять когда редачу файлы((
а если вот так
Код:
<?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/\?\.\~&_=/%-:#]*)~', 'url_replace', $text); |
$text = preg_replace_callback('~\\[imgs=(.+?)\\](.+?)\\[/imgs\\]|((www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&_=/%-:#]*)~', 'img_replace', $text); |
|
return $text; |
} |
|
?> |
сделать? но так почему то не выводит лычный смайл,вернее показывает что должна быть картинка,но её нету,оно имя из базы не тянет,по исходному коду показывает вот так
<a><img src= "/smiles/usersmiles/.gif" alt="222"/>
имя не берет почему то((
Код:
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]; |
} |
Это часть кода...
Жгёш пополной
Отредактировано WapStyle (2011.09.26 22:10)
WapStyle написал:Код:
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]; |
} |
Это часть кода...
Жгёш пополной

чесн сказать,я сам даже такого не напишу((
Это был мой позор(((исправил все,теперь работает((правда говнокод остался((
Добавлено спустя 4 минуты 54 секунды: смайлы личные работают,и обычные тоже,обычных смайлов выводит только по 2 смайла в одном посте,а вот личных,скок напишешь,сток и выведет,хоть 100 штук в одном посте,теперь не знаю как ограничитель личных смайлов сделать((чтоб их тоже выводило только по два в одном посте(( в какой строке или в какой части это можно сделать подскажите((
Код:
<?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"; |
} |
Блин,создаю таблицу в базе вот такую
Код:
`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 (
тебе не нужно 2 автоинкремента. тут, на сколько я понял, нужна связь многие ко многим.
Gemorroj написал:
тебе не нужно 2 автоинкремента. тут, на сколько я понял, нужна связь многие ко многим.
наверное поле name нужно убрать,ведь значения в полях id и name будут одинаковые,и поле ид можно использовать в двух значениях сразу как имя(чтоб не повторялось имя файла при загрузке) и как ид ))
Отредактировано POFIGISST (2011.09.28 00:12)
POFIGISSTНу оно за частую так и делается.
как мне в этом
Код:
<?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 '» <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 '» <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 как такое сделать?
ID чего/кого? Юзера, смайла в дирректории по порядку?
tipsun написал:
ID чего/кого? Юзера, смайла в дирректории по порядку?
в таблице user_smiles_spis первое поле идет id там автоинкремент стоит,вот хочу чтоб по умолчанию картинкам присваивалось имя их ИДа,чтоб юзер сам не мог давать имя файлу который он закидывает((
а как можно сделать проверку данных которые юзер записывает в форму? то есть есть слова определенные в тхт файле,и над сделать проверку,чтоб если юзер в водит то слово которое в этом тхт файле , то чтоб писало ошибку((
Gemorroj написал:
ну при сабмите проверяй
напиши название функции которая делает такую проверку?
это примерно так, переменная которую юзер вводит,проверяется в тхт файле,и если есть совпадения,то ошибку выдает?
Gemorroj написал:
да
спасиб))
Посоветуйте как лучше перенести таблицы с сервера на сервер.
phpmyadmin переносит с потерями. А в ручную писать скрипт нет времени. Надо успеть до 0:00
Ну я бекаплю частями по 10000 - 500000 запросов.
При заливке через phpmyadmin разные ошибки, так заливаю через гменеджер-ий заливщик.
пару ошибок и 10 тыс. потерялась. Ну в общем перелил только что фотки 400тыс. то проц. 5 нет в базе
Отредактировано TLENS (2011.09.30 22:10)
блин. что за "разные ошибки"?
Да я сам фиг проссу.
То поврежденные архивы то нет никаких возвратов. А когда по одному то бывает проблема с кавычками они почему то пишутся не в специал.чаре
Добавлено спустя 8 минут 44 секунды: Вроде перезалил все, кавычки сменил на соль и в новой базе заменил назад.
Паша подскажи что делать.
Стоит nginx и set_time_limit включен но не работает.
Дает 504
читал в гугле решение только max_execution_time но для отдачи файлов ето не вариант надо именно set_time_limit/
Да и безопасный режим отключен
это в nginx надо ковырять время ожидания ответа.
конкретную директиву не помню.
Блин,написал сохранение писем,но где то ошибка в запросе,при нажатии на ссылку,в определенное поле в базу,должно заносить результат 1,но нифига не заносит его((
подскажите где в коде у мя ошибка?
вот код((
Код:
<?php |
require'../config.php'; |
$align='left'; |
$title='Сообщения'; |
head(); |
aut(); |
who_add(0,'enter'); |
|
switch($mod){ |
default: |
|
if (isset($_GET['delread'])){ |
$db->sql_query("DELETE FROM `privat` where to_id = '".$user['id']."' and readin =1"); |
header ('Location: privat?'.SID); |
} |
|
if (isset($_GET['save'])){ |
$db->sql_query("INSERT INTO `saved` where to_id = '".$user['id']."'"); |
header ('Location: privat?'.SID); |
} |
|
if (isset($_GET['delall'])){ |
$db->sql_query("DELETE FROM `privat` where to_id = '".$user['id']."'"); |
header ('Location: privat?'.SID); |
} |
|
echo '» <a href="privat?mod=in">Входящие</a>(<b>'.$db->sql_fetchfield($db->sql_query("select count(*) as num from privat where to_id = '".$user['id']."' and readin !=1"),0).'</b>/'.$db->sql_fetchfield($db->sql_query("select count(*) as num from privat where to_id = '".$user['id']."'"),0).')<br />'; |
echo '» <a href="privat?mod=aut">Исходящие</a>(<b>'.$db->sql_fetchfield($db->sql_query("select count(*) as num from privat where user_id = '".$user['id']."' and readin !=1"),0).'</b>/'.$db->sql_fetchfield($db->sql_query("select count(*) as num from privat where user_id = '".$user['id']."'"),0).')<br />'; |
echo '» <a href="privat?mod=saved">Сохраненные </a>(<b>'.$db->sql_fetchfield($db->sql_query("select count(*) as num from saved where user_id = '".$user['id']."'"),0).'</b>)<br /><br />'; |
|
|
echo '» <a href="privat?mod=add">Написать</a><br />'; |
echo '» <a href="privat?save">Сохранить все прочитанные</a><br />'; |
echo '» <a href="privat?delread">Удалить все прочитанные</a><br />'; |
echo '» <a href="privat?delall">Удалить все входящие</a><br />'; |
echo '» <a href="friends">Ваши Друзья</a><br />'; |
echo '» <a href="ignor">Черный список</a><br />'; |
break; |
|
case add: |
|
if (empty($act)){ |
if ($_GET['err']==1)echo '<b>Сообщение должно быть длиннее 5 символов!</b>'; |
if ($_GET['err']==2)echo '<b>Такого пользователя не существует!</b><br />'; |
if ($_GET['err']==3)echo '<b>Проверочный код введен неверно!</b>'; |
if ($_GET['err']==4)echo '<b>Чтобы писать записки, нужно набрать '.$set['posts_pr'].' постов!</b>'; |
if ($_GET['err']==5)echo '<b>Запрещено писать пользователям с х-статусом "Не беспокоить"<img src="'.H.'img/online/zaniat.png" alt="" /></b>'; |
if ($_GET['err']==6)echo '<b>Вы не можете писать этому пользователю, т.к. находитесь в его черном списке.</b>'; |
if ($_GET['err']==7)echo '<b>Этому пользователю писать могут только друзья.</b>'; |
if ($_GET['err']==8)echo '<b>Полозователь запретил отправлять ему сообщения.</b>'; |
if ($ver!='wml')echo '<form action="privat?mod='.$mod.'&act=act&'.SID.'" method="post">'; |
|
$to = check($_GET['to']); |
|
if ($ver=='wml'){ |
echo 'Кому (Ник/ID):<br /><input name="to'.$ref.'" maxlength="15" value="'.$to.'" title="komu"/><br/>'; |
echo 'Сообщение:<br /><input name="msg'.$ref.'" maxlength="512" title="komu"/><br/>'; |
$chislo=rand(1000,9999); |
$db->sql_query("DELETE FROM `chislo` WHERE `ip` = '".$ip."'"); |
$db->sql_query("INSERT INTO `chislo` (chislo,ip) values('$chislo','".$ip."')"); |
echo ' <b>'.$chislo.'</b><br/>Проверочный код:<br/> |
<input type="text" name="code'.$ref.'" size="4" maxlength="4" title="code"/>'; |
|
echo '<br /><anchor title="go">Написать<go href="privat?mod='.$mod.'&act=add&'.SID.'" method="post"><br />'; |
echo '<postfield name="to" value="$to'.$ref.'"/> |
<postfield name="msg" value="$msg'.$ref.'"/> |
<postfield name="code" value="$code'.$ref.'"/> |
</go></anchor><br />'; |
}else{ |
echo "Кому (Ник/ID):<br /><input name='to' maxlength='15' value='$to' title='komu'/><br/>\n"; |
echo'Сообщение:<br /><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="msg" ></textarea><br />'; |
$chislo=rand(1000,9999); |
$db->sql_query("DELETE FROM `chislo` WHERE `ip` = '".$ip."'"); |
$db->sql_query("INSERT INTO `chislo` (chislo,ip) values('$chislo','".$ip."')"); |
echo ' <b>'.$chislo.'</b><br/>Проверочный код:<br/> |
<input type="text" name="code" size="4" maxlength="4" title="code"/><br/>'; |
echo '<input type="submit" class="ibutton" value="Написать"/></form><br /><br />'; |
} |
|
|
}else{ |
|
|
$to = check($_POST['to']); |
$msg = check($_POST['msg']); |
$_POST['code'] = check($_POST['code']); |
$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); |
|
if ($user['posts']<$set['posts_pr']){header ('Location: privat?mod='.$mod.'&err=4&'.SID); exit;} |
|
if (!user($to)){header ('Location: privat?mod='.$mod.'&err=2&'.SID); exit;} |
if (strlen2($msg)<5){header ('Location: privat?mod='.$mod.'&err=1&'.SID); exit;} |
if (user_inf($to,'xstatus')==2){header ('Location: privat?mod='.$mod.'&err=5&'.SID); exit;} |
|
if (ignor(user_inf($to),$user['id'])==1){header ('Location: privat?mod='.$mod.'&err=6&'.SID); exit;} |
|
if (user_inf($to,'pp_m_s')==2){header ('Location: privat?mod='.$mod.'&err=8&'.SID); exit;} |
if (user_inf($to,'pp_m_s')==1 && friends($to,$user['id'])!=1){header ('Location: privat?mod='.$mod.'&err=7&'.SID); exit;} |
|
|
$online = $db->sql_fetchrow($db->sql_query("SELECT * FROM `chislo` WHERE `ip` = '".$ip."'")); |
if($online['chislo'] != intval($_POST['code'])){header ('Location: privat?mod='.$mod.'&err=3&'.SID); exit;} |
|
if ($db->sql_query ("INSERT INTO privat (user,user_id,to_user,to_id,time,msg) VALUES ('$user[user]','$user[id]','".user($to)."','".user_inf($to)."','$time','$msg')")){ |
|
if (user_inf($to,'pm_notify')==1){ |
if ($user['sex']==1)$sex = 'оставил'; else $sex = 'оставила'; |
$msgmail = "".$user['user']." ".$sex." Вам личное сообщение.\n Просмотреть Ваши новые личные сообщения можно на странице:\n http://".$_SERVER['HTTP_HOST']."/my/privat \n\n С уважением, |
Администрация ".$_SERVER['HTTP_HOST']."\n_ _ _ _ _\n |
Вы можете поменять настройки e-mail оповещений на странице: |
http://".$_SERVER['HTTP_HOST']."/my/setting?mod=notify"; |
$mail=explode('|',user_inf($to,'mail')); |
addmail($mail[0], $user['user'].' '.$sex.' Вам личное сообщение', $msgmail); |
} |
|
echo 'Сообщение для <b>'.user_inf($to,'user').'</b> отправлено!<br />'; |
$db->sql_query("DELETE FROM `chislo` WHERE `ip` = '".$ip."'"); |
if (user_inf($to,'onl')<($time-300)){ |
if(user_inf($to,'avtootvet')!=""){ |
echo 'Автоответчик: '.user_inf($to,'avtootvet').'<br/>'; |
} |
} |
|
|
|
|
} |
} |
|
break; |
|
case in: |
|
if (isset($_GET['del'])){ |
$db->sql_query("DELETE FROM `privat` WHERE `id` = '".intval($_GET['del'])."' and `to_id` = '$user[id]'"); |
} |
|
|
|
if (isset($_GET['delall'])){ |
$db->sql_query("DELETE FROM `privat` WHERE `user_id` = '".intval($_GET['delall'])."' and `to_id` = '$user[id]'"); |
} |
|
if (isset($_GET['save'])){ |
$db->sql_query("update privat set save = '1' where id = '".$a['id']."'"); |
} |
|
if (empty($user['max_pr'])) $user['max_pr']=5; |
$max = $user['max_pr']; |
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from privat where to_id = '".$user['id']."'"),0); |
$k_page=k_page($k_post,$max); |
$page=page($k_page); |
$start=$max*$page-$max; |
|
$r = $db->sql_query ("Select * from privat where to_id = '".$user['id']."' order by time desc LIMIT $start, $max"); |
$k = $db->sql_numrows($r); |
if ( $k == 0 ) |
{ |
echo 'Сообщений пока нет :(<br />'; |
} |
|
$post_k=$start+1; |
while($a = @$db->sql_fetchrow($r)){ |
if ($a['readin'] == 0){$db->sql_query ("Update privat set readin = '1' WHERE id ='".$a['id']."'"); |
echo links.'<img src="'.H.'img/new.gif" alt="" /> '; |
}else echo links; |
if ($a['user_id']==0)echo '<b>'.nik($a['user']).'</b> ('.times($a['time']).')<br />'.div; |
else echo '<b>'.nik($a['user_id']).'</b> ('.times($a['time']).')<br />'.div; |
echo antir(text($a['msg']))."<br/>"; |
|
echo '<dl><dt></dt></dl><a href="privat?mod=add&to='.user_inf($a['user']).'">Ответить</a>| <a href="privat?mod='.$mod.'&save='.$a['id'].'">Сохранить</a> | <a href="friends?mod=add&act=add&nick='.user_inf($a['user']).'">В друзья</a>|<a href="ignor?mod=add&act=add&nick='.user_inf($a['user']).'">В черный список</a>|<a href="privat?mod='.$mod.'&del='.$a['id'].'">Удалить</a>| |
<a href="privat?mod='.$mod.'&delall='.user_inf($a["user"]).'">Удалить всё от</a> '.user($a["user"]).''; |
|
echo "<hr />"; |
} |
if ($k_page>1){ |
echo "<dl><dt></dt></dl>"; |
str('privat?mod=in&',$k_page,$page); // Вывод страниц |
echo "<br /><dl><dt></dt></dl><br />"; |
} |
|
break; |
|
|
|
|
|
|
|
case aut: |
|
|
if (empty($user['max_pr'])) $user['max_pr']=5; |
$max = $user['max_pr']; |
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from privat where user_id = '".$user['id']."'"),0); |
$k_page=k_page($k_post,$max); |
$page=page($k_page); |
$start=$max*$page-$max; |
|
$r = $db->sql_query ("Select * from privat where user_id = '".$user['id']."' order by time desc LIMIT $start, $max"); |
$k = $db->sql_numrows($r); |
if ( $k == 0 ) |
{ |
echo 'Сообщений пока нет :(<br />'; |
} |
$post_k=$start+1; |
while($a = @$db->sql_fetchrow($r)){ |
|
if ($a['to_id']=='')echo user($a['to_user"']).'('.times($a['time']).')<br />'; |
else echo '<b>'.nik($a['to_user']).'</b> ('.times($a['time']).')<br />'; |
echo antir(text($a['msg']))."<br/>"; |
|
echo '<dl><dt></dt></dl><a href="privat?mod=add&to='.user_inf($a['to_user']).'">Написать ещё</a>|<a href="friends?mod=add&user='.user_inf($a['to_user']).'">В друзья</a>|<a href="ignor?mod=add&act=add&nick='.$inf['id'].'">В черный список</a>'; |
echo "<hr />"; |
} |
if ($k_page>1){ |
echo "<dl><dt></dt></dl>"; |
str('privat?mod='.$mod.'&',$k_page,$page); // Вывод страниц |
echo "<br /><dl><dt></dt></dl><br />"; |
} |
|
break; |
|
|
|
case del: |
|
|
break; |
} |
|
|
if ($mod)echo gb.'<a href="'.H.'my/privat">Ваши письма</a>'.div; |
echo gb.'<a href="'.H.'my/index">Личный кабинет</a>'.div; |
echo gb.'<a href="'.H.'enter">Прихожая</a>'.div; |
foot(); |
|
?> |
вот запрос в базу который отвечает за занос 1 в базу((
$db->sql_query("update privat set save = '1' where id = '".$a['id']."'");
после запроса сделай вывод ошибки. какой драйвер для работы с бд используется?
Gemorroj написал:
после запроса сделай вывод ошибки. какой драйвер для работы с бд используется?
ошибку не показывает,а просто обновляет страницу,ссылка на сохранение письма идет такая http://test4.ru/my/privat?mod=in&save=14
save=14 - это ид письма,которому нужно присвоить значение 1 в базе в определенную строку,а оно нифига не заносит(
Gemorroj написал:
ну пиши ошибку в лог
не умею((не знаю как делать
неужели так еще кто то пишет?
POFIGISST написал:
if ($_GET['err']==1)echo '<b>Сообщение должно быть длиннее 5 символов!</b>';
if ($_GET['err']==2)echo '<b>Такого пользователя не существует!</b><br />';
if ($_GET['err']==3)echo '<b>Проверочный код введен неверно!</b>';
if ($_GET['err']==4)echo '<b>Чтобы писать записки, нужно набрать '.$set['posts_pr'].' постов!</b>';
if ($_GET['err']==5)echo '<b>Запрещено писать пользователям с х-статусом "Не беспокоить"<img src="'.H.'img/online/zaniat.png" alt="" /></b>';
if ($_GET['err']==6)echo '<b>Вы не можете писать этому пользователю, т.к. находитесь в его черном списке.</b>';
if ($_GET['err']==7)echo '<b>Этому пользователю писать могут только друзья.</b>';
if ($_GET['err']==8)echo '<b>Полозователь запретил отправлять ему сообщения.</b>';
TLENS написал:неужели так еще кто то пишет?
POFIGISST написал:
if ($_GET['err']==1)echo '<b>Сообщение должно быть длиннее 5 символов!</b>';
if ($_GET['err']==2)echo '<b>Такого пользователя не существует!</b><br />';
if ($_GET['err']==3)echo '<b>Проверочный код введен неверно!</b>';
if ($_GET['err']==4)echo '<b>Чтобы писать записки, нужно набрать '.$set['posts_pr'].' постов!</b>';
if ($_GET['err']==5)echo '<b>Запрещено писать пользователям с х-статусом "Не беспокоить"<img src="'.H.'img/online/zaniat.png" alt="" /></b>';
if ($_GET['err']==6)echo '<b>Вы не можете писать этому пользователю, т.к. находитесь в его черном списке.</b>';
if ($_GET['err']==7)echo '<b>Этому пользователю писать могут только друзья.</b>';
if ($_GET['err']==8)echo '<b>Полозователь запретил отправлять ему сообщения.</b>';
вывод ошибок,а как ты предлогаешь написать?
Тот вариант тоже правильный но там в место if надо использовать elseif дабы предотвратить бессмысленные проверки.
А вообще по всем принципам кодинга, да и по производительности такой вариант будет правильней.
Код:
<?php |
if (isset($_GET['err'])) { |
switch($_GET['err']) |
case 1 : echo '<b>Сообщение должно быть длиннее 5 символов!</b>'; break; |
case 2 : echo '<b>Такого пользователя не существует!</b><br />'; break; |
case 3 : echo '<b>Проверочный код введен неверно!</b>'; break; |
case 4 : echo '<b>Чтобы писать записки, нужно набрать '.$set['posts_pr'].' постов!</b>'; break; |
case 5 : echo '<b>Запрещено писать пользователям с х-статусом "Не беспокоить"<img src="'.H.'img/online/zaniat.png" alt="" /></b>'; break; |
case 6 : echo '<b>Вы не можете писать этому пользователю, т.к. находитесь в его черном списке.</b>'; break; |
case 7 : echo '<b>Этому пользователю писать могут только друзья.</b>'; break; |
case 8 : echo '<b>Полозователь запретил отправлять ему сообщения.</b>'; break; |
} |
} |
Отредактировано TLENS (2011.10.06 15:03)
TLENS написал:Тот вариант тоже правильный но там в место if надо использовать elseif дабы предотвратить бессмысленные проверки.
А вообще по всем принципам кодинга, да и по производительности такой вариант будет правильней.
Код:
<?php |
if (isset($_GET['err'])) { |
switch($_GET['err']) |
case 1 : echo '<b>Сообщение должно быть длиннее 5 символов!</b>'; break; |
case 2 : echo '<b>Такого пользователя не существует!</b><br />'; break; |
case 3 : echo '<b>Проверочный код введен неверно!</b>'; break; |
case 4 : echo '<b>Чтобы писать записки, нужно набрать '.$set['posts_pr'].' постов!</b>'; break; |
case 5 : echo '<b>Запрещено писать пользователям с х-статусом "Не беспокоить"<img src="'.H.'img/online/zaniat.png" alt="" /></b>'; break; |
case 6 : echo '<b>Вы не можете писать этому пользователю, т.к. находитесь в его черном списке.</b>'; break; |
case 7 : echo '<b>Этому пользователю писать могут только друзья.</b>'; break; |
case 8 : echo '<b>Полозователь запретил отправлять ему сообщения.</b>'; break; |
} |
} |
спасибо,воспользуюсь,а насчет elseif ты прав,чтоб пустых проверок небыло так нужно писать(( ступил((
начал вставлять,была мелкая синтаксическая ошибка,её убрал,теперь выводит только титле вверху страницы((может я где-то ошибку сделал,даже скорее всего(( в какой строке эта ошибка?вот тот код которые вставлял(
Код:
case add: |
|
if (isset($_GET['err'])) { |
switch($_GET['err']) |
{ |
case 1 : |
echo '<b>Сообщение должно быть длиннее 5 символов!</b><br />'; |
break; |
case 2 : |
echo '<b>Такого пользователя не существует!</b><br />'; |
break; |
case 3 : |
echo '<b>Проверочный код введен неверно!</b>'; |
break; |
case 4 : |
echo '<b>Чтобы писать записки, нужно набрать '.$set['posts_pr'].' постов!</b>'; |
break; |
case 5 : |
echo '<b>Запрещено писать пользователям с х-статусом "Не беспокоить"<img src="'.H.'img/online/zaniat.png" alt="" /></b>'; |
break; |
case 6 : |
echo '<b>Вы не можете писать этому пользователю, т.к. находитесь в его черном списке.</b>'; |
break; |
case 7 : |
echo '<b>Этому пользователю писать могут только друзья.</b>'; |
break; |
case 8 : |
echo '<b>Полозователь запретил отправлять ему сообщения.</b>'; |
break; |
} |
|
if ($ver!='wml')echo '<form action="privat?mod='.$mod.'&act=act&'.SID.'" method="post">'; |
|
$to = check($_GET['to']); |
Отредактировано POFIGISST (2011.10.06 16:04)
Ты что не умеешь php валидаторами пользоватся?
http://wapinet.ru/syntax/
TLENS написал:
Ты что не умеешь php валидаторами пользоватся?
http://wapinet.ru/syntax/
я им и пользовался!!! ща я те скрин сделаю!!!! смотри Дим сам скрин(((
Вложения
скринн.PNG
75kb
{1440x900}
[
загрузок: 915]
Отредактировано POFIGISST (2011.10.06 17:05)
ну так мало ли, у тебя в функциях что. ты же их не валидируешь
Нет фгурной скобы.
Я пропустил и ты с ними напортачил.
POFIGISST написал:
if (isset($_GET['err'])) {
switch($_GET['err'])
{
case 1 :
echo '<b>Сообщение должно быть длиннее 5 символов!</b><br />';
break;
case 2 :
echo '<b>Такого пользователя не существует!</b><br />';
break;
case 3 :
echo '<b>Проверочный код введен неверно!</b>';
break;
case 4 :
echo '<b>Чтобы писать записки, нужно набрать '.$set['posts_pr'].' постов!</b>';
break;
case 5 :
echo '<b>Запрещено писать пользователям с х-статусом "Не беспокоить"<img src="'.H.'img/online/zaniat.png" alt="" /></b>';
break;
case 6 :
echo '<b>Вы не можете писать этому пользователю, т.к. находитесь в его черном списке.</b>';
break;
case 7 :
echo '<b>Этому пользователю писать могут только друзья.</b>';
break;
case 8 :
echo '<b>Полозователь запретил отправлять ему сообщения.</b>';
break;
}
}
if ($ver!='wml')echo '<form action="privat?mod='.$mod.'&act=act&'.SID.'" method="post">';
$to = check($_GET['to']);
Отредактировано TLENS (2011.10.06 19:07)
Gemorroj написал:
ну так мало ли, у тебя в функциях что. ты же их не валидируешь
а как их можно валидировать? и вообще есть какая нить прога,чтоб проверяла на ошибки код?)
Добавлено спустя 3 минуты 18 секунд: TLENS написал:Нет фгурной скобы.
Я пропустил и ты с ними напортачил.
POFIGISST написал:
if (isset($_GET['err'])) {
switch($_GET['err'])
{
case 1 :
echo '<b>Сообщение должно быть длиннее 5 символов!</b><br />';
break;
case 2 :
echo '<b>Такого пользователя не существует!</b><br />';
break;
case 3 :
echo '<b>Проверочный код введен неверно!</b>';
break;
case 4 :
echo '<b>Чтобы писать записки, нужно набрать '.$set['posts_pr'].' постов!</b>';
break;
case 5 :
echo '<b>Запрещено писать пользователям с х-статусом "Не беспокоить"<img src="'.H.'img/online/zaniat.png" alt="" /></b>';
break;
case 6 :
echo '<b>Вы не можете писать этому пользователю, т.к. находитесь в его черном списке.</b>';
break;
case 7 :
echo '<b>Этому пользователю писать могут только друзья.</b>';
break;
case 8 :
echo '<b>Полозователь запретил отправлять ему сообщения.</b>';
break;
}
}
if ($ver!='wml')echo '<form action="privat?mod='.$mod.'&act=act&'.SID.'" method="post">';
$to = check($_GET['to']);
а с этой скобкой вообще "Удаленный сервер или файл не найден" Гг
многие IDE это умеют делать.
Gemorroj написал:
многие IDE это умеют делать.
спасибо,запомню это))
Отредактировано POFIGISST (2011.10.06 23:11)
помогите сделать запрос на проверку существования ида в базе? нужно написать запрос на проверку переменной $user['id'], в таблице group_users в поле user_id во всех полях которые там есть,и если где нибудь переменка $user['id'] равна числу которое в поле user_id,то чтоб скрывало ссылку? как такой запрос сделать можно?