За последние 24 часа нас посетили 17340 программистов и 1217 роботов. Сейчас ищут 1552 программиста ...

Мои ошибки (исправляем вместе)

Тема в разделе "Вопросы от блондинок", создана пользователем ponchic, 17 мар 2015.

  1. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Какая-то фигня
    не хочет скрипт првильно работать, как вхожу так сразу появляется окно что сайт содеражит циклические переадресации.
    пс> пароль 12345
    login.php:
    Код (Text):
    1.  
    2. <?PHP
    3. session_start();
    4. if($_SESSION['admin']){
    5.         header("Location: admin.php");
    6.        
    7. }
    8. $p = '827ccb0eea8a706c4c34a16891f84e7b';
    9.  
    10.  
    11.  
    12. $pass = trim($_GET['pass']);
    13. if($p == md5($pass)){
    14.         $_SESSION['admin'] = $p;
    15.     echo '<center><h1>Вход выполнен! Идёт переадресация...</h1> </center>';
    16.          header("Location: /admin.php");
    17.         /*echo '<!DOCTYPE HTMl><html><head>
    18. <meta http-equiv="refresh" content="3;URL=/admin.php" />
    19. </head> </html>';
    20. echo "<script type='text/javascript'>
    21. window.location = '/admin.php'
    22. </script>
    23. <noscript>У вас выключен JavaScript! Переадресация невозможна!</noscript>"; */
    24. exit;
    25. }else{
    26.  
    27. if($pass){
    28.         $badpass = 'Invalid password!';
    29. }
    30. echo "<!DOCTYPE HTMl>
    31. <html>
    32. <head>
    33.    <meta http-equiv='content-type' content='text/html' />
    34.    <meta name='author' content='' />
    35.    <title>Админ панель редирект центра</title>
    36. <link rel='stylesheet' type='text/css' href='style.css' />
    37.  
    38.  </style>
    39. </head>
    40. <body style='height:100%;'><div class='fon_scroll'";
    41.  
    42. echo '<p> </p><center><form class="form-container" method="get" action="login.php">
    43. <div class="form-title"><h2>Sign up</h2></div>
    44. <font color="red" align="center">' . $badpass . ' </font>
    45. <div class="form-title">Password:</div>
    46. <input class="form-field" type="password" name="pass" /><div class="submit-container">
    47. <input class="submit-button" type="submit" value="Submit" />
    48. </div>
    49. </form></center>';
    50. }
    51.  
    52.  
    53. ?>
    admin.php:
    Код (Text):
    1.  
    2. <?PHP
    3. session_start();
    4.  //Вход
    5. if($_GET['logout'] == '1'){
    6.         unset($_SESION['admin']);
    7.         session_destroy();
    8.         header("Location: login.php");
    9.        
    10. }
    11.         $p = '827ccb0eea8a706c4c34a16891f84e7b';
    12.  
    13.  
    14.  
    15.  if($_SESION['admin'] != $p)
    16. {
    17.  header("Location: /login.php");
    18. echo '<!DOCTYPE HTMl><html><head>
    19. <meta http-equiv="refresh" content="0;URL=/login.php" />
    20. </head> </html>';
    21. echo "<script type='text/javascript'>
    22. window.location = '/login.php'
    23. </script>
    24. <noscript>У вас выключен JavaScript! Переадресация невозможна!</noscript>";
    25.         exit();
    26.        
    27. }else{
    28. echo 'Это админка типо';
    29.  
    30.  
    31. }
    32. ?>
    Помогите христа ради
    return 0;
    exit;
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Как там? Лучше дать удочку и научить рыбачить, чем один раз покормить рыбой.

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

    Используй отладку
    http://phpfaq.ru/debug
    https://netbeans.org/kb/docs/php/debugging_ru.html

    удали header (замени на echo 'tut_bil_header';) и посмотри что без него будет выводить и сообрази.
    Думаю просто логику нарушил.
     
  3. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    спосиба
    Код (Text):
    1. <?php
    2. @session_start();
    3.  
    4. $p = '827ccb0eea8a706c4c34a16891f84e7b';
    5.  
    6. if($_SESSION['admin'] != $p){ //ПРОВЕРЯЕМ НЕ АВТОРИЗОВАН ЛИ ЮЗЕР, ЕСЛИ ДА ТО ВЫВОДИМ ФОРМУ ВХОДА
    7.    
    8.     echo 'надо войти';
    9. }
    10.  
    11. if(md5($_GET['l']) == $p){ //смотрим ЧТО В МАССИВЕ l , усли TRUE то авторизуем
    12.    
    13. $_SESSION['admin'] = $p;
    14. echo '<meta http-equiv="refresh" content="1;URL=session.php"> ';
    15. }
    16.  
    17.  
    18. if($_GET['l'] == 'logout'){  //ЕСЛИ L == LOGOUT ТО УДАЛЯЕМ СЕССИЮ
    19.    
    20. unset($_SESSION['admin']);
    21.  
    22. echo '<meta http-equiv="refresh" content="1;URL=session.php"> <h1> ВЫХОДИМ...</h1> ';
    23.  
    24.  
    25. }
    26.  
    27.  
    28.  
    29. if($_SESSION['admin'] == $p){
    30.    
    31.     echo '<h1> Да блеять капец!!!!!!!!  ';
    32.    
    33.    
    34. }
    35.  
    36.  
    37.  
    38.  
    39.  
    40.  
    41.  
    42.  
    43.  
    44.  
    45. ?>
     
  4. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Народ! входит всеголишь на секунду! А когда делал тест то всё нормально было! Что делать, заипался уже.
    pass.php: (пароль: 12345)
    Код (Text):
    1. <?php
    2. $p = '827ccb0eea8a706c4c34a16891f84e7b';
    3.  
    4. ?>
    exchange.php:
    Код (Text):
    1.  
    2. <!DOCTYPE HTMl>
    3. <html>
    4. <head>
    5.     <meta http-equiv='content-type' content='text/html' />
    6.     <meta name='author' content='' />
    7.     <title>Админ панель редирект центра</title>
    8. <link rel='stylesheet' type='text/css' href='style.css' />
    9.  
    10.   </style>
    11. </head>
    12. <body style='height:100%;'><div class='fon_scroll'>
    13. <a name='top'></a> <p align='right'> <a href='exchange.php' title='Сменить пароль'><button> Сменить пароль </button></a> <a href='admin.php?l=logout' title='Выйти'> <button> Выход -> </button></a></p>
    14. <center>
    15. <form>
    16.  
    17.  
    18. <p> </p><center><form class="form-container" method="get" action="">
    19. <div class="form-title"><h2>Password Change</h2></div>
    20. <font color="red" align="center"></font>
    21. <div class="form-title">Old password:</div>
    22. <input class="form-field" type="password" name="old" /><br />
    23. <div class="form-title">New password:</div>
    24. <input class="form-field" type="password" name="new" /><br />
    25. <div class="form-title">Enter the new password again:</div>
    26. <input class="form-field" type="password" name="new2" /><br />
    27. <div class="submit-container">
    28. <input class="submit-button" type="submit" value="Submit" />
    29. </div>
    30.  
    31.  
    32.  
    33.  
    34.  
    35. </form>
    36. </center>
    37. <?php
    38.  
    39. include('pass.php');
    40. $old = trim($_GET['old']);
    41. $new = trim($_GET['new']);
    42. $new2 = trim($_GET['new2']);
    43.  
    44.  
    45.  
    46. if(md5($_GET['old']) == $p){
    47.    
    48.     if($p != $new){
    49.        
    50.         if($new == $new2){
    51.          $str = file_get_contents ( 'pass.php' );
    52.  
    53. $str = str_replace ( $p, md5($new), $str );
    54. file_put_contents ( 'pass.php', $str );
    55. echo 'Пароль изменён, выйдите и войдите с новым паролем!';
    56.         }else{
    57.             echo '<font color="red">Новые пароли не совпадают!</font>';
    58.         }
    59.        
    60.     }else{
    61.         echo '<font color="red">Старый и новый пароль совпадают!</font>';
    62.     }
    63.    
    64.    
    65.  
    66. }else{
    67.    
    68.     echo '<font color="red">Вы ввели неправильный действующий пароль!</font>';
    69. }
    70.  
    71.  
    72.  
    73.  
    74. ?>
    75.  
    76. </form></center>
    77.  
    78.  
    79.  
    80.  
    81. </body>
    admin.php:
    Код (Text):
    1.  
    2. <!DOCTYPE HTMl>
    3. <html>
    4. <head>
    5.     <meta http-equiv='content-type' content='text/html' />
    6.     <meta name='author' content='' />
    7.     <title>Админ панель редирект центра</title>
    8. <link rel='stylesheet' type='text/css' href='style.css' />
    9.  
    10.   </style>
    11. </head>
    12. <body style='height:100%;'><div class='fon_scroll'>
    13. <a name='top'></a> <p align='right'> <a href='exchange.php' title='Сменить пароль'><button> Сменить пароль </button></a> <a href='admin.php?l=logout' title='Выйти'> <button> Выход -> </button></a></p>
    14. <center>
    15. <form>
    16.  
    17.  
    18. <p> </p><center><form class="form-container" method="get" action="">
    19. <div class="form-title"><h2>Password Change</h2></div>
    20. <font color="red" align="center"></font>
    21. <div class="form-title">Old password:</div>
    22. <input class="form-field" type="password" name="old" /><br />
    23. <div class="form-title">New password:</div>
    24. <input class="form-field" type="password" name="new" /><br />
    25. <div class="form-title">Enter the new password again:</div>
    26. <input class="form-field" type="password" name="new2" /><br />
    27. <div class="submit-container">
    28. <input class="submit-button" type="submit" value="Submit" />
    29. </div>
    30.  
    31.  
    32.  
    33.  
    34.  
    35. </form>
    36. </center>
    37. <?php
    38.  
    39. include('pass.php');
    40. $old = trim($_GET['old']);
    41. $new = trim($_GET['new']);
    42. $new2 = trim($_GET['new2']);
    43.  
    44.  
    45.  
    46. if(md5($_GET['old']) == $p){
    47.    
    48.     if($p != $new){
    49.        
    50.         if($new == $new2){
    51.          $str = file_get_contents ( 'pass.php' );
    52.  
    53. $str = str_replace ( $p, md5($new), $str );
    54. file_put_contents ( 'pass.php', $str );
    55. echo 'Пароль изменён, выйдите и войдите с новым паролем!';
    56.         }else{
    57.             echo '<font color="red">Новые пароли не совпадают!</font>';
    58.         }
    59.        
    60.     }else{
    61.         echo '<font color="red">Старый и новый пароль совпадают!</font>';
    62.     }
    63.    
    64.    
    65.  
    66. }else{
    67.    
    68.     echo '<font color="red">Вы ввели неправильный действующий пароль!</font>';
    69. }
    70.  
    71.  
    72.  
    73.  
    74. ?>
    75.  
    76. </form></center>
    77.  
    78.  
    79.  
    80.  
    81. </body>
     
  5. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Проблема решена!
     
  6. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Помогите!!!
    есть база данных redirect , к ней данные прописаны верно (проверял)
    НУЖНО ДОСТАТЬ ВСЕ* ИЗ ТАБЛИЦЫ users ГДЕ id=$id
    Код (Text):
    1.     $id = $_SESSION['user_id'];
    2.      $result = mysql_query("SELECT * FROM users WHERE id=$id");
    3. while($myrow = mysql_fetch_array($result)){
    4. switch($myrow['root']){
    5.     case 1:
    6.     echo '1 Вы имеете максимальные права в системе (ROOT)';
    7.     break;
    8.     case 2:
    9.     echo '2 Вы имеете большое количество прав (USER)';
    10.     break;
    11.     case 3:
    12.     echo '3 Вы имеете минимальные права в системе (GUEST)';
    13.     break;
    14.     default:
    15.     echo 'NULL Нет данных о ваших правах в базе данных, пожалуйста отредактируйте их в ручную!';
    16. }  
    17. }
    Сессия запоминается корректно!
    Ошибка вот такая:
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\bdredirect\www\admin.php on line 39
    [​IMG]
    Что делать?
     
  7. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    ponchic почти правильно, перед тем чтобы вызвать mysql_fetch_array проверяй что вернула mysql_query, по документации https://php.net/manual/ru/function.mysql-query.php если произойдёт ошибка, то вернёт FALSE и в этом случаи можно посмотреть что за ошибка с помощью https://php.net/manual/ru/function.mysql-error.php

    Используй отладку и читай документацию, тогда сам поймёшь где ошибка.
    http://phpfaq.ru/debug
    https://netbeans.org/kb/docs/php/debugging_ru.html

    Сам PHP тебе сообщил, что mysql_fetch_array не получила нужный формат данных, из этого можно сделать вывод, что ошибка выше и можно посмотреть mysql_query что вернула.
     
  8. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Спасибо за ответы!
    Новая проблема! (Mysql_error ничего не выводит, уже все волосы на голове вырвал!)
    вот страница, нужно чтобы этот скрипт добавлял Пользователей в бд, но он не добавляет и не выводит ошибку:(
    Код (Text):
    1. <?php
    2. @session_start();
    3. //if (isset($_SESSION['user_id'])){
    4.     include('db.php');
    5.     error_reporting(E_ALL);
    6.    
    7.     ini_set("display_errors", 1);
    8.     if(isset($_POST['submit'])) {
    9.     //проверяем, нет ли у нас пользователя с таким логином
    10.     $query = mysql_query("SELECT COUNT(user_id)
    11.         FROM users WHERE
    12.         user_login='".mysql_real_escape_string($_POST['login'])."'");
    13.     if(mysql_result($query, 0) > 0)  {
    14.             $error = "Пользователь с таким логином уже есть";
    15.        }
    16.             // Если нет, то добавляем нового пользователя
    17.       if(!isset($error) )   {
    18.         $login = mysql_real_escape_string(trim(htmlspecialchars($_POST['login'])));
    19.         // Убираем пробелы и хешируем пароль
    20.         $password = md5(trim($_POST['password']));
    21.         $root = $_POST['browser'];
    22.         $result = mysql_query("INSERT INTO users
    23.         SET user_login='".$login."', user_password='".$password."' root='".$root."' ");
    24.         if($result == true){
    25.         echo 'Вы успешно зарегистрировали пользователя с логином - '.$login;
    26.         }else{
    27.             echo 'Ошибка: ' . mysql_error();
    28.         }
    29.         exit();
    30.     }  else   {
    31.     // если есть такой логин то говорим об этом
    32.          echo $error;
    33.         }
    34.     }
    35.     //по умолчанию данные будут отправляться на этот же файл
    36.     echo "<!DOCTYPE HTMl>
    37. <html>
    38. <head>
    39.     <meta http-equiv='content-type' content='text/html' />
    40.     <meta name='author' content='' />
    41.     <title>Админ панель редирект центра</title>
    42. <link rel='stylesheet' type='text/css' href='style.css' />
    43.  
    44.   </style>
    45. </head>
    46. <body style='height:100%;'><div class='fon_scroll'><a name='top'></a> <p align='right'> <a href='exchange.php' title='Сменить пароль'><button> Сменить пароль </button></a> <a href='admin.php?l=logout' title='Выйти'> <button> Выход -> </button></a></p><p align='left'> <a href='admin.php' title=' <- Вернуться на главную'><button> <- Вернуться на главную </button></a></p>
    47. <center> ";
    48.  
    49. echo '<p> </p><center><form class="form-container" method="POST" action="">
    50. <div class="form-title"><h2>Sign up</h2></div>
    51. <font color="red" align="center">' . $badpass . ' </font>
    52. <div class="form-title">Login:</div>
    53. <input class="form-field" type="text" name="login" value=' . $login . '/><br />
    54. <div class="form-title">Password:</div>
    55. <input class="form-field" type="password" name="password" /><br />
    56. <div class="form-title">Type user:</div>
    57.  
    58.    <label><input type="radio" name="browser" value="1"> 1 ROOT (Маскимальные права)<Br></label>
    59.    <label><input type="radio" name="browser" value="2"> 2 USER (БОЛЬШИЕ права)<Br></label>
    60.    <label><input type="radio" name="browser" value="3"> 3 GUEST (гость, просмотр)<Br></label>
    61.  
    62. <div class="submit-container">
    63. <input class="submit-button" type="submit" value="Submit" />
    64. </div>
    65. </form></center>';
    66.  
    67. /*}else{
    68.    
    69.     //header("Location: admin.php");
    70.     exit();
    71. }
    72. */
    73. ?>
    На то что некоторые строчки закомментированы внимания не обращаем!
    И вторая проблема - скрипт не хочет менять пароль, ошибка: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\bdredirect\www\exchange.php on line 54
    Код (Text):
    1. <?php
    2. @session_start();
    3. include('db.php');
    4. //if(isset($_SESSION['user_id'])){
    5. echo <<<HERE
    6.     <!DOCTYPE HTMl>
    7. <html>
    8. <head>
    9.     <meta http-equiv='content-type' content='text/html' />
    10.     <meta name='author' content='' />
    11.     <title>Админ панель редирект центра</title>
    12. <link rel='stylesheet' type='text/css' href='style.css' />
    13.  
    14.   </style>
    15. </head>
    16. <body style='height:100%;'><div class='fon_scroll'>
    17. <a name='top'></a> <p align='right'> <a href='exchange.php' title='Сменить пароль'><button> Сменить пароль </button></a> <a href='admin.php?l=logout' title='Выйти'> <button> Выход -> </button></a></p><p align='left'> <a href='admin.php' title=' <- Вернуться на главную'><button> <- Вернуться на главную </button></a></p>
    18. <center>
    19.  
    20.  
    21.  
    22. <p> </p><center><form class="form-container" method="get" action="">
    23. <div class="form-title"><h2>Password Change</h2></div>
    24. <font color="red" align="center"></font>
    25. <div class="form-title">Old password:</div>
    26. <input class="form-field" type="password" name="old" /><br />
    27. <div class="form-title">New password:</div>
    28. <input class="form-field" type="password" name="new" /><br />
    29. <div class="form-title">Enter the new password again:</div>
    30. <input class="form-field" type="password" name="new2" /><br />
    31. <div class="submit-container">
    32. <input class="submit-button" type="submit" value="Submit" />
    33. </div>
    34.  
    35.  
    36.  
    37.  
    38.  
    39. </form>
    40. </center>
    41.    
    42.    
    43.    
    44. HERE;
    45.  
    46.  
    47.  
    48.  
    49. $old = trim($_GET['old']);
    50. $new = trim($_GET['new']);
    51. $new2 = trim($_GET['new2']);
    52. $_SESSION['user_id'] = $_GET['id'];
    53.  $result = mysql_query("SELECT * FROM users WHERE user_id=$_GET[id]"); //заменить потом
    54. $myrow = mysql_fetch_array($result);
    55.  
    56. if(md5($_GET['old']) == $myrow['user_password'] AND isset($_GET['old'])){
    57.    
    58.     if($myrow['user_password'] != $new){
    59.        
    60.         if($new == $new2){
    61.     $result = mysql_query("UPDATE users SET user_password='$new2' WHERE user_id=$_GET[id]"); //заменить потом
    62.         if($result == true){
    63. echo 'Пароль успешно изменён, пожалуйста выйдите и войдите с новым паролем!';
    64. }else{
    65.     echo 'Ошибка: ' . mysql_error();
    66. }
    67.         }else{
    68.             echo '<font color="red">Новые пароли не совпадают!</font>';
    69.         }
    70.        
    71.     }else{
    72.         echo '<font color="red">Старый и новый пароль совпадают!</font>';
    73.     }
    74.    
    75.    
    76.  
    77. }else{
    78.    
    79.     echo '<font color="red">Вы ввели неправильный действующий пароль!</font>';
    80. }
    81.  
    82. echo '</div>
    83. </form></center>
    84.  
    85.  
    86.  
    87.  
    88. </body>';
    89.  
    90.  
    91. //}
    92. ?>

    [​IMG]
     
  9. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    А как отладку делать понятно?
    С помощью неё можно проследить все состояния программы и проконтролировать, чтобы все состояния были правильные.
     
  10. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Вроде правильно откладку вашу сделал: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\bdredirect\www\exchange.php on line 54
    1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
     
  11. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    На какой запрос ругается? Может его в phpmyadmin проверить?
     
  12. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    С первым файлом где он должен добавлять пользователей разобрался! Вот его верный код:
    Код (Text):
    1. <?php
    2. @session_start();
    3. //if (isset($_SESSION['user_id'])){
    4.     include('db.php');
    5.     error_reporting(E_ALL);
    6.    
    7.     ini_set("display_errors", 1);
    8.     if(isset($_POST['login'])) {
    9.     //проверяем, нет ли у нас пользователя с таким логином
    10.     $query = mysql_query("SELECT COUNT(user_id)
    11.         FROM users WHERE
    12.         user_login='".mysql_real_escape_string($_POST['login'])."'");
    13.     if(mysql_result($query, 0) > 0)  {
    14.             $error = "Пользователь с таким логином уже есть";
    15.        }
    16.             // Если нет, то добавляем нового пользователя
    17.       if(!isset($error) )   {
    18.         $login = mysql_real_escape_string(trim(htmlspecialchars($_POST['login'])));
    19.         // Убираем пробелы и хешируем пароль
    20.         $password = md5(trim($_POST['password']));
    21.         $root = $_POST['browser'];
    22.         $result = mysql_query("INSERT INTO users SET user_login='$login', user_password='$password', root='$root' ");
    23.         echo mysql_errno($db) . ": " . mysql_error($db). "\n" . mysql_error($result);
    24.         if($result == true){
    25.         echo 'Вы успешно зарегистрировали пользователя с логином - '.$login;
    26.         echo '<a href="history.back()"> <-Вернуться назад </a>';
    27.         }else{
    28.             echo 'Ошибка: ' . mysql_error();
    29.         }
    30.         exit();
    31.     }  else   {
    32.     // если есть такой логин то говорим об этом
    33.          echo $error;
    34.         }
    35.     }
    36.     //по умолчанию данные будут отправляться на этот же файл
    37.     echo "<!DOCTYPE HTMl>
    38. <html>
    39. <head>
    40.     <meta http-equiv='content-type' content='text/html' />
    41.     <meta name='author' content='' />
    42.     <title>Админ панель редирект центра</title>
    43. <link rel='stylesheet' type='text/css' href='style.css' />
    44.  
    45.   </style>
    46. </head>
    47. <body style='height:100%;'><div class='fon_scroll'><a name='top'></a> <p align='right'> <a href='exchange.php' title='Сменить пароль'><button> Сменить пароль </button></a> <a href='admin.php?l=logout' title='Выйти'> <button> Выход -> </button></a></p><p align='left'> <a href='admin.php' title=' <- Вернуться на главную'><button> <- Вернуться на главную </button></a></p>
    48. <center> ";
    49.  
    50. echo '<p> </p><center><form class="form-container" method="POST" action="">
    51. <div class="form-title"><h2>User add</h2></div>
    52. <font color="red" align="center">' . $badpass . ' </font>
    53. <div class="form-title">Login:</div>
    54. <input class="form-field" type="text" name="login" value=' . $login . '/><br />
    55. <div class="form-title">Password:</div>
    56. <input class="form-field" type="password" name="password" /><br />
    57. <div class="form-title">Type user:</div>
    58.  
    59.    <label><input type="radio" name="browser" value="1"> 1 ROOT (Маскимальные права)<Br></label>
    60.    <label><input type="radio" name="browser" value="2"> 2 USER (БОЛЬШИЕ права)<Br></label>
    61.    <label><input type="radio" name="browser" value="3"> 3 GUEST (гость, просмотр)<Br></label>
    62.  
    63. <div class="submit-container">
    64. <input class="submit-button" type="submit" value="Submit" />
    65. </div>
    66. </form></center>';
    67.  
    68. /*}else{
    69.    
    70.     //header("Location: admin.php");
    71.     exit();
    72. }
    73. */
    74. ?>
    В Скрипте который должен менять пароль вообще теперь ошибки не показывает, но пароль не меняет.
    ПС- ввёл в пых май админе - всё норм, кажется я уже близко.

    Добавлено спустя 26 минут 37 секунд:
    Короче так я и не понял в чём ошибка в файле exchange.php
    Есть подозрения что это всё в 59 строчке (if(md5($_GET['old']) == $myrow['user_password']){)
    Код (Text):
    1. <?php
    2. @session_start();
    3. include('db.php');
    4. $id = $_GET['id'];
    5. //if(isset($_SESSION['user_id'])){
    6. echo <<<HERE
    7.     <!DOCTYPE HTMl>
    8. <html>
    9. <head>
    10.     <meta http-equiv='content-type' content='text/html' />
    11.     <meta name='author' content='' />
    12.     <title>Админ панель редирект центра</title>
    13. <link rel='stylesheet' type='text/css' href='style.css' />
    14.  
    15.   </style>
    16. </head>
    17. <body style='height:100%;'><div class='fon_scroll'>
    18. <a name='top'></a> <p align='right'> <a href='exchange.php' title='Сменить пароль'><button> Сменить пароль </button></a> <a href='admin.php?l=logout' title='Выйти'> <button> Выход -> </button></a></p><p align='left'> <a href='admin.php' title=' <- Вернуться на главную'><button> <- Вернуться на главную </button></a></p>
    19. <center>
    20.  
    21.  
    22.  
    23. <p> </p><center><form class="form-container" method="get" action="exchange.php?id=$id">
    24. <div class="form-title"><h2>Password Change</h2></div>
    25. <font color="red" align="center"></font>
    26. <div class="form-title">Old password:</div>
    27. <input class="form-field" type="password" name="old" /><br />
    28. <div class="form-title">New password:</div>
    29. <input class="form-field" type="password" name="new" /><br />
    30. <div class="form-title">Enter the new password again:</div>
    31. <input class="form-field" type="password" name="new2" /><br />
    32. <div class="submit-container">
    33. <input class="submit-button" type="submit" value="Submit" />
    34. </div>
    35.  
    36.  
    37.  
    38.  
    39.  
    40. </form>
    41. </center>
    42.    
    43.    
    44.    
    45. HERE;
    46.  
    47.  
    48.  
    49.  
    50. $old = trim($_GET['old']);
    51. $new = trim($_GET['new']);
    52. $new2 = trim($_GET['new2']);
    53. $_SESSION['user_id'] = $_GET['id'];
    54.  $result = mysql_query("SELECT * FROM users WHERE user_id='$_GET[id]'"); //заменить потом
    55. $myrow = mysql_fetch_array($result);
    56. echo mysql_errno($db) . ": " . mysql_error($db). "\n";
    57. echo md5($_GET['old']) . '<br>';
    58.     echo $myrow['user_password'];
    59. if(md5($_GET['old']) == $myrow['user_password']){
    60.     echo md5($_GET['old']) . '<br>';
    61.     echo $myrow['user_password'];
    62.     if($myrow['user_password'] != $new){
    63.        
    64.         if($new == $new2){
    65.             $resp = md5($new2);
    66.     $result2 = mysql_query("UPDATE users SET user_password='$resp' WHERE user_id='$_GET[id]' "); //заменить потом
    67.     echo mysql_errno($db) . ": " . mysql_error($db). "\n" . mysql_error($result2);
    68.         if($result2 == true){
    69. echo 'Пароль успешно изменён, пожалуйста выйдите и войдите с новым паролем!';
    70. }else{
    71.     echo 'Ошибка: ' . mysql_error();
    72. }
    73.         }else{
    74.             echo '<font color="red">Новые пароли не совпадают!</font>';
    75.         }
    76.        
    77.     }else{
    78.         echo '<font color="red">Старый и новый пароль совпадают!</font>';
    79.     }
    80.    
    81.    
    82.  
    83. }else{
    84.    
    85.     echo '<font color="red">Вы ввели неправильный действующий пароль!</font>';
    86. }
    87.  
    88.  
    89. echo '</div>
    90. </form></center>
    91.  
    92.  
    93.  
    94.  
    95. </body>';
    96.  
    97.  
    98.  
    99. ?>
    Помогите кто может! Уже и в пхпмайадмине проверял - все верно, всяко-разно отладывал php код, но так и не понял ошибки(((((((((((
     
  13. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    А скрипт доходит до выполнения запроса в базу данных? Покажи какой запрос получается
     
  14. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Уже решил! Вся проблема была с формой, не хотел отправлять много Гет запросов.
    на exchange.php вместо exchange.php?id=$id где id=user_id в бд

    <form class="form-container" method="get" action="exchange.php?id=$id">
     
  15. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Народ! Нужно сделать поиск значений по базе данных Mysql!
    Есть таблица tov и usl В них обоих надо ИСКАТЬ товары ГДЕ статус='1' и если такие есть ТО выводить в переменную их количество. Вот скрин базы: [​IMG]
     
  16. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Решил проблему так:
    Код (Text):
    1. $result = mysql_query("SELECT id FROM tov WHERE status='1'");
    2. $myrow = mysql_num_rows($result);
    3. echo $myrow;
     
  17. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Народ! Вообщем делаю скрипт корзины покупателя инет магазина
    На картинке видим конструкцию бд (Думаю догадаетесь какая строка для чего )
    [​IMG]
    Мне нужен скрипт который будет как-то запускаться и удалять строки которые были созданы более 30 дней назад
     
  18. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    1. У вас тема интересно называется: "Мои ошибки". А сами просите сделать за вас. :)

    Конкретно по вашей задаче:
    1. Пишете простейший скрипт, где всего один запрос к бд, что-то вроде:
    Код (PHP):
    1. DELETE FROM `table` WHERE `date< NOW() - 30*60*24
    2. Записываете этот скрипт в задачи CRON на нужное время.
     
  19. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Извините за совсем нубский вопрос, но как сделать чтобы ставилась дата добавления новой строки в базу (тип столбца datetime)?
    Думал что он автоматом будет ставится.
     
  20. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Код (PHP):
    1. INSERT INTO `example` (`id`, `add_data`) VALUES (NULL, NOW()) 
     
  21. mr.akv

    mr.akv Активный пользователь

    С нами с:
    31 мар 2015
    Сообщения:
    1.604
    Симпатии:
    206
    при добавлении записывайте в строку текущее время.
    Воспользуйтесь date(), пример: date("Y-m-d H:i:s")
    или time(). Почитайте, что вам подойдёт лучше.

    Добавлено спустя 58 секунд:
    Да, точно, совсем забыл про NOW(). Это, наверно, лучший вариант.
     
  22. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Спасибо большое за ответы!
    Теперь новая проблема которую я не могу решить и гугл не помог. SUM(price) тоже не советовать
    есть 2 таблицы
    Таблица корзины (идентификация по ip)
    [​IMG]
    и таблица товаров (идентификайия по id):
    [​IMG]
    Нужно сделать вывод суммы заказов с учетом количества товара (в таблице корзины столбец much)
    те достаём из бд как-то price товара, умножаем на much и опять в цикле с остальными товарами, а потом выводим.
    Вот мой код отвечающий за это:
    Код (Text):
    1.     $result1 = mysql_query("SELECT * FROM paybox WHERE ip='$_SERVER[REMOTE_ADDR]'");
    2.     echo $_SERVER['REMOTE_ADDR'];
    3.     while($myrow1 = mysql_fetch_array($result1)){
    4. $Check_Backet = mysql_num_rows($result1);
    5.     if($Check_Backet == '0'){
    6.         echo 'Ваша корзина пуста! <a href="tov.php" title="Перейти к выбору товара"> Перейти к выбору товара </a>';
    7.        
    8.        
    9.     }
    10.  
    11.    
    12.     $result = mysql_query("SELECT * FROM tov
    13.     WHERE id='$myrow1[tov]'");
    14.    
    15.     while($myrow = mysql_fetch_array($result)){
    16.         $sum = $myrow['price'] * $myrow1['much'];
    17.        
    18.         echo <<<HERE
    19.        
    20.        
    21.         <table border='1' width='720' align='center'>
    22.         <tr >
    23.         <th colspan='2'>
    24.         Наименование
    25.         </th><th>
    26.         Количество
    27.         </th><th>
    28.         Цена
    29.         </th><th>
    30.         Сумма
    31.         </th><th>
    32.         Удалить
    33.         </th>
    34.         <tr>
    35.        
    36.         <tr >
    37.         <th>
    38.          <img src='$myrow[img]' alt='$myrow[zagol]' title='$myrow[zagol]' height='100' width='100'>
    39.         </th><th>
    40.         <a href="view.php?type=tov&id=$myrow[id]">  $myrow[zagol] </a><br>
    41.         <p align='left'>Артикул: $myrow[id] </p>
    42.         </th><th>
    43.         $myrow[id]
    44.         <form action='?changemuch=1&id=$myrow[id]' method='post'>
    45.         <input type='text' size='1' value='$myrow1[much]' name='much'><button ><img src='img/update.png' title='Обновить' height='14' width='14'>  </button>
    46.         </form>
    47.         </th><th>
    48.         $myrow[price]
    49.         </th><th>
    50.         $sum
    51.         </th><th>
    52.         <a href='?del=$myrow[id]'> Удалить </a>
    53.         </th>
    54.         <tr>
    55.         </table>
    56.         <br>
    57. HERE;
    58.     }
    59.    
    60.    
    61.    
    62.    
    63.    
    64.    
    65.    
    66.    
    67.     }  
    68.    
    69.    
    70.   while($myrow1 = mysql_fetch_array($result1)){ //Типо это говно должно вычелсять сумму заказа
    71.      
    72.      $price_result  = mysql_query("SELECT SUM('price') FROM tov WHERE id='$myrow1[tov]'");
    73.    $price_result_fetch = mysql_result($price_result,0);
    74.    echo 'Сумма заказа: ';
    75.    print_r($price_result_fetch);
    76.    
    77.    

    Пожалуйста помогите! 3 часа мучаюсь!
     
  23. ponchic

    ponchic Новичок

    С нами с:
    29 окт 2014
    Сообщения:
    38
    Симпатии:
    0
    Помогите!
    Кто поможет дам благодарочку на киви/вебмани.
     
  24. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.770
    Адрес:
    :сердА
    Бро, все устали отлаживать твое чудо-творение, вот и все.
     
  25. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Читай про JOIN, AS

    псевдо запрос
    Код (PHP):
    1. select * from tov, paybox where tov.id = paybox.tov