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

Не могу понять, почему эта условная конструкция не работает

28.05.2020, 10:31. Показов 1219. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Мне нужно несколько условий соблюсти, но вызывает ошибку, не пойму что не так. Уважаемые форумчане, помогите разобраться

PHP
1
2
3
4
5
6
<?php
$i = " ";
if (isset($_GET["submit"])) and
    (isset($checkbox)  && strlen($checkbox)>0)  {$i = "111111"}
                                                
?>
Ошибка такая:
PHP
1
Parse error: syntax error, unexpected 'and' (T_LOGICAL_AND) in C:\xampp\htdocs\Untitled-3.php on line 3
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.05.2020, 10:31
Ответы с готовыми решениями:

Объясните пожалуйста почему не работает эта конструкция
PreparedStatement st= conn.prepareStatement(&quot;select Ник, Пароль from Сотрудники where Ник = ? and Пароль = ?&quot;); ...

Не могу справиться с проблемой. Выскакивает эта ошибка incompatible types. Не могу никак понять почему выскакивает
procedure qSort(var work: array of TWork; min, max: Integer); //ïðîöåäóðà áûñòðîé ñîðòèðîâêè ïî âîçðàñòàíèþ var i, j: integer; ...

Не могу понять, почему программа работает неправильно( Знаю, что где-то ошибки, но не могу найти
{Ввести последовательность натуральных чисел Aj j=1...n (n&lt;=1000). Упорядочить последовательность по неубыванию наименььшей цифры...

14
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
28.05.2020, 10:35
Цитата Сообщение от 920403 Посмотреть сообщение
if (isset($_GET["submit"])) and
Лишняя
1
81 / 49 / 34
Регистрация: 22.05.2018
Сообщений: 192
28.05.2020, 10:36
PHP
1
2
3
4
5
6
<?php
$i = " ";
if (isset($_GET["submit"]) and
    (isset($checkbox)  && strlen($checkbox)>0)  {$i = "111111"}
                                                
?>
Одна ) лишняя.
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
28.05.2020, 10:37
Цитата Сообщение от 920403 Посмотреть сообщение
(isset($checkbox)  && strlen($checkbox)>0))
Нужно добавить

Добавлено через 52 секунды
Либо убрать
Цитата Сообщение от 920403 Посмотреть сообщение
(isset($checkbox)  && strlen($checkbox)>0)
1
62 / 48 / 20
Регистрация: 01.09.2017
Сообщений: 381
28.05.2020, 10:49  [ТС]
Если убираю скобку в первом условии то вылетает ошибка и ссылается уже на закрывающий тег php
PHP
1
Parse error: syntax error, unexpected '?> ' in C:\xampp\htdocs\Untitled-3.php on line 6
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
28.05.2020, 10:53
Цитата Сообщение от 920403 Посмотреть сообщение
PHP
1
2
3
4
5
<?php
$i = " ";
if (isset($_GET["submit"])) and
    (isset($checkbox)  && strlen($checkbox)>0)  {$i = "111111"}
?>
Так
PHP
1
2
3
4
5
<?php
$i = " ";
if (isset($_GET["submit"]) and
    (isset($checkbox)  && strlen($checkbox)>0))  {$i = "111111"}
?>
Или так
PHP
1
2
3
4
5
<?php
$i = " ";
if (isset($_GET["submit"]) and
    isset($checkbox)  && strlen($checkbox)>0)  {$i = "111111"}
?>
1
62 / 48 / 20
Регистрация: 01.09.2017
Сообщений: 381
28.05.2020, 11:22  [ТС]
Тут весь мозг на вынос) все варианты не работают. В других языках с операторами не возникало никаких заморочек, если они предусмотрены, то они действуют, а тут они предусмотрены, но не действуют.
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
28.05.2020, 12:48
920403, не зная, как выглядит форма и что лежит в $checkbox, сложно будет вам помочь.
1
62 / 48 / 20
Регистрация: 01.09.2017
Сообщений: 381
28.05.2020, 15:40  [ТС]
Задача на первый взгляд как бы простая. Если нажал на кнопку, скрипт должен дополнительно ещё проверить, стоит ли галка в чекбоксе, если стоит, то выполняем какое то действие. А на деле не всё так просто. Одно первое условие оно выполняет, если нет других условий, а с множеством условий вот беда.
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
28.05.2020, 15:54
920403, код формы выкладывайте
1
62 / 48 / 20
Регистрация: 01.09.2017
Сообщений: 381
28.05.2020, 18: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
<?php
$i = " ";
if (isset($_GET['submit'])) 
   
$i = "111111"
 
?>                                              
 
 
 
<!DOCTYPE html>
 
<html>
<head>
<meta charset="utf-8">
<title>Документ без названия</title>
</head>
 
<body>
    
<form action="/index.php">
<input type="text" name="textfield" value="<?= $i ?>">  
<input type="submit" name="submit" value="Отправить">
<input type="checkbox" name="checkbox" value=""> 
</form>
    
</body>
</html>
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
28.05.2020, 19:00
Лучший ответ Сообщение было отмечено 920403 как решение

Решение

920403,
PHP/HTML
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
$i = " ";
if (isset($_GET['submit']) and 
    isset($_GET['checkbox']) &&
    strlen($_GET['checkbox']) > 0) {
 
  $i = "111111"
}
?>                                              
 
 
 
<!DOCTYPE html>
 
<html>
<head>
<meta charset="utf-8">
<title>Документ без названия</title>
</head>
 
<body>
    
<form action="/index.php">
<input type="text" name="textfield" value="<?= $i ?>">  
<input type="submit" name="submit" value="Отправить">
<input type="checkbox" name="checkbox" value=""> 
</form>
    
</body>
</html>
1
62 / 48 / 20
Регистрация: 01.09.2017
Сообщений: 381
28.05.2020, 19:10  [ТС]
У меня вызывает ошибку
PHP
1
Parse error: syntax error, unexpected '}' in C:\xampp\htdocs\index.php on line 8
указывая на фигурную скобку закрыв тега. Если их убрать, то форма то запускается, но логика не работает.
0
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
28.05.2020, 19:23
Так сверь, сколько скобок у тебя открывается и сколько закрывается

Добавлено через 1 минуту
P..S.
PHP
1
isset($_GET["submit"]) and isset($checkbox)
тоже самое, что
PHP
1
isset($_GET["submit"] , $checkbox)
0
62 / 48 / 20
Регистрация: 01.09.2017
Сообщений: 381
28.05.2020, 22:48  [ТС]
Вроде допетрил благодаря помощи Kerry_Jr. Немного подумал и нашёл, чего тут не хватает. Нужно было в строку чекбокса вписать параметр value="1" и кое где поставить двоеточие. Вот рабочий код.

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
31
<?php
$i = " ";
if (isset($_GET["submit"]) and 
    isset($_GET["checkbox"]) &&
    strlen($_GET["checkbox"])>0) {
 
  $i = "111111";}             //тут добавил двоеточие
 
 
?>                                                      
 
 
 
<!DOCTYPE html>
 
<html>
<head>
<meta charset="utf-8">
<title>Документ без названия</title>
</head>
 
<body>
        
    
<form action="/index.php">
<input type="text" name="textfield" value="<?= $i ?>">  
<input type="submit" name="submit" value="Отправить">
<input type="checkbox" name="checkbox" value="1" >             //тут добавил параметр  value="1"
    
</body>
</html>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.05.2020, 22:48
Помогаю со студенческими работами здесь

Не работает изменение, не могу понять почему, Update не работает, ошибку выдает
Помогите, изменение с помощью button string u = заявкиDataGridView.CurrentRow.Cells.Value.ToString(); ...

Не могу понять почему не работает (или правильно не работает)
#include &lt;iostream.h&gt; #include &lt;conio.h&gt; #define N 5 #define M 3 void main() { int a; int i,j; cout&lt;&lt;&quot;nachalnya...

Не могу понять, почему не работает
В общем, заметил странную особенность. Когда пытаюсь обратиться к пустому указателю в двумерном массиве, программа просто крашится. Хотя...

Не могу понять почему не работает
#include &lt;iostream&gt; using namespace std; int main() { double a; double b; cout&lt;&lt;&quot;vvedite sumu deposita&quot;; cin&gt;&gt;a; ...

Не могу понять почему не работает
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; const int arrSize = 15; int main() { string Phone; ...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru