PHP.SU

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

Страниц (11): « 1 2 3 [4] 5 6 7 8 9 ... » В конец

> Найдено сообщений: 157
quinlena Отправлено: 30 Ноября, 2012 - 07:29:09 • Тема: Проблемы с $_SERVER["HTTP_REFERER"] • Форум: Вопросы новичков

Ответов: 16
Просмотров: 1081
avtor.fox пишет:
quinlena
Распишите структуру (вход, проверка, редирект). Приведите код входа и прочее. И всё время смотрите входные данные.

Вот код:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. include_once("config.php");
  3. checkLoggedIn("no");
  4. $title="Страница авторизации";
  5. $fname = './tpl/header_cli1.html';
  6. $fcontent = file_get_contents($fname);
  7. echo $fcontent;
  8. function log_append($str, $file){
  9.         global $users;
  10.         $sql = mysql_connect("localhost","base","пароль");
  11.         mysql_select_db("vol_base");
  12.         $message=sprintf("INSERT INTO `logs` (`user`, `file`,`act`)
  13.                          values ('%s','%s','%s')",
  14.                         $_SESSION['login'],
  15.                         $file,
  16.                         $str
  17.                          );
  18.         if(!mysql_query($message,$sql)){
  19.                                                 echo $message;die();
  20.                                 }
  21. }
  22. if(isset($_POST["submit"])) {
  23.   field_validator("login name", $_POST["login"], "alphanumeric", 4, 43);
  24.   field_validator("password", (md5(md5($_POST['password']).$salt)), "string", 4, 43);
  25.   if($messages){
  26.     doIndex();
  27.    
  28.     exit;
  29.   }
  30.  
  31.     if( !($row = checkPass($_POST["login"], (md5(md5($_POST['password']).$salt))) )) {
  32.         $messages[]="Неправильный логин или пароль, попробуйте снова!";
  33.     }
  34.  
  35.   if($messages){
  36.     doIndex();
  37.     exit;
  38.   }
  39.  
  40.   cleanMemberSession($row["login"], $row["pas"],$_SERVER['REQUEST_URI']);
  41.   $str='User Log In!';
  42.   log_append($str,pathinfo(__FILE__,PATHINFO_FILENAME));
  43.    $today=date("Y-m-d");
  44.   $now_date = strtotime(date("d-m-Y")); // Результат 1259614800 секунд
  45.         $future_date = $now_date+432000;
  46.         $holiday=date("Y-m-d",$future_date);
  47.           mysql_query("SET NAMES 'utf8'");
  48.  $hol=mysql_query("SELECT * from `holidays` where `date_hol`BETWEEN '".$today."' AND '".$holiday."'",$link);
  49.  $dep=mysql_query("select `id_dep` from `users_sys` where `login`='".$_SESSION["login"]."'",$link);
  50.  $dep=mysql_fetch_assoc($dep);
  51.  
  52. $today=date("Y-m-d");
  53.   $now_date = strtotime(date("d-m-Y")); // Результат 1259614800 секунд
  54.         $future_date = $now_date+432000;
  55.         $holiday=date("Y-m-d",$future_date);
  56.           //mysql_query("SET NAMES 'cp1251'");
  57.  $hol=mysql_query("SELECT * from `holidays` where `date_hol`BETWEEN '".$today."' AND '".$holiday."'",$link);
  58.  $dep=mysql_query("select `id_dep` from `users_sys` where `login`='".$_SESSION["login"]."'",$link);
  59.  $dep=mysql_fetch_assoc($dep);
  60. $count_mes=0;
  61. if($count_mes==0){
  62.  ?>     <link href="css/jquery.alerts.css" rel="stylesheet" />
  63.         <script type="text/javascript" src="js/jquery.alerts.js"></script><?
  64. while($holi=mysql_fetch_array($hol)){
  65. $kol=date("d-m-Y",strtotime($holi['date_hol']));
  66.  $koli=strtotime($kol);
  67.  
  68.         echo "<meta http-equiv='Content-Type' content='text/html; charset=utf-8' /><script>
  69. alert('До праздника ".$holi['name_hol']." осталось".floor(($koli- $now_date) / 86400 )." дн.');
  70.  
  71. </script> ";
  72. }
  73. }
  74. $ssil=$_POST['ssil'];
  75. if($ssil="http://адрессайта/login.php"){
  76.         //echo $ssil;die();
  77.  echo "<script>document.location.href='index.php';</script>";
  78. }
  79. else{
  80. echo "<script>document.location.href=".$ssil.";</script>";
  81. }
  82.  
  83. }
  84. else {
  85.   doIndex();
  86.  
  87. }
  88.  
  89. function doIndex() {
  90.   global $messages;
  91.   global $title;
  92. ?>
  93. <html>
  94. <head>
  95. <title><?PHP print $title; ?></title>
  96. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  97. </head>
  98. <body>
  99.         <div id="cont">
  100.                 <div id="conteiner"><div id="sign">
  101. <h3><?PHP print $title; ?></h3>
  102. <?PHP
  103. if($messages) { displayErrors($messages); }
  104. ?>
  105. <form action="<?PHP print $_SERVER["PHP_SELF"]; ?>" method="POST">
  106. <table>
  107. <tr><td>Логин:</td><td><input type="text" name="login"
  108. value="<?PHP print isset($_POST["login"]) ? $_POST["login"] : "" ; ?>"
  109. maxlength="15"></td></tr>
  110. <tr><td>Пароль:</td><td><input type="password" name="password" value="" maxlength="15"></td></tr><br></br>
  111. <tr align="center"><td>&nbsp;</td><td><input name="submit" type="submit" class="submit" value="Вход"></td></tr>
  112. <td><input type="hidden" name="ssil" value="<? print $_SERVER["HTTP_REFERER"];?>"></td>
  113. </table>
  114. </form>
  115. </div>
  116. </div>
  117. </div>
  118. </body>
  119. </html>
  120. <?PHP
  121.  
  122. }
  123. ?>
  124. <style>
  125.     #conteiner{
  126.         position: relative;
  127.         width: 500px;
  128.         height: 300px;
  129.         background: url(/images/content_bg.png);
  130.         margin: auto;
  131.         top: 100px;
  132.         border-radius: 10px 10px 10px 10px;
  133. -moz-border-radius: 10px 10px 10px 10px;
  134. -khtml-border-radius:10px 10px  10px 10px;
  135.  box-shadow: 0px 1px 10px #010101;
  136.  padding: 20px;
  137.     }
  138.     #sign{
  139.         margin: auto;
  140.         position: relative;
  141.         width: 300px;
  142.        
  143.     }
  144. </style>

(Добавление)
avtor.fox пишет:
quinlena
Распишите структуру (вход, проверка, редирект). Приведите код входа и прочее. И всё время смотрите входные данные.

И еще, после нажатия на "вход" почему-то в $_SERVER["HTTP_REFERER"] записывается login.php(((
Может можно $_SERVER["HTTP_REFERER"] чем-то заменить?
quinlena Отправлено: 30 Ноября, 2012 - 06:59:22 • Тема: Проблемы с $_SERVER["HTTP_REFERER"] • Форум: Вопросы новичков

Ответов: 16
Просмотров: 1081
dubasua пишет:
А исходный код смотрели. Что там выводит?

Перед тем, как жму "Вход" в поле сохраняется нужный адрес
quinlena Отправлено: 30 Ноября, 2012 - 06:54:47 • Тема: Проблемы с $_SERVER["HTTP_REFERER"] • Форум: Вопросы новичков

Ответов: 16
Просмотров: 1081
dubasua пишет:
$_SERVER["HTTP_REFERER"] не будет работать в include, только на первой странице. Если Вы подключаете файл include, и там вызываете $_SERVER["HTTP_REFERER"], он будет пустой.

Файл не подключается include! Это просто входная страница, и в ней это поле.
quinlena Отправлено: 30 Ноября, 2012 - 06:36:40 • Тема: Проблемы с $_SERVER["HTTP_REFERER"] • Форум: Вопросы новичков

Ответов: 16
Просмотров: 1081
Всем здравствуйте! Проблема состоит в том, что на странице login.php создаю скрытое поле:
CODE (html):
скопировать код в буфер обмена
  1. <td><input type="hidden" name="ssil" value="<? print $_SERVER["HTTP_REFERER"];?>"></td>


Оно запоминает предыдущую страницу. Потом:
PHP:
скопировать код в буфер обмена
  1. $ssil=$_POST['ssil'];
  2. if($ssil="http://адрессайта/login.php"){
  3.  echo "<script>document.location.href='index.php';</script>";
  4. }
  5. else{
  6. echo "<script>document.location.href=".$ssil.";</script>";
  7. }

Но почему-то условие не срабатывает и постоянно переходит на index.php
В чем может быть проблема?
quinlena Отправлено: 24 Октября, 2012 - 06:13:57 • Тема: Кнопки +/- и дерево • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 939
Zuldek пишет:
Консоль ошибок что вам говорит

Ошибок нет
quinlena Отправлено: 23 Октября, 2012 - 09:21:38 • Тема: Кнопки +/- и дерево • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 939
Имеется раскрывающееся дерево, есть кнопочки плюс/минус, отдельно меняются плюс на минус и наоборот. Но вот при этом содержимое не показывается. Вот код, функция:
PHP:
скопировать код в буфер обмена
  1.  
  2.   function tree_print(&$a_tree,$id_par_service=0)
  3.   {
  4.     //условие завершения рекурсии
  5.     //Условие, при котором функция никогда не вызывает сама себя
  6.  
  7.     //функция empty() - вернет ложь во всех нужных нам случаях:
  8.     // - элемент массива не определен
  9.     // - элемент массива определен, но является пустым массивом
  10.     if(empty($a_tree[$id_par_service])) {
  11.         return;}
  12.  
  13.     echo "<ul class='open_list' ><div class='close'>";
  14.    
  15.  
  16.     for($i=0;$i<count($a_tree[$id_par_service]);$i++)
  17.     {     $style=mysql_query("select * from `dir_service` where `id_service`='".$a_tree[$id_par_service][$i]['id_service']."'");
  18.           $style=mysql_fetch_assoc($style);
  19.       if ($style['parent']==1){
  20.       echo "<li><i class='plus'>+</i><label><INPUT TYPE=RADIO  NAME=parent  VALUE=".$a_tree[$id_par_service][$i]['id_service']."><span >".$a_tree[$id_par_service][$i]['name_service']."<label></span>";
  21.       }
  22.       //onclick='tgg_parent(this);'
  23.       if ($style['parent']==0){
  24.       echo "<li ><i class='minus'>-</i><INPUT TYPE=RADIO  NAME=parent  VALUE=".$a_tree[$id_par_service][$i]['id_service']." ><span >".$a_tree[$id_par_service][$i]['name_service']."</span>";
  25.       }
  26.      
  27.       //рекурсивный вызов - список всех дочерних элементов нужно вставить
  28.       //  именно в этом месте:
  29.       //  <li>название
  30.       //     ** тут список дочерних элементов, он показывается рекурсивным вызовом **
  31.       //  </li>
  32.       tree_print($a_tree,$a_tree[$id_par_service][$i]['id_service']);
  33.       echo "</li>";
  34.     }
  35.     echo "</div></ul>";
  36.    
  37.   }
  38.  
  39.  

Собственно js-код
CODE (javascript):
скопировать код в буфер обмена
  1. $(document).ready(function(){
  2.  
  3.         jQuery('.open_list div').slideUp();
  4.     jQuery('.open_list i').click(function(){
  5. if(!jQuery(this).parent().children('div')){jQuery(this).className()='minus';}else{jQuery(this).toggleClass('plus minus');}
  6. jQuery(this).parent().children('div').slideToggle();
  7. jQuery(this).parent().children('div').toggleClass('close open');
  8. if(jQuery(this).hasClass('plus')){jQuery(this).text('+');}else{jQuery(this).text('-');}
  9.  
  10. });
  11.  
  12. })

Ну и css
CODE (htmlphp):
скопировать код в буфер обмена
  1. .ul.open_list li {margin: 0px; background: none;}
  2. .open_list li i {color: #f00;}
  3. .itemBody .open_list li .close {display: none;}
  4. .itemBody .open_list li .open{display: block;}
quinlena Отправлено: 25 Сентября, 2012 - 06:48:32 • Тема: Восходящая рекурсивная функция • Форум: Вопросы новичков

Ответов: 4
Просмотров: 194
armancho7777777 пишет:
quinlena пишет:
Надеюсь понятно изложила

Не понятно )
Какие записи, какие родители ?

Смотрите. Есть дерево, верхний элемент А, у него дочерний эл А1, у А1 - дочерний элемент А2. Так вот, как выбрать всех (А1 и А2), у которых родитель А.
(Добавление)
Проблема решена. Тему можно закрыть
quinlena Отправлено: 25 Сентября, 2012 - 06:39:01 • Тема: Восходящая рекурсивная функция • Форум: Вопросы новичков

Ответов: 4
Просмотров: 194
Добрый день! Что-то не могу понять, как осуществить восходящее дерево. Т.е. мне нужно вот что: есть родитель - А. Мне необходимо вывести все записи, у которых родитель А. Причем не обязательно, что это будет непосредственное вхождение, возможно, что сначала у записи будет родитель В, а у В родитель А. Надеюсь понятно изложила...Помогите с алгоритмом, пожалуйста...
quinlena Отправлено: 05 Сентября, 2012 - 09:15:29 • Тема: Как сделать страницы у таблицы? • Форум: Вопросы новичков

Ответов: 2
Просмотров: 119
Если хочешь постраничный вывод, то через плагины jquery можно.К tablesorter идет pager, так вон он и отвечает за постраничный вывод.
quinlena Отправлено: 31 Августа, 2012 - 12:20:57 • Тема: Можно ли в ссылку вставить массив? • Форум: Вопросы новичков

Ответов: 12
Просмотров: 367
armancho7777777 пишет:
Я на счёт этого ...
EuGen пишет:
Если нужен исходный массив, то это несложно:

Ведь http_build_query сформирует и вернёт эту часть url строки:
param0=value0&m1=value1&m2=value2

Что вы спорите? Я сделала вот так:
PHP:
скопировать код в буфер обмена
  1. for ($i=0; $i<$size; $i++){
  2.       $ret=$_REQUEST[$i];
  3.       $sql=mysql_query("select * from `clients` where `id_client`='".$ret."'");
  4.       $sql=mysql_fetch_array($sql);
  5.      
  6.         $blabla.=implode('',array($sql['name_client']));
  7.                 if($i < $size-1){
  8.                         $blabla .= ",   ";
  9. }
  10.      
  11. }
quinlena Отправлено: 31 Августа, 2012 - 12:17:55 • Тема: Можно ли в ссылку вставить массив? • Форум: Вопросы новичков

Ответов: 12
Просмотров: 367
EuGen пишет:
armancho7777777 пишет:
А почему не ...

Потому как в условии вовсе не сказано, что разбирается строка, которая является $_SERVER['QUERY_STRING'] (то есть GET-данные для текущего запроса). Быть может, автор темы имеет ввиду задачу по анализу некоторого текстового содержимого.

Уже все сделала) Я пытаюсь сделать рассылку сообщения, но почему-то mail() не срабатывает...
quinlena Отправлено: 31 Августа, 2012 - 11:16:14 • Тема: Можно ли в ссылку вставить массив? • Форум: Вопросы новичков

Ответов: 12
Просмотров: 367

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

Решила проблему по-другому, извлекла все с помощью цикла.
quinlena Отправлено: 31 Августа, 2012 - 09:19:16 • Тема: Можно ли в ссылку вставить массив? • Форум: Вопросы новичков

Ответов: 12
Просмотров: 367
[quote=EuGen]http://php.su/functions/?http_build_query
?[/quote]
Кажется оно)) Спасибо))
(Добавление)
[quote=EuGen][/quote]
А обратно как ее расшифровать, не подскажете?
quinlena Отправлено: 31 Августа, 2012 - 09:12:26 • Тема: Можно ли в ссылку вставить массив? • Форум: Вопросы новичков

Ответов: 12
Просмотров: 367
Звучит страшно, но знаю, что нельзя массив в ссылку вставить, но как правильно сформировать ссылку, если не знаешь количество параметров? Количество параметров зависит от количества выбранных чекбоксов...
quinlena Отправлено: 29 Августа, 2012 - 11:14:44 • Тема: Hide/show jquery в зависимости от условия • Форум: JavaScript & VBScript

Ответов: 9
Просмотров: 2874
armancho7777777 пишет:
Радость
Короче...
CODE (javascript):
скопировать код в буфер обмена
  1. $('.element').each(function() {
  2.     if(!$(this).find(':checkbox').is(':checked'))
  3.         $(this).css('display','none');
  4. });

Спасибо!

Страниц (11): « 1 2 3 [4] 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB