Форум программистов, компьютерный форум, киберфорум
Наши страницы
MySQL
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
1

Ошибка регистрации

11.12.2014, 18:38. Просмотров 799. Ответов 20
Метки нет (Все метки)



не пойму в чем ошибка!

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'web'@'localhost' (using password: YES) in Z:\home\myserver.com\www\conn.php on line 6

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in Z:\home\myserver.com\www\conn.php on line 7
Access denied for user 'web'@'localhost' (using password: YES)

листинг :
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$host = "localhost";
$user = "web";
$pass = "1234";
$name = "users";
    $db = mysql_connect($host, $user, $pass);
    mysql_select_db($name, $db);
    if($db){
      echo "super";
    } else {
      echo mysql_error();
    }
 
 
?>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2014, 18:38
Ответы с готовыми решениями:

Пропали регистрации баз
Использую SQL Menager 2010 Lite (4.5.1.3). на сервере было зарегестрировано...

Форма регистрации и авторизации
Создал все формы регистрации и авторизации, бд, но при регистрации нового не...

Форма регистрации и авторизации SQL
Не получается отправить данные в БД. Создал все формы регистрации и...

Занесение пользователей в таблицу. Предотвращение регистрации повторного логина
Здравствуйте. Пытаюсь сделать регистрацию на сайте, но пока не выходит....

Программа для подключения к БД Mysql. Без смс и регистрации. И с прокси
Всем привет! Подскажите программу для подключения к БД Mysql с внешки (не...

20
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 18:44 2
KravaCj, вы сами создали пользователя "web", задали ему пароль "1234" и выдали соответствующие права?
0
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
11.12.2014, 18:47  [ТС] 3
я работаю с примерами, там информации нету я делал идентично что бы глянуть на работу и я не создавал пользователя с паролем
0
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 19:33 4
KravaCj, на локалке тестируете? Если да, то попробуйте пользователя "root" и без пароля.

PHP
1
2
3
4
$host = "localhost";
$user = "root";
$pass = "";
$name = "users";
1
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
11.12.2014, 20:19  [ТС] 5
thx, сам недавно додумался, что на локалке root и без пароля, так как не создавал пользователя

Добавлено через 37 минут
гляньте пж код, у меня почему-то не регестрирует новых пользователей, мб где-то фигурные не там поставил, уже раз 10 смотрел, не понимаю в чем проблема, не регестрирует акк в бд, листинг:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
$log = $_POST['log'];
$pass = $_POST['pass'];
$r_pass = $_POST['r_pass'];
$u_name = $_POST['u_name'];
$u_lastname = $_POST['lastname'];
$u_mail = $_POST['mail'];
 
if(isset($_POST['submit'])) {
  if(!empty($log) && !empty($pass) && !empty($u_name) && !empty($u_lastname) && !empty($u_mail)) {
  if($pass == $r_pass){
 
   $sql = mysql_query("INSERT INTO 'user' ('id','login','password','name','lastname','mail') VALUES ('NULL','$log','$pass','u_name','$u_lastname','u_mail')");
   if($sql){
     echo "<font color='green'>Регистрация прошла успешно!</font>";
   }else {
     echo "<font color='red'>Вы не зарегестрировались!</font>";
   }
 
  } else {
    echo "<font color='red'>Пароли не совпадают!</font><a href='reg.php'>Назад</a>";
  }
}
else {
  echo "<font color='red'> Пожалуйста, заполните все поля!</font> <a href='reg.php'>Назад</a>";
}
}
?>
0
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 20:48 6
Лучший ответ Сообщение было отмечено KravaCj как решение

Решение

KravaCj, имена полей и названия таблиц, оборачиваются не одинарными кавычками, а "обратными" кавычками. Это клавиша "ё" в английской раскладке. NULL - без кавычек, да и вообще, пара id и NULL, если это первичный ключ с автоинкрементом, не нужна.
0
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
11.12.2014, 21:10  [ТС] 7
ты лучший!!=) - "Регистрация прошла успешно!"

Добавлено через 16 минут
ещё 1на проблема=( все добавляет только вот в бд где раздел name и mail пишит не имя и мыло которое я ввел в регистрацию, а это -
раздел name пишит - u_name , а в разделе mail пишит - u_mail. Я же вроде правильно передавал... почему так не пойму
0
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 21:15 8
Лучший ответ Сообщение было отмечено KravaCj как решение

Решение

PHP
1
2
3
4
$sql = mysql_query("INSERT INTO `user` 
(`login`,`password`,`name`,`lastname`,`mail`) 
  VALUES 
('".$log."','".$pass."','".$u_name."','".$u_lastname."','".$u_mail."')");
0
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
11.12.2014, 21:44  [ТС] 9
с регистрацией все хорошо, начинаю заходить под этими аккаунтами ошибка в строке. Листинг:
PHP
1
2
3
4
5
6
7
8
9
10
11
<?php
include "conn.php";
    session_start();       
    $log = $_POST['log'];
    $pass = $_POST['pass'];
    $sql = mysql_query("SELECT * FROM `user` WHERE `active`='1'");
    $row = mysql_fetch_array($sql);
    $id = $row['id'];
    $login = $row['login'];
 
?>
сами ошибки в строке 3) session_start();

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at Z:\home\myserver.com\www\users.php:1) in Z:\home\myserver.com\www\users.php on line 3

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\myserver.com\www\users.php:1) in Z:\home\myserver.com\www\users.php on line 3
krava krava
0
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 21:49 10
Цитата Сообщение от KravaCj Посмотреть сообщение
сами ошибки в строке 3) session_start();
Инициализация данных сессии должна быть до любого вывода. Как минимум, поставьте её в самое начало кода. А второе, что нужно проверить - это чтоб страница была сохранена без BOM-маркера, т.е. в кодировке UTF-8 без BOM
0
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
11.12.2014, 21:53  [ТС] 11
я сохранаю все файлы только в utf-8 и поставил в самом начале, получается если я убираю session_start(); вообще с кода - работает, но с ним нет, мне стоит все таки разобраться из-за чего ещё может это быть? или проще убрать эту строку?
0
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 22:01 12
Цитата Сообщение от KravaCj Посмотреть сообщение
мне стоит все таки разобраться из-за чего ещё может это быть?
Я же вам объяснил. В том, чтоб сохранить в UTF-8 и UTF-8 без BOM - есть разница. В самом начале прописали? Это хорошо, но вы уверены, перед вызовом session_start(), у вас сто процентов нет никакого вывода в браузер?
0
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
11.12.2014, 22:02  [ТС] 13
хотя по другому я не знаю, надо глянуть почему все таки ошибки, может мне session_start(); вообще за php вынести или там в html код вложить? поскольку в php коде выдает ошибки эти же даже если ставлю в самом начале php
0
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 22:03 14
P.S. А вы действительно используете сессии? Просто в вашем коде, я что-то ничего такого не увидел.
0
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
11.12.2014, 22:03  [ТС] 15
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
session_start();
include "conn.php";
    $log = $_POST['log'];
    $pass = $_POST['pass'];
    $sql = mysql_query("SELECT * FROM `user` WHERE `active`='1'");
    $row = mysql_fetch_array($sql);
    $id = $row['id'];
    $login = $row['login'];
    $password = $row['password'];
 
        if(isset($_POST['submit'])){
          if($log == $login AND $pass == $password){
          $_SESSION['login'] = $login;
          } else{
            echo "";
          }
        }
 
 
?>
Я просто ещё его пишу
0
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 22:04 16
KravaCj, вы каким редактором пользуетесь?
0
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
11.12.2014, 22:12  [ТС] 17
HTMLPad 2010 - куратор сказал таким пользоваться, я хотел новее установить, но так как у всей группы 2010 проще так.
и вот примерно что я хотел сделать
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[PHP]<?php
include "conn.php";
    $log = $_POST['log'];
    $pass = $_POST['pass'];
    $sql = mysql_query("SELECT * FROM `user` WHERE `active`='1'");
    $row = mysql_fetch_array($sql);
    $id = $row['id'];
    $login = $row['login'];
    $password = $row['password'];
    $name = $row['name'];
 
        if(isset($_POST['submit'])){
          if($log == $login AND $pass == $password){
          $_SESSION['login'] = $login;
          $_SESSION['password'] = $password;
                if(isset($_SESSION['login']) AND osset($_SESSION['password'])){
                  echo "Привет".$name;
                }
          } else{
            echo "Некорректный логин или пароль";
          }
        }
 
 
?>
  <!-- session_start();-->
вот как-то так я хочу сделать[/PHP]
0
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 22:23 18
Цитата Сообщение от KravaCj Посмотреть сообщение
HTMLPad 2010
Пусть так. Делаете следующее: в открытом документе "Файл" > "Сохранить как..." > выпадающий список "Кодировка" > выбираем "UTF-8 без BOM". В коде:
PHP
1
2
3
<?php
session_start();
/* дальше весь остальной код */
До этого файла, не должно быть никакого вывода в браузер. Никакого - именно это и значит. Считайте, что во всём вашем сайте, это должна быть самая первая строка.

Не по теме:

Как-то я подустал одно и то же по сто раз говорить :)

0
KravaCj
0 / 0 / 1
Регистрация: 05.10.2013
Сообщений: 93
11.12.2014, 23:21  [ТС] 19
у меня все так и было но - те же ошибки. Я при сохранении всегда ставлю Utf-8 так как у меня русский в иероглифах получается при другой кодировке, а php файл у меня без html и без всего сразу идет <&php и 2я строка эта, но ошибки те же=(

Добавлено через 54 минуты
гляньте пожалуйста код, я где-то что-то не правильно передал? у меня постоянно выводится Некорректный логин или пароль или если не все вводить (пожалуйста заполните все поля!) . листинг:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
session_start();
header("Content-type: text/html; charset=uft8");
include "conn.php";
    $log = $_POST['log'];
    $pass = $_POST['pass'];
    $sql = mysql_query("SELECT * FROM `user` WHERE `active`='1'");
    while ($row = mysql_fetch_array($sql)){
    $id = $row['id'];
    $login = $row['login'];
    $password = $row['password'];
    $name = $row['name'];
      }
        if(isset($_POST['submit'])){
          if(empty($log) or empty($pass)){
             echo"<font color='red'><b>пожалуйста заполните все поля!</b></font>";
          } else {
          if($log == $login AND $pass == $password){
          $_SESSION['login'] = $login;
          $_SESSION['password'] = $password;
                if(isset($_SESSION['login']) AND isset($_SESSION['password'])){
                  echo "Привет<font color='red'><b>'".$name."'</b></font>";
                }
          } else{
            echo "<font color='red'><b>Некорректный логин или пароль.</b></font>";
          }
        }
       }
 
?>
0
Lazy_Den
2942 / 2618 / 1320
Регистрация: 15.01.2014
Сообщений: 5,749
11.12.2014, 23:58 20
KravaCj, попробуйте так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 <?php
session_start();
header("Content-type: text/html; charset=uft8");
if (isset($_SESSION['name'])) {
    echo "<b>'" . $_SESSION['name'] . "'</b>, ты всё еще залогинен!";
} else {
    $log  = filter_input(INPUT_POST, 'log', FILTER_SANITIZE_SPECIAL_CHARS);
    $pass = filter_input(INPUT_POST, 'pass', FILTER_SANITIZE_SPECIAL_CHARS);
    if (isset($log, $pass)) {
        include "conn.php";
        if (!empty($log) || !empty($pass)) {
            $query = "SELECT * FROM `user` WHERE `login` = '" . $log . "' AND `password` = '" . $pass . "'";
            $sql = mysql_query($query, $db) or die(mysql_error()); // $db - дескриптор соединения
            if (mysql_num_rows($sql)) {
                echo "Привет <b>'" . $sql['name'] . "'</b>! Ты успешно залогинился!";
                $_SESSION['name'] = $sql['name'];
            } else {
                echo "Пользователя с такими данными - не найдено";
            }
        } else {
            echo "Пожалуйста, заполните все поля!";
        }
    }
}
Добавлено через 2 минуты
Кстати, задайте своему преподу вопрос о том, почему вас учат работать с устаревшим расширением mysql_*, вместо того, чтоб обучать современным: MySQLi или PDO?
0
11.12.2014, 23:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.12.2014, 23:58

MySQL перестал проверять наличие одинаковых логинов в системе регистрации.
Всем здрасьте. Я установил систему регистрации на свой сайт. РНР + MySQL....

Форма регистрации вылетает с ошибкой Duplicate entry ’1′ for key ‘PRIMARY’
При нажатии завершения формы регистрации вылетает ошибка Duplicate entry ’1′...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru