PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (2): [1] 2 »

> Найдено сообщений: 30
Sem2001 Отправлено: 23 Мая, 2017 - 13:07:25 • Тема: Определение стартовой страницы • Форум: Вопросы новичков

Ответов: 0
Просмотров: 104
Добрый день.
Подскажите как можно определить стартовую страницу (index.html, index.php, ...) стороннего сайта. На пример входные данные http://yandex[dot]ru на выходе http://yandex.ru/index.html
Sem2001 Отправлено: 07 Июля, 2016 - 06:23:34 • Тема: Всплывающее окно • Форум: HTML, Дизайн & CSS

Ответов: 0
Просмотров: 839
Доброе всем утро.
Знатокам прошу поделить опытом в создании всплывающего меню. Но от обычных окон и методов отличие в том, что окно может отображаться даже при свернутом родительском окне браузера. В качестве примера можно привести веб версию почтового клиента outlook, то есть окно свернуто, но при поступлении почты из трея в нижнем правом углу возле часов выходит сообщение в виде поднимающегося окна ~400х200px с уведомлением. Как такое можно реализовать?
(Добавление)
Решение найдено. Тема закрыта.
Sem2001 Отправлено: 09 Марта, 2016 - 14:35:07 • Тема: Получить имя страницы • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 563
Ну это костыль, к тому же не красивый, хотя как вариант...
Так же вариант получать URL страницы и сравнивать его в условии, он тоже будет уникальный, но тоже не красивое решение
Sem2001 Отправлено: 09 Марта, 2016 - 13:02:13 • Тема: Получить имя страницы • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 563
Добрый день.
Помогите пожалуйста с кодом получения имени html страницы (php скрипта) который вызвал метод onload и ему подобные методы.
То есть есть допустим 4 страницы к каждой из них подключен файл main.js, в этом файле есть функция onload (либо $(function(e)....), как в теле этой функции определить какая из этих 4х страниц его вызвала?
Sem2001 Отправлено: 20 Января, 2016 - 06:56:51 • Тема: Ошибка в mysql_free_result() • Форум: Вопросы новичков

Ответов: 1
Просмотров: 145
Доброе утро.
При выполнении команды mysql_free_result() выходит сообщение mysql_free_result() expects parameter 1 to be resource, boolean given in...

Объясните что делаю не так?

код
--------------------------------
$SQL = "UPDATE `users` SET `user_name`='" . $username . "',`user_password`='" . $password . "', `disable`=$disable, WHERE `ind`=" . $userid;

$connection = mysql_connect(server, user, password) ;
mysql_select_db(db);
$sql_result = mysql_query($SQL);

echo $sql_result; //удачное выполнение, возвращает 1 (true)

mysql_free_result($sql_result); //ТУТ ОШИБКА
mysql_close($connection);
-------------------------------- ------
Sem2001 Отправлено: 21 Августа, 2015 - 09:25:34 • Тема: Проблема с почтой • Форум: Работа с сетью

Ответов: 0
Просмотров: 1048
Добрый всем день.
Имеется проблема с отправкой почты с сервера smtp.timeweb.ru. Перебрал кучу скриптов найденных в Интернет. Все сваливаются с ошибкой на этом куске кода:

fputs($socket, "AUTH LOGIN\r\n");
if (!server_parse($socket, "334", __LINE__)) {
if ($config['smtp_debug']) echo '<p>Не могу найти ответ на запрос авторизаци.</p>';
fclose($socket);
return false;
}

Логин, пароль перепроверял, в почту с веб-клиента вхожу, с других почтовых серверов почта доставляется, переадресация так же работает.
Что не так делаю?

Весь скрипт вот:
<?php

$config['smtp_username'] = 'пользователь@домен.ru'; //Смените на имя своего почтового ящика.
$config['smtp_port'] = '25'; // Порт работы. Не меняйте, если не уверены.
$config['smtp_host'] = 'smtp.timeweb.ru'; //сервер для отправки почты(для наших клиентов менять не требуется)
$config['smtp_password'] = '12345678'; //Измените пароль
$config['smtp_debug'] = true; //Если Вы хотите видеть сообщения ошибок, укажите true вместо false
$config['smtp_charset'] = 'Windows-1251'; //кодировка сообщений. (или UTF-8, итд)
$config['smtp_from'] = 'Your Name'; //Ваше имя - или имя Вашего сайта. Будет показывать при прочтении в поле "От кого"

function smtpmail($mail_to, $subject, $message, $headers='') {
global $config;
$SEND = "Date: ".date("D, d M Y H:i:s") . " UT\r\n";
$SEND .= 'Subject: =?'.$config['smtp_charset'].'?B?'.base64_encode($subject)."=?=\r\n";
if ($headers) $SEND .= $headers."\r\n\r\n";
else
{
$SEND .= "Reply-To: ".$config['smtp_username']."\r\n";
$SEND .= "MIME-Version: 1.0\r\n";
$SEND .= "Content-Type: text/plain; charset=\"".$config['smtp_charset']."\"\r\n";
$SEND .= "Content-Transfer-Encoding: 8bit\r\n";
$SEND .= "From: \"".$config['smtp_from']."\" <".$config['smtp_username'].">\r\n";
$SEND .= "To: $mail_to <$mail_to>\r\n";
$SEND .= "X-Priority: 3\r\n\r\n";
}



$SEND .= $message."\r\n";
if( !$socket = fsockopen($config['smtp_host'], $config['smtp_port'], $errno, $errstr, 30) ) {
if ($config['smtp_debug']) echo $errno."&lt;br&gt;".$errstr;
return false;
}

if (!server_parse($socket, "220", __LINE__)) return false;

fputs($socket, "HELO " . $config['smtp_host'] . "\r\n");
if (!server_parse($socket, "250", __LINE__)) {
if ($config['smtp_debug']) echo '<p>Не могу отправить HELO!</p>';
fclose($socket);
return false;
}

fputs($socket, "AUTH LOGIN\r\n");
if (!server_parse($socket, "334", __LINE__)) {
if ($config['smtp_debug']) echo '<p>Не могу найти ответ на запрос авторизаци.</p>';
fclose($socket);
return false;
}


fputs($socket, base64_encode($config['smtp_username']) . "\r\n");
if (!server_parse($socket, "334", __LINE__)) {
if ($config['smtp_debug']) echo '<p>Логин авторизации не был принят сервером!</p>';
fclose($socket);
return false;
}

fputs($socket, base64_encode($config['smtp_password']) . "\r\n");
if (!server_parse($socket, "235", __LINE__)) {
if ($config['smtp_debug']) echo '<p>Пароль не был принят сервером как верный! Ошибка авторизации!</p>';
fclose($socket);
return false;
}
fputs($socket, "MAIL FROM: <".$config['smtp_username'].">\r\n");
if (!server_parse($socket, "250", __LINE__)) {
if ($config['smtp_debug']) echo '<p>Не могу отправить комманду MAIL FROM: </p>';
fclose($socket);
return false;
}
fputs($socket, "RCPT TO: <" . $mail_to . ">\r\n");

if (!server_parse($socket, "250", __LINE__)) {
if ($config['smtp_debug']) echo '<p>Не могу отправить комманду RCPT TO: </p>';
fclose($socket);
return false;
}
fputs($socket, "DATA\r\n");

if (!server_parse($socket, "354", __LINE__)) {
if ($config['smtp_debug']) echo '<p>Не могу отправить комманду DATA</p>';
fclose($socket);
return false;
}
fputs($socket, $SEND."\r\n.\r\n");

if (!server_parse($socket, "250", __LINE__)) {
if ($config['smtp_debug']) echo '<p>Не смог отправить тело письма. Письмо не было отправленно!</p>';
fclose($socket);
return false;
}
fputs($socket, "QUIT\r\n");
fclose($socket);
return TRUE;
}
function server_parse($socket, $response, $line = __LINE__) {
global $config;
while (substr($server_response, 3, 1) != ' ') {
if (!($server_response = fgets($socket, 256))) {
if ($config['smtp_debug']) echo "<p>Проблемы с отправкой почты!</p>$response<br>$line<br>";
return false;
}
}
if (!(substr($server_response, 0, 3) == $response)) {
if ($config['smtp_debug']) echo "<p>Проблемы с отправкой почты!</p>$response<br>$line<br>";
return false;
}
return true;
}








$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset="windows-1251"' . "\r\n";
$headers .= 'From: vasya@pupkin.ru'. "\r\n";
smtpmail('пользователь@домен.ru', 'Тема письма', 'Текст письма', $headers);
?>
Sem2001 Отправлено: 12 Августа, 2015 - 08:08:29 • Тема: Непонятное поведение скролла • Форум: HTML, Дизайн & CSS

Ответов: 0
Просмотров: 564
Добрый день.
Столкнулся с такой проблемой. На странице имеется несколько элементов ввода которые не входят в размер экрана в результате отображается прокрутка, так же на этой странице есть блок с чекбоксами, у блока свойство overflow также auto. Все отображается корректно, но когда отмечаю чекбоксы которые в центре блока срабатывает автоматическая прокрутка сначала в блоке, а если выделяемый чекбокс в блоке последний, то срабатывает прокрутка самой страницы. То есть выделенный чекбокс фокусируется и я так понимаю выравнивается по верху родительского окна. Ни какого кода выполняющего подобные действия на странице не реализовано. Возможно это сделано в библиотеке jQuery по умолчанию. Вопрос: можно ли как-то контролировать такое поведение элементов формы, или вовсе отключить? Кстати, пробовал ставить как всем, так и отдельным элементам страницы overflow: hidden, при этом бегунок прокрутки исчезает, но сама прокрутка отрабатывает
(Добавление)
Вопрос решен отключением /* position: absolute; */ у свойств чекбокса.
Всем кто задумался спасибо!
Sem2001 Отправлено: 06 Августа, 2015 - 16:25:36 • Тема: Изменение цветовой схемы сайта. • Форум: HTML, Дизайн & CSS

Ответов: 5
Просмотров: 1260
IllusionMH пишет:
Sem2001, как сказал DeepVarvar можно рсазу подменять ссылку дял стилей, или как варинат - делать 1 общий класс на html отвечающий за цветовую и его сразу отдавать вместе с html с сервера, без участия JS.
в крайнем случае если нет контроля над сервером: общий класс вешать на html и в блоке скриптов в head менять этот класс


DeepVarvar пишет:

Во, советчики...
ТС -- подменяй стилевую ссылку в хедере страницы, а не классы у тысячи элементов.


Спасибо! Буду пробовать с подменой в head.
Думаю гугл подскажет как Улыбка
Sem2001 Отправлено: 06 Августа, 2015 - 12:37:25 • Тема: Изменение цветовой схемы сайта. • Форум: HTML, Дизайн & CSS

Ответов: 5
Просмотров: 1260
andrewkard пишет:
Потому что скрипт ждет, пока страница загрузится полностью ($(document).ready), а потом уже меняет.
Если Вы хотите, что бы не было видно - при генерации страницы ставьте требуемый класс, не меняйте его js.


Дело в том, что смена схемы идет динамически в зависимости от выбора ее пользователем в настройках страницы. Думаю скрыть элементы а после замены класса отобразить на экране. Вот думаю есть ли другие варианты без изобретения костылей?
Sem2001 Отправлено: 06 Августа, 2015 - 12:08:23 • Тема: Изменение цветовой схемы сайта. • Форум: HTML, Дизайн & CSS

Ответов: 5
Просмотров: 1260
Добрый день.
Столкнулся со следующей проблемой.
Имеется страница с множеством элементов, у каждого элемента один и тот же класс со цветовыми настройками. По умолчанию элементы имеют синий или его оттенки цвет.
В обработчике $(document).ready идет смена стиля (замена класса) одного на другой (скажем зеленую схему). Все отлично работает, НО происходит быстрое мелькание синей схемы и ее замены на зеленую. То есть сперва отрисовывается схема по умолчанию, потом та на которую меняем. Вопрос можно заменить схему (один класс на другой) до его отрисовки?
Sem2001 Отправлено: 05 Августа, 2015 - 11:54:42 • Тема: Почему не работает сессия? • Форум: Вопросы новичков

Ответов: 7
Просмотров: 705
andrewkard пишет:
Уберите и в первом Улыбка.
Выведите после занесения в сессию в первом файле:


и так же в начале второго.



Убрал везде.
Команда "print_r($_SESSION);" во втором файле выводит: Array ( )
А если из третьего во второй (где авторизация), то: Array ( [username] => ИМЯ. [organization] => ОРГАНИЗАЦИЯ)
(Добавление)
еще интересный момент, если вначале сделать переход из файла 3 в файл 2 (работающий вариант), то потом при переходе из файла 1 в файл 2 (не работающий вариант) тоже работает и дает результат: Array ( [username] => Гость [organization] => Демо )
(Добавление)
Не знаю уже на что грешить. Все перепробовал, истина где-то на поверхности...
Значения в переменные сессии заносятся в обоих случаях одиково $_SESSION['username']="Гость", переход на эти страницы так же одинаковый location.href = "2 файл". Единственное отличие работающего кода, от не работающего это в одном случае идет проверка введенных данных пользователем, а в не рабочем эти данные уже жестко прописаны в скрипте.
(Добавление)
вот функция перехода к файлу №2


function StartTest(obj)
{
num = obj.getAttribute('data-testid');
if (obj.getAttribute('data-demo')!=='true')
{
//ЗДЕСЬ ПРОВЕРКА ВВЕДЕННЫХ ДАННЫХ С ДАННЫМИ В БАЗЕ
$.ajax({
type: 'POST',
url: 'command.php',
data: {
'command': 'starttest',
'testid': num
},
success: function(data) {
var test_id = sessionStorage.getItem('test_id');
if ( (test_id == null) || (test_id != num) )
sessionStorage.removeItem('remaining');
sessionStorage.setItem('restart', 1);
location.href = 'test.php?id=' + num+'&h='+data+'&public='+obj.getAttribute('data-public'); 1ый вариант перехода к файлу2
}
});
}
else
{
//ЗДЕСЬ НЕТ ПРОВЕРКИ А ДАННЫЕ ЖЕСТКО ПРОПИСАНЫ
sessionStorage.removeItem('remaining');
sessionStorage.setItem('restart', 1);
location.href = 'test.php?id=' + num+'&demo='+obj.getAttribute('data-demo'); 2ый вариант перехода к файлу2
}

}


в файле command.php нет никаких манипуляций с сессией, только сверяет данные
Sem2001 Отправлено: 05 Августа, 2015 - 11:24:56 • Тема: Почему не работает сессия? • Форум: Вопросы новичков

Ответов: 7
Просмотров: 705
andrewkard пишет:
Во втором файле измените if(session_id() == '') session_start(); на session_start();


Убрал. Тоже самое.
Должен ли создаваться файл со вторым session_id? Как вообще возможно создать второй session_id не закрывая первый, и если я правильно понимаю при закрытии сессии файл должен удалиться. Получается что сайт работает с двумя сессиями?
Sem2001 Отправлено: 05 Августа, 2015 - 11:04:40 • Тема: Почему не работает сессия? • Форум: Вопросы новичков

Ответов: 7
Просмотров: 705
Мелкий пишет:
Почему вы сессию стартуете, только если SID'а пустой?


Пробовал без if(session_id() == ''), результат тот же.

Что самое интересное есть 3й файл с аналогичным кодом, но с проверкой введенных данных и в случае совпадения присваивания значения тем же самым переменным значения и переход опять же на файл 2. и он работает!
пример 3го файла

ajax
....
$user_password = GetUserPassword($login, $organization);
if ($password == $user_password)
{
$_SESSION['username']=$login;
$_SESSION['organization']=$organization;
...

js
переход на 2й файл
Sem2001 Отправлено: 05 Августа, 2015 - 10:41:54 • Тема: Почему не работает сессия? • Форум: Вопросы новичков

Ответов: 7
Просмотров: 705
Добрый день. Подскажите что не так.
Переменные в одном случае видны из разных скриптов, в другом нет.
вот вырезка
1. файл
<?php
if(session_id() == '') session_start();

ini_set('display_errors',1);
error_reporting(E_ALL);

$UserName = "Гость";
$Organization = "Демо";

$_SESSION['username']= $UserName;
$_SESSION['organization']= $Organization;
....
кнопка с переходом на 2й файл
....
?>

2. файл
<?php
if(session_id() == '') session_start();

ini_set('display_errors',1);
error_reporting(E_ALL);

include ("functions.php");

$UserName = $_SESSION['username'];
$Organization = $_SESSION['organization'];
....

?>

в итоге
Notice: Undefined index: username in ..../test.php on line 13
Notice: Undefined index: organization in ..../test.php on line 14

Смотрел папку куда сохраняется сессии (установил свой путь в обеих файлах), почему-то создаются 2! файла с ID сессией, в обоих есть переменные username и organization. Почему создается второй файл не понятно, или так должно быть?
(Добавление)
Если что, то в файле functions.php не происходит уничтожения сессии, только набор функций.
Sem2001 Отправлено: 28 Июля, 2015 - 11:16:37 • Тема: Не получается сделать отступ • Форум: HTML, Дизайн & CSS

Ответов: 3
Просмотров: 916
Viper пишет:
Переделайте на списки(ol/ul) и будет вам отступ.


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

Страниц (2): [1] 2 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB