Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 13

Форма регистрации и логина по видео урокам - все равно не работает

21.07.2012, 21:25. Показов 1302. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Братва помогите по форме логина , не могу найти ошибку выходить это

Fatal error: Can't use function return value in write context in C:\xampp\htdocs\logreg\login.php on line 16
то есть на строку $errors() = 'You need to enter a username and password';

мои файлы
это логин файл
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
include 'core/init.php';
 
/*
if (user_exists('alex') === true) {
    echo 'Exists';
}
die ();
*/
 
if (empty($_POST) === false) {
    $username = $_POST['username'];
    $password = $_POST['password'];
    
    if (empty($username) === true || empty($password) === true){
        $errors() = 'You need to enter a username and password';
    } else if (user_exists($username) === false) {
        $errors() = 'We can\'t find that username. Have you registered?';
    }
}
?>
init.php

PHP
1
2
3
4
5
6
7
8
9
10
<?php
session_start();
error_reporting();
 
require 'database/connect.php';
require 'functions/general.php';
require 'functions/users.php';
 
$errors = array();
?>
connect.php

PHP
1
2
3
4
5
<?php
$connect_error = 'Sorry, we\'re experiencing connection problems';
mysql_connect('localhost','root','') or die($connect_error);
mysql_select_db('lr');
?>
general.php

PHP
1
2
3
4
5
<?php
function sanatize($data){
    return mysql_real_escape_string($data);
}
?>
users.php

PHP
1
2
3
4
5
6
7
8
9
<?php
function user_exists($username) {
    $username = sanatize($username);
    $query = mysql_query("SELECT COUNT ('user_id') FROM 'users' WHERE 'username' = '$username'");
    return (mysql_result($query, 0) == 1) ? true : false;
}
 
 
?>
за любую помощь буду благодарен!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.07.2012, 21:25
Ответы с готовыми решениями:

Неправильно работает форма логина
Собственно вот код connectclass connnection = new connectclass(); DataTable datatable = connection.query(&quot;SELECT *...

Форма логина работает неправильно
Здравствуйте, помогите исправить код. При вводе данных в поля выводит только &quot;Не удалось открыть таблицу пользователей&quot;. Причем...

Формы регистрации нет, а боты все равно регистрируются
Здравствуйте! Я на своем сайте включила форму регистрации. все было нормально, но потом я заметила, что на сайте где посещения человек 100...

8
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.07.2012, 03:01
Цитата Сообщение от unicum Посмотреть сообщение
$errors() = 'You need to enter a username and password';
я так понимаю там нужно квадратные скобки [] а не круглые

Добавлено через 1 минуту
или вообще без них - смотря как вы хотите, в массив или в обычную переменную
0
91 / 91 / 13
Регистрация: 14.07.2012
Сообщений: 539
22.07.2012, 04:04
А я вообще не опнимаю зачем заносить текст в массив если его нужно просто выдать пользователю?
0
91 / 91 / 13
Регистрация: 14.07.2012
Сообщений: 539
22.07.2012, 04:04
А я вообще не понимаю зачем заносить текст в массив если его нужно просто выдать пользователю?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.07.2012, 12:47
Цитата Сообщение от pyramida Посмотреть сообщение
А я вообще не понимаю зачем заносить текст в массив если его нужно просто выдать пользователю?
1. использование сессий/кук/хедеров - аналог "частичного" накапливания вывода в переменную.
2. можно проверить - если массив пустой, то значит все ок, иначе - выводим не пустые значения.
3. удобнее - все ошибки при наличии хранятся в одном месте, не надо их искать

Добавлено через 10 минут
и сказать что этот скрипт слегка уязвим - это еще очень мягко. скрипт просто сплошная дыра %)
p.s. кстати, функция empty() решается одним пробелом в поле ввода - это если переменную проверять, а сам массив $_POST при нажатии на кнопку формы (независимо от того, писали что в полях ввода или нет) сразу станет не пустым...
0
91 / 91 / 13
Регистрация: 14.07.2012
Сообщений: 539
22.07.2012, 16:17
KOPOJI, 1,2,3 это все относительно. Конечно не спорю у меня маловато опыта в серьезных проектах, может быть там такое и применяется. Сами знаете что лучше посмотреть ТЗ чтобы понять что больше половины кода просто не нужны Вам знаком метод KISS надеюсь?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.07.2012, 17:04
Цитата Сообщение от pyramida Посмотреть сообщение
1,2,3 это все относительно.
я и не говорил что это обязаловка просто если допустим вместо
PHP
1
echo "<html> .... ";
накапливать в переменную этот вывод то потом не будет проблем с отправкой заголовков в середине документа (или ob_start() прописать). ну это, опять же, кому как удобнее.
а по поводу кода - там вообще все лишнее, толку то с такой регистрации все равно нет пробелов понаставь в форме - и ты уже зарегился)

Не по теме:

Цитата Сообщение от pyramida Посмотреть сообщение
Вам знаком метод KISS надеюсь?
к сожалению, нет.. можно поподробнее о нем?)

0
22.07.2012, 17:07

Не по теме:

Цитата Сообщение от pyramida Посмотреть сообщение
Вам знаком метод KISS надеюсь?
Цитата Сообщение от KOPOJI Посмотреть сообщение
к сожалению, нет.. можно поподробнее о нем?)
Keep It Simple (http://ru.wikipedia.org/wiki/K... %B8%D0%BF))

1
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.07.2012, 17:22

Не по теме:

ахахахх :D жестко и правдиво :D



Добавлено через 11 минут
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
<?php
 session_start();
 if(isset($_POST['go'])) {
//connect to bd
    $login = mysql_real_escape_string(stripslashes(trim($_POST['login'])));
    $pass = mysql_real_escape_string(stripslashes(trim($_POST['pass'])));
if(!empty($login)&&!empty($pass)) {
    $query = sprintf("SELECT id FROM `users` Where `login`='%s' and `pass`='%s'",$login,$pass);
    $res = mysql_query($query);
if($res) {
if(mysql_num_rows($res)) {
// все ок, есть такой - ставим сессию
}
else echo "Пользователь с таким логином не найден, проверьте правильность введенных данных";
}
else echo "В данный момент сервер не доступен. Попробуйте позднее";
}
else echo "Вы заполнили не все поля!";
}
?>
<form method=post>
Login: <input type=text name=login />
Pass:  <input type=password name=pass />
<input type=submit name=go value="Поехали!" />
</form>
Добавлено через 1 минуту
если по простому - то нормально, без всяких лишних ваших функций с одной строчкой в виде возврата обработанного значения и коду всего 25-30 строчек..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.07.2012, 17:22
Помогаю со студенческими работами здесь

отношение к видео урокам
как вы относитесь к видео урокам по C++ ? помогают ли они новичкам или это пустая трата времени.. лично я скачал видеоуроки, посмотрел...

Изучение HTML по видео урокам
Всем привет дорогие друзья, многие знают, что часть людей любят изучать непосредственно через книги, так как им так удобнее, но отношусь к...

Не работает форма регистрации
Не заносятся данные в бд index.php &lt;!doctype html&gt; &lt;head&gt; &lt;meta charset=&quot;UTF-8&quot;&gt; &lt;meta name=&quot;exs&quot;&gt; &lt;link...

Форма регистрации не работает
Нужно зарегестрировать пользователя, и чтобы он появлялся в бд phpmyadmin. Но постоянно высвечивается поле &quot;заполните все...

Не работает форма регистрации
Доброго времени суток. Нужно написать простой сайт по продажи недвижимости ... Решил с формы регистрации начать, по самоучителю пытался...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru