Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
86 / 86 / 30
Регистрация: 12.08.2014
Сообщений: 1,129
1

Не выводится echo

16.01.2015, 22:37. Показов 1428. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем доброго вроемени суток! Есть проверка при регистрации аккаунта.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
        if (isset($_GET['success']) === true && empty($_GET['success']) === false) {
            echo 'You have been registered successfully! Please check your email ti activate your account';
        } else {
        if (empty($_POST) === false && empty($errors) === true) {
            $register_data = array(
                'username'      => $_POST['username'],
                'password'      => $_POST['password'],
                'first_name'            => $_POST['first_name'],
                'last_name'     => $_POST['last_name'],
                'email'         => $_POST['email'],
                'email_code'    => md5($_POST['username'] + microtime())
                );
            register_user($register_data);
            echo "<meta http-equiv='refresh' content='0; url=http://www.page.com/register.php?success'/>";
            exit();
        } else if (empty($errors) === false) {
            echo output_errors($errors);
        }
Суть в том, что echo 'You have been registered successfully! Please check your email ti activate your account'; не выводится на экран после того, как происходит попадание на страницу register.php?success. В чем ошибка, заранее спасибо!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.01.2015, 22:37
Ответы с готовыми решениями:

Вывести символы, используя только три ECHO. Echo '0', Echo '*', Echo '\n' (использовать цикл)
Вывести символы, используя только три ECHO. Echo '0', Echo '*', Echo '\n' (использовать цикл)....

Не выводится Echo
Здравствуйте! браузер не обрабатывает PHP код: &lt;html&gt; &lt;head&gt; &lt;title&gt; Автозапчасти от Вована - ...

Не выводится строка echo
написал следующий код (фрагмент): function mathOperation($a, $b, $operation) { switch...

Не выводится переменная на экран в echo
Не выводится переменная $row на экран, ошибок не выдаёт. Где ошибка кто подскажет? &lt;?php...

5
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
16.01.2015, 23:10 2
Цитата Сообщение от paskalnikita Посмотреть сообщение
происходит попадание на страницу register.php?success
ну а после success есть какое то значение? например register.php?success=true. Иначе empty($_GET['success']) будет TRUE.
0
86 / 86 / 30
Регистрация: 12.08.2014
Сообщений: 1,129
16.01.2015, 23:35  [ТС] 3
нет
Цитата Сообщение от pav1uxa Посмотреть сообщение
register.php?success=true
отсутствует. но проблема решается таким образом: if (isset($_GET['success']) && empty($_GET['success'])) , то есть все true и false я убираю. но это не совсем правильно тогда. Или наличие true и false не совсем обязательны тогда?
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
17.01.2015, 00:14 4
Лучший ответ Сообщение было отмечено paskalnikita как решение

Решение

Цитата Сообщение от paskalnikita Посмотреть сообщение
Или наличие true и false не совсем обязательны тогда?
Вы не поняли. Вот тут:
PHP
1
empty($_GET['success']) === false
empty будет равняться true. Эта функция проверяет переменную на пустоту. То есть тут нужно писать
PHP
1
empty($_GET['success']) === true
Цитата Сообщение от paskalnikita Посмотреть сообщение
то есть все true и false я убираю. но это не совсем правильно тогда
да нет, все правильно.

И вообще, раз уж у Вас success ничему не равняется, то достаточно будет:
PHP
1
2
3
4
if (isset($_GET['success']))
{
...
}
Смысл использовать empty если переменная пуста?
1
181 / 149 / 55
Регистрация: 21.07.2013
Сообщений: 958
17.01.2015, 01:33 5
Просто вот это - isset($_GET['success']) === true
совсем глупо в условии.
if выполняет блок кода если условие true, вот это isset($_GET['success']) и должно вернуть нам или true или false для if.
Вообще писать if(что-то == true) нету смысла, т.к. блок и так будет выполнен если что-то будет true.
Есть смысл писать если нужно чтоб что-то было false
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
17.01.2015, 11:19 6
Цитата Сообщение от prudkiy Посмотреть сообщение
Просто вот это - isset($_GET['success']) === true
совсем глупо в условии.
if выполняет блок кода если условие true, вот это isset($_GET['success']) и должно вернуть нам или true или false для if.
Вообще писать if(что-то == true) нету смысла, т.к. блок и так будет выполнен если что-то будет true.
Есть смысл писать если нужно чтоб что-то было false

Не по теме:

Ничего глупого в этом нет, это лишь дело вкуса. Мы пишем в условии

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
// когда проверяем int
if ($a === 10){}
// или когда проверяем string
if ($a === "hello"){}
// или проверяем результат функции
if (count($array) === 10) {}
// но при этом когда мы хотим проверить переменную на true или false
// мы можем просто написать
if ($result) {}
// но ведь может быть для кого-то наглядней и приятней выглядит
if ($result === true)
// это больше походит на все остальные варианты, это привычнее
// в этом нет ничего страшного
Я не говорю что надо писать так или так, надо писать как тебе удобно. Вы можете напомнить что есть такая возможность не дописывать "==true", Вы можете что-то посоветовать или рекомендовать, но писать что это глупо - на мой взгляд немного неправильно...

0
17.01.2015, 11:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.01.2015, 11:19
Помогаю со студенческими работами здесь

PHP,Не выводится echo
:wall::-[ После выполнения математического действия(переменная $Res) вывожу c с помощью echo...

echo $kom1;// Вася27//; $i = 27; $kom = "Вася"; echo $kom.$i;//ERROR // почему?
почему может быть ошибка? при echo $kom1 работает а при втором варианте выдает ошибку...

В файл вместо значения параметра выводится строка "Режим вывода команд на экран (ECHO) отключен."
Сам код: (включать через другой cmd с параметрами 1 &quot;msg * hello&quot;) chcp 1251 if &quot;%1&quot;==&quot;1&quot; (cd...

Где ошибка в коде? for ($j=0;$j<=$i;$j++) {echo 'dbadd('.$arr[$j].')'; echo 'document.writeln(db['.$j.']);';}
Должен ли работать такой код? &lt;?php echo '&lt;script language= 'javascript '&gt;'; echo '&lt;!--'; for...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru